Commit Graph

2041 Commits

Author SHA1 Message Date
Andrew Tridgell
33529c98a9 HAL_ChibiOS: check the ROMFS line for IOMCU is added 2021-10-06 06:45:43 +11:00
Andrew Tridgell
52124cf602 HAL_ChibiOS: fixed f1 bootloader build errors 2021-10-06 06:44:36 +11:00
Andrew Tridgell
8deaa1b46b HAL_ChibiOS: fixed warning for USB 2021-10-06 06:44:36 +11:00
Andrew Tridgell
4daf4ad501 HAL_ChibiOS: lock in no warnings for chibios RTOS build 2021-10-06 06:44:36 +11:00
Andrew Tridgell
4dbff85de7 HAL_ChibiOS: check for common hwdef.dat errors
catches missing GPIO type, mismatched timers and UARTs or bad pin types
2021-10-05 15:46:02 +11:00
Iampete1
f0a284c1e7 AP_Hal_ChibiOS: R9Pilot: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1
0143518954 AP_Hal_ChibiOS: mRoControlZeroF7: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1
a282a39866 AP_Hal_ChibiOS: F4BY: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1
6f1f26a72a AP_Hal_ChibiOS: CubeOrange: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1
5848510876 AP_HAL_ChibiOS: set flow control disabled if no RTS line 2021-10-05 12:11:47 +11:00
Michel Pastor
a9fed2f9bc RCOutput: fix full throttle bug 2021-10-05 11:47:04 +11:00
Andrew Tridgell
c15221fd53 HAL_ChibiOS: fixed orientation of ICM42605 on QiotekZealotF427 2021-10-03 14:00:09 +11:00
Andrew Tridgell
6953778b4c HAL_ChibiOS: use micros16() for blheli pass-thru IRQ
saves some IRQ overhead, makes time handling more consistent
2021-10-02 18:26:39 +10:00
Andrew Tridgell
5714ee113f HAL_ChibiOS: added micros16() method 2021-10-02 18:26:39 +10:00
Andrew Tridgell
2aef3364bc HAL_ChibiOS: optimisation for AP_HAL::micros() on systems with 32 bit timers
most ChibiOS boards have a 32 bit timer. This optimisation reduces the
cost of micros() from 0.3us to 0.06us, which is significant in
interrupt handlers and for accurate timing. It takes advantage of the
timer being 32 bit with 1MHz clock
2021-10-02 18:26:39 +10:00
bugobliterator
dd9f513aa5 AP_HAL_ChibiOS: setup led control via lua script for HerePro 2021-09-30 08:52:27 +10:00
Iampete1
b6de44cc7b AP_HAL_ChibiOS: CubeOrange: add alt config for telem1 RTS CTS as GPIO 2021-09-29 19:55:21 +10:00
Iampete1
8ae5bc5ad0 AP_HAL_ChibiOS: hwdef: allow GPIO alt config 2021-09-29 19:55:21 +10:00
Iampete1
a96150a528 AP_HAL_ChibiOS: allow enabling GPIO as alt config 2021-09-29 19:55:21 +10:00
Iampete1
dc45a113f9 AP_HAL_ChibiOS:UARTDriver: allow re-defintion of RTS and CTS pins 2021-09-29 19:55:21 +10:00
Andrew Tridgell
e85594e423 HAL_ChibiOS: added KakuteH7 support 2021-09-29 18:11:04 +10:00
Andrew Tridgell
d1d5cd5d9f HAL_ChibiOS: fix sdcard on SPI bus on H7
the spiIgnore() call was hanging on H7. The ChibiOS submodule change
fixes that, but this patch is also needed to ensure we timeout any
spiIgnore calls correctly
2021-09-29 18:11:04 +10:00
Andrew Tridgell
2c2c85c4d8 HAL_ChibiOS: fixed polled SPI 2021-09-29 18:11:04 +10:00
Andrew Tridgell
27e93155f4 HAL_ChibiOS: fixed build on boards with OTG2 and no CAN interfaces 2021-09-29 18:11:04 +10:00
Iampete1
ade01f41d9 AP_HAL_ChibiOS: support digital write via IOMCU 2021-09-28 09:40:25 +10:00
Andrew Tridgell
4aa88d172c HAL_ChibiOS: adjust Swan-K1 parameters
limit down pitch to 15 degrees to prevent overspeed, and limit angular
rates to 100 deg/s
2021-09-27 21:21:53 +10:00
Peter Barker
43469955a9 AP_HAL_ChibiOS: rename GENERATOR_ENABLED to HAL_GENERATOR_ENABLED 2021-09-26 19:24:09 +10:00
Josh Henderson
27fa2e776d AP_HAL_ChibiOS: Hitec-Airspeed move from HAL_NO_GCS to HAL_GCS_ENABLED 2021-09-24 21:05:05 +10:00
Andrew Tridgell
6d093e56fb HAL_ChibiOS: added Nucleo-L496 AP_Periph target 2021-09-24 18:08:00 +10:00
Andrew Tridgell
0212e23cd3 HAL_ChibiOS: added support for STM32L496 MCUs
good MCU for AP_Periph
2021-09-24 18:08:00 +10:00
Peter Barker
1bd62362a4 AP_HAL_ChibiOS: move from HAL_NO_GCS to HAL_GCS_ENABLED 2021-09-22 21:37:00 +10:00
Andrew Tridgell
758ce2699e HAL_ChibiOS: added Hitec-Airspeed hwdef 2021-09-21 13:51:40 +10:00
Andrew Tridgell
7f59366cc0 HAL_ChibiOS: process AIRSPEED lines in hwdef.dat 2021-09-21 13:51:40 +10:00
Iampete1
bf695e4eeb AP_HAL_ChibiOS: atof to strtof 2021-09-15 17:36:12 +10:00
Hwurzburg
6dfbd9ce31 AP_HAL_ChibiOS: add batt mon defaults to Kakutef4 Mini 2021-09-14 10:14:20 +10:00
Iampete1
53ee7d861d AP_HAL_ChibiOS: remove safe PWM 2021-09-14 09:23:02 +10:00
Andrew Tridgell
88d77d0acd HAL_ChibiOS: change f303-PWM timers
fixes PWM on channels 3 and 4
2021-09-13 21:29:13 +10:00
Andrew Tridgell
adbaccaa08 HAL_ChibiOS: fixed RTSCTS flow control issue
this fixes an issue reported on MatekH743, but also applies to other
boards. When not using DMA if there have been bytes written before the
auto flow control detection was enabled then these must be cleared
from _total_written so the flow control detection can work correctly
2021-09-13 21:28:08 +10:00
mateksys
659286ee4f ChibiOS: add icm42605 as substitution for icm20602 2021-09-11 17:37:12 +10:00
Iampete1
529a3a9122 AP_HAL_ChibiOS: convert back to full range on IOMCU ONESHOT125 read 2021-09-08 18:01:50 +10:00
Andy Piper
e705f78b5e AP_HAL_ChibiOS: correct and compact Pixhawk4-bdshot build 2021-09-08 17:09:49 +10:00
Andy Piper
c92c75c9a6 AP_HAL_ChibiOS: bdshot version of CUAVv5 2021-09-08 17:09:49 +10:00
Andy Piper
bb41db8478 AP_HAL_ChibiOS: bdshot version of CUAVv5Nano 2021-09-08 17:09:49 +10:00
Andrew Tridgell
d29057a158 HAL_ChibiOS: added f303-PWM
for a PWM output node based on mRo f303 CAN node
2021-09-08 17:06:44 +10:00
Andrew Tridgell
2e4766fe54 HAL_ChibiOS: ensure HI_POWER periph is on 2021-09-07 10:40:44 +10:00
Andrew Tridgell
532396e5e6 REVERT: HAL_ChibiOS: Rename STM32F412 hw definition file
This reverts commit 5de6c690d8.

