Commit Graph

3167 Commits

Author SHA1 Message Date
Andy Piper 3caf336b0f AP_HAL_ChibiOS: switch BetaFPV-F405, BeastF7 and BeastF7v2 to minimize_fpv 2024-01-10 18:32:53 +11:00
Iampete1 416a41e756 AP_HAL_ChibiOS: Only test SPI clock if SPI is enabled 2024-01-10 13:46:40 +11:00
Maxim Buzdalov 809e15acf4 hwdef: Add pinout for Flywoo GOKU F745 AIO v1.2 2024-01-09 10:57:29 +11:00
bugobliterator 57ccac308d AP_HAL_ChibiOS: Add readme file to Here4 FC 2024-01-08 07:05:34 +11:00
bugobliterator ec15951b06 AP_HAL_ChibiOS: add hwdef for Here4FC 2024-01-08 07:05:34 +11:00
bugobliterator bea8b25c5d AP_HAL_ChibiOS: add support for early initialisation of WATCHDOG
This is needed for Ardupilot Vehicle builds running on AP_Periph bootloaders
2024-01-08 07:05:34 +11:00
Andrew Tridgell 6ea2c28a4d HAL_ChibiOS: fixed DMA on SPI on H743
this fixes DMA failures affecting IMUs on H743. The reason for the
failure is not yet clear, but this reverts back to our old stragegy of
always using the bouncebuffer on H7 as a quick workaround
2024-01-07 19:10:25 +11:00
Andrew Tridgell c54aa0241a HAL_ChibiOS: added mem_is_dma_safe() function
used for bouncebuffer code and in FATFS code
2024-01-05 06:52:11 -08:00
Peter Barker c557e67aff chibios_hwdef.py: populate intdefines as part of parsing, not output 2024-01-04 20:29:14 +11:00
jamming 6fe7a1408e hwdef: Add support for BMI088 on Pixhawk6c 2024-01-04 07:17:24 +11:00
Peter Barker ed1ae3b5f1 chibios_hwdef.py: add quiet option to remove parsing debug output 2024-01-03 18:04:37 +11:00
Andrew Tridgell cc8c671cb7 HAL_ChibiOS: don't link evtimer in chibios_board.mk 2024-01-03 12:14:47 +11:00
Andrew Tridgell 418897c443 HAL_ChibiOS: removed old lwip options 2024-01-03 12:14:47 +11:00
Andrew Tridgell 936bbeda88 AP_HAL_ChibiOS: added PRIORITY_NET 2024-01-03 12:14:47 +11:00
Andrew Tridgell 9456b585fa HAL_ChibiOS: don't link lwip bindings from ChibiOS 2024-01-03 12:14:47 +11:00
Andrew Tridgell 5748adbf44 HAL_ChibiOS: allow for networking without ethernet 2024-01-03 12:14:47 +11:00
Peter Barker d5ddbad27f HAL_ChibiOS_Class: adjust for dsp disappearing from HAL constructor 2024-01-03 11:45:31 +11:00
Andrew Tridgell c0d0aeee86 HAL_ChibiOS: reimplement CAN with BinarySemaphore 2024-01-03 07:37:05 +11:00
Andrew Tridgell 8a027eddb0 HAL_ChibiOS: implement BinarySemaphore
and removed event handles
2024-01-03 07:37:05 +11:00
Andrew Tridgell c2011570f7 HAL_ChibiOS: use chSysLock for CAN critical section
this avoids an assert in some code paths that combine with hrt
functions
2024-01-03 07:37:05 +11:00
Peter Barker 467daeb4a6 hwdef: tidy checking of is-bootloader-build 2024-01-02 13:00:15 +11:00
alexklimaj c53d3ae09b hwdef: ARK_CANNODE add rangefinder 2024-01-02 11:58:35 +11:00
Andrew Tridgell 0a8faa83d9 HAL_ChibiOS: allow for up to 12.5MBps on H7 UARTs
use 8x oversampling instead of 16x oversampling
2024-01-02 08:12:37 +11:00
alexklimaj e9f51a96cb hwdef: ARKV6X add USART6 to serial list 2024-01-01 13:17:06 +11:00
Andrew Tridgell 1e626a70cb hwdef: added MatekL431-Serial 2023-12-27 05:13:14 -07:00
Andrew Tridgell 46171a7c79 hwdef: give a more useful error message on no bootloader 2023-12-27 21:45:13 +11:00
Andrew Tridgell d2d2067f1c HAL_ChibiOS: fixed micros and millis on boards without 1MHz clock 2023-12-24 10:10:14 +11:00
Andrew Tridgell 4a59097b5e HAL_ChibiOS: use C implemention of div1000 2023-12-21 09:09:11 +11:00
bugobliterator cf481a8952 AP_HAL_ChibiOS: allow option to enable scripting on CubeRedSecondary 2023-12-21 07:30:25 +11:00
Andrew Tridgell 65cae116a2 hwdef: fixed build of CarbonixL496 2023-12-20 20:07:35 +11:00
Andrew Tridgell a94484d770 HAL_ChibiOS: fixed SPI build on F1xx
F1 does not have palReadLineMode()
2023-12-20 19:33:12 +11:00
Andrew Tridgell 6dbc3b6a70 HAL_ChibiOS: speed up millis(), micros64() etc
these use faster primitives and an assembly division by 1000 to get
between 2x and 3x speedup on these critical calls
2023-12-19 11:47:24 +11:00
Thomas Watson 2aa4ee8ba7 AP_HAL_ChibiOS: remove references to legacy UART order from hwdefs 2023-12-19 06:53:15 +11:00
Thomas Watson dc4438d0e3 AP_HAL_ChibiOS: eliminate legacy UART ordering/references
SERIAL_ORDER has been around for a few years now and UART_ORDER is
rejected by the hwdef script, so support for UART_ORDER and associated
processing in the hwdef script is removed, along with the order
conversion script.
2023-12-19 06:53:15 +11:00
Thomas Watson 507ab623b2 AP_HAL_ChibiOS: pass UARTs to AP_HAL in SERIALn order 2023-12-19 06:53:15 +11:00
Andy Piper ea76c0bd01 AP_HAL_ChibiOS: ensure dshot commands are send to all FMU channels when IOMCU is present 2023-12-18 19:02:52 +11:00
Andy Piper d2a48148dd AP_HAL_ChibiOS: allow bdshot iomcu on non-bdshot fmu 2023-12-18 19:02:52 +11:00
Andy Piper 2415c2998b AP_HAL_ChibiOS: allow dshot to be used even if bdshot was specified.
correct zero handling in bdshot decoding
2023-12-18 19:02:52 +11:00
Andy Piper 8c03c9e4bf AP_HAL_ChibiOS: cache values of io_dshot() and io_enabled()
enabled shared_up_dma to be fully compiled out
address some minor review comments
2023-12-18 19:02:52 +11:00
Andy Piper a5b6c3b5ef AP_HAL_ChibiOS: utility to print out bdshot encoded data 2023-12-18 19:02:52 +11:00
Andy Piper 9f30d01561 AP_HAL_ChibiOS: bdshot for f103 iofirmware
add support to tell if shared DMA channel is actually shared
avoid starting and stopping the timer peripheral with bdshot
ensure that rcout DMA allocation and deallocation happens entirely within the lock
increase rcout thread working area for bdshot
fix mode mask that is sent to the iomcu
ensure iomcu rcout thread gets timeouts for callbacks
control bdshot input and output line levels on f103
use input capture channel pairs to read rising and falling edges of telemetry on f103
reset channel pairs together on iomcu
generalize the bdshot input path to support suitable buffer sizes for iomcu
generalize DMAR reading of CCR registers to read two at a time on iomcu
enable bi-directional dshot channels on PWM1-4 on iomcu
add methods to directly access erpm values from rcout
update erpm mask and esc telemetry correctly for firmware supporting dshot
add support for propagating bdmask to iomcu
dshot commands to all channels need to be aware of iomcu
ensure esc type is propagated to iomcu
cope with iomcu channel numbering when using EDT
ensure pwm driver is reset properly for dshot commands on iomcu
correctly reset pwm for dshot commands
correctly mask off bdshot bits going to iomcu
don't reset GPIO modes on disabled lines
don't reset pwm_started when sharing DMA channels
set thread name on iomcu rcout and reduce stack size on iomcu
ensure that bdshot pulses with no response are handled correctly
correctly setup DMA for input capture on f103
deal with out of order captured bytes when decoding bdshot telemetry
ensure DMA sharing on f103 does not pull lines low
only disable the timer peripheral when switching DMA channels on iomcu
add support for waiting for _UP to finish before proceeding with dshot
re-order iomcu dshot channels to let TIM4_UP go first
ensure that a cascading event will always come when expected on rcout
allow timeouts when using cascading dshot
always rotate telemetry channel after trying to capture input
cater for both in order and out-of-order bdshot telemetry packets
cope with reversed packets when decoding bdshot telemetry
ensure UP DMA channel is fully free on iomcu before starting next dshot cycle
refactor rcout for iofirmware into separate file
2023-12-18 19:02:52 +11:00
tomas.vrsansky e6feebb2fb AP_HAL_ChibiOS: add hwdef files for Airvolute DCS2 onboard FMU
added ethernet config to hwdef
updated readme.md
hwdef: MAC parameters redefined according to ChibiOS
hwdef: add default params for Airvolute DCS2 on board FMU
update according to new changes in ChibiOS MAC driver
added defines to support ethernet communication
bootloaders: Airvolute-DCS2
2023-12-12 11:09:09 +11:00
Andrew Tridgell a4fb05de95 HAL_ChibiOS: increase LWIP windows
now getting 6.8MByte/s with NET_TESTS=4
2023-12-11 18:00:38 +11:00
Andrew Tridgell 28885dca4c HAL_ChibiOS: adjust buffer sizes
this fixes issues with TCP accepts being lost in web server
2023-12-11 18:00:38 +11:00
Andrew Tridgell f603f045b5 HAL_ChibiOS: make lwip debugging easier
use ap_networking_printf wrapper
2023-12-11 18:00:38 +11:00
Andrew Tridgell 436c60c7de HAL_ChibiOS: defaults to 50 socket limit
makes for more useful web server
2023-12-11 18:00:38 +11:00
bugobliterator 00a65632eb AP_HAL_ChibiOS: add support for swapping ICM42688 with ICM45686 2023-12-06 13:34:52 +11:00
bugobliterator e34e9c61aa AP_HAL_ChibiOS: disable core m4 use to silence the chibios asserts
checking allocation of peripherals
2023-12-06 13:31:26 +11:00
Andy Piper cca8f8219a hwdef: new variant of KakuteH7 using ICM42688 2023-12-05 11:41:08 +11:00
Andy Piper 0cc5cf7d2d AP_HAL_ChibiOS: allow betaflight converter to run on output from "dump hardware" 2023-12-05 11:38:53 +11:00
Martin Luessi 6e417f1d0c RADIX2HD: Set HAL_I2C_INTERNAL_MASK 2023-12-05 11:37:57 +11:00
jfbblue0922 c16e1a28df AP_HAL_ChibiOS/hwdef: changed defaults parm in JFB110 board definition
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-11-28 15:58:53 +09:00
Andrew Tridgell f471732aad HAL_ChibiOS: enable SO_REUSEADDR 2023-11-28 12:18:55 +11:00
Andrew Tridgell 0659ab8ef4 HAL_ChibiOS: increase max TCP resources 2023-11-28 12:18:55 +11:00
Henry Wurzburg d9d5e91110 hwdef: update SDH7V1 readme 2023-11-28 11:47:32 +11:00
daniel.li e6b7daa323 AP_HAL_ChibiOS: Add Aocoda-RC-H743Dual target 2023-11-28 10:29:23 +11:00
Thomas Watson 87fef1ae5d AP_HAL_ChibiOS: use get_HAL_mutable() to install new CAN interfaces
Avoids dubious extern redefinition.
2023-11-28 08:24:25 +11:00
Thomas Watson a9ddadee3b AP_HAL_ChibiOS: 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 1f7b4d0938 AP_HAL_ChibiOS: set AP_BATTERY_WATT_MAX_ENABLED 0 for minimize 2023-11-26 11:57:14 +11:00
Tom Pittenger cd6a656acf AP_HAL_ChibiOS: set AP_BATTERY_WATT_MAX_ENABLED 0 for periph 2023-11-26 11:57:14 +11:00
Peter Barker 27f836b66e hwdef: correct ARK_CANNODE compilation
this was turning SPI on when there aren't any devices...
2023-11-25 13:47:13 -08:00
alexklimaj ddba794420 hwdef: ark_rtk_gps fix safety led 2023-11-25 13:45:56 -08:00
Peter Barker e9fc99b1bf AP_HAL_ChibiOS: base HAL_USE_SPI on devices not buses
fixes compilation problem with gcc 10.3

