Commit Graph

1089 Commits

Author SHA1 Message Date
Andy Piper 35a37cb84b AP_HAL: add BLHeli_S ESC type and use it to control bitwidths
adjust BLHeli_S bitwidth and ticks to support more ESC variants.
2022-05-25 17:06:08 +10:00
Peter Barker 16883565e2 AP_HAL: add support for Plane SITL-on-hw 2022-05-24 10:35:32 +10:00
Peter Barker 0f48557ec2 AP_HAL: fix compilation for sitl-on-hw 2022-05-24 10:35:32 +10:00
Andrew Tridgell 113b4cec38 AP_HAL: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Iampete1 cabdd82e71 AP_HAL: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Andrew Tridgell 962d92acf5 AP_HAL: use array for airspeed pin value 2022-05-17 19:34:32 +10:00
Andrew Tridgell 7dc5da1247 HAL_SITL: cleanup SITL airspeed handling
fixed handling of EAS2TAS, and fixed ratio per sensor.

Removed the wind delay code (which was never being used). We should
add a generic delay filter if we need this again
2022-05-17 19:34:32 +10:00
murata 15a39c1649 AL_HAL: Console output can be disabled 2022-05-17 09:53:06 +10:00
Peter Barker f934854a0c AP_HAL: allow backends to be compiled out 2022-05-10 09:02:51 +10:00
Andy Piper f57ac4787d AP_HAL: add Jain's estimator
notch tuning using FFT averaging
allocate scratch space for peak finding
return all detected peaks to caller
2022-05-04 17:05:51 +10:00
Mirko Denecke 853fd7f8c1 AP_HAL: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Randy Mackay 1ee01577f6 AP_HAL: add GPIO::pin_to_servo_channel method 2022-04-26 15:19:28 +09:00
Andy Piper 8ccc84beab AP_HAL: add accessor for disabled channels to RCOutput 2022-04-25 15:55:54 +09:00
Andy Piper 6355934a36 AP_HAL: add bitwidth hal definitions.
revert to original bitwidths for neopixel and profiled
add proper neopixel test that observes spec'ed timings
2022-04-20 17:39:29 +10:00
Peter Barker a9b90a3b5a AP_HAL: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Andy Piper fff82bed75 AP_HAL: update prescaler tests 2022-03-30 17:11:09 +11:00
bugobliterator 7d2ded8de1 AP_HAL: add support for CANFD in SITL 2022-03-27 06:07:34 -07:00
Peter Barker fa2e841387 AP_HAL: honour HAL_SIM_GPS_ENABLED 2022-03-17 14:39:55 +11:00
Peter Barker a402dce95b AP_HAL: permit double-maths whe simulating 2022-03-17 14:39:55 +11:00
Peter Barker 650ef59be8 AP_HAL: create HAL::SIMState object to hold simulation state 2022-03-17 14:39:55 +11:00
bugobliterator 47dd964e63 AP_HAL_ChibiOS: add init method to take in separate canfd bitrate 2022-03-11 18:13:54 +11:00
bugobliterator 1f43c79bfd AP_HAL: add support for taking in canfd bitrate in caniface 2022-03-11 18:13:54 +11:00
Siddharth Purohit 5bc65bb54e AP_HAL: set CANFrame max data length based on CANFD availability 2022-03-11 18:13:54 +11:00
Siddharth Purohit e9f426f8fd AP_HAL: update CANFrame to include CANFD details 2022-03-11 18:13:54 +11:00
Siddharth Purohit 153834465b AP_HAL: add HAL_CANFD_SUPPORTED define 2022-03-11 18:13:54 +11:00
Andy Piper bb3bedb90d AP_HAL: always choose high for dshot prescaler calculation 2022-03-09 18:23:41 +11:00
Andy Piper 5a7f5844d4 AP_HAL: nuke clang warnings 2022-03-03 16:34:14 +11:00
Andrew Tridgell 56d74a352c AP_HAL: fixed vprintf for no hal.h 2022-02-22 12:13:19 +11:00
Andrew Tridgell b248fdfcbb AP_HAL: avoid including hal.h in generic code 2022-02-22 12:13:19 +11:00
Andrew Tridgell 4811544003 AP_HAL: fixed a race conditon for CAN frame callback
callback can change from another thread
2022-02-20 06:28:47 +11:00
Andrew Tridgell d9f79f42c8 AP_HAL: moved CAN_FRAME timeout handling to AP_CANManager 2022-02-19 18:24:56 +11:00
Andrew Tridgell 88e7efcf9c AP_HAL: make CANFrame data available as uint32_t
this makes the critical sections in CANFrame handling on STM32 faster
2022-02-19 18:24:56 +11:00
Andy Piper ea1af70f2b AP_HAL: add support for @SYS/timers.txt
move prescaler calculation here and add unit test
add ability to find closest matching frequency in prescaler calculation
account for bit widths in prescaler tests
2022-02-16 15:28:04 +11:00
Andrew Tridgell eb549f3e00 AP_HAL: review comments 2022-02-12 16:36:05 +11:00
Andrew Tridgell dbe17d072f AP_HAL: support mavcan message forwarding 2022-02-12 16:36:05 +11:00
Andy Piper a7ac4809b1 AP_HAL: disabled ADC3 on H750
define __FASTRAMFUNC__
2022-02-09 12:47:55 +00:00
murata 7eb231281b AP_HAL: Remove meaningless semicolons 2022-02-07 08:27:34 +09:00
Peter Barker f5526d095b AP_HAL: remove HAL_COMPASS_DEFAULT define
this doesn't actually allow you to specify a default, despite the name
and a couple of hwdefs trying to use it that way.