That commit broke the build for the affected board as the chibios
headers rely on the name of the file matching a ifdef
2021-09-07 10:37:43 +10:00
Andrew Tridgell
b77580f934 HAL_ChibiOS: avoid an issue with DCache init on H743
this fixes an issue found by Andy Piper where the H743 bootloader gets
a hard fault in the DCache enable code when SRAM1 is primary memory.

This is the simplest fix I could think of, and avoids the problem by
making DTCM the first segment in the bootloader.

Note that we can't use DTCM as first segment for main firmware since
we went to double precision EKF as the static variables don't fit
2021-09-06 18:23:03 +10:00
Hwurzburg
d0b67baefd AP_HAL_ChibOS: add pin defs for RSSI to KakuteF7 2021-09-06 10:12:48 +10:00
Hwurzburg
854697f870 AP_HAL_ChibiOS: update default params for SWAN-K1 2021-09-06 08:07:06 +10:00
Andrew Tridgell
8462ce4e2e HAL_ChibiOS: fixed GPIO lines for QioTekZealotF427 2021-09-03 18:16:43 +10:00
bugobliterator
4ecdf90470 AP_HAL_ChibiOS: add internal flash version of hwdef for H757I_EVAL 2021-09-01 17:10:53 +10:00
Siddharth Purohit
d484477a99 AP_HAL_ChibiOS: move to using PLL2_R_CK for QSPI 2021-09-01 17:10:53 +10:00
Siddharth Purohit
81dc237a19 AP_HAL_ChibiOS: move to using Instruction RAM with External Flash setup 2021-09-01 17:10:53 +10:00
Siddharth Purohit
1eb318c62b AP_HAL_ChibiOS: increase clock frequency for QSPI 2021-09-01 17:10:53 +10:00
Siddharth Purohit
39bd229279 AP_HAL_ChibiOS: remove dependency on Semaphores in QSPIDevice in BL 2021-09-01 17:10:53 +10:00
Siddharth Purohit
813e93a69c AP_HAL_ChibiOS: do not reset GPIO for boards with external flash 2021-09-01 17:10:53 +10:00
Siddharth Purohit
4ba2835de1 AP_HAL_ChibiOS: add config for supporting load from external flash 2021-09-01 17:10:53 +10:00
Siddharth Purohit
faedb12493 AP_HAL_ChibiOS: fix hwdef generation for bootloader supporting ext flash 2021-09-01 17:10:53 +10:00
Siddharth Purohit
6e81fcbed1 AP_HAL_ChibiOS: add support for things required to run QSPIDriver 2021-09-01 17:10:53 +10:00
Siddharth Purohit
a039711628 AP_HAL_ChibiOS: prepare H757I_EVAL for external flash programming 2021-09-01 17:10:53 +10:00
Andrew Tridgell
fdfa14c4c0 HAL_ChibiOS: adjust Swan-K1 tuning 2021-09-01 14:04:35 +10:00
Andrew Tridgell
f4ad8f6ef5 HAL_ChibiOS: fix for HAL_PWM_COUNT zero
reported by Mallikarjun
2021-09-01 13:05:20 +10:00
Andrew Tridgell
584fb7cd7b HAL_ChibiOS: use more USB buffers on higher end F7 chips 2021-08-31 10:12:00 +10:00
Andrew Tridgell
39f44147b8 HAL_ChibiOS: reduce the impact of UART DMA contention
this changes the heuristics for UART TX DMA allocation to greatly
reduce the chances of DMA contention causing long delays on other
devices

This fixes issues with FETTec driver output and gimbal status messages
as reported by Amilcar and OlliW. The problem is particularly bad when
no GPS is connected to GPS1 on fmuv3 and derived boards (such as
CubeBlack)