../../libraries/AP_HAL_ChibiOS/SPIDevice.cpp: In static member function 'static void ChibiOS::SPIDeviceManager::__static_initialization_and_destruction_0(int, int)':
../../libraries/AP_HAL_ChibiOS/SPIDevice.cpp:76:18: error: statement has no effect [-Werror=unused-value]
   76 | ChibiOS::SPIDesc SPIDeviceManager::device_table[] = { HAL_SPI_DEVICE_LIST };
      |                  ^~~~~~~~~~~~~~~~
compilation terminated due to -Wfatal-errors.
cc1plus: some warnings being treated as errors
2023-11-22 18:14:00 +11:00
Peter Barker 15e0f689c2 AP_HAL_ChibiOS: correct AP_Filter defines
- checking the build type is very rarely used and definitely not required here
 - fix boilerplate to conform to normal pattern of including the config header and #if'ing based on the _ENABLED directly after that
2023-11-21 21:13:42 +11:00
Andy Piper 229916a48c AP_HAL_ChibiOS: enable serial LEDs on ARK_CANNODE 2023-11-20 19:23:06 +11:00
Andy Piper 73610c8932 AP_HAL_ChibiOS: return success status from serial_led_send and set_serial_led_rgb_data 2023-11-20 19:22:20 +11:00
Andy Piper b7fd04318a AP_HAL_ChibiOS: fix race condition in sending serial LED data 2023-11-20 19:22:20 +11:00
Andrew Tridgell 2ba4bf1478 HAL_ChibiOS: allow for --disable-networking 2023-11-17 10:54:24 -08:00
Andrew Tridgell 6bf3debe73 HAL_ChibiOS: default disable ICE in periph 2023-11-17 13:09:02 +11:00
Tom Pittenger ac16f10ecd AP_HAL_ChibiOS: hwdef kha_eth to show SerialManager params 2023-11-16 10:58:50 -08:00
Jonathan Loong 16c55a3bc1 AP_HAL_ChibiOS: Add in CarbonixF405 QMC5883P compass enable 2023-11-15 10:53:38 +11:00
Jonathan Loong 8d64d5215e AP_Periph: CarbonixL496 crystal hwdef changes 2023-11-15 10:53:38 +11:00
Andy Piper 7639761d28 AP_HAL_ChibiOS: correct neopixel bitwidth
Use 64-bit timestamps for dshot send checks
2023-11-14 11:06:25 +11:00
Henry Wurzburg 4681e5fba6 hwdef:correct JFB110 defaults 2023-11-14 10:55:33 +11:00
Andrew Tridgell 2f9bfb648f HAL_ChibiOS: default RTS pins to PULLDOWN
this avoids issues with SiK and RFD900x radios getting stuck in
bootloader mode due to a high RTS pin on power on.

