Commit Graph

579 Commits

Author SHA1 Message Date
Peter Barker
994c268644 AP_HAL_ChibiOS: replace HAL_NO_RCIN_THREAD w/HAL_RCIN_THREAD_ENABLED 2024-04-03 18:36:29 +11:00
Peter Barker
e1f3864349 hwdef: convert_betaflight_unified.py: don't set HAL_GPIO_LED_OFF
this value is the default value anyway, so don't make many copies..
2024-04-03 11:00:24 +11:00
Peter Barker
33e5b20709 hwdef: re-add ESC control to AP_Periph units which lost it
I'm quite sure that several of these don't actually want it, but want NFC
2024-04-02 11:28:27 +11:00
Peter Barker
416f7d393a hwdef: remove DISABLE_SERIAL_ESC_COMM AP_Periph boilerplate
... use the defaults file instead
2024-04-02 11:28:27 +11:00
Peter Barker
f28cfc9a3b hwdef: remove handling of FULL_CHIBIOS_BOOTLOADER directive
the string FULL_CHIBIOS_BOOTLOADER doesn't exist anywhere else in the source code
2024-04-02 11:20:48 +11:00
Peter Barker
395f438b42 chibios_hwdef.py: print error message if a define is re-defined at top level with same value 2024-03-26 11:09:03 +11:00
Peter Barker
eca2fd92b2 chibios_hwdef.py: correct extraction of intdefines
another regex problem
2024-03-26 11:09:03 +11:00
Peter Barker
5d369b2634 chibios_hwdef.py: correct extraction of intdefines from hwdef files
many of our hwdef files contain lines which look like this:

define STM32_PWM_USE_ADVANCED TRUE

The current regex does not allow for numbers in those define, so the regex ends up matching "STM" as a name....