key changes:

 - remember the contention_counter across begin() calls, as the GPS
   calls begin with new baudrates regularly

 - added a is_shared() API to Shared_DMA, allowing the UART driver to
   avoid TX DMA on shared streams when at low baudrates.
2021-08-31 07:55:27 +10:00
Marek Łukasiewicz
5de6c690d8 HAL_ChibiOS: Rename STM32F412 hw definition file 2021-08-30 10:27:45 +10:00
bugobliterator
fd95c32d88 AP_HAL_ChibiOS: add CubeOrange Periph Heavy build 2021-08-27 09:17:30 -07:00
Andrew Tridgell
858a6b7e87 HAL_ChibiOS: allow FlywooF745 to build again 2021-08-27 07:45:58 +10:00
Marek S. Łukasiewicz
47f2e13024 HAL_ChibiOS: Add hwdef for BirdCANdy 2021-08-26 09:43:39 +10:00
bugobliterator
a32a32ab43 HAL_ChibiOS: change name for USART2_CTS pin in STM32H757xx.py 2021-08-25 10:09:23 +10:00
bugobliterator
21ad3c7ac1 AP_HAL_ChibiOS: add HereID board 2021-08-25 10:09:23 +10:00
Andrew Tridgell
e9427f1dae HAL_ChibiOS: removed remnants of CHIBIOS_ADC_MAVLINK_DEBUG 2021-08-25 07:11:31 +10:00
Andrew Tridgell
5bacd35eaa HAL_ChibiOS: review fixes 2021-08-25 07:11:31 +10:00
Andrew Tridgell
4cebcede31 HAL_ChibiOS: switched to fix allocation for BMDA streams on H7
this avoids issues with BDMA stream assignments due to bugs found
while testing boards with both I2C4 and SPI6
2021-08-25 07:11:31 +10:00
Andrew Tridgell
57e87b9820 HAL_ChibiOS: measure MCU temperature and ref voltage on H7
this uses ADC3 to measure the internal MCU temperature and the reference
voltage. This uses a currently unused BDMA channel
2021-08-25 07:11:31 +10:00
Andrew Tridgell
531ca4289e HAL_ChibiOS: switch to minimum scheduling delta of 10us
this avoids an issue with the ChibiOS 20.3 virtual timer
implementation that can result in a scheduling slip equal to the
system timer period.

Andy has been suggesting this change for a while. I resisted it as I
thought it would impact on soft-serial parsing, but it turns out it
doesn't.