We did this for Pixhawk6C in this PR:
https://github.com/ArduPilot/ardupilot/pull/24169

this now applies it to all boards
2023-11-12 07:26:50 +11:00
Cedric0489 95dbb7a3f5 AP_HAL_ChibiOS: added PixPilot-C3 2023-11-10 17:14:18 +11:00
Henry Wurzburg ba76d4e2f9 hwdef:save flash on FlywooF405S-AIO 2023-11-09 12:49:13 +11:00
Andrew Tridgell 7b6ad15f90 hwdef: make f103-QiotekPeriph a single compass
dual compass periph is not supported
2023-11-08 18:34:41 +11:00
Peter Barker d2a3fed4a1 hwdef: AP_BATTERY_ESC_ENABLED needs HAL_WITH_ESC_TELEM 2023-11-08 18:05:55 +11:00
yjuav f7dd6dec96 hwdef: add YJUAV_A6SE_H743 board support 2023-11-07 10:31:20 +11:00
jfbblue0922 7d4d2f98bf AP_HAL_ChibiOS: corrected analog input pin number 2023-11-02 19:08:09 +11:00
bugobliterator 5bd5aa87a7 AP_HAL_ChibiOS: add CubeNode pinout diagram 2023-11-01 14:18:02 +00:00
Andy Piper 2bef8f2cad AP_HAL_ChibiOS: add support for SpeedyBeeF405v4 2023-11-01 19:25:19 +11:00
Andrew Tridgell cd3eab3c5d hwdef: support Holybro Pixhawk6X_Rev6 2023-10-31 10:42:25 +11:00
Andrew Tridgell 6173726846 HAL_ChibiOS: fail on badly formed SPIDEV line 2023-10-31 10:42:25 +11:00
Peter Barker 9dbd6f335a hwdef: minimize_features on mini-pix, not minimize_fpv_osd 2023-10-31 09:13:01 +11:00
Henry Wurzburg e474305c6d hwdef:free flash for space critical bds 2023-10-28 13:32:19 +11:00
Peter Barker f70a510c6b AP_HAL_ChibiOS: 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
Peter Barker 90607ffa5f hwdef: remove payload place from minimized boards 2023-10-27 14:15:53 +11:00
Peter Barker ba72b7edfd hwdef: fix speedybeef4v3 build
double-definition
2023-10-26 18:15:30 +11:00
Peter Barker 8e5708b6f2 speedybeef4: remove redefinition of AP_BATTERY_SYNTHETIC_CURRENT_ENABLED 2023-10-26 18:15:30 +11:00
Peter Barker f5045384cf hwdef: correct ReaperF745 build 2023-10-26 18:15:30 +11:00
Peter Barker b757319245 hwdef: fix KakuteF4Mini build
redefinition
2023-10-26 18:15:30 +11:00
Peter Barker 38db3d8cbc hwdef: fix F35Lightning build
.... and remove redundantdefine
2023-10-26 18:15:30 +11:00
Andy Piper 9ba9553d96 AP_HAL_ChibiOS: NFC refactor of dshot/bdshot in preparation for bdshot on iomcu 2023-10-25 19:30:35 +11:00
Andy Piper fee43af729 AP_HAL_ChibiOS: enable highres sampling on CubeOrangePlus 2023-10-25 19:23:11 +11:00
Peter Barker b86c5b7eea hwdef: remove unused HAL_NO_LOGGING define from hwdefs 2023-10-25 19:17:18 +11:00
Peter Barker 28e89505fe hwdef: remove redundant HAL_GCS_ENABLED lines 2023-10-25 19:17:18 +11:00
Peter Barker 6152059843 hwdef: rearrange FlyingMoonH743 IMU order 2023-10-25 09:47:43 +11:00
Peter Barker 782b51b89b hwdef: rearrange FlyingMoonF427 IMU order 2023-10-25 09:47:43 +11:00
Tom Pittenger 4dc9d1ebc7 AP_HAL_ChibiOS: enable scripting on CubeOrange-periph-heavy 2023-10-23 22:44:35 -07:00
Henry Wurzburg 5c546dedcb hwdef:include minimal in minimize_common 2023-10-24 12:20:41 +11:00
Andy Piper 51793ef5ca hwdef: bugfixes for BETAFPV-F405 2023-10-24 11:44:54 +11:00
Martin Luessi 0970cb29c7 AP_HAL_ChibiOS: RADIX2HD Probe external I2C compasses 2023-10-24 10:44:57 +11:00
Martin Luessi 04564882fa AP_HAL_ChibiOS: Add UART7 to RADIX2HD target 2023-10-24 10:05:57 +11:00
Michael du Breuil 0739f0839f AP_HAL_ChibiOS: Add sw-spar-f407 periph target 2023-10-24 09:48:13 +11:00
bugobliterator fd319c6b2c AP_HAL_ChibiOS: fix setting APP_RAM size
also allows passing APP_RAM_START index through hwdef
2023-10-23 10:43:42 +11:00
Peter Barker 5b34a9bf13 hwdef: remove redundant MODE_TURTLE_ENABLED
this is defined later in the file
2023-10-19 20:53:28 +11:00
AerofoxTech 63f28b6720 hwdef: To adapt the rotation directionof the QMC5883L on new Aerofox-Airspeed-DLVR 2023-10-18 19:50:46 +11:00
AerofoxTech c0780a45c1 hwdef: Adapt the rotation direction of the QMC5883L 2023-10-18 19:50:10 +11:00
bugobliterator 1ae842e4ed AP_HAL_ChibiOS: add option to set HAL_SPI_SCK_SAVE_RESTORE 2023-10-18 19:25:19 +11:00
bugobliterator 6c13d7bee9 AP_HAL_ChibiOS: fix mode setting for ICM45686 on CubeOrangePlus 2023-10-18 19:25:19 +11:00
bugobliterator 57f6f8e34d AP_HAL_ChibiOS: add support for saving and restoring SCK pin state
when SPI goes into undefined state during reset
2023-10-18 19:25:19 +11:00
Andy Piper 7a937cd23a AP_HAL_ChibiOS: correct printing of timer information 2023-10-18 18:01:48 +11:00
Henry Wurzburg 42d4b2671b hwdef:fix bug in AtomRCF405NAVI,fix some bds that aren't building 2023-10-17 18:21:04 +11:00
Iampete1 e736d5ecb7 AP_HAL_ChibiOS: hwdef: scripts: defaults_periph: disable unused libaries by defualt 2023-10-17 10:23:20 +11:00
muramura e0a012919c hwdef: Cite CubeOrange-SimOnHW as the default file 2023-10-14 17:55:56 +11:00
Peter Barker 4b0958fb4f hwdef: correct compilation of CubeOrange-SimOnHW
../../libraries/AP_InertialSensor/AP_InertialSensor_config.h:20:2: error: #error "INS_AUX_INSTANCES must be zero if INS_MAX_INSTANCES is less than 3"
   20 | #error "INS_AUX_INSTANCES must be zero if INS_MAX_INSTANCES is less than 3"
      |  ^~~~~