the "intdefines" hash which is populated from these is only used internally to chibios_hwdey.py for logic purposes, not directly in hwdef output purposes, and none of the strings which it looks at contain numbers at the moment, so this is a non-functional change.
2024-03-23 15:23:08 +11:00
Andrew Tridgell
d3a37d1357 HAL_ChibioOS: fixed FDCAN -> CAN labels
we use CAN1_RX not FDCAN1_RX in our MCU files
2024-03-20 14:26:23 +11:00
Peter Barker
7ea2928e52 AP_HAL_ChibiOS: allow IOMCU to be turned off in includes 2024-03-18 09:57:12 +11:00
Tom Pittenger
9feccd6671 AP_HAL_Chibios hwdef script: remove h747 adc duplicate pin definitions 2024-03-13 18:52:05 +11:00
Peter Barker
b09dd7b866 AP_HAL_ChibiOS: move defaulting of HAL_WITH_ESC_TELEM for periph 2024-03-05 12:37:40 +11:00
Peter Barker
077dd82bdc AP_HAL_ChibiOS: add and use AP_CUSTOMROTATIONS_ENABLED
also add to build_options.py
2024-03-03 08:22:46 +11:00
Randy Mackay
fb5df80932 AP_HAL_ChibiOS: AP_Periph does not use AP_VisualOdom 2024-02-28 18:52:37 +11:00
Andy Piper
242f679206 AP_HAL_ChibiOS: remove iomcu dshot from Pixhawk1-1M and add to Pixhawk1-bdshot
add support for removing ROMFS from hwdef
2024-02-27 12:06:57 +11:00
Iampete1
d4daa990f8 AP_HAL_ChibiOS: hwdef.py: define HAL_HAVE_AP_ROMFS_EMBEDDED_LUA if lua files in ROMFS 2024-02-27 11:09:08 +11:00
Peter Barker
2e2b1c9fac AP_HAL_ChibiOS: allow AP_TERRAIN_ENABLED to be turned off in hwdef
adds the ifndef, and changes things to the path defines are undefined if it is false
2024-02-27 11:04:02 +11:00
Peter Barker
5d421e8ee3 AP_HAL_ChibiOS: allow AP_Periph to use mavlink library 2024-02-15 12:17:07 +11:00
Peter Barker
1862b5dc27 chibios_hwdef.py: allow re-use of bootloader from other boards 2024-02-10 21:41:30 +11:00
Peter Barker
4c272d21ee AP_HAL_ChibiOS: make compass.mag_cal_fixed_yaw return boolean
this method could be used from a transmitter without GCS enabled, for example
2024-02-06 11:11:27 +11:00
Andrew Tridgell
85439360d7 HAL_ChibiOS: fixed I2C4 on STM32G4 2024-02-05 07:36:14 +11:00
Andrew Tridgell
054fb94e9a HAL_ChibiOS: added support for STM32H7A3
interesting MCU as it is the first H7 we support that doesn't have a
128k flash sector size
2024-02-01 11:43:24 +11:00
Andrew Tridgell
30497244d9 HAL_ChibiOS: whitespace fixes 2024-01-30 12:32:23 +11:00
Andrew Tridgell
0a6057f2b3 HAL_ChibiOS: adjust clocks for H723 and H730
FDCAN clock must be 80MHz, and also align no-crystal clocks with
clocks for boards with crystals
2024-01-30 12:32:23 +11:00
Andrew Tridgell
4eaf5ef247 HAL_ChibiOS: support STM32H723 boards 2024-01-30 12:32:23 +11:00
Andrew Tridgell
2d031a4d20 HAL_ChibiOS: switched G4 FDCAN clock to 80MHz
this requires main CPU clock at 160 MHz instead of 168 MHz
2024-01-25 11:44:02 +11:00
bugobliterator
9de1b6164b AP_HAL_ChibiOS: add more pins to STM32H757 ADC channel map 2024-01-22 20:35:16 +11:00
Andrew Tridgell
5e7b211b79 HAL_ChibiOS: moved M4 disable into H757 script
this fixes assert checking in the bootloader and for boards other than
CubeRedPrimary
2024-01-21 12:30:08 +11:00
Andrew Tridgell
3a84f35593 HAL_ChibiOS: support building with no GPIOs 2024-01-21 12:30:08 +11:00
Andrew Tridgell
91cc0d7dba HAL_ChibiOS: ensure periph uses same RAM0 address as bootloader
this fixes passing of addresses for boards that use an ALT_RAM_MAP
2024-01-21 12:30:08 +11:00
Andrew Tridgell
82dea9c037 HAL_ChibiOS: ensure our reserved ram is not in available ram regions
this prevents a fault when the ram0 region is filled in by the periph
code on boards that do dynamic memory allocation
2024-01-21 12:30:08 +11:00
Andrew Tridgell
2fee9e69db HAL_ChibiOS: support ROMFS_DIRECTORY in hwdef.dat 2024-01-21 12:30:08 +11:00
Andrew Tridgell
69f23edd4a hwdef: added bootloader web server for Pixhawk6X-PPPGW 2024-01-21 12:30:08 +11:00
Peter Barker
8e2a634c72 hwdef: don't enable filesystem-romfs just because we have a defaults file 2024-01-18 21:44:15 +11:00
Peter Barker
e958e7b720 hwdef: enable ROMFS if we have a defaults filepath to embed 2024-01-18 21:44:15 +11:00
Peter Barker
c4a342f0af AP_HAL_ChibiOS: use @ROMFS/defaults.parm rather than apj_tool for defaul parms 2024-01-17 18:28:48 +11:00
Peter Barker
2e23fa7612 hwdef: remove ghost telemetry from peripherals 2024-01-16 09:46:57 +11:00
Peter Barker
f7365556d0 AP_HAL_ChibiOS: tidy disabling of GHST on iomcu 2024-01-16 09:46:57 +11:00
Peter Barker
c557e67aff chibios_hwdef.py: populate intdefines as part of parsing, not output 2024-01-04 20:29:14 +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
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
467daeb4a6 hwdef: tidy checking of is-bootloader-build 2024-01-02 13:00:15 +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
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
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
Andy Piper
0cc5cf7d2d AP_HAL_ChibiOS: allow betaflight converter to run on output from "dump hardware" 2023-12-05 11:38:53 +11:00