Fixes issue #18383
2021-08-23 10:45:44 +10:00
Peter Barker
70aef84997 AP_HAL_ChibiOS: remove definitions of BOARD_PWM_COUNT_DEFAULT
No longer used
2021-08-20 10:51:19 +10:00
Andy Piper
0279c86f7f AP_HAL_ChibiOS: use hardware serial inversion pins on F4 boards that support it
change mamba F405 to active high as per betaflight
2021-08-19 17:05:42 +10:00
bugobliterator
d64621e349 HAL_ChibiOS: remove duplicate FLASH_RESERVE_START_KB from hwdef 2021-08-19 14:20:58 +10:00
bugobliterator
a8ab20abd9 AP_HAL_ChibiOS: allow sending stats via mavftp on AP_Periph 2021-08-19 14:20:58 +10:00
bugobliterator
4f65705c99 AP_HAL_ChibiOS: set proper name for CAN terminators on HerePro 2021-08-19 14:20:58 +10:00
bugobliterator
c7907bb8fb AP_HAL_ChibiOS: update config for dual gps heading in HerePro 2021-08-19 14:20:58 +10:00
Andy Piper
b78d848a5d AP_HAL_ChibiOS: add FlywooF745Nano board definition 2021-08-18 17:06:09 +10:00
Randy Mackay
a1eb84ebfd AP_HAL_ChibiOS: swap Pixhawk4 blue and red LEDs 2021-08-17 10:13:39 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
38a825c987 AP_HAL_ChibiOS: disable FETtec OneWire device driver 2021-08-13 16:22:37 +10:00
Andy Piper
68fd87091c AP_HAL_ChibiOS: output initializing from PWM banner when not available 2021-08-12 19:07:51 +09:00
Andy Piper
a51e58022f AP_HAL_ChibiOS: add accessor for reversed mask
allow mask updates to be disabled
send dshot commands even if armed - they will be accepted as long as throttle is at zero
only accept low-priority dshot commands while disarmed
apply reversed and reversible mask as servo channels
2021-08-12 19:00:51 +09:00
Andrew Tridgell
79b0571d7e HAL_ChibiOS: added Swan K1 support 2021-08-10 10:08:05 +10:00
Andy Piper
7dea029626 AP_HAL_ChibiOS: probe for compasses on FlywooF745 2021-08-10 09:35:06 +10:00
Leonard Hall
4e06140c6c AP_Hal_ChibiOS: Skyviper Parameters PSC_VELXY_FLTE 2021-08-10 08:33:56 +09:00
bugobliterator
81c5a99527 AP_HAL_ChibiOS: fix invalid use of FDCAN2_IT0_IRQn enum for ifdef 2021-08-10 07:25:05 +10:00
QioTek
30e23052a0 AP_HAL_ChibiOS: add Icm42605 as a backup to replace icm20649
AP_HAL_ChibiOS: add Icm42605 as a backup to replace icm20649
2021-08-10 07:00:52 +10:00
Andy Piper
f71b951cb2 AP_HAL_ChibiOS: return correct value for tx_pending(). 2021-08-04 17:26:18 +10:00
Andrew Tridgell
eb638a5267 HAL_ChibiOS: added CubeMX files for G431 and G441 2021-08-03 10:54:03 +10:00
Andrew Tridgell
bab0c1dfc7 HAL_ChibiOS: fixed build for single FDCAN G4 boards 2021-08-03 10:54:03 +10:00
Andrew Tridgell
8df99f0d15 HAL_ChibiOS: added G431 and G441 support 2021-08-03 10:54:03 +10:00
Andrew Tridgell
4df62ce719 HAL_ChibiOS: added mRo-M10095 G491 peripheral 2021-07-30 10:20:52 +10:00
Andrew Tridgell
4fce1ae092 HAL_ChibiOS: added G491 support 2021-07-30 10:20:52 +10:00
Hwurzburg
8b7b4d6796 AP_HAL_Chibios: Change RC in to RCINT to free a DMA channel 2021-07-28 17:24:06 +10:00
mateksys
08cd1171bf Tools: added MatekF765-SE to autobuild 2021-07-26 18:13:46 +10:00
Isaac Alich
35beae6037 AP_HAL_ChibiOS: Make final tweaks to MambaF405US-I2C 2021-07-25 17:44:22 +10:00
Isaac Alich
bdcb32456e AP_HAL_ChibiOS: Add support for MambaF405US-I2C based boards 2021-07-25 09:28:17 +10:00
Andrew Tridgell
d8b8facdd0 HAL_ChibiOS: fixed off by 1 bug in GPIO check 2021-07-24 18:18:57 +10:00
Andrew Tridgell
d302d3c90a HAL_ChibiOS: implement valid_pin() 2021-07-22 07:48:12 +10:00
Andrew Tridgell
bbcce717dc HAL_ChibiOS: stop defaulting relay pins to 54 and 55
this just leads to confusion
2021-07-22 07:48:12 +10:00
Andrew Tridgell
54e53ed71c HAL_ChibiOS: use is_GPIO() instead of BRD_PWM_COUNT 2021-07-22 07:48:12 +10:00
bugobliterator
48b8fdfd48 AP_HAL_ChibiOS: make linecoding objects static arrays 2021-07-21 17:06:41 +10:00
bugobliterator
d1b0438412 AP_HAL_ChibiOS: 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
honglang
ef109721fe AP_HAL_ChibiOS: hwdef: reorder CUAV-X7 IMUs
adjust the sequence of IMU sensors to have good performance.
2021-07-20 16:10:50 +10:00
Hwurzburg
0f2f6ccc80 AP_HAL_ChibiOS: add Link Quality reporting to RC protocols 2021-07-16 13:27:38 +10:00
Andrew Tridgell
a098c80671 HAL_ChibiOS: use DNA for node allocation on Matek GPS
this works as MSP is now active when a DNA server is not found
2021-07-15 14:38:11 +10:00
Andrew Tridgell
db1df9d3a8 HAL_ChibiOS: raise DMA contention threshold for H7 2021-07-15 11:31:55 +10:00
Andrew Tridgell
926d4ad71c HAL_ChibiOS: implement NOFIFO option for uarts 2021-07-15 11:31:55 +10:00
Andy Piper
60b0df0a25 AP_HAL_ChibiOS: only control widest pulse for dshot and oneshot 2021-07-14 17:50:06 +10:00
Andrew Tridgell
4f32fa537a HAL_ChibiOS: define HAL_HAVE_HARDWARE_DOUBLE on F765, F777 and H7 2021-07-10 07:20:41 +10:00
Andrew Tridgell
6c712c9001 HAL_ChibiOS: use SRAM1 as first ram segment on H7
this is needed to give the linker more than 128k for static variables
with double precision maths.
2021-07-10 07:20:41 +10:00
Andrew Tridgell
4ed0b03f35 HAL_ChibiOS: implement set_RTS/CTS_pin methods 2021-07-09 13:27:57 +10:00
mateksys
40200654af AP_HAL_ChibiOS: add MatekF765-SE hwdef as a variant of MatekF765-Wing 2021-07-08 13:01:44 +10:00
Andrew Tridgell
dd156d8da6 HAL_ChibiOS: run storage writes at 1kHz not 100Hz
The 100Hz update rate means there is a significant chance of an arming
failure after mission upload if you try to arm shortly after the
update.

Each mission item is 15 bytes, so with a 1200 item mission we need to
write 18000 bytes to storage. At 100Hz, with 8 bytes per storage line,
that takes over 22 seconds.
2021-07-07 17:32:21 +10:00
Andy Piper
e9f0c59e61 AP_HAL_ChibiOS: re-enable LEDs on MatekF405-bdshot 2021-07-06 10:10:04 +10:00
Andrew Tridgell
7ac895db77 HAL_ChibiOS: always send zero DShot when disarmed
this prevents a misconfigured system (for example SERVOn_REVERSED=1)
from running a motor while disarmed.