2023-10-13 17:26:35 +11:00
jfbblue0922 0f1e766269 AP_HAL_ChibiOS: JFB110 board definition
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-10-12 17:03:04 +11:00
Peter Barker 28d827cedc AP_HAL_ChibiOS: add RTC support to GPS periphs that log
this re-adds support for RTC into GPS peripherals that also log.  This was removed as these boards were calling methods on the nullptr
2023-10-11 19:17:27 +11:00
Peter Barker cf96791fe2 AP_HAL_ChibiOS: add and use HAP_PERIPH_ENABLE_RTC 2023-10-11 19:17:27 +11:00
Peter Barker 53f4709a78 AP_HAL_ChibiOS: disable RTC on periphs
the singleton isn't instantiated
2023-10-11 19:17:27 +11:00
Henry Wurzburg 912a088c2b hwdef: Create correct README and add defaults to ease setup 2023-10-11 19:11:16 +11:00
muramura 007c3460ea AP_ChibiOS: Delete the same definition 2023-10-11 14:42:32 +11:00
rishabsingh3003 5897aab566 hwdef: add MatekL431 ADSB Periph 2023-10-09 16:18:13 -07:00
thu5cob 49d7d0b1c4 HAL_ChibiOS: Fix stm32l4+ flash issue
stm32l4+ flash reset register has been reset properly
2023-10-06 14:52:34 +11:00
Henry Wurzburg de7dd9d692 hwdef:add VTX power control to SpeedyBeeF405-Wing 2023-10-06 14:51:52 +11:00
Peter Barker 3b2dec7ec6 hwdef: CubeOrangePlus: build abin files
... for use with flash-from-SD-card
2023-10-05 18:55:48 +11:00
alexklimaj e1b991a84a hwdef: ARKV6X ADIS16507 example 2023-10-05 08:21:50 +11:00
Peter Barker fe9932855b hwdef: HerePro requires AHRS to compile 2023-10-04 18:10:58 +11:00
Andy Piper 9ff3d21c20 AP_HAL_ChibiOS: add support for NeoPixelRGB 2023-10-04 18:06:17 +11:00
Andrew Tridgell da0870f616 HAL_ChibiOS: enable mavlink bindings for ADSB periph 2023-10-02 21:45:28 +11:00
Peter Barker e2975a67e7 AP_HAL_ChibiOS: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Peter Barker 0824eca776 AP_GPS: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Andy Piper 82452758b4 AP_HAL_ChibiOS: write out serial ports that are available when configuring 2023-09-26 11:31:08 +10:00
James O'Shannessy 70bee8e67a AP_HAL_ChibiOS: Explicitly include InternalError
Debug builds utilise internal error in the Util class.

