Commit Graph
3553 Commits
Author SHA1 Message Date
Andy Piper ced3958bf8 AP_HAL_ChibiOS: correctly decode esc serial bytes with trailing 1's 2025-05-22 15:48:59 -04:00
Andy Piper 74eb47b0cd AP_HAL_ChibiOS: avoid transient failures in restoring line mode in soft serial.
More robustly restore PWM output after soft serial.
Rely more heavily on setup/teardown in serial_setup_output()/serial_end()
2025-05-22 15:48:59 -04:00
Andy Piper 6b20939b16 AP_HAL_ChibiOS: avoid read races in serial_read_bytes() 2025-05-22 15:48:59 -04:00
Henry Wurzburg 80720525c8 AP_HAL_ChibiOS: add ATOMRCF405NAVI-Deluxe 2025-05-20 13:31:54 +10:00
Andrew Tridgell 70a3dc188b hwdef: ensure we don't enable CAN drivers when no CAN
this makes using the custom build server easier
2025-05-20 11:05:11 +10:00
Vincello 69b50967e4 AP_HAL_ChibiOS: add CORVON743V1 2025-05-20 09:50:05 +10:00
Thomas Watson 1fe72a07e1 AP_HAL_ChibiOS: improve H7 low memory zero check
The hardware can read and write address zero just fine, but doing it
through a C null pointer will invoke undefined behavior and may cause
the compiler to emit faulting instructions.

Switch to using an assembly instruction to do the actual access, thereby
avoiding UB by not having an actual null pointer anywhere. Simplifies
the code and reduces flash usage while improving safety 0.1%!
2025-05-18 12:18:40 +10:00
Thomas Watson 6348373514 AP_HAL_ChibiOS: correctly verify flash on H7
Previously, the routine only read the data back from the data cache,
which was guaranteed correct as the cache would be allocated by the test
before programming then filled with the correct data during programming.

Invalidate the data cache area containing the just-programmed data to
ensure that it is actually read back from the flash memory and the
verification does something.

This is not trivial to check, but it can be done. To an unprogrammed
(all 1s) 256-bit flash word, program the byte sequence
`CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC1CCCCCCCC`
followed by (and without erasing) the sequence
`CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC0CCCCCCCC`. This
will cause the flash memory (on the tested H743 revision at least) to
read `CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDCCCCCCCCCCCCCCCCCCCCCCCC0CCCCCCCC`
(and signal a one bit ECC error) and the verification check to fail.

Before this patch, the above sequence would always claim programming
success despire the read data not matching the programmed data.