See https://discuss.ardupilot.org/t/plane-4-1-0-beta/72434/34?u=tridge
2021-07-03 11:37:28 +10:00
Siddharth Purohit
9b2359b34c AP_HAL_ChibiOS: allow option to enable ChibiOS features in bootloader 2021-07-02 08:50:16 +10:00
Siddharth Purohit
1a1dd76a4c AP_HAL_ChibiOS: add initial herepro hwdef 2021-07-02 08:50:16 +10:00
Andrew Tridgell
b4b02b4ffc HAL_ChibiOS: use nargs='+' for chibios_hwdef.py 2021-07-01 09:33:16 +10:00
willpiper
ce1ee6334f AP_HAL_ChibiOS: addressed reviewed comments 2021-07-01 09:33:16 +10:00
willpiper
fb4a4e609a AP_HAL_ChibiOS: added --extra-hwdef option 2021-07-01 09:33:16 +10:00
Siddharth Purohit
245f9d21b3 AP_HAL_ChibiOS: update clock config for FDCAN and External Flash 2021-06-30 19:34:36 +10:00
Siddharth Purohit
28dbbc2bc4 AP_HAL_ChibiOS: do not even initialise empty qspi driver 2021-06-30 19:33:17 +10:00
Siddharth Purohit
d3e081c100 AP_HAL_ChibiOS: add support for entering XIP mode 2021-06-30 19:33:17 +10:00
Siddharth Purohit
263fbbbdb0 AP_HAL_ChibiOS: add echo safe debug flag bouncebuffer 2021-06-30 19:33:17 +10:00
Siddharth Purohit
3b3cc0b194 AP_FlashIface: add initial files for AP_FlashIface library 2021-06-30 19:33:17 +10:00
Siddharth Purohit
c962292bae AP_HAL_ChibiOS: add support for H757I Evaluation board 2021-06-30 19:33:17 +10:00
Siddharth Purohit
abc26d1993 AP_HAL_ChibiOS: add QSPI Device Driver in HAL 2021-06-30 19:33:17 +10:00
Siddharth Purohit
4cb48da984 modules: update ChibiOS 2021-06-30 19:33:17 +10:00
Siddharth Purohit
0e4fbe7c46 AP_HAL_ChibiOS: allow using internal compasses onboard 2021-06-30 17:06:02 +10:00
Siddharth Purohit
882b01bae3 AP_HAL_ChibiOS: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS 2021-06-24 09:02:42 +10:00
bugobliterator
7e8f11b749 AP_HAL_ChibiOS: allow embedded bootloader to be excluded
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-06-24 08:36:30 +10:00
Andy Piper
9e99f724e5 AP_HAL_ChibiOS: add 1Hz update_channel_masks()
Send dshot commands in update function
2021-06-22 09:55:27 +10:00
Andrew Tridgell
ed93caadd5 HAL_ChibiOS: fixed build of VRUBrain-v51
overflowing flash
2021-06-21 16:48:10 -07:00
Andy Piper
3386cbb0df AP_HAL_ChibiOS: add OREO support to CubeSolo.
add back RunCam and Spektrum support to MatekF405-Wing
remove gripper support from MatekF405-Wing
2021-06-16 20:25:58 +10:00
Samuel Tabor
3fc58de7ce AP_HAL_ChibiOS: Restore soaring on F405-Wing board. 2021-06-16 09:15:03 +10:00
Andy Piper
d36b4bfa3f AP_HAL_ChibiOS: make sure all MatekF405 bi-dir outputs get a DMA channel
only allow (b)dshot on M1-4 to get full DMA on USART3 and UART4
2021-06-15 09:49:02 +10:00
Peter Barker
f780a5c358 AP_HAL_ChibiOS: fix infinite loop for large SPI transfers
len is 32 bits; i may integer-wrap back to zero at 65535+1
2021-06-14 09:13:49 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
d363cbadcc AP_HAL_ChibiOS: Disable un-needed hardware drivers in SkyViper builds
these boards have integrated ESCs with no telemetry
2021-06-09 21:42:51 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
8593672f4c AP_HAL_ChibiOS: fix compilation when HAL_WITH_ESC_TELEM == 0 2021-06-09 21:42:51 +10:00
Tom Pittenger
7a004656a2 AP_HAL_ChibiOS: use HAL_ENABLE_LIBUAVCAN_DRIVERS instead of HAL_MAX_CAN_PROTOCOL_DRIVERS 2021-06-09 18:36:18 +10:00
Tom Pittenger
1feec460c4 AP_HAL_ChibiOS: enable BattMon MPPT PacketDigital to CubeOrange-periph 2021-06-09 18:36:18 +10:00
Tom Pittenger
f764bd6547 AP_HAL_ChibiOS: disable EventSource only when CH_CFG_USE_EVENTS is false
(cherry picked from commit 6e7542a70ca2343ab8d18470deaf5fc2d27390af) from bugobliterator
2021-06-09 18:36:18 +10:00
Andrew Tridgell
f09abc705b HAL_ChibiOS: bring us to 18k free for MatekF405-Wing plane build 2021-06-09 18:07:00 +10:00
Peter Barker
09e82e52e1 AP_HAL_ChibiOS: disable AP_EFI on MatekF405-Wing and omnibusf4pro 2021-06-08 14:08:34 +10:00
Peter Barker
3ba57fed89 AP_HAL_ChibiOS: add support for AP_Logger into AP_Periph 2021-06-08 09:57:55 +10:00
Andrew Tridgell
67fea9f2f8 HAL_ChibiOS: fixed DMA disable on contention
this fixes a problem with the automatic DMA disable on DMA contention
in UARTs. This fixes issue #14581