The include was being passed up from Logger->LoggerMessageWriter->LoggerBackend->Bitmask.
Periph Builds tend not to have HAL_LOGGING_ENABLED, and so the include was not present.
2023-09-20 19:51:48 +10:00
Andy Piper 36fc7521ea AP_HAL_ChibiOS: modify prescaler based on dshot type 2023-09-20 17:35:44 +10:00
Andy Piper 1b1e5b1085 hwdef: correct inversion pin on MambaF405v2
correct battery setup for MambaF405v2
provide suitable serial defaults for MambaF405v2
reallocate DMA channels to allow full DMA on USART3 and NeoPixel on MambaF405v2
add camera control pin to MambaF405v2
2023-09-19 11:43:58 +10:00
Henry Wurzburg d13085d4bb HWDEF:Correct hwdef of BETAFPV-F405 2023-09-19 08:03:58 +10:00
Andrew Tridgell ebffc8fc65 HAL_ChibiOS: fixed CAN statistics on F4/L4/F3/F7 2023-09-19 07:33:53 +10:00
subashchandar d1e8cef9b6 AP_HAL_ChibiOS: Increase limit for Storage pages
STm32l4+ has 512 flash pages in dual flash mode
2023-09-17 21:03:37 +10:00
subashchandar 2207f7bb14 AP_HAL_ChibiOS: change adc sampling rate
STm32l4r5 adc sampling rate.
2023-09-17 21:02:42 +10:00
Davide_Lentini 5b0d7928bd hwdef: Update luminousbee5 defaults.parm 2023-09-14 12:40:59 +10:00
Michael du Breuil dcfd9f6586 AP_HAL_ChibiOS: Add sw-nav-f405 target
Navlight board with a compass, requires #24945 for status light to work
2023-09-14 10:56:20 +10:00
Henry Wurzburg ae05df22eb HWDEF: Correct define errors in HEEWING and Tmotor bds 2023-09-14 10:38:01 +10:00
TunaLobster 6f80f8f200 AP_HAL_ChibiOS: Add hwdef for ARK_CANNODE 2023-09-13 17:06:02 +10:00
Andy Piper f02b34fc02 hwdef: mRoControlZeroOEMH7 bdshot version 2023-09-13 17:04:24 +10:00
Andy Piper feabd1f568 AP_HAL_ChibiOS: hwdef for Flywoo F405 Pro 2023-09-13 17:03:51 +10:00
Andy Piper 9387236e6c AP_HAL_ChibiOS: prefer bi-directional dshot channels that can be shared on F4 and F7 2023-09-13 17:03:51 +10:00
Andy Piper f3ac8f9d75 hwdef: SpeedyBeeF405Mini 2023-09-12 09:23:39 +10:00
cuav-chen2 13195464d5 hwdef: added ICP-20100 baro to CUAV_GPS 2023-09-08 18:03:02 +10:00
Ryan Friedman f92a6bf2b2 AP_HAL_ChibiOS: Remove executable permissions
* Fixes a pre-commit violation; the ioc files are not supposed to be executable

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-09-08 17:09:26 +10:00
yjuav 914c3c702d hwdef: Modify YJUAV_A6SE board TIME12 to TIM8 2023-09-08 07:57:07 +10:00
Peter Barker 6bb5723b18 hwdef: fpv/osd boards get turtle, flowhold and msp 2023-09-06 20:32:06 +10:00
Peter Barker b9df48e2ec AP_HAL_ChibiOS: include hexa and octa frames in mimimize_fpv_osd 2023-09-06 20:32:06 +10:00
Peter Barker bc83de5eac hwdef: fpv/osd boards get CRSF Text and spektrum telemetry 2023-09-06 20:32:06 +10:00
Peter Barker 0400282416 hwdef: fpv/osd boards get Tramp 2023-09-06 20:32:06 +10:00
Peter Barker d3c32ba440 hwdef: add comments clarifying use of each of the minimize includes 2023-09-06 20:32:06 +10:00
Peter Barker 91e1dac053 hwdef: minimize_fpv_osd.inc: remove features not needed for fpv/osd 2023-09-06 20:32:06 +10:00
Peter Barker 7deb7e2c20 ArduCopter: disable turtle mode in minimize_features.inc
instead of using the define.

This enables turtle mode on minimised fpv-osd boards.
2023-09-06 20:32:06 +10:00
Peter Barker 472dda6555 AP_HAL_ChibiOS: disable turtle mode in minimize_features.inc
instead of using the define.