This would have stopped being useful when we did the
compass-prority-table stuff - or before.
2022-02-01 12:10:38 +11:00
Peter Barker 3a1340236a AP_HAL: add HAL_UART_STATS_ENABLED to disable stats gathering 2022-01-12 18:30:49 +11:00
Andrew Tridgell 3b70b3e7a7 AP_HAL: check for existing HAL_STORAGE_SIZE 2022-01-11 11:33:30 +11:00
Willian Galvani dc856f10eb AP_HAL_Linux: set internal/external i2c bus masks for Navigator
This fixes an issue where the internal Compass was being re-detected
as an external one, then as an internal but with wrong orientation
2022-01-06 14:45:42 -05:00
Willian Galvani 725765c1cb AP_HAL: fix navigator ak09915 orientation 2022-01-03 15:05:47 -03:00
Willian Galvani d3e3922776 AP_HAL: Add HAL_PROBE_EXTERNAL_I2C_COMPASSES to Navigator 2022-01-03 15:05:47 -03:00
Andy Piper d4024d9216 AP_HAL: allow configuration of maximum number of notches based on MCU type
increase notch filters in SITL
remove redundant harmonics from DSP
2021-12-22 18:13:38 +11:00
Stephen Dade 68ca18329c AP_HAL: Add UART option to not override streamrates 2021-12-15 14:14:07 +11:00
Peter Barker f50d48f005 AP_HAL: tidy set/get of hw RTC 2021-12-06 12:58:43 +11:00
bugobliterator 0c69ebc50e AP_HAL: update last_crash_dump api 2021-12-01 18:17:50 +11:00
Andrew Tridgell 8c2074907b AP_HAL: support up to 9 UARTs 2021-11-22 22:48:59 +11:00
Patrick José Pereira 176c70b5ff AP_HAL: Update Navigator board to R4
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-11-10 18:11:34 -03:00
bugobliterator 6d4ac999d0 AP_HAL: add get_storage_ptr method 2021-11-10 17:21:35 +11:00
Andrew Tridgell 51da1c3eff AP_HAL: added disable_rxtx() to UARTs 2021-11-07 07:00:35 +11:00
Andrew Tridgell 34ba3e4782 AP_HAL: make set_soft_armed() virtual 2021-11-05 14:30:43 +11:00
Buzz ecfdd80bc7 AP_HAL: new HAL layer for esp32
see libraries/AP_HAL_ESP32/README.md for more.