the problem was that while tx_dma_enabled was correctly set to false,
it would keep looping inside write_pending_bytes_DMA() if the data
arrived in the write buffer at a faster rate than it could be sent
out, which did happen with a mavlink stream rate of 4Hz. This means it
kept using DMA even with tx_dma_enabled set to false. The result was
that the automatic flow control code never got a chance to run and we
didn't switch back to non-DMA for these low baudrate contended UARTs
2021-06-05 19:03:03 +10:00
Andrew Tridgell
3128d71aac HAL_ChibiOS: display uart even when not initialised
don't rely on thread allocation for uart info display
2021-06-05 18:52:33 +10:00
Andrew Tridgell
c34d8e80e9 HAL_ChibiOS: fixed serial info indexing for EMPTY uarts 2021-06-05 18:52:33 +10:00
Andrew Tridgell
6fab8feeae HAL_ChibiOS: implement uart_info per-uart
this allows for some UARTs to be of EMPTY type
2021-06-05 18:52:33 +10:00
Andrew Tridgell
135a4d2c83 HAL_ChibiOS: fixed order and labelling of @SYS/uarts.txt 2021-06-05 18:52:33 +10:00
Andrew Tridgell
a895bc1846 HAL_ChibiOS: reduce flash on VRBranin-v51 2021-06-05 13:05:30 +10:00
honglang
847ce3b311 AP_HAL_ChibiOS: CUAV X7/Nora: use icm42688 instead of bmi088 2021-06-03 13:57:27 +10:00
CUAVcaijie
0ff38e1379 HAL_ChibiOS: CUAV ICM20649 on SPI6 bus replaced by ICM20689
alternative IMUs for Nora and X7
2021-06-02 10:49:55 +10:00
Andrew Tridgell
8701932670 HAL_ChibiOS: return zeros in dma.txt on first fetch 2021-06-01 11:36:07 +09:00
Andrew Tridgell
5529ba36e2 HAL_ChibiOS: added HolybroGPS AP_Periph port 2021-06-01 09:19:51 +10:00
Andrew Tridgell
23c0f257b6 HAL_ChibiOS: default off serial protocols in AP_Periph
this allows for a GPS on high numbered ports
2021-06-01 09:19:51 +10:00
Andrew Tridgell
ac1e03e16a HAL_ChibiOS: move heater gains on CubeOrange to hwdef.dat
this makes it easier for users using apjtool to override params
2021-06-01 08:07:49 +10:00
Andrew Tridgell
244d896bfb HAL_ChibiOS: enable heater on Pix32v5 2021-06-01 08:07:49 +10:00
bugobliterator
ea1795d6fe AP_HAL_ChibiOS: ensure ToneAlarm is not disabled when UAVCAN is available 2021-05-31 07:34:02 +10:00
Michael Oborne
126456742a Hwdef: add Joey 2021-05-27 14:19:55 +10:00
Andrew Tridgell
91dce554d1 HAL_ChibiOS: removed unnecessary USB product IDs from boards 2021-05-27 09:30:30 +09:00
Andrew Tridgell
de3a3f7edf HAL_ChibiOS: fixed case of Pix32v5 USB product string 2021-05-27 09:30:30 +09:00
Siddharth Purohit
ad9a8c8bd9 AP_HAL_ChibiOS: record error states in CANFDIface and CANIface 2021-05-26 18:25:01 +10:00
Michel Pastor
b083848ae7 AP_HAL_ChibiOS: fix comments 2021-05-26 17:59:04 +10:00
Michel Pastor
a148849ec3 AP_HAL_ChibiOS: RCOutput_serial: fix comment for set_reversible_mask() 2021-05-26 17:59:04 +10:00
Andrew Tridgell
fced5271af HAL_ChibiOS: expand pin map of G474 to cover 64 pin parts 2021-05-25 09:35:25 +10:00
Andy Piper
a7a9fa93f0 AP_HAL_ChibiOS: correct enabled mask for motor channel output 2021-05-24 07:57:51 +09:00
Dr.-Ing. Amilcar do Carmo Lucas
fc7e242bae AP_HAL_ChibiOS: Fix typo (NFC) 2021-05-21 09:43:10 +10:00
Peter Barker
79809b60aa AP_HAL_ChibiOS: rename f103-periph/hwdef.dat to .inc (f303 too) 2021-05-20 17:23:17 +10:00
Siddharth Purohit
5bcc713985 AP_HAL_ChibiOS: add omnibusf4pro config with one compass and gps 2021-05-19 18:04:20 +10:00
Peter Barker
31ef6db937 AP_HAL_ChibiOS: remove redundant HAL_LOGGING_ENABLED from AP_Periph hwdefs 2021-05-19 17:38:47 +10:00
Andrew Tridgell
ebe858f762 HAL_ChibiOS: auto-set HAL_LOGGING_ENABLED for AP_Periph builds 2021-05-19 17:38:47 +10:00
Peter Barker
dbf5357592 AP_HAL_ChibiOS: base use of InternalError on build type not HAL_LOGGING_ENABLED
Really not sure why we were using HAL_LOGGING_ENABLED here
2021-05-19 17:38:47 +10:00
Peter Barker
7d8c5757d6 AP_HAL_ChibiOS: move from HAL_NO_LOGGING to HAL_LOGGING_ENABLED 2021-05-19 17:38:47 +10:00
Andy Piper
6a21446bac AP_HAL_ChibiOS: correct KakuteF4Mini board id 2021-05-18 10:02:36 +10:00
Andy Piper
25be0cf4b4 AP_HAL_ChibiOS: pull the right pin for KakuteF4 buzzer 2021-05-18 10:02:36 +10:00
vierfuffzig
393ac386cc AP_HAL_ChibiOS: add revo-mini-i2c alt configs 2021-05-18 09:53:38 +10:00
Andy Piper
f8a59a4a72 AP_HAL_ChibiOS: set inbound bitrate correctly for bi-directional dshot1200 2021-05-14 07:23:59 +10:00
Andy Piper
b33b07e43f AP_HAL_ChibiOS: fixes for KakuteF4Mini 2021-05-12 17:26:35 +10:00
Andy Piper
387812bb01 AP_HAL_ChibiOS: avoid startup scream on KakuteF4 and variants 2021-05-12 17:26:35 +10:00
Andy Piper
f0ff4a2cd4 AP_HAL_ChibiOS: hwdef for KakuteF4Mini 2021-05-12 17:26:35 +10:00
Andy Piper
6447bd1cdd AP_HAL_ChibiOS: use AP_ESC_Telem to record erpm data and error rate
don't output RPM data if bi-dir dshot is not enabled
2021-05-12 17:01:11 +10:00
Andrew Tridgell
e1a5d73504 HAL_ChibiOS: fixed DTCM comment for F732 2021-05-09 06:44:19 +10:00
Andrew Tridgell
b7fffe35f9 HAL_ChibiOS: added FreeflyRTK GPS build
a F732 based GPS peripheral
2021-05-09 06:44:19 +10:00
Andrew Tridgell
4d661911e5 HAL_ChibiOS: allow adjustment of F7 I2C timing
needed for F732
2021-05-09 06:44:19 +10:00
Andrew Tridgell
6b9e4161cb HAL_ChibiOS: removed UDID_START from all MCU defs
use UID_BASE from ChibiOS headers
2021-05-09 06:44:19 +10:00
Andrew Tridgell
36d5c98e96 HAL_ChibiOS: default UDID_START to UID_BASE 2021-05-09 06:44:19 +10:00
Andrew Tridgell
2dc4c50953 HAL_ChibiOS: fixed default OTP address and size 2021-05-09 06:44:19 +10:00
Andrew Tridgell
22f7218acf HAL_ChibiOS: support 512k F7 parts for flash 2021-05-09 06:44:19 +10:00
Andrew Tridgell
03cae60471 HAL_ChibiOS: added STM32F732 support 2021-05-09 06:44:19 +10:00
Andrew Tridgell
f1de0c7fe2 HAL_ChibiOS: added F732 16MHz CubeMX config 2021-05-09 06:44:19 +10:00
Andy Piper
f6b9479542 AP_HAL_ChibiOS: add accessor for UART DMA status 2021-05-05 17:50:42 +10:00
Andy Piper
dbd9b3a9ae AP_HAL_ChibiOS: ESC telemetry is orthogonal to RPM telemetry 2021-05-05 17:41:24 +10:00
Andy Piper
384ecd4a5b AP_HAL_ChibiOS: check command queue is empty before arming 2021-05-05 17:41:24 +10:00
Andy Piper
66fadf53a1 AP_HAL_ChibiOS: remove dshot calibration step 2021-05-05 17:41:24 +10:00
Andy Piper
f3f3056dba AP_HAL_ChibiOS: add support for dshot commands to rcout
add support for dshot beepcodes through tonealarm
add support for dshot reversal and command queue
add support for dshot commands to all channels
correctly manage channel enablement in PWM groups
Correctly send dshot commands when using bi-dir dshot
allow reversible settings to be changed
ChibiOS: allow more than one type of ESC for dshot commands
Only execute reverse/reversible commands on BLHeli
add support for checking active ESCS
mark ESCs active when bdshot telemetry is returned
allow dshot alarm to be disabled
allow priroitized dshot commands
2021-05-05 17:41:24 +10:00
Andrew Tridgell
8764d69e2c HAL_ChibiOS: default SDMMC clock to 12.5MHz max on H7
this makes microsd considerably more reliable
2021-05-02 13:04:42 +10:00
Andrew Tridgell
f9866dc27e HAL_ChibiOS: fixed LED_SAFETY attached to FMU with recent DShot updates 2021-04-30 17:26:33 +10:00
QioTek
ca6102ed28 f103Qiotek_Periph
f103Qiotek_Periph
2021-04-24 07:48:40 +10:00
QioTek
1de3135d14 HAL_ChibiOS: added f103-QiotekPeriph hwdef (#1)
HAL_ChibiOS: added f103-QiotekPeriph
2021-04-24 07:48:40 +10:00
Andy Piper
42ebc13e6c Revert "AP_HAL_ChibiOS: support 6 bi-directional dshot channels on the MatekH743"
This reverts commit f9d166edf6.
2021-04-22 18:39:06 +10:00
Andrew Tridgell
6764f039ca HAL_ChibiOS: added support for the new H7 luminousbee version 5 2021-04-21 20:41:34 +10:00
Andy Piper
f9d166edf6 AP_HAL_ChibiOS: support 6 bi-directional dshot channels on the MatekH743 2021-04-21 17:18:53 +10:00
Andy Piper
558631918c AP_HAL_ChibiOS: add %age of total to thread statistics
don't display meaningless thread info
2021-04-21 17:14:11 +10:00
Andrew Tridgell
961e538cc0 HAL_ChibiOS: reduced flash usage on MatekF405
overflowing by 1k
2021-04-21 07:12:55 +10:00
Andy Piper
4bb4e2fb22 AP_HAL_ChibiOS: adjust GPIO settings for serial passthru 2021-04-20 10:35:22 +10:00
Andrew Tridgell
4118a3eb03 HAL_ChibiOS: check bus owner on all SPI transfers 2021-04-16 10:02:02 +10:00
Andrew Tridgell
9990404e64 HAL_ChibiOS: fixed G4 analog input build
use right resolution in ADC peripheral for ADCv3
2021-04-14 13:11:58 +10:00
Andrew Tridgell
eca8cf3414 HAL_ChibiOS: save flash on boards that are critically low
move to single OSD font on some boards

this saves about 12k on these boards. They were also extremely close
to overflowing flash, under 2k on some

Now that we support having an OSD font on the microSD card (where
available) we can reduce built in fonts without a large functionality
impact

This also disables some less used features on these boards:

 - generator support
 - object avoidance path planning
 - precision landing

This will give us some breathing room on these boards
2021-04-13 09:58:59 +10:00
Andrew Tridgell
47a5d78397 HAL_ChibiOS: disable DMA on high contention UARTs
switch to interrupt driven when in high contention
2021-04-08 06:53:48 +10:00
anbello
77998fb5ba revo-mini bdshot 2021-04-07 17:44:29 +10:00
anbello
dcb90c7bdb revo-mini ext i2c 2021-04-07 17:26:56 +10:00
Andy Piper
be39e1f297 AP_HAL_ChibiOS: correct current scale for BeastH7 and BeastF7 2021-04-07 17:25:19 +10:00
Andy Piper
aa0ec0f091 AP_HAL_ChibiOS: optimize BeastH7 compilation 2021-04-07 17:25:19 +10:00
Iampete1
ec90ab13f4 AP_HAL_ChibiOS: RCOutput: print DMA alocation errors 2021-04-07 17:24:25 +10:00
Iampete1
15509f314c AP_HAL_ChibiOS: RCOuput: LED setup re-work 2021-04-07 17:24:25 +10:00
Andrew Tridgell
61c829d624 HAL_ChibiOS: only use SRAM4 for DMA for now
we can enable others when we have an allocation interface that
specifies the peripheral type
2021-04-07 17:10:45 +10:00
Iampete1
2377d33417 AP_HAL_ChibiOS: H7 set SRAM4 to no cache and allow DMA 2021-04-07 17:10:45 +10:00
Andrew Tridgell
4cddb12508 HAL_ChibiOS: fixed DMA sent calculation on UART DMA timeout 2021-04-07 07:34:45 +10:00
Andy Piper
b3dbc21fa7 AP_HAL_ChibiOS: KakuteF7 bdshot configuration, tested by yaapu 2021-04-06 11:33:53 +10:00
Andy Piper
721850d00a AP_HAL_ChibiOS: fix dshot150. 2021-04-06 10:24:04 +10:00
Andy Piper
f6b1e15b0e AP_HAL_ChibiOS: optimize bdshot ISRs 2021-04-06 10:24:04 +10:00
Andy Piper
cb3b37d181 AP_HAL_ChibiOS: ensure that non-dshot modes get regular 1Khz updates 2021-04-06 10:24:04 +10:00
Andy Piper
ea3291520c AP_HAL_ChibiOS: add fast cycle calibration step 2021-04-06 10:24:04 +10:00
Andy Piper
74d4af9ac9 AP_HAL_ChibiOS: reset bdshot IC correctly
don't allow dshot rates below 800Hz.
set pin speed to MID1 to avoid glitching
don't run receive pulses on a timer
2021-04-06 10:24:04 +10:00
Andy Piper
477ff72214 AP_HAL_ChibiOS: allow dshot rate to be set so as to both regularize the output as well as
allow faster rates synchronized to the loop rate
synchronize 1Khz and use Betaflight definition for prescaler
adjust dshot bitrates
don't allocate IC DMA if already allocated
cancel DMA pulses correctly
try really hard to align pulses with push() by making each dshot pulse event driven
2021-04-06 10:24:04 +10:00
Andrew Tridgell
45477f6063 HAL_ChibiOS: fixed default MSP port for f405-MatekGPS 2021-04-05 11:02:32 +10:00
Andrew Tridgell
ca948171fe HAL_ChibiOS: fixed ADC error on revXY STM32H7 boards
with the new ChibiOS revision we were configuring for newer revisions
of the H7, which meant that we changed the ADC config. This broke ADC
readings on revX and revY H7 MCUs.

This PR fixes it in two ways:

 1) change ChibiOS config to assume XY config chips

 2) use 16 bit ADC for H7, which means the chip rev doesn't matter,
    and also gives us 16x the resolution for ADC readinga, so we can
    read smaller voltage and current values