This enables turtle mode on minimised fpv-osd boards.
2023-09-06 20:32:06 +10:00
Peter Barker 19b066a46a hwdef: enable SmartAudio on fpv-osd boards 2023-09-06 20:32:06 +10:00
Peter Barker cdfabf2038 hwdef: enable RunCam on fpv-osd boards 2023-09-06 20:32:06 +10:00
Peter Barker 9dda151a2d hwdef: make soaring and crsf aailable on minimized-OSD boards 2023-09-06 20:32:06 +10:00
Peter Barker c29948c69a hwdef: do not remove OSD in common minimized boards 2023-09-06 20:32:06 +10:00
Peter Barker 1c07c875d6 hwdef: recreate minimize_features.inc to just include minimize_common.inc 2023-09-06 20:32:06 +10:00
Peter Barker d55c08009f hwdef: rename minimize_features.inc to minimize_common..inc 2023-09-06 20:32:06 +10:00
Andy Piper c6511b513b AP_HAL_ChibiOS: T-Motor H743 Mini 2023-09-06 17:13:07 +10:00
Andy Piper 194f555c7b AP_HAL_ChibiOS: provide mcu defaults in betaflight conversion 2023-09-06 17:13:07 +10:00
Andy Piper 2160a1afb4 AP_HAL_ChibiOS: correct hwdef generator battery scale 2023-09-06 17:13:07 +10:00
Andy Piper ee8631e9fd AP_HAL_ChibiOS: cope with different IMU drivers in hwdef conversion 2023-09-06 17:13:07 +10:00
Andrew Tridgell 698673b0b2 hwdef: reduced size of f103-periph bootloader
serial not needed
2023-09-06 11:21:51 +10:00
Andrew Tridgell 684385c7d5 hwdef: reduced size of Hitec-Airspeed bootloader
serial not needed in bootloader
2023-09-06 11:21:51 +10:00
Andrew Tridgell ea51aea2e5 hwdef: removed most CAN_APP_NODE_NAME defines
both bootloader and AP_Periph now default to
"org.ardupilot.BOARD_NAME". This makes it much easier to find the
right firmware for update
2023-09-06 11:21:51 +10:00
Andrew Tridgell fb5dba9d86 hwdef: disable HAL_USE_CAN on all boards except f103-periph
setting HAL_USE_CAN uses the ChibiOS CAN driver instead of the AP_HAL
CAN driver. This is only used on the f103-periph as it significantly
reduces the size of the bootloader, which allows for f103 builds to
fit in the limited flash

on all other builds we are much better off using the HAL CAN driver as
it is much faster
2023-09-06 11:21:51 +10:00
Andrew Tridgell fbd44dddd0 HAL_ChibiOS: enable ISRs during flash ops in bootloader
this makes a huge difference in AP_Periph bootloader speeed, where
disabling interrupts prevents CAN packets from being received
2023-09-06 11:21:51 +10:00
Peter Barker c7080825d3 AP_HAL_ChibiOS: chibios_hwdef.py: canonicalise AP_PERIPH env define
before this change this environment variable is a string, which means anything checking it for truth will get back true even if it is empty ("") or the string zero ("0").  The existing is_periph_fw check only works because "1" != 0 - if it was "0" then it would still be considered a periph firmware
2023-09-06 09:28:37 +10:00
Peter Barker f6f6b08af8 hwdef: include defaults.parm files from other identical defaults.parm
where the files were identical and the board an obvious derivative, grab the defaults.parm from the other place.
2023-09-05 11:37:19 +10:00
Davide_Lentini 5a996952f6 hwdef: Update defaults.parm luminousbee5 2023-09-05 07:29:26 +10:00
Andrew Tridgell ef3d42ee9d HAL_ChibiOS: fixed bootloader build with F4 CAN 2023-09-05 06:56:51 +10:00
Andrew Tridgell bc373354fc HAL_ChibiOS: enable CAN stats on AP_Periph for bxCAN interface
this allows for dead interface detection
2023-09-05 06:56:51 +10:00
Andrew Tridgell d5fbce0547 AP_HAL_ChibiOS: added last_transmit_us to CAN stats 2023-09-05 06:56:51 +10:00
Vincent Poon 1b6148cba8 hwdef: Restore I2C2 on HolybroG4_GPS
I2C2 was removed by mistake previously, causing LED Driver to not function.
2023-09-01 13:44:23 +10:00
Andrew Tridgell c0cd255135 hwdef: use HAL_PERIPH_ENABLE_PROXIMITY 2023-09-01 13:04:59 +10:00
subashchandar 3cfa13c0b2 AP_HAL_CHIBIOS: allow RCIN thread priority to be overridden
Add provision to change Rcin thread priority
-needed to increase priority for some low speed cpu
2023-08-31 09:24:05 +10:00
Iampete1 2fbc27584b AP_HAL_ChibiOS: default to 0 battery capacity on periph 2023-08-30 12:25:46 +10:00
Peter Barker b751224ae1 hwdef: don't include solo gimbal or oreoled on thepeach autopilots 2023-08-29 11:14:15 +10:00
Andrew Tridgell 8888cac10f hwdef: added DMA for USART3 for MatekL431-RC and GPS
this allows for faster connections

also added 4 PWM output requested by Josh and Sampson
2023-08-29 08:00:20 +10:00
Tim Tuxworth 2850740bd8 hwdef: added QiotekAdeptF407 2023-08-26 21:14:15 +10:00
Andrew Tridgell e1f3cb9f71 hwdef: added AR-F407SmartBat
balance plug DroneCAN periph node
2023-08-26 21:12:42 +10:00
Andrew Tridgell 202e71482f HAL_ChibiOS: support CKS32F407 MCU
based on STM32F407
2023-08-26 21:12:42 +10:00
Andrew Tridgell 999919424b hwdef: allow for MCO pin to be configured
this allows for hwdef.dat lines like this:

  PA8 MCO1 RCC
  PC9 MCO2 RCC

