Commit Graph

2504 Commits

Author SHA1 Message Date
Andy Piper fc6cb74ac7 AP_HAL_ChibiOS: SDIO PWRSAV needs to be enabled on F4/F7 2023-04-14 08:05:19 +10:00
Peter Barker 9e0c83503e hwdef: minimize_features.inc: nominate all included battery backends
this will stop the number growing on our smallest boards
2023-04-14 07:49:16 +10:00
Andrew Tridgell 3f33457404 HAL_ChibiOS: fixed L4 mcu type detection 2023-04-14 07:48:56 +10:00
tsubashmail@gmail.com ae9e15ade5 HAL_ChibiOS: port for STM32L4+ processor
Added support for stm32l4+ processor

- Added scripts for hwdef generation
- Tested in custom hardware prototype (stm32l4r5vit6)
- Tested all peripherals and auto pilot modes.
2023-04-14 07:48:56 +10:00
Peter Barker 92dea59620 hwdef: SkyViper doesn't need most proximity sensors 2023-04-13 07:07:18 +10:00
Andy Piper 078778de30 AP_HAL_ChibiOS: hwdef for MatekF405-TE/VTOL including bdshot 2023-04-12 17:24:15 +10:00
Peter Barker aab771d380 AP_HAL_ChibiOS: use AP_BEACON_ENABLED instead of BEACON_ENABLED 2023-04-12 09:24:39 +10:00
Andrew Tridgell 78862a334e AP_HAL_ChibiOS: cleanup more defines and classes 2023-04-11 10:31:31 +10:00
Andrew Tridgell 3f47d4c71c AP_HAL_ChibiOS: rename more variables, types and defines 2023-04-11 10:31:31 +10:00
Andrew Tridgell 9d5815ce7b AP_HAL_ChibiOS: change UAVCAN_ENABLED to DRONECAN_ENABLED 2023-04-11 10:31:31 +10:00
Henry Wurzburg 9371e60431 AP_HAL_ChibiOS: Add SpeedyBeeF405Wing 2023-04-11 10:22:29 +10:00
Andrew Tridgell e0f2f060c6 AP_HAL_ChibiOS: rename AP_UAVCAN to AP_DroneCAN 2023-04-08 07:11:23 +10:00
Peter Barker 9643f44ecc hwdef: skyviper has only companion support for precision landing 2023-04-05 18:33:19 +10:00
Andy Piper 34411809d3 AP_HAL_ChibiOS: revert to ChibiOS SPI driver model v1 2023-03-31 05:40:20 +11:00
Andy Piper 2c7698f748 AP_HAL_ChibiOS: update MatekF405-CAN bootloader to fit 2023-03-29 20:49:40 +11:00
Andy Piper a115681373 AP_HAL_ChibiOS: add support for building USB MSD 2023-03-29 20:49:40 +11:00
Andy Piper d22bb20782 AP_HAL_ChibiOS: SDMMCv1 scratchpad is no longer used 2023-03-29 20:49:40 +11:00
Andy Piper a56a2ec2c1 AP_HAL_ChibiOS: correct SDC power saving 2023-03-29 20:49:40 +11:00
Andy Piper b452701a2b AP_HAL_ChibiOS: make sure MCUCONF subtype is defined 2023-03-29 20:49:40 +11:00
Andy Piper 73da2162d2 AP_HAL_ChibiOS: QSPI prescaler is indexed from 1 2023-03-29 20:49:40 +11:00
Andy Piper 4b4d2c52c8 AP_HAL_ChibiOS: correct QSPI flash and GPIO speeds on SPRacingH7 and DevEBoxH7v2 2023-03-29 20:49:40 +11:00
Andy Piper 39b226c46b AP_HAL_ChibiOS: support EXPECTED_CLOCKS and assert on meaningful ones for H7 2023-03-29 20:49:40 +11:00
Andy Piper d9d252a1b7 AP_HAL_ChibiOS: update clock trees for H7 variants 2023-03-29 20:49:40 +11:00
Andy Piper 667b386356 AP_HAL_ChibiOS: port to ChibiOS 21.11.x
convert RCOutput to new virtual timer interface
cope with SDC vs SDMMC
use new SPIv3 driver. Correct clocks for SDMMCv2.
add STM32L431 support
port ChibiOS config to version 8
support SPIv3 driver model v2 on H7
use currcore in debug options
use new mmc API
disable speed optimizations in the bootloader to save a little flash
upgrade to halconf v8.4
relax constraints on QSP/flash clock.
add support for disabling QSPI reset in main firmware
2023-03-29 20:49:40 +11:00
Andy Piper 4a8ce32f90 AP_HAL_ChibiOS: remove USART3 to match fmuv5 and save some flash
remove UART7 on fmuv3 to save enough flash to fit in 16k
2023-03-29 20:49:40 +11:00
Peter Barker 7990e4f964 SimOnHW: correct compilation on CubeOrangePlus
this was at 2 to reduce CPU load.