Author: Charles Villard <charlesvillard10@gmail.com>
Author: Buzz <davidbuzz@gmail.com>
2021-11-01 17:40:31 +11:00
bugobliterator f9f47cbeeb AP_HAL: add method to fetch last crash dump 2021-10-30 19:24:57 +11:00
Davis Schenkenberger 795e7e53bf AP_HAL: add helpers le64toh_ptr, be64toh_ptr, put_le64_ptr, put_be64_ptr 2021-10-17 08:55:03 +11:00
Andrew Tridgell 8157c24977 AP_HAL: added stack logging 2021-10-12 16:04:06 +11:00
Andrew Tridgell 029743e27a AP_HAL: added support for saving and restoring GPIO settings
this allows for using any pin (eg. UART TX, RX, RTS, CTS) as a GPIO,
and restoring the old mode. Initial use is for spektrum bind on RX pin
2021-10-12 15:47:51 +11:00
Willian Galvani 34b42d8252 AP_HAL: Navigator: set HAL_BARO_EXTERNAL_BUS_DEFAULT to 6
This is the bus exposed in the board for external sensors.
This is required as HAL_Linux doesn't probe all i2c buses.
2021-10-11 17:57:52 -03:00
bugobliterator e4f4b3ce1f AP_HAL: add true random number generator 2021-10-07 19:43:11 +11:00
Iampete1 3b8b90d170 AP_HAL: move is_dshot_protocol to AP_HAL 2021-10-06 18:59:57 +11:00
Iampete1 9b02baa5f0 AP_HAL: add note to output_mode enum about params using it 2021-10-06 18:59:57 +11:00
Iampete1 bb04406496 AP_HAL: AnalogSource: set_pin returns bool 2021-10-06 18:42:51 +11:00
Peter Barker 102b1c6879 AP_HAL: allow for selection of Storage backend type at runtime 2021-10-05 10:16:54 +11:00
Andrew Tridgell 1283d42fbf AP_HAL: added micros16() method
fast method for both 16 and 32 bit timers
2021-10-02 18:26:39 +10:00
Andrew Tridgell aa05629ef6 AP_HAL: added peekiovec test
fixes #18285
2021-09-30 12:46:07 +10:00
Pierre Kancir c12217eeb5 AP_HAL: use correct #pragma GCC diagnostic pop 2021-09-29 17:27:29 +10:00
Peter Barker 1976b2b859 AP_HAL: move from HAL_NO_GCS to HAL_GCS_ENABLED 2021-09-22 21:37:00 +10:00
Iampete1 ed80d91d55 AP_HAL: remove set_safety_pwm 2021-09-14 09:23:02 +10:00
Willian Galvani fe72640955 AP_HAL: remove BATT_ settings, they belong in AP_BattMonitor_Analog.h 2021-09-14 09:21:42 +10:00
Mohammad Hefny 5eb28be8e6 AP_HAL_Linux: define board features on Linux module 2021-09-10 08:17:37 +10:00
Mohammad Hefny 2cb13dcc7d AP_HAL: define board features 2021-09-10 08:17:37 +10:00
Pierre Kancir 2b44f86f9c AP_HAL: fix ringbuffer test on clang.
../../libraries/AP_HAL/utility/tests/test_ringbuffer.cpp:46:17: fatal error: variable-sized object may not be initialized
    uint8_t buf[strlen(str)+5] {};