you can control the scaling by defining the following:

- STM32_MCO1SEL
- STM32_MCO1PRE_VALUE
- STM32_MCO2SEL
- STM32_MCO2PRE_VALUE
2023-08-25 07:37:12 +10:00
MallikarjunSE 00879e9b0b AP_HAL_ChibiOS/hwdef: Add hwdef for Sierra True series periphs 2023-08-24 17:47:05 +10:00
MallikarjunSE 5e6591fa58 AP_HAL_ChibiOS/hwdef: Add hwdef for Sierra-PrecisionPoint 2023-08-24 17:45:31 +10:00
Andrew Tridgell 49f1e5d1db HAL_ChibiOS: removed ESC scaling, moved to AP_HAL 2023-08-24 13:06:40 +10:00
Andrew Tridgell 39153a1c01 AP_HAL_ChibiOS: removed native_millis/micros 2023-08-24 13:06:40 +10:00
Peter Barker 81326a17db hwdef: qiotek: correct HAL_BATT_MONITOR_DEFAULT define name 2023-08-23 17:20:20 +10:00
Tom Pittenger ed43f095ce AP_HAL_ChibiOS: add AP_BATTERY_ESC_TELEM_OUTBOUND_ENABLED to defaults_periph 2023-08-22 16:14:36 -07:00
Andy Piper 37a3f85a9a AP_HAL_ChibiOS: add 8 bi-directional dshot channels to KakuteH7-Wing 2023-08-22 11:08:14 +10:00
Andrew Tridgell aaec99ae31 hwdef: removed baro from HolybroG4_GPS
not included in production versions, and baro is not generally a good
idea on a GPS due to impact of airflow

also disable unused IMU, SPI bus and 2nd I2C and re-enable 2nd CAN as
helical units have dual CAN
2023-08-22 09:37:20 +10:00
Peter Barker efa680f1e0 AP_HAL_ChibiOS: add hwdef for bootloader for MatekL431-RC 2023-08-20 17:37:44 +10:00
Peter Barker ca549e1887 hwdef: add MatekL431-RC for RC input 2023-08-19 20:27:24 +10:00
Peter Barker 103caac92c AP_HAL_ChibiOS: add support for DroneCAN RCInput packets 2023-08-19 20:27:24 +10:00
Tom Pittenger 27f9a54a54 AP_HAL_ChibiOS: fix CubeRed default MAC Address 2023-08-17 13:51:54 +10:00
Peter Barker bb6f0ae527 AP_HAL_ChibiOS: improve gating of use of AP_InternalError library
- gate calls into library directly on the define
 - INTERNAL_ERROR becomes empty if library not compiled in