Also clean up the pre-flash check for already flashed data. It should
not need a cache clear before the check as the flash normally operates
coherently with the data cache.
2025-05-16 21:43:15 -05:00
Andrew Tridgell 2143045e84 hwdef: added MatekL431-BatteryTag 2025-05-17 09:25:46 +10:00
Andrew Tridgell c0a45694a0 hwdef: default BATTERY_TAG and GLOBALTIME off 2025-05-17 09:25:46 +10:00
Andy Piper 5c62547bca AP_HAL_ChibiOS: give bootloader access to parameter storage page 2025-05-13 12:03:49 +10:00
Huibean 4c37a27a52 AP_HAL_ChibiOS:add vimdrones ap_periph pico and servo hub 4chp 2025-05-13 10:27:11 +10:00
Iampete1 2e566bd426 ChibiOS: Util: remove unused IOMCU UART stats tracker 2025-05-13 10:13:06 +10:00
Peter Barker 4717c5c02a AP_HAL_ChibiOS: rename HAL_EXTERNAL_AHRS_ENABLED to AP_EXTERNAL_AHRS_ENABLED
in preparation for making this an optional feature; a lot of people will want to go and put this in their hwdef files as soon as we do this!
2025-05-13 09:06:44 +09:00
Shiv Tyagi cef8bcef6f AP_HAL_ChibiOS: wrap define AP_XX_ENABLED AP_PERIPH_YY_ENABLED inside ifndef-endif
We should be only defining these if they are already not defined.
2025-05-09 14:29:39 +10:00
Peter Barker 1f7a20c784 hwdef: remove unused lines from JDB110 hwdef 2025-05-08 16:38:07 +10:00
Peter Barker b1b0be7604 AP_HAL_ChibiOS: make skyviper-f412-rev1 baro definition a BARO line in hwdef 2025-05-07 17:13:13 +10:00
Peter Barker 0303014933 AP_HAL_ChibiOS: make skyviper-journey baro definition a BARO line in hwdef 2025-05-07 17:13:13 +10:00
Peter Barker da3f70d2b9 AP_HAL_ChibiOS: remove bad Baro-related defines 2025-05-07 17:13:13 +10:00
HishamGhosheh 4a855b9ace hwdef: added JHEMCUF405PRO 2025-05-07 17:10:12 +10:00
Peter Barker 6fc8674799 hwdef: remove unused USB_HW_ENABLE_HS define 2025-05-06 10:11:09 +10:00
bugobliterator 87dd01cd7e AP_HAL_ChibiOS: move AP_OSD and Calibration methods to external flash 2025-05-02 16:03:54 +10:00
bugobliterator b5f4b1ad18 AP_HAL_ChibiOS: add support for CAN_MCAST in CubeRedPrimary 2025-05-02 16:03:54 +10:00
Józef Wołoch a619e396ac AP_HAL_ChibiOS: Support 32MHz HSE on H7 MCUs 2025-04-30 19:03:11 +10:00
Mirko Denecke d4965fd1bd AP_HAL_ChibiOS: add hwdef for UAV-DEV GmbH M10S GNSS 2025-04-30 16:32:53 +10:00
Andy Piper 8e9a568a55 hwdef: build fixes for omnibusf4pro-bdshot and revo-mini-i2c-bdshot 2025-04-30 08:54:44 +10:00
Andy Piper b030bea64d AP_HAL_ChibiOS: fix SkystarsH7HD-bdshot build 2025-04-30 08:54:44 +10:00
jobs 5f0c266a75 AP_HAL_ChibiOS: UPDATE NarinFC-H5 (hwdef.dat)
- ICM45686 SPI MAX SPEED UPDATE.(8*MHZ -> 16*MHZ)
2025-04-29 11:20:21 +10:00
jobsandHenry Wurzburg 8183c2cbf4 AP_HAL_ChibiOS: add NarinFC-H5
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2025-04-29 11:20:21 +10:00
Henry Wurzburg 1be160ef18 hwdef:add missing OSD_TYPE2 defaults 2025-04-29 08:52:05 +10:00
Jacob Dahl 825d0b5650 hwdef: arkv6x: DEFAULT_SERIAL8_PROTOCOL SerialProtocol_RCIN 2025-04-22 17:07:32 +10:00
Tamas Nepusz 7c743f265a hwdef: add flash-from-SD support for MatekH743 2025-04-22 11:30:00 +10:00
James O'Shannessy e3dd966467 AP_HAL_ChibiOS: Fix using the incorrect pin after checking the correct pin is defined
Tested with PixC4-Jetson, commenting VDD_BRICK_VALID out causes build to break. This change fixes the build.
2025-04-22 10:58:26 +10:00
Mirko Denecke fa959c0550 AP_HAL_ChibiOS: add uav-dev-powermodule hwdef 2025-04-21 21:52:37 +10:00
Andy Piper 16eabba060 AP_HAL_ChibiOS: VTX power pin moved on FlywooF405HD 2025-04-21 06:21:01 +10:00
Peter Barker 1a0e997ac2 hwdef: correct NarinFC-H7 compilation
crossed over with my baro rearrangement PR
2025-04-17 17:10:39 +10:00
holydustandHenry Wurzburg e6bfa4ab9b AP_HAL_ChibiOS: add CORVON405V2_1
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2025-04-16 17:38:36 +10:00
Henry Wurzburg e41c11367b hwdef:correct default OSD types 2025-04-16 17:34:24 +10:00
Peter Barker a23f082869 AP_HAL_ChibiOS: factor MS56XX into MS5607, 5611, 5637 and 3847 backends 2025-04-16 17:28:42 +10:00
Christian Clauss 19b78db710 AP_HAL_ChibiOS: fix typos discovered by codespell 2025-04-15 14:48:39 +10:00
Henry Wurzburg 5eff816624 AP_HAL_ChibiOS: add BrahamaF4 2025-04-15 10:03:47 +10:00
Henry Wurzburg fcc107526d AP_HAL_ChibiOS: add PixSurveyA2-IND 2025-04-15 10:02:16 +10:00
Andy Piper 6714c311b8 AP_HAL_ChibiOS: TBS_LUCID_H7_WING 2025-04-12 10:41:22 +01:00
Andy Piper a3d5857f54 AP_HAL_ChibiOS: Brother Hobby F405v3 2025-04-10 13:44:27 +01:00
Andy Piper f00b30e2fc AP_HAL_ChibiOS: save 6k of flash on Pixhawk1-1M 2025-04-09 13:30:27 +01:00
Peter Barker 28846c0d13 hwdef: correct comment around support for dshot on iomcu 2025-04-09 21:11:35 +10:00
bugobliterator 5233716e59 AP_HAL_ChibiOS: add support hiding Serial parameters for unlisted IOMCU and Empty serial ports 2025-04-09 18:09:00 +10:00
Andy Piper 703d766316 AP_HAL_ChibiOS: ensure UART6_TX gets defined on BETAFPV-F405-I2C 2025-04-09 17:14:19 +10:00
Andy Piper 56d452e33e AP_HAL_ChibiOS: ensure alt pin definitions are removed by undef 2025-04-09 17:14:19 +10:00
Andy Piper 071011eddf AP_HAL_ChibiOS: add pullups to I2C bus on TBS LUCID H7 2025-04-09 17:10:53 +10:00