2021-04-05 11:01:03 +10:00
willpiper
94bdca7f6f AP_HAL_ChibiOS: tidy up beastF7 DMA channels 2021-04-04 16:51:19 +10:00
Andrew Tridgell
f0d6b79e8a HAL_ChibiOS: fixed skyviper builds with BMM150 2021-03-30 13:31:50 +09:00
Peter Barker
cfacb5d34d AP_HAL_ChibiOS: split out a calculate_thread_priority method 2021-03-30 10:49:06 +11:00
Iampete1
7c96522e44 AP_HAL_ChibiOS: add semaphore to AnalogIn::channel to make it thread safe 2021-03-30 10:44:43 +11:00
Andrew Tridgell
07313ae71d HAL_ChibiOS: fixed 2nd CAN inferface on F4/F7
CAN1_TX_IRQn is an enum not a defined. This was broken by the recent
change to support different CAN ordering
2021-03-29 20:14:29 +11:00
Andrew Tridgell
88e277420f AP_HAL_ChibiOS: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell
2d4dfe8a2a HAL_ChibiOS: fixed (unused) FF_FS_TIMEOUT
this change was harmless as we don't define FF_FS_REENTRANT
2021-03-23 12:01:20 +11:00
Andrew Tridgell
ffb2876f58 HAL_ChibiOS: disable unused ChibiOS features 2021-03-23 12:01:20 +11:00
Andrew Tridgell
744a2fe535 HAL_ChibiOS: use uint32_t for bit timing in passthru
we should not use systime_t as it may be 16 bit
2021-03-23 12:01:20 +11:00
Andrew Tridgell
c3d16cf2e2 HAL_ChibiOS: use defines for G4 messageram
review fix
2021-03-23 12:01:20 +11:00
Andrew Tridgell
b4e4d48e52 HAL_ChibiOS: switch OMNIBUSF7V2 timer for RCIN
this avoids a conflict with shared interrupt on TIM1
2021-03-23 12:01:20 +11:00
Andrew Tridgell
ff31e10d9e HAL_ChibiOS: ensure that RCIN DMA channel is not shared
RCIN DMA cannot be shared as it runs all the time
2021-03-23 12:01:20 +11:00
Andrew Tridgell
2842730868 HAL_ChibiOS: fixed F3 CAN build 2021-03-23 12:01:20 +11:00
Andrew Tridgell
2fc7ea1a8b HAL_ChibiOS: added G4-ESC hwdef 2021-03-23 12:01:20 +11:00
Andrew Tridgell
353eca79b6 HAL_ChibiOS: fixed 32/64 micros bug in CAN select() 2021-03-23 12:01:20 +11:00
Andrew Tridgell
bac9b27a3f HAL_ChibiOS: enable analogin on G4 2021-03-23 12:01:20 +11:00