2023-08-17 09:16:46 +10:00
Peter Barker c2f4fb5def hwdef: use APJ_BOARD_ID mapping for ACNS-CM4Pilot 2023-08-17 09:13:54 +10:00
Peter Barker 19bd97a893 chibios_hwdef.py: permit board ID to be specified as a string 2023-08-17 09:13:54 +10:00
Peter Barker b8978ad73a hwdef: explicitly state no-bootloader-embedding on some boards 2023-08-17 08:37:31 +10:00
Peter Barker a11df25490 chibios_hwdef.py: enforce presence of bootloader if embedding desired 2023-08-17 08:37:31 +10:00
yunjiuav f92073fa4d HAL_ChibiOS: modify APJ_BOARD_ID of YJUAV_A6SE 2023-08-17 08:35:18 +10:00
Andy Piper 7896b04365 AP_HAL_ChibiOS: betafpv F450 AIO hwdef 2023-08-16 17:51:23 +10:00
Henry Wurzburg b1fc5bd69f AP_HAL_ChibiOS: add missing bootloader binaries 2023-08-16 17:49:00 +10:00
Peter Barker 7273c8416a AP_HAL_ChibiOS: prevent Periph bricking problem when paniccing early
if Periph panics before we mark the scheduler as initialised then we don't watchdog, which we really need to do on periph nodes so they can be re-flashed conveniently.
2023-08-16 17:21:30 +10:00
yjuav ac993753eb Modify the LED light pins and adjust the direction of the IMU and COMPASS sensors. 2023-08-15 08:35:26 +10:00
yunjiuav 5671e502d3 HAL_ChibiOS: added YJUAV_A6SE support 2023-08-15 08:35:26 +10:00
Andy Piper 75c1ad6efa AP_HAL_ChibiOS: explicitly set dshot rate when using iomcu 2023-08-15 06:53:48 +10:00
Andy Piper c6c78a9c32 AP_HAL_ChibiOS: ensure reverse and reversible masks are applied to iomcu 2023-08-15 06:53:48 +10:00
Andy Piper 52dbac1de7 AP_HAL_ChibiOS: run STM32F103 core clock at 72Mhz on 24Mhz oscillators 2023-08-15 06:53:48 +10:00
Andy Piper 33c40eaba3 AP_HAL_ChibiOS: add iomcu dshot for Pixhawk1, Pixhawk5X and fmuv5 2023-08-15 06:53:48 +10:00
Andy Piper 876f4f7a8f AP_HAL_ChibiOS: dshot iofirmware for Durandal, Pixhawk6C, CubePurple and CubeYellow 2023-08-15 06:53:48 +10:00
Andy Piper 1c646d2986 AP_HAL_ChibiOS: use f103 iofirmware for Pixhawk6X 2023-08-15 06:53:48 +10:00
Andy Piper c057cc5485 AP_HAL_ChibiOS: add get_output_mode() and use it to print correct banner for iomcu
add support for undef of STM32 lines and DMA_NOMAP
add support for F103 running at 24Mhz
add f103 variants of iofirmware
reduce memory usage in iomcu for new model
correct pwm output reporting
split iofirmware into config + mcu to allow f103 definition
don't enable non-existant timers on F103
2023-08-15 06:53:48 +10:00
Andy Piper 83fddd0d61 AP_HAL_ChibiOS: enable iomcu-dshot on CubeBlack 2023-08-15 06:53:48 +10:00
Andy Piper 10a612566a AP_HAL_ChibiOS: ensure shared DMA works in IOMCU
enable TIM4 in shared mode on IOMCU for dshot
stop the PWM peripheral in rcout DMA swapping on IOMCU to prevent UART corruption
provide debugging options on iomcu dshot
support unshared DMA with iomcu dshot
optimize rcout on iomcu
tune iomcu stack for 8 channels
2023-08-15 06:53:48 +10:00
Andy Piper 3c42f1b7d9 AP_HAL_ChibiOS: disable stack checking on iomcu 2023-08-15 06:53:48 +10:00
Andy Piper 837c81af5e AP_HAL_ChibiOS: fix sending of dshot commands to all channels 2023-08-15 06:53:48 +10:00
bugobliterator 9a21297cd1 AP_HAL_ChibiOS: add support for DShot on IOMCU
set timer counter size to be a byte wide
use HAL_DSHOT_ENABLED instead of DISABLE_DSHOT
build iomcu-dshot from existing iomcu
correct defines for DMAR size on iomcu
allow iomcu dshot rate to be configured from FMU
correct DMA allocation for dshot on iomcu
allow debug builds on iofirmware
ensure dshot is enabled on iomcu dshot
support proper iomcu dshot output thread triggered by FMU
allow selective disablement of serial LEDs and passthrough
disable serial LEDs and passthrough on iomcu-dshot
propagate ESC telemetry to iomcu
dshot_send_groups() for iomcu
remove use of ICU on iomcu for dshot. only allocate possible DMA channels
rename serial passthrough and dshot defines
update dshot docs
resize dshot iomcu main stack to minimum
correct dshot prescaler usage and bit_width_mul calculation
use ChibiOS in tickless mode on iomcu-dshot so that virtual timers can be used
propagate dshot commands to iomcu
passthrough oneshot125 to iomcu
2023-08-15 06:53:48 +10:00
Andy Piper f233a65580 AP_HAL_ChibiOS: add global interrupt handlers for TIM15 and TIM17 on F1 2023-08-15 06:53:48 +10:00
alexklimaj 738a4c638a hwdef: arkv6x default to no IO MCU 2023-08-14 12:06:25 +10:00
Andy Piper 205e6bebc7 AP_HAL_ChibiOS: fix incorrect removal of HAL_I2C_INTERNAL_MASK undef in SkystarsH743HD 2023-08-12 14:00:11 +10:00
Tom Pittenger 2b30fbcfb2 AP_HAL_ChibiOS: disable RPM by default on Periph 2023-08-11 13:31:45 -07:00
Peter Barker e638925ee0 AP_HAL_ChibiOS: chibios_hwdef.py: fix minor bugs
also mark as flake8-clean
2023-08-11 10:41:02 +10:00
Peter Barker 536f3ac922 chibios_hwdef.py: minor flake8 fixes
whitespace, long lines, ambiguous variables etc
2023-08-11 10:41:02 +10:00
Andy Piper f787e940b3 AP_HAL_ChibiOS: change incorrect I2C internal mask from SkystarsH7HD bdshot 2023-08-10 16:16:16 +10:00
Andy Piper 9212a24248 AP_HAL_ChibiOS: properly support CRSF on HEEWING-F405
update HeeWing F405 README to reflect VTX pinout
2023-08-09 17:44:14 +10:00
Peter Barker ceab0180ec AP_HAL_ChibiOS: remove use of HAL_BUILD_AP_PERIPH
turn torqeedo off in chibios_hwdef.py instead for Periph
2023-08-09 17:39:49 +10:00
Peter Barker 68e3b1e79b AP_HAL_ChibiOS: move rangefinder rotation default down into AP_Periph 2023-08-09 17:39:49 +10:00
Peter Barker 67988320a7 hwdef: disable sending of RELAY_STATUS on mimimized boards 2023-08-09 07:44:07 +10:00
Andy Piper fe56a6aedd AP_HAL_ChibiOS: allow 8 bdshot channels on mRoControlZeroH7 2023-08-08 11:50:56 +10:00
Peter Barker 53d5d1b9a9 AP_HAL_ChibiOS: break out include files for firmware defaults 2023-08-08 11:45:50 +10:00
Peter Barker 009172685e AP_HAL_ChibiOS: avoid use of MINIMIZE_FEATURES define in Copter directory 2023-08-08 10:35:19 +10:00
Peter Barker 646704c5dc AP_HAL_ChibiOS: remove MINIMIZE_FEATURES define 2023-08-08 10:35:19 +10:00
Michael du Breuil c1e6f130dd AP_HAL_ChibiOS: CubeOrange map EXTERN_DRDY and !EXTERN_CS to ADC 2023-08-08 09:16:56 +10:00
Peter Barker 37de51f1d4 hwdef: remove un-needed lines in KakuteH7 config
these are the default values, and KakuteH7 isn't minimized
2023-08-06 17:36:25 -07:00
Andrew Tridgell 0333e92cbc hwdef: update SIYI_N7 hwdef
the N7 isn't the same as the Durandal. It has 1 CAN bus, and 2 less
UARTs, and an extra compass. This fixes the hwdef.dat to match the
schematic
2023-08-06 09:23:45 +10:00
Tom Pittenger 8bddd4168b AP_HAL_ChibiOS: update hwdefs for eth 2023-08-06 09:20:08 +10:00
Tom Pittenger d59c3d7de0 AP_HAL_ChibiOS: remove common_eth.ld 2023-08-06 09:20:08 +10:00
Tom Pittenger 772465fef3 AP_HAL_ChibiOS: fix whitespace 2023-08-06 09:20:08 +10:00
bugobliterator f84572a545 AP_HAL_ChibiOS: remove legacy define WATCHDOG_DISABLED 2023-08-06 09:20:08 +10:00
bugobliterator cf6fd6717b AP_HAL_ChibiOS: fix alignment for Ethernet safe memory 2023-08-06 09:20:08 +10:00