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
Andy Piper
4f547d2acc
AP_HAL: allow motor poles to be recorded
...
enable ESC telemetry for SITL
2021-05-12 17:01:11 +10:00
Andy Piper
4d4d3683b6
AP_HAL: add accessor for UART dma status
2021-05-05 17:50:42 +10:00
Andy Piper
3428cbf993
AP_HAL: add dshot command codes for beeps, leds and motor control
...
allow more than one type of ESC for dshot commands
add support for checks around active ESCs
allow dshot alarm to be disabled
allow prioritized dshot commands
2021-05-05 17:41:24 +10:00
Jacob Walser
f7da853adb
AP_HAL: update hardware definitions for navigator r3
2021-04-07 15:08:18 -04:00
Jacob Walser
421638453f
AP_HAL: update Notify LED hardware for navigator r3
2021-04-07 15:08:18 -04:00
Andy Piper
f29dba2ddd
AP_HAL: add set_dshot_rate()
2021-04-06 10:24:04 +10:00
Andrew Tridgell
ebc1f9acf6
AP_HAL: removed assert calls
...
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell
7010eae9e8
AP_HAL: remember details of register check fails
...
this allows for logging of register resets
2021-02-24 18:18:37 +11:00
Andy Piper
a07b238c7d
AP_HAL: add PRIORITY_RCOUT
...
don't allow UART copies
add @SYS/uarts.txt
2021-02-20 14:37:11 +11:00
Patrick José Pereira
12cd138030
AP_HAL: Remove pointer check before delete
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Andy Piper
0eff201016
AP_HAL: add mem_info()
...
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Patrick José Pereira
6899c0b5af
AP_HAL: Add missing const in member functions
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Arsh
18f56fbac5
AP_HAL:examples:Printf: Improvements in the Printf example
2021-02-03 13:02:49 +11:00
Andrew Tridgell
6163659887
AP_HAL: prevent a single bad transfer causing an IMU to be marked unhealthy
...
This is a response to this issue:
https://discuss.ardupilot.org/t/gyro-problem-after-waypoint-log-analisys
The 2nd gyro went bad with a large offset. Then the first gyro was
marked unhealthy, forcing the EKF to switch to the 2nd gyro. That
resulted in a crash.
I think the SPI bus was getting bad transfers and the register check
code happened to get a bad transfer, thereby marking the first gyro
unhealthy
This change ensures we only fail the register check if two transfers
in a row are bad. This makes it much less likely that a noisy bus will
lead to an unhealthy gyro
2021-01-27 09:47:55 +11:00
Andrew Tridgell
1680e6e7d6
AP_HAL: expose load_persistent_params() in hal.util
2021-01-21 13:09:21 +11:00
Andrew Tridgell
a9f8c9517c
AP_HAL: added vnav linux target
2021-01-20 10:06:45 +11:00
Andrew Tridgell
6ca68bfba3
AP_HAL: enable 32k storage on SITL
2021-01-16 06:47:10 +11:00
Andrew Tridgell
75c789fc57
AP_Baro: added ExternalAHRS backend
2021-01-05 21:13:12 +11:00
Arsh
3d5addeee0
AP_HAL:examples:AnalogIn: Added comments in the AnalogIn example
2021-01-05 20:43:04 +11:00
Andrew Tridgell
96cbde0ee6
AP_HAL: use ExpandingString class
2021-01-05 10:52:00 +11:00
Tom Pittenger
afaca30075
AP_HAL: add helpers le24toh_ptr(), be24toh_ptr(), put_le24_ptr(), put_be24_ptr()
2020-12-30 17:56:38 -08:00
Andy Piper
1c79f22ba2
AP_HAL: make erpm accessible from RCOutput
...
give access to erpm error rate
add bi-directional dshot mask modifier
2020-12-30 19:14:16 +11:00
Andy Piper
9e7c60178d
AP_HAL: rename system_initialized() and add is_system_initialized()
2020-12-30 18:16:59 +11:00
Andy Piper
c8e464ebea
AP_HAL: add HAL_ENABLE_THREAD_STATISTICS to boards
2020-12-30 18:15:05 +11:00
Ari Krupnik
cfb1213f43
AP_HAL: standard spelling of variant
2020-12-25 00:01:50 +11:00
Andrew Tridgell
19723e6e75
AP_HAL: make uart pointers private
...
this ensures they cannot be used by library or vehicle code, so we
will be able to remove them in future
2020-12-15 10:32:46 +11:00
Andrew Tridgell
195ec0316a
AP_HAL: fixed example fw for SERIAL naming
2020-12-15 10:32:46 +11:00
Andrew Tridgell
95c0852b13
AP_HAL: convert to using hal.serial() instead of hal.uartX
2020-12-15 10:32:46 +11:00
Andrew Tridgell
8678759da4
AP_HAL: added hal.serial() access to uarts
...
this gives access to serial ports in the SERIALn_ order. It is inlined
by the compiler so using hal.uartB and hal.serial(3) generates
idential code on stm32 (tested on H7).
This is a step towards eliminating hal.uartX completely and the
horrible uartB ordering
2020-12-15 10:32:46 +11:00
Tom Pittenger
6630645915
AP_HAL: ap_periph should disable HAL_SUPPORT_RCOUT_SERIAL by default
2020-12-09 07:53:09 -08:00
Andy Piper
d2e01005ee
AP_HAL: add support for @SYS/dma.txt for DMA contention
2020-12-02 18:17:23 +11:00
Andrew Tridgell
68fdf033ee
AP_HAL: support uartI, allowing a total of 9 uarts
...
this allows for OTG2 on the MatekH743 board, which makes SLCAN much
easier
2020-11-30 14:09:31 +11:00
Tom Pittenger
089f3aa349
AP_HAL: allow hwdef to define HAL_SUPPORT_RCOUT_SERIAL - must be disabled for AP_Periph
2020-11-25 14:20:53 +11:00
Andrew Tridgell
5e8380ff41
AP_HAL: allow replay on ChibiOS
2020-11-10 16:15:45 +11:00
Andrew Tridgell
2596875ceb
AP_HAL: removed fs_init()
...
this must go via AP_Filesystem
2020-10-27 10:45:03 +11:00
Peter Barker
3cce6197a1
AP_HAL: delete copy constructors
2020-10-13 19:55:34 +11:00
Pierre Kancir
1c80b04544
AP_HAL: add virtual set_cmdline_parameters()
2020-10-13 10:31:21 +11:00
Peter Barker
9bde294112
AP_HAL: add chargen UARTDriver example
2020-10-09 19:14:59 +11:00
bugobliterator
d1eb9e8aea
AP_HAL: add FilteredCAN mode to tell driver to init as such
2020-10-08 09:31:35 +11:00
mhefny
1200d0e2f8
AP_HAL: add PROBE_IMU_I2C2 to linux.h
2020-10-06 09:27:26 -07:00
Andrew Tridgell
c62b86e3c1
AP_HAL: added timer_tick() on GPIO
2020-10-02 09:38:24 +10:00
Siddharth Purohit
22ab426cf2
AP_HAL: make bools to use single bit in CANTxItem
2020-09-24 12:32:19 +10:00
Siddharth Purohit
0ca2f56b71
AP_HAL: add support for external buffer to be used in ByteBuffer
2020-09-24 12:32:19 +10:00
Siddharth Purohit
9aa0970eed
AP_HAL: disable protocol drivers for bootloader builds
2020-09-24 12:32:19 +10:00
Siddharth Purohit
c7d69e4d13
AP_HAL: disable CAN Protocol Drivers for AP_Periph
2020-09-24 12:32:19 +10:00
Andy Piper
ad895c2654
AP_HAL: ringbuffer get_size cannot be const because of semaphore
2020-09-22 09:37:02 +10:00
Andrew Tridgell
4b1552eebe
AP_HAL: added BUS_TYPE_MSP
...
for MSP sensors
2020-09-09 06:35:50 +10:00
Peter Barker
55f72c1534
AP_HAL: create and use new AP_HAL::PWMSource object
2020-09-08 16:10:50 +10:00
Michael du Breuil
d905282c1e
AP_HAL: Don't redefine allowing double math in SITL/Linux if already defined
2020-09-03 09:56:29 +10:00
Patrick José Pereira
11c19a2dde
AP_HAL: RCOutput_Tap_Linux: Include arm/ioctls.h
...
Add missing include for TCGETS2 while compile with MUSL
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-08-25 07:15:00 -07:00
Siddharth Purohit
15abca8ba4
AP_HAL: add native clock info methods used inside other than main thread
2020-08-19 17:31:09 +10:00
Siddharth Purohit
aa893b3983
AP_HAL: add available method for locked state
2020-08-19 17:31:09 +10:00
Siddharth Purohit
fa0f1e4c71
AP_HAL: add CANIface HAL, replace uavcan dependent one
2020-08-19 17:31:09 +10:00
Siddharth Purohit
697e4141cb
AP_HAL: add common Event interface
2020-08-19 17:31:09 +10:00
Peter Barker
26666b4b3d
AP_HAL: move battery type enumeration out of parameters object
2020-08-11 13:21:52 +10:00
bugobliterator
57dd0ca9ea
AP_HAL: add support for Bank based addressing
2020-08-06 12:41:35 +10:00
Andy Piper
d545f392fb
AP_HAL: set base type of FrequencyPeak to uint8_t
2020-08-05 17:20:03 +10:00
Siddharth Purohit
d31b44fa79
AP_HAL: add methods to extract devid details
2020-07-27 19:48:15 +10:00
Michael du Breuil
1fef30eef1
AP_HAL: Extend UART options to include forwarding MAVLink telemetry
2020-07-22 07:17:49 +10:00
Peter Barker
bd8c4017bc
AP_HAL: log accumulated power status flags; all flags ever set
2020-07-21 09:12:14 +10:00
Peter Barker
85b1264ff4
AP_HAL: add WARN_IF_UNUSED to several methods
2020-07-20 10:19:47 +09:00
Andrew Tridgell
19093e25be
AP_HAL: added ptr accessors to sparse-endian.h
2020-07-07 10:23:00 +10:00
Peter Barker
fd3dd77489
AP_HAL: rename ringbuffer empty() to is_empty()
2020-06-09 10:21:48 +10:00
Peter Barker
d259c03079
AP_HAL: BetterStream add a read(uint8_t*buffer, uint16_t count method
2020-05-26 15:59:11 +10:00
Peter Barker
a8d03990ec
AP_HAL: add discard_input method on UARTDriver
2020-05-26 09:20:32 +10:00
Andy Piper
e2ef0bd36e
AP_HAL: collect data for three largest peaks
...
new dsp peak detection algorithm
add DSP sketch with frequency ascii art
tool to generate gyro data frames from batch sampled DF logs
add generated data from real Y6B flight
allow fft_start() to use ObjectBuffer<float> for lock-free access
allow ObjectBuffer to be resized
2020-05-24 07:43:34 +10:00
Peter Barker
141d7fed48
AP_HAL: create and use INTERNAL_ERROR macro so we get line numbers
2020-04-30 13:21:36 +10:00
Andrew Tridgell
a25ea5addc
AP_HAL: added thread name to persistent data
...
this addes the first 4 bytes of the thread name to persistent data. It
also re-arranges the data so that it is more efficiently packed,
allowing us to fit the new field
2020-04-29 07:36:55 +10:00
Andrew Tridgell
164022ca12
AP_HAL: added thread_info() API
2020-04-29 07:36:55 +10:00
Andrew Tridgell
34df438560
AP_HAL: added wait_pin() API
...
for waiting on data-ready lines
2020-04-23 07:28:13 +10:00
Andrew Tridgell
efe78fe3e1
AP_HAL: allow SITL to emulate 3 different types of flash storage
2020-04-14 10:02:51 +10:00
Andrew Tridgell
e1792f89db
AP_HAL: fixed default HAL_STORAGE_SIZE for flash storage
2020-04-14 10:02:51 +10:00
Peter Barker
73e43d8da5
AP_HAL: send statustext at regular intervals after watchdog reset
2020-03-31 14:30:11 +11:00
bugobliterator
afea703aaf
AP_HAL: ensure libc realloc is available for all platforms except ChibiOS
2020-03-24 10:32:14 +11:00
bugobliterator
c615bd9874
AP_HAL: implement standard realloc method
2020-03-24 10:32:14 +11:00
Peter Barker
a59c3670c8
AP_HAL_ChibiOS: stash lr_thd in watchdog hardfault handler
2020-03-19 16:03:58 +11:00
Andrew Tridgell
add7615ed9
AP_HAL: removed unnecessary subtypes
2020-03-14 08:35:32 +11:00
Andrew Tridgell
58b4b523fd
AP_HAL: added in_expected_delay()
...
allows for error message suppression when delays are expected
2020-03-11 16:30:06 +11:00
Peter Hall
6ab13333c2
AP_HAL: support ProfiLEDs
2020-03-10 10:37:26 +11:00
Peter Barker
09562e1f13
AP_HAL_Linux: use constants for high/low rather than defines, like ChibiOS
...
These are really bad defines to have hanging around for general use.
2020-03-03 10:46:06 +11:00
Andrew Tridgell
5d15d867b5
AP_HAL: adjust LED API to allow more than 32 LEDs on a pin
2020-02-27 13:12:26 +11:00
Andy Piper
509341957f
AP_HAL: check for div0 in quinn's estimator
2020-02-25 08:35:09 +11:00
Andy Piper
f4a99a1589
AP_HAL: hardware abstraction for FFT.
...
control inclusion of FFT based on HAL_WITH_DSP and HAL_GYROFFT_ENABLED. target appropriate ARM cpus
define hanning window and quinn's estimator
start/analyse version of FFT to support threading
allocate memory in a specific region
calculate frequency and noise bandwidth of two noisiest peaks
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Peter Hall
2bd6d4674b
AP_HAL: utility: add thread safe ring buffer duplicate
2020-02-12 07:05:05 +11:00
Willian Galvani
4afdff746e
AP_HAL: Fix Navigator orientation
...
The Rev2 prototype board had the IMU rotated
2020-02-04 22:47:16 -05:00
Randy Mackay
a71ae54d3a
AP_HAL: add RCOutput::get_output_mode_banner
2020-02-04 12:23:33 +11:00
Andrew Tridgell
3105c6a050
AP_HAL: added pulse_input_enable() API
...
this allows disabling pulse input at runtime to lower CPU load on
IOMCU when decoding via a UART
2020-01-31 11:09:07 +11:00
Peter Barker
1344827c07
AP_HAL: add empty overridable trap method
2020-01-29 10:27:01 +11:00
Andrew Tridgell
f683741a9c
AP_HAL: make all semaphores recursive
...
the cost is very similar and this prevents an easy coding error which
can occur on less used code paths
2020-01-19 20:19:30 +11:00
Andrew Tridgell
629ebbb8ea
AP_HAL: removed old PX4 define
2020-01-18 17:01:40 +11:00
Patrick José Pereira
dc44a17c46
AP_HAL: Add navigator board
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Peter Barker
f6bb94ff33
AP_HAL: add missing break statement in dsm code
2020-01-15 13:55:42 +11:00
Andrew Tridgell
4eccea2607
AP_HAL: define more UART option bits
2020-01-03 17:32:23 +11:00
Andrew Tridgell
12b6f73d83
AP_HAL: added erase() method to Storage class
2020-01-02 09:52:57 +11:00
Andy Piper
22d6fd5e1f
AP_HAL: update docs for ObjectBuffer
2019-12-10 21:07:58 +11:00
Peter Barker
10c50844fd
AP_HAL: stop emitting extra CR before a LF as part of our printf
2019-11-08 17:37:04 +11:00
Peter Barker
3f9a4ee5f9
AP_HAL: fix unit test compilation due to -Werror=format-truncation
2019-11-06 21:42:18 +11:00
Andrew Tridgell
29a2351fd0
AP_HAL: rename AP_HAL::CAN to AP_HAL::CANHal
...
avoid conflict with ChibiOS STM32F3xx headers
2019-11-01 10:53:53 +11:00
Andrew Tridgell
9a778418a5
AP_HAL: use enum for flash_bootloader() result
2019-10-25 21:36:55 +11:00
Andrew Tridgell
15d98220e0
AP_HAL: enabled SLCAN on fmuv2 and Pixhawk1-1M
...
this fits for now, and is needed for CAN GPS for now
2019-10-08 10:02:14 +11:00
Andrew Tridgell
53fab5767f
AP_HAL: cleanup ifdefs for SLCAN enable
2019-10-08 10:02:14 +11:00
Andrew Tridgell
2d00298070
AP_HAL: added HAL_MEM_CLASS for amount of memory
2019-10-01 09:29:55 +10:00
Andrew Tridgell
81711eb28e
AP_HAL: fixed build on g++ 7.3 for stm32
...
the system maths headers don't like our maths defines, but are happy
if we include math.h first
2019-09-28 14:19:46 +10:00
Peter Barker
5dad0e5410
AP_HAL: a few more simple tests for snprintf
2019-09-12 16:08:59 +10:00
Peter Barker
412bf24b9a
AP_HAL: add gtests for snprintf
2019-09-12 07:42:40 +10:00
Peter Barker
10675ab5c4
AP_HAL: correct include ordering in srxl.h
...
The header needs stdint.h which it was only getting because it was
included after stdint.h in the cpp file.
Stop including standard headers before other ArduPilot headers
2019-09-11 14:19:14 +10:00
Andrew Tridgell
4197fdeb2a
AP_HAL: fixed bug in vsnprintf()
...
we need to return the number of bytes that would have been printed if
the buffer was big enough to support use cases such as vasprintf()
which needs to know how many bytes to allocate
2019-09-11 13:41:03 +10:00
Andrew Tridgell
1cb608a9f4
AP_HAL: allow neopixel LEDs to be set more flexibly
...
allow for N leds per chain, with RGB control of each
2019-09-10 13:03:28 +10:00
Tom Pittenger
e3416b66dc
AP_HAL_ChibiOS: add Neopixel output type, similar to dshot
2019-09-10 13:03:28 +10:00
Andrew Tridgell
6983186210
AP_HAL: added get_options() method on UARTs
2019-09-06 08:51:45 +10:00
Andrew Tridgell
2bc7db4cca
AP_HAL: removed old HAL_COMPASS_ defines (no longer used)
2019-09-04 16:27:47 +10:00
Andrew Tridgell
43e011c7a8
AP_HAL: convert Linux compass specification to new probe list
...
this avoids the special handling in AP_Compass library
2019-09-04 16:27:47 +10:00
Michael du Breuil
c12652b325
AP_Rangefinder: Remove stop pin usage
2019-09-04 09:54:50 +10:00
Michael du Breuil
927a0521e3
AP_HAL: Remove the empty force_safety_no_wait
2019-09-04 07:14:50 +10:00
Andrew Tridgell
7fa6eeaaed
AP_HAL: remove unused HAL_BARO_ defines
2019-08-28 06:54:11 +10:00
Andrew Tridgell
9d94598235
AP_HAL: convert linux boards to use baro probe list
2019-08-28 06:54:11 +10:00
Andrew Tridgell
60a6f1b04a
AP_HAL: removed most HAL_INS_* defines
...
not used any more
2019-08-28 06:54:11 +10:00
Andrew Tridgell
96180018fb
AP_HAL: convert HAL_Linux to use HAL_INS_PROBE_LIST
...
makes for much simpler addition of new boards, especially with more
than one IMU
2019-08-28 06:54:11 +10:00
Andrew Tridgell
24e05e96e7
AP_HAL: define support for LIS3MDL_I2C and RM3100_SPI
2019-08-27 10:29:56 +10:00
Michael du Breuil
e47f97c5d3
AP_HAL: Fix bad buffer termination
2019-08-26 18:57:59 +01:00
Andrew Tridgell
9741ac0b64
AP_HAL: added I2C ISR count to PersistentData
2019-08-26 09:13:39 +10:00
Andrew Tridgell
c5c96c76ee
AP_HAL: added logging of hardware fault information in watchdog
...
this may help trackdown software bugs that trigger hard faults
2019-07-19 16:02:41 +10:00
murata
2e4dda5ece
AP_HAL: Match output type and variable type
2019-07-16 10:11:13 +10:00
Andrew Tridgell
bee487e9da
AP_HAL: added uartH
2019-07-12 17:01:21 +10:00
Siddharth Purohit
c50912ed6a
AP_HAL: define HAL_HAVE_DUAL_USB_CDC if not defined
2019-07-12 17:01:21 +10:00
Andrew Tridgell
5ffb8bb546
AP_HAL: enable GPIO scripting on the Disco
2019-07-06 09:02:54 +10:00
Andrew Tridgell
0ca71ba725
AP_HAL: added get_last_armed_change() Util function
2019-06-21 11:40:53 +10:00
Peter Barker
92111eea61
AP_HAL: require HALs implement rcin.protocol() to return RC protocol
2019-06-18 11:35:38 +10:00
Peter Barker
b902316139
AP_HAL: remove buggy write implementation
2019-06-17 17:20:57 +10:00
Peter Barker
c3a99c8eb0
AP_HAL: move dump_strack_trace into HAL
...
Use a weak definition to allow subclasses to override
2019-06-13 09:25:42 +10:00
heitiane
931367a7ea
AP_HAL: fix RCOutput, RCOutput2 and RCInputToRCOutput examples to prevent the failure of reading and writing channels.
2019-06-11 10:27:44 +10:00
Vincent
3177d24429
AP_HAL: Make linux hardware define more readable
2019-06-04 10:00:09 +10:00
Andrew Tridgell
4c5b651296
AP_HAL: removed board type for mRoControlZeroF7
2019-05-30 15:39:57 +10:00
Pierre Kancir
a4330f90b1
AP_HAL: add HAL_BARO_LPS22H_I2C
2019-05-22 07:37:20 +10:00
Patrick José Pereira
fe3d4e2c3b
AP_HAL: Utility: Add missing header guard in packetise
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Andrew Tridgell
e64c5ef354
AP_HAL: added SPI and I2C counters
2019-05-17 08:56:06 +10:00
Andrew Tridgell
911a99b79e
AP_HAL: removed hal argument to EXPECT_DELAY_MS()
2019-05-15 15:33:48 +10:00
Andrew Tridgell
c786674442
AP_HAL: record mavlink msg IDs and semaphore line
2019-05-15 15:33:48 +10:00
Andrew Tridgell
b1ed77bee9
AP_HAL: added EXPECT_DELAY() macro
...
this prevents nesting errors in use of EXPECT_DELAY(), ensuring we
always close the expected delay
2019-05-15 15:33:48 +10:00
Andrew Tridgell
8f973da4b5
AP_HAL: moved the WITH_SEMAPHORE() logic into AP_HAL
...
this is needed to allow us to record the location of a blocking
semaphore to track down bugs where we have a semaphore deadlock
2019-05-15 15:33:48 +10:00
Andrew Tridgell
45d5e7f6d2
AP_HAL: added persistance for internal errors
2019-05-15 15:33:48 +10:00
Andrew Tridgell
4b298aa80e
AP_HAL: add scheduler state to persistent_data
2019-05-15 15:33:48 +10:00
Andrew Tridgell
11c123e4da
AP_HAL: added persistent_data structure
...
this is a much simpler way to save data for a watchdog reset
2019-05-15 15:33:48 +10:00
Phillip Kocmoud
db57b6c4f3
AP_HAL: added DPS280 on SPI / added board type for mRoControlZeroF7
2019-05-10 15:05:42 +10:00
Andrew Tridgell
c63459c237
AP_HAL: added save/restore of attitude in backup registers
2019-04-22 16:53:35 +10:00
Andrew Tridgell
bd84c0a8df
AP_HAL: added save/restore of home to backup registers
2019-04-22 16:53:35 +10:00
Andrew Tridgell
4a3687fcf6
AP_HAL: added was_watchdog_armed()
...
allow decisions to be based on whether this is a watchdog reset and we
were armed
2019-04-22 16:53:35 +10:00
Andrew Tridgell
8d2f094257
AP_HAL: added was_watchdog_safety_off()
...
used to restore safety state on watchdog reset
2019-04-22 16:53:35 +10:00
Andrew Tridgell
88352b73bb
AP_HAL: added expect_delay_ms() to Scheduler
...
used to notify scheduler of long expected delay in main thread
2019-04-22 16:53:35 +10:00
Andrew Tridgell
7f96d4ad12
AP_HAL: added was_watchdog_reset()
2019-04-22 16:53:35 +10:00
Andrew Tridgell
65d051cbc9
AP_HAL: added hal.flash driver
...
needed for semaphore
2019-04-11 13:22:53 +10:00
murata
dc452d41d2
AP_HAL: Change to shared CRC16 method
2019-04-09 12:50:17 +10:00
Siddharth Purohit
0d4725d6c6
HAL: add Invensense register bank based sensor types
2019-03-06 20:47:10 +11:00
Andrew Tridgell
20d762293d
AP_HAL: remove more px4 remnants
2019-02-27 20:32:37 +11:00
Andrew Tridgell
dcc038dc83
AP_HAL: prevent a zero length leading buffer in peekiovec
2019-02-26 16:18:26 +11:00
Peter Barker
8efda2b792
AP_HAL: GCS_MAVLink takes care of mavlink capabilities
2019-02-19 13:14:52 +11:00
Peter Barker
e4e453402c
AP_HAL: rearrange headers for consistency
...
Move attribute definitions all into AP_Common, rather than being split between two files
Remove unused SITL_printf macros
Stop AP_Common including board information
Include AP_Common.h in AP_HAL::Sempahore for WARN_IF_UNUSED; this was the cause of a circular import problem fixed by other commits in this patch.
2019-02-15 08:15:45 +11:00
LukeMike
e15d2c0f89
HAL_ChibiOS: added ChibiOS configuration of VR Brain 5.4
2019-01-24 18:41:38 +11:00
LukeMike
33f7f5b7b6
HAL_ChibiOS: added ChibiOS configuration for VR Core 1.0
2019-01-24 18:41:38 +11:00
LukeMike
f615ab9a0a
HAL_ChibiOS: added ChibiOS configuration for VR Brain 5.1
2019-01-24 18:41:38 +11:00
Siddharth Purohit
504cfd8989
AP_HAL: add flag for enable/disabling filters
2019-01-23 15:57:05 +11:00
Andrew Tridgell
c04f1180c9
AP_HAL: removed F4Light
2019-01-21 21:57:21 +11:00
mirkix
506da9ac42
AP_HAL: enable UAVCAN for bbbmini, blue and pocket
2019-01-21 08:08:59 +11:00
Randy Mackay
06bb02fab7
AP_HAL: minor format fixes to CAN
2019-01-18 17:30:28 +11:00
LukeMike
45c5979999
AP_HAL: added define of ChibiOS sub type for VR Brain boards
2019-01-18 11:49:19 +11:00
Michael du Breuil
44079dcc46
AP_HAL: Add scripting heap
2018-12-31 19:25:23 -07:00
Andrew Tridgell
4889625826
AP_HAL: added set_slowdown() to SPIDevice
...
used to slow down a SPI device below normal high speed operation
2018-12-31 08:00:14 +11:00
Andrew Tridgell
d8cf1997d2
AP_HAL: added fs_init() to Util API
2018-12-31 08:00:14 +11:00
Andrew Tridgell
1fd1614e34
AP_HAL: added locking against read for UARTs
2018-12-29 15:58:22 +11:00
Peter Barker
24653a33ed
SITL: make socket manipulation functions bool rather than void
...
... so callers can check if they succeeded or not
2018-12-18 08:51:01 +11:00
Peter Barker
8a0e3dd657
AP_HAL: add millis16 to HAL; provide weak implementation
...
This wraps every minute or so - but if you only need to track intervals
under ~65 seconds could save RAM
2018-12-10 12:52:41 +09:00
Andrew Tridgell
8907506c18
AP_HAL: added replacement for memrchr()
2018-12-06 13:32:09 +11:00
Andrew Tridgell
a0be4f4c8d
AP_HAL: fixed build and comments
2018-12-06 11:12:40 +11:00
Andrew Tridgell
d01f5ae6c8
AP_HAL: added mavlink_packetise()
...
used for aligning MAVLink packets on UDP on packet boundaries
2018-12-06 11:12:40 +11:00
Andrew Tridgell
4cfb1b04ad
AP_HAL: define HAL_BOARD_STORAGE_DIRECTORY for sitl, px4 and chibios
2018-11-29 16:36:29 +11:00
Siddharth Purohit
df7d0d1971
AP_HAL: add support for unformatted board id
2018-11-29 16:36:29 +11:00
Andrew Tridgell
e629845f00
AP_HAL: minimize features on px4-v1
2018-11-26 13:29:40 +11:00
Andrew Tridgell
bed7939969
AP_HAL: added support for swapping RX and TX pins
2018-11-20 18:25:20 +11:00
Andrew Tridgell
f2cd6e9a05
AP_HAL: added set_reversible_mask()
2018-11-16 08:33:35 +11:00
Andrew Tridgell
a4c532edff
AP_HAL: fixed typo in fmax macro
2018-11-15 14:39:11 +11:00
Andrew Tridgell
58ed5a123c
AP_HAL: added HalfDuplex UART option
2018-11-14 19:05:09 +11:00
Andrew Tridgell
37fc6e8b1c
AP_HAL: added inversion options
2018-11-14 19:05:09 +11:00
Michael du Breuil
9a9e715af8
AP_HAL: Define HAL_HAVE_SERVO_VOLTAGE
2018-11-12 23:29:04 +00:00
Andrew Tridgell
9ea03e085d
AP_HAL: added readptr() and advance() to ObjectBuffer
...
this gives a more efficient way of accessing an ObjectBuffer, which
reduces interrupt latency in SoftSigReader
2018-11-07 07:35:45 +11:00
Andrew Tridgell
6c6dabc33c
AP_HAL: set default batt monitoring for bebop and disco
2018-10-31 20:30:35 +11:00
Peter Barker
f8b1203399
AP_HAL: provide method returning approximate link bandwidth
2018-10-30 19:31:37 +11:00
Kevin Lopez Alvarez
ab7c7afd1d
AP_HAL: add ChibiOS FMUv4pro
2018-10-21 09:59:44 +11:00
Peter Barker
f90dd0c156
AP_HAL: add simple tests for null-termination
2018-10-21 07:54:30 +11:00
Peter Barker
33e3d6e254
AP_HAL: Util: make vsnprintf and snprintf always null-terminate
...
The C++ standard indicates these functions always return a
null-terminated string. We should rename these functions if we're not
going to conform to the standards.
From https://en.cppreference.com/w/cpp/io/c/vfprintf :
"Writes the results to a character string buffer. At most buf_size-1
characters are written. The resulting character string will be
terminated with a null character"
We are still not standards-compliant in the case a length of 0 is passed
in, returning 0 where we should return the space that would be required
to store the formatted string.
2018-10-21 07:54:30 +11:00
Andrew Tridgell
5924816bbe
AP_HAL: removed hal.util->new_semaphore()
...
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
ed71790945
AP_HAL: fixed PX4 LED polarity
2018-10-09 20:25:49 +09:00
Michael du Breuil
73901274b0
AP_HAL: Define a scripting base priority
2018-10-09 10:08:52 +11:00
Michael du Breuil
6544f16339
AP_HAL: Make BBBlue use AP_BoardLED2
2018-09-19 22:58:46 +01:00
Michael du Breuil
6f7ced73d6
AP_HAL: Remove bad GPIO LED pins on NavIO2
2018-09-19 22:58:46 +01:00
Siddharth Purohit
9a2eea9769
AP_HAL: disable float print methods for non FPU controllers
2018-09-19 12:14:15 +10:00
Siddharth Purohit
5e4f76886a
AP_HAL: add chibios hal header to use uC specific defines
2018-09-19 12:14:15 +10:00
Siddharth Purohit
c546bec999
AP_HAL: do not use ch for channel, its used as a global var under ChibiOS
2018-09-19 12:14:15 +10:00
Andrew Tridgell
eec3a2ab31
AP_HAL: added FOREACH_I2C_MASK() macro
2018-09-07 08:36:02 +10:00
Andrew Tridgell
b4ecc347d7
AP_HAL: always define HAL_WITH_UAVCAN on px4
2018-09-05 08:52:47 +10:00
Peter Barker
15ae453205
AP_HAL: fix RCInput example
2018-08-31 21:08:11 +09:00
Peter Barker
fcacdb42bb
AP_HAL: define base-class attach_interrupt to return false
2018-08-31 08:32:08 +10:00
Andrew Tridgell
55dfefb2d6
AP_HAL: added HAL_Semaphore_Recursive
2018-08-25 15:44:36 +10:00
Peter Barker
74263f8412
AP_HAL: add attach_interrupt that takes a functor, not a AP_HAL::Proc
...
AP_HAL: add type-safety for interrupt types
AP_HAL: remove interrupt-low and interrupt-high, and interrupt-none
It is possible that the radio needs very tight timings - do not force
the use of the functor interface
AP_HAL: add detach_interrupt method
2018-08-21 20:34:01 +09:00
Peter Barker
c846a13d12
AP_HAL: functor: add != override
2018-08-21 20:34:01 +09:00
Andrew Tridgell
0a73c3492d
AP_HAL: support HAL_Semaphore type
2018-08-16 12:40:10 +10:00
Hwurzburg
5f72c9040e
AP_OSD: Adding flight distance and summary panels for OSD
2018-08-16 12:00:50 +10:00
Francisco Ferreira
0645a5b11a
AP_HAL: introduce a CANProtocol interface and remove HAL CAN thread management
2018-08-12 13:35:01 +01:00
Andrew Tridgell
1fe6c7b497
AP_HAL: added chanmask to serial_setup_output()
2018-08-04 19:29:13 +10:00
Lucas De Marchi
099eefee87
AP_HAL: Chibios: HAL_GPIO_PIN_SAFETY_IN implies HAL_HAVE_SAFETY_SWITCH
2018-08-02 13:15:02 -07:00
Lucas De Marchi
7f984f2700
AP_HAL: linux: disable safety switch
...
Linux boards don't really handle the safety switch.
2018-08-02 13:15:02 -07:00
Lucas De Marchi
2336d2214b
AP_HAL: sitl: disable safety switch
...
sitl doesn't really handle the safety switch and it's actually disabled
by AP_FEATURE_SAFETY_BUTTON.
2018-08-02 13:15:02 -07:00
Andrew Tridgell
949324ff2b
AP_HAL: added duration to toneAlarm_set_buzzer_tone
2018-07-30 14:02:12 +10:00
Jonathan Challinger
f936b1dbc2
AP_HAL: change tonealarm interface
2018-07-30 14:02:12 +10:00
Andrew Tridgell
cb19d4dffc
AP_HAL: added toneAlarm_set_tune_string
2018-07-20 14:37:16 +10:00
Andrew Tridgell
0fc6ca22f7
AP_HAL: setup HAL_I2C_INTERNAL_MASK for ChibiOS
2018-07-14 17:51:50 +10:00
Andrew Tridgell
464dc9102f
AP_HAL: added device types for SITL
...
and fixed a stack init bug for make_bus_id
2018-07-13 10:19:01 +10:00
Michael du Breuil
3419b045e1
AP_HAL: Remove GPIO::analogPinToDigitalPin()
2018-07-11 23:09:52 -07:00
Andrew Tridgell
d35abe67ae
AP_HAL: added optional healthy check on storage object
...
used to check parameter storage is functional
2018-07-10 15:41:44 +10:00
Andrew Tridgell
4939f30ec4
AP_HAL: make linux internal i2c be 0xffff
...
based on feedback from Lucas
2018-07-10 15:39:47 +10:00
Andrew Tridgell
b19219d636
HAL_Linux: allow for 16 I2C buses on Linux
2018-07-10 15:39:47 +10:00
Andrew Tridgell
281a1b6569
AP_HAL: added I2C bus mask functions and macros
2018-07-10 15:39:47 +10:00
Andrew Tridgell
e14e0b8a14
AP_HAL: added thread_create() API
...
this is deliberately a minimalistic API, for ease of implementation in
each HAL
2018-07-09 19:41:18 +10:00
Andrew Tridgell
eb2c9dfe74
AP_HAL: define CHIBIOS_SHORT_BOARD_NAME if not defined
2018-06-29 20:27:36 +10:00
Andrew Tridgell
d1fcf2bab6
AP_HAL: added uartG
...
one more uart ...
2018-06-29 08:17:38 +10:00
Peter Barker
b9b0ef0c77
AP_HAL: add flash_bootloader to AP_HAL API
2018-06-28 11:35:13 +10:00
Michael du Breuil
2577e5ff25
AP_HAL: Don't always define GPIO pins, they may be connected to real
...
hardware
2018-06-27 15:25:44 +10:00
Lucas De Marchi
49d08ba72a
Global: remove minlure
...
Minlure is a port of ArduPilot to Minnow Board connected to daughter
board. Very few of those were produced and nobody is flying with it.
It served its purpose and all the the improvements to ArduPilot remain
regardless of it not being supported anymore. Now it's just adding
maintenance work with no clear benefit, so pull the plug.
2018-06-26 07:32:08 -07:00
Michael du Breuil
a92c4aa9fd
AP_HAL: Update comment on UARTDriver::begin to reflect automatic
...
clearing
2018-06-26 02:18:18 +01:00
Kelly-Foster
ba9faafc98
AP_HAL: added MatekF405-wing subtype
...
Added define for HAL_BOARD_SUBTYPE_CHIBIOS_MATEKF405WING
2018-06-22 08:00:31 +10:00
Hyungsub
6e2076a3f1
AP_HAL: Remove resource leak in srxl.cpp
...
I correct this issues and then open a pull request.
2018-06-20 11:33:12 +10:00
Peter Barker
584c5d5806
AP_HAL: Socket: add set_cloexec
2018-06-19 09:14:28 +10:00
Peter Barker
f5eb281efd
AP_HAL: use AP_RTC
...
Also add a define as to whether set_time / get_time can be used
2018-06-15 08:01:22 +10:00
Michael du Breuil
1183ed61fb
AP_HAL: Remove timer process suspension interface
2018-06-06 07:16:58 +10:00
Andrew Tridgell
0774a267c8
AP_HAL: added define for FMUv5
2018-06-06 07:15:41 +10:00
Michael du Breuil
627c7536f4
AP_HAL: Remove overrides interface
2018-06-05 09:51:09 +10:00