2021-09-04 15:46:47 +10:00
Andrew Tridgell c91410f4b7 AP_HAL: added MCU status support 2021-08-25 07:11:31 +10:00
Andy Piper 09e0135ecb AP_HAL: add accessor for reversed mask
allow mask updates to be disabled
document mask types
define DSHOT_ZERO_THROTTLE
2021-08-12 19:00:51 +09:00
Andrew Tridgell 067a6547bc AP_HAL: fixed printf format errors 2021-08-05 09:43:35 +10:00
Peter Barker 2cdc4f5698 AP_HAL: add basic tests for ringbuffer 2021-07-26 15:10:01 +10:00
Andrew Tridgell 90aed6f338 AP_HAL: fixed get_size() on ObjectBuffer to be consistent with set_size() 2021-07-26 15:10:01 +10:00
Andrew Tridgell 4dcff3d900 AP_HAL: added valid_pin() GPIO API 2021-07-22 07:48:12 +10:00
bugobliterator 4b8b0f834d AP_HAL: add support for usb passthrough with baud changes 2021-07-21 17:06:41 +10:00
Michael Oborne d622aad592 AP_HAL_ChibiOS: add get_usb_baud - support for usb baudrate 2021-07-21 17:06:41 +10:00
Hwurzburg d806d8a26d AP_HAL: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Andrew Tridgell 269c4084d2 AP_HAL: added serial option for disabling FIFO on uarts 2021-07-15 11:31:55 +10:00
Siddharth Purohit 0138266fee AP_HAL: disable cast align check while casting char* read pointer to object 2021-07-15 07:50:12 +10:00
Andrew Tridgell f60330c4ef AP_HAL: allow for double EKF build 2021-07-10 07:20:41 +10:00
Andrew Tridgell 162cecadec AP_HAL: added set_CTS_pin and set_RTS_pin 2021-07-09 13:27:57 +10:00
Peter Barker 2f7603e08e AP_HAL: generate a core file for a given PID
Similarly to dumpstack.sh, uses gdb to dump a core file
2021-07-08 15:46:07 +10:00
Siddharth Purohit 6a0c4ec3f7 AP_HAL: add Random Number Generation test 2021-07-07 18:57:25 +10:00
Siddharth Purohit 2b93b17fae AP_HAL: add support for hw random number generation 2021-07-07 18:57:25 +10:00
Siddharth Purohit 2af3864b61 AP_HAL: add support for entering XIP mode 2021-06-30 19:33:17 +10:00
Siddharth Purohit a323807644 AP_HAL: add support for QSPIDevice 2021-06-30 19:33:17 +10:00
Siddharth Purohit 69009568b2 AP_HAL: add HAL_INS_ENABLED 2021-06-30 17:06:02 +10:00
Siddharth Purohit c7185a1e7f AP_HAL: split into HAL_CANMANAGER_ENABLED and HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Siddharth Purohit 5acce3055f AP_HAL: Use HAL_ENABLE_CANMANAGER instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
Andy Piper 61f1c3c9ce AP_HAL: add 1Hz update_channel_masks() 2021-06-22 09:55:27 +10:00
Peter Barker dddd0d6a14 AP_HAL: remove HIL support 2021-06-15 09:47:31 +10:00
Tom Pittenger 806b6a63bf AP_HAL: reorganize precompiler for HAL_ENABLE_LIBUAVCAN_DRIVERS and HAL_MAX_PROTOCOL_DRIVERS 2021-06-09 18:36:18 +10:00
Andrew Tridgell 7c5c805381 AP_HAL: removed perf counters 2021-06-07 14:29:27 +10:00
Andrew Tridgell d8a6d9c5c4 AP_HAL: added uart_info() method 2021-06-05 18:52:33 +10:00
Andrew Tridgell 606c248e69 AP_HAL: fixed build on boards with no PWM
this impacts mRoNexus builds
2021-06-02 15:39:30 +10:00
bugobliterator ae80e2dd4d AP_HAL: move ToneAlarm Types to AP_Notify instead 2021-05-31 07:34:02 +10:00