But particularly when CubeOrangePlus is playing around with auxiliary IMUs we really want to be running on SimOnHardware just what we're running on the normal firmware.  We can find CPU cycles elsewhere....
2023-03-28 21:25:11 +11:00
tzarjakob bd50e3eacf AP_HAL_ChibiOS: configuration of Precision Landing for custom build server 2023-03-27 09:04:07 +11:00
Andy Piper 5ecf7ff1fe AP_HAL_ChibiOS: ensure that DMA source is correct on DMA send for rcout 2023-03-26 09:59:59 +11:00
Andy Piper d8042a1325 AP_HAL_ChibiOS: ensure the rcout TIM_UP DMA request source is re-instated after cancellation
This fixes a bug in bdshot whereby dma cancellation could result in the wrong DMA channel
being used for dshot output and hence motors stopping
2023-03-26 09:59:59 +11:00
Andrew Tridgell 686da203f5 hwdef: fixed default GPS type for C-RTK2-HP 2023-03-25 10:59:28 +11:00
Andrew Tridgell 4141dd5bbe HAL_ChibiOS: support starting the clock at non-zero
for testing time wrap bugs
2023-03-24 08:31:25 +11:00
Andrew Tridgell 726b3bca9d HAL_ChibiOS: switched to 64 bit maths for DShot timings
this fixes a timer wrap bug at 71 minutes after boot that impacts
bdshot
2023-03-24 08:31:25 +11:00
Henry Wurzburg 0029da959e AP_HAL_ChibiOS:improve MambaF405MINI defaults 2023-03-23 13:54:04 +11:00
bugobliterator 97f92d9354 AP_HAL_ChibiOS: add support for initialising extra sensors as AUX 2023-03-23 13:53:44 +11:00
xiao a3c0e884b8 AP_HAL_ChibiOS: added PixSurveyA1-IND 2023-03-22 18:41:15 +11:00
Andy Piper 89f7913d32 AP_HAL_ChibiOS: hwdef for FlywooF745v2
Add SPL06 baro to FlywooF745v1
2023-03-22 18:35:08 +11:00
Peter Barker 130f2c3bc8 AP_HAL_ChibiOS: add and use a "bool read(c)" method to AP_HAL
this is much less likely to not work vs the int16_t equivalent
2023-03-22 17:59:11 +11:00
Peter Barker 75b3cec196 AP_HAL_ChibiOS: mark heavy periphs as using RC_Channel
these things compile vast amounts of the code-base so we need to turn RC_Channel on even if we don't instantiate the RC_Channels object
2023-03-22 14:25:09 +11:00
Peter Barker 32086826de AP_HAL_ChibiOS: add and use RC_Channel_config.h 2023-03-22 14:25:09 +11:00
Iampete1 4934808ba8 AP_HAL_ChibiOS: GPIO: retry pins after ISR flood and add arming check 2023-03-22 09:27:35 +11:00
Ryan Friedman 5dbfec1e33 AP_HAL_ChibiOS: Add poll implementation
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Arsh Pratap <arshpratapofficial@gmail.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2023-03-22 09:22:36 +11:00
Peter Barker 1326d1c3df AP_HAL_ChibiOS: tidy enablement RC FastSBUS support
use the the hwdef to turn it off on IOMCU
2023-03-21 12:08:06 +11:00
Robert Taylor 805ed73d94 AP_HAL_ChibiOS: Fix bug where STM32L496 would not init CAN2
This is due to the way that the APB peripheral was configured. RCC_APB1ENR1_CAN2EN was not accounted for in the CAN hardware init, so CAN2 clock init was never attempted.
I copied the way CAN1 is initialized based on different hardware description headers.
2023-03-21 11:35:17 +11:00
bugobliterator f3dc4216d2 AP_HAL_ChibiOS: allow instantiation of upto 5 IMUs on CubeOrangePlus 2023-03-21 10:04:16 +11:00
Peter Barker 8278d5ad76 AP_HAL_ChibiOS: move OSD minimizement to minimize_features.inc 2023-03-21 08:47:53 +11:00
Michael Oborne 76beaeab64 CubeOrangePlus-SimOnHardWare: add support 2023-03-20 10:09:31 -07:00
Peter Barker d200ed1b08 AP_HAL_ChibiOS: correct defaulting of camera backends in minimize_features.inc 2023-03-19 09:08:41 +11:00
Andrew Tridgell 0489323551 HAL_ChibiOS: Revert "HAL_ChibiOS: fix a memory corruption bug on STM32H757"
This reverts commit 63633368f5.

this broke CAN1 on some H743 boards
2023-03-19 07:17:28 +11:00
Andrew Tridgell 63633368f5 HAL_ChibiOS: fix a memory corruption bug on STM32H757
this fixes an issue where a variable in SRAM1 gets set to a bad value
when we reset AHB1 with the top bit (a reserved bit)

the bug was only reproducible with this particular commit:

https://github.com/tridge/ardupilot/commits/cubeorangplus-crash-boot-bisect

but likely is just luck that it triggered on that commit. In this
instance it triggered as AP_OSD::singleton was reset to non-nullptr,
causing a panic() in AP_OSD::AP_OSD()

compiler was gcc 10.2-2020-q4
2023-03-18 08:35:51 +11:00
Andrew Tridgell 32578b796b hwdef: fixed polarity of VDD_5V_PERIPH_EN on several boards
we can tell these are incorrect as they init to LOW, and previously we
didn't have handling of VDD_5V_PERIPH_EN, so we know that LOW is
enabled or the boards would not have worked

this fixes GPS on Pixhawk1
2023-03-17 17:40:51 +11:00