Commit Graph

1244 Commits

Author SHA1 Message Date
Andrew Tridgell f77f8e5ad7 AP_HAL: added is_write_locked() for UARTs 2024-01-18 14:57:57 +11:00
Peter Barker e27a353107 AP_HAL: correct Sub SITL-on-hardware build 2024-01-16 12:41:18 +11:00
Peter Barker b17b70d1d4 AP_HAL: correct tracker SITL-on-hardware build 2024-01-16 12:41:18 +11:00
Peter Barker 3c57e9c14a AP_HAL: correct blimp SITL-on-hardware build 2024-01-16 12:41:18 +11:00
Peter Barker 147c5ad78d AP_HAL: move simulated height_agl into fdm structure
allows value to be shipped via multicast to simulated peripherals
2024-01-08 20:00:01 +11:00
Andrew Tridgell 7d1cc14b1e AP_HAL: fixed build with AP_SIM_ENABLED 2024-01-07 20:51:55 +11:00
Andrew Tridgell f2a1c80652 AP_HAL: added MEM_FILESYSTEM memory type 2024-01-05 06:52:11 -08:00
Andrew Tridgell 1e7ca34531 AP_HAL: socket native fix 2024-01-03 12:14:47 +11:00
Andrew Tridgell ef67fa4293 AP_HAL: use SocketAPM_native 2024-01-03 12:14:47 +11:00
Andrew Tridgell cbb3e27519 AP_HAL: added SocketAPM_native
this is a varient of SocketAPM that always uses native sockets
(ie. doesn't go via AP_Networking lwip)
2024-01-03 12:14:47 +11:00
Andrew Tridgell 3d5251dfe8 AP_HAL: added inet_str_to_addr to SocketAPM 2024-01-03 12:14:47 +11:00
Andrew Tridgell ec5c0b82e7 AP_HAL: added PRIORITY_NET 2024-01-03 12:14:47 +11:00
Andrew Tridgell 8e132e44cf AP_HAL: improved sockaddr_in compatibility 2024-01-03 12:14:47 +11:00
Andrew Tridgell e53729f331 AP_HAL: make Socket.cpp safe for lwip and SITL usage 2024-01-03 12:14:47 +11:00
Peter Barker 9e5edefc4a AP_HAL: guard against DSP being compiled out of code 2024-01-03 11:45:31 +11:00
Andrew Tridgell 635c764c6f AP_HAL: added BinarySemaphore test 2024-01-03 07:37:05 +11:00
Andrew Tridgell a52c71f380 AP_HAL: implement BinarySemaphore
and removed event handles
2024-01-03 07:37:05 +11:00
Andrew Tridgell d1fcb76c9f AP_HAL: ensure all UARTDriver implementations have receive_time_constraint_us
this fixes NMEA over network ports
2024-01-02 20:59:50 +11:00
Andrew Tridgell 7b5b1ba59f AP_HAL: fixed build without MSG_NOSIGNAL
for older MacOSX
2024-01-02 08:12:37 +11:00
Andrew Tridgell e79f0201bd AP_HAL: added esp32s3empty 2023-12-31 09:55:02 +11:00
Thomas Watson bcfad0d712 AP_HAL: remove references to legacy UART order 2023-12-19 06:53:15 +11:00
Thomas Watson ebbcf42236 AP_HAL: constructor now accepts UARTs in SERIALn order 2023-12-19 06:53:15 +11:00
Thomas Watson 6a6c3ce7a1 AP_HAL: inline serial accessor function
Saves a bit more flash.
2023-12-19 06:53:15 +11:00
Thomas Watson 8747ae539f AP_HAL: move serial re-mapping to driver array initialization
Saves a bit of flash and execution time.
2023-12-19 06:53:15 +11:00
Thomas Watson de45437704 AP_HAL: use array of UART drivers instead of consecutive variables
Avoids UB-inducing assumption that UART drivers are consecutive in the
serial() function.
2023-12-19 06:53:15 +11:00
Andy Piper a8772ef5a2 AP_HAL: allow bdshot iomcu on non-bdshot fmu 2023-12-18 19:02:52 +11:00
Andy Piper 2a9c2fdf14 AP_HAL: add methods to directly access erpm array from rcout 2023-12-18 19:02:52 +11:00
Andrew Tridgell 48ab76d06e AP_HAL: added InertialLabs simulator 2023-12-17 09:47:30 +11:00
Andrew Tridgell 9358bfce34 AP_HAL: added duplicate() in SocketAPM 2023-12-11 18:00:38 +11:00
Andrew Tridgell a77331e725 AP_HAL: mark socket as not connected on EOF
this allows lua scripts to properly detect a closed TCP connection
2023-12-11 18:00:38 +11:00
Andrew Tridgell 64d649fbcc AP_HAL: fixed SO_REUSEADDR on bind
and use MSG_NOSIGNAL to prevent pipe errors in SITL
2023-12-11 18:00:38 +11:00
Andrew Tridgell 98e8b9785c AP_HAL: added close() to SocketAPM 2023-12-11 18:00:38 +11:00
Andrew Tridgell b49152bbe6 AP_HAL: mark new accept() socket as connected 2023-12-11 18:00:38 +11:00
Ka Ru 329c6ba668 AP_HAL: add can-zero board 2023-12-05 07:41:06 -06:00
Ryan Friedman fadedbbb47 AP_HAL: Add MicroStrain7 support
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-05 11:09:22 +11:00
Andrew Tridgell 2ee48dea29 AP_HAL: support bi-directional UDP broadcast sockets 2023-11-28 12:18:55 +11:00
Andrew Tridgell a05acfc090 AP_HAL: added last_recv_address() with supplied buffer
this prevents a race condition with a static string
2023-11-28 12:18:55 +11:00
Thomas Watson dc76e03890 AP_HAL: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Tom Pittenger e8c852f0d4 AP_HAL: Allow APMSockets to autodetect Broadcast IPs 2023-11-25 16:28:07 -08:00
Andrew Tridgell ee592476ce AP_HAL: implement multicast for UDP sockets 2023-11-25 12:19:43 -08:00
Andy Piper 13ff23f39d AP_HAL: enable filters with AP_FILTER_ENABLED on sitl 2023-11-21 13:26:23 +11:00
Andy Piper d30e52ed3f AP_HAL: return success status from serial_led_send and set_serial_led_rgb_data 2023-11-20 19:22:20 +11:00
Peter Barker 76d07f21f5 AP_HAL: add simulator Hirth EFI 2023-11-17 13:09:02 +11:00
Tom Pittenger df600e5582 AP_HAL: Enable SocketAPM to use LwIP/ChibiOS 2023-11-15 12:43:41 -08:00
Andy Piper ef5eccdf62 AP_HAL: correct neopixel bitwidth 2023-11-14 11:06:25 +11:00
Peter Barker 9087bb6b89 AP_HAL: track simulated ADSB vehicles relative to simulation origin
removes dependence on ArduPilot AHRS library

Also removes vehicles based off vehicle simulated position rather than distance-from-origin, so you always have company
2023-11-02 15:52:42 +11:00
Peter Barker 9c759c3e61 AP_HAL: move AP_BOOTLOADER_FLASHING_ENABLED default to AP_HAL
.... need the defines on HALs other than ChibiOS
2023-10-27 14:16:47 +11:00
Andrew Tridgell 26823b56ae AP_HAL: added connect_timeout to SocketAPM 2023-10-23 20:27:49 +11:00
Mykhailo Kuznietsov cc2e156888 AP_HAL: Fix some typos
Fixed some typos found in the code.
2023-10-12 18:30:42 +11:00
Andy Piper 4c911dce68 AP_HAL: Add support for NeoPixelRGB 2023-10-04 18:06:17 +11:00
Andy Piper 2c44d75f27 AP_HAL: relax F4 notch constraints slightly to allow triple notch on quads 2023-09-20 17:37:24 +10:00
Andy Piper 5c0f049739 AP_HAL: simplify prescaler calculation and allow choosing highest frequency
Update tests to reflect BLHeli_S requirements and add in L431
2023-09-20 17:35:44 +10:00
Andrew Tridgell 7c74f9b24b AP_HAL: added last_transmit_us to CAN stats 2023-09-05 06:56:51 +10:00
muramura b69dbd0c2e AP_HAL: Delete commented-out processes 2023-09-04 13:55:12 +10:00
Peter Barker e6284fe879 AP_HAL: correct compilation for SimOnHardware 2023-09-01 17:48:30 +10:00
Ryan Friedman 0b27d17b81 AP_HAL: split to MicroStrain5
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-29 10:31:44 +10:00
Andrew Tridgell 64040bfab4 AP_HAL: move ESC scaling up to AP_HAL level 2023-08-24 13:06:40 +10:00
Andrew Tridgell 6a54c5e952 AP_HAL: removed native_millis/micros 2023-08-24 13:06:40 +10:00
Andy Piper c631b79dde AP_HAL: add get_output_mode() and HAL_WITH_IO_MCU_DSHOT 2023-08-15 06:53:48 +10:00
Andy Piper 1b210f8ea9 AP_HAL: support accessors for dshot_period_us
add support for selectively disabling serial LEDs and passthrough
provide mutator to allow iomcu to set dshot rate
support HAL_SERIAL_ESC_COMM_ENABLED and DISABLE_SERIAL_ESC_COMM
update dshot docs
make default serial led enablement dependent on dshot
2023-08-15 06:53:48 +10:00
bugobliterator 4ce32c74de AP_HAL: add default DISABLE_DSHOT as false
use HAL_ENABLE_DSHOT instead of DISABLE_DSHOT
2023-08-15 06:53:48 +10:00
Peter Barker 3fea8d16f1 AP_HAL: remove MINIMIZE_FEATURES define 2023-08-08 10:35:19 +10:00
Ryan Friedman 109c894929 AP_HAL: Rename LORD to MicroStrain
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-08-07 19:16:03 +10:00
Andrew Tridgell 8a8a45dd23 AP_HAL: added set_size_best() for ByteBuffer 2023-07-18 11:38:27 +10:00
Peter Barker 6e0639ea91 AP_HAL: tidy AP_Airspeed includes, use AP_AIRSPEED_ENABLED properly 2023-07-18 11:03:07 +10:00
Peter Barker f5a26495d3 AP_HAL: act on safety switch being enabled in SITL by zeroing outputs 2023-07-12 17:53:12 +10:00
Andrew Tridgell ceb07c3f7b AP_HAL: moved locking to AP_HAL and added monitor callback 2023-07-12 17:06:02 +10:00
bugobliterator 1b3de3acf2 AP_HAL: add HAL_ENABLE_SENDING_STATS to enable sending stats over CAN 2023-07-10 12:56:37 +10:00
rishabsingh3003 89d4ba6a5d AP_HAL: add simulated nooploop tofsense rangefinder 2023-06-28 17:16:22 +10:00
Andy Piper 62fc1b91c4 AP_HAL: add dshot commands and ESC types for extended dshot telemetry (EDT) 2023-06-27 09:28:33 +10:00
bugobliterator ff3f07d46f AP_HAL: add support for get_persistent_param_by_name 2023-06-17 14:49:22 +10:00
Ryan Friedman 0faf1a2152 AP_HAL: Use new AP_Math utils
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Ryan Friedman 35c8951395 AP_HAL: Add methods for beNto<floatingType> conversions
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Nicholas Kruzan 88fbd8dca7 AP_HAL: new board: esp32s3devkit 2023-05-26 10:54:01 -07:00
Nicholas Kruzan 5d7eb8a709 AP_HAL: new mcu: esp32s3 2023-05-26 10:54:01 -07:00
Peter Barker 9bcac597b6 AP_HAL: remove posix test from uart example 2023-05-17 09:40:39 +10:00
Peter Barker ee8a762e1d AP_HAL: replace HAVE_FILESYSTEM_SUPPORT with backend defines 2023-05-17 09:40:39 +10:00
Nicholas Kruzan 2171fff91b AP_HAL: esp32 - add board esp32nick 2023-05-15 12:22:17 +10:00
Peter Barker 6943ea59b1 AP_HAL: add simulator for RDS02UF rangefinder 2023-05-13 20:05:18 +10:00
Ryan Friedman 925e9d8cbc AP_HAL: Add reference to sparse endian manpage
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-05-13 11:32:38 +10:00
Henry Wurzburg 2ddaa65b23 AP_HAL: normalize SerialManagers ports defaults to allow inclusion in hwdefs 2023-05-11 18:45:53 +10:00
David Buzz c68b2bc2be AP_HAL: make all esp32 boards use 16 channels, not 32. 2023-05-02 14:38:03 +10:00
David Buzz acd1f48ed3 AP_HAL: doesn't need these subsystems
ESP32: disabled can on esp32 for now

ESP32: disable airspeed sensors on esp32buzz

ESP32: disable a bunch of compasss types and subsystems so it doesn't try to probe for all

of the compases on boot, as its super slow.

turned off a bunch of Plane stuff that an esp32 user isn't likely to need
compass

scr

comp

a

c
2023-05-02 14:38:03 +10:00
David Buzz e2edfae79b AP_HAL: add a new board for tomte76
mpu9255 board, bmp280 baro, micro sd card and NEO M8 clone

a
2023-05-02 14:38:03 +10:00
Andrew Tridgell 4a8eda0589 AP_HAL: default CAN_Px_DRIVER to 0 on SITL
having this default to 1 slows down SITL startup for a lot of people
due to the CAN wait for sensor delays. It is easy to enable it when
CAN is needed in SITL
2023-05-01 14:10:59 +10:00
bugobliterator 350f718745 AP_HAL: don't include Semaphore headers while building C source 2023-04-28 12:36:08 +10:00
Andy Piper ac8a94e655 AP_HAL: support is_busy() on WSPI device 2023-04-28 08:31:15 +10:00
Andy Piper 19bda7818c AP_HAL: configure HAL_USE_QUADSPI and HAL_USE_OCTOSPI 2023-04-28 08:31:15 +10:00
Andy Piper a73945c1b3 AP_HAL: rename QSPIDevice to WSPIDevice 2023-04-28 08:31:15 +10:00
bugobliterator cc02ad9224 AP_HAL: add HAL_FORWARD_OTG2_SERIAL define 2023-04-26 18:04:00 +10:00
bugobliterator 9663b3d409 AP_HAL: add __EXTFLASHFUNC__ define 2023-04-26 18:04:00 +10:00
Andy Piper 875481b823 AP_HAL: add helper functions for LEDs
add PRIORITY_LED for led output thread
2023-04-19 16:45:21 +01:00
Andrew Tridgell d1e50cb0c8 AP_HAL: change to 16 bit timeout in event interface
prevent issues on 16 bit timers where we can end up with TIME_INFINITE
2023-04-19 17:26:57 +10:00
Andrew Tridgell 5d6b7b04d8 AP_HAL: rename more variables, types and defines 2023-04-11 10:31:31 +10:00
Andrew Tridgell 12ecb4354b AP_HAL: allow for 64 bit CAN on Linux 2023-04-10 14:46:54 +10:00
Andrew Tridgell 57f6343058 AP_HAL: fixed valgrind error 2023-04-10 14:46:54 +10:00
Andrew Tridgell d8416eb38f AP_HAL: fixed build for HerePro 2023-04-08 07:11:23 +10:00
Andrew Tridgell bdbcdfce60 AP_HAL: fixed SLCAN duplicate define 2023-04-08 07:11:23 +10:00
Andrew Tridgell 420ceec553 AP_HAL: rename AP_UAVCAN to AP_DroneCAN 2023-04-08 07:11:23 +10:00
bugobliterator 6dc73b3d54 AP_HAL: sitl: set default value of HAL_CAN_DRIVER_DEFAULT as 1 2023-03-29 17:16:39 +11:00