Commit Graph

231 Commits

Author SHA1 Message Date
Andrew Tridgell 61d036acf3 HAL_ChibiOS: added build time check for right system clock
this helps prevent cases where we underclock a chip due to mistake in
headers or hwdef.dat
2020-05-10 15:09:28 +10:00
Andrew Tridgell 2c26807736 HAL_ChibiOS: embed hwdef.dat in ROMFS for all boards 2020-04-29 07:36:55 +10:00
Andrew Tridgell 6bacf021c8 HAL_ChibiOS: disable thread_info in AP_Periph and bootloader 2020-04-29 07:36:55 +10:00
Andrew Tridgell ea71b72c87 HAL_ChibiOS: fixed issue with I2C4 on H743
when both I2C4 and SPI4 are active on a H743 I found that some BDMA
completion interrupts were lost, which resulted in SPI transfer
timeouts. Close inspection of the ChibiOS BDMA, I2Cv3 and SPIv3
drivers did not reveal any issues, but I found that the issue only
happened when the first 4 BDMA streams were used. This change splits
the 4 streams across the first and 2nd half of the BDMA controller,
and that fixes the problem.

This works as there are only 2 peripherals (I2C4 and SPI6) that want
to use BDMA with our current setup. If we ever wish to enable ADC3
(which also uses BDMA) we will need to revisit this issue
2020-04-28 17:42:15 +10:00
Andrew Tridgell a52070d226 HAL_ChibiOS: use SERIAL_ORDER instead of UART_ORDER
SERIAL_ORDER is much easier for developers to understand as it maps
directly to the SERIALn_ parameters
2020-04-28 10:32:23 +10:00
Andrew Tridgell 82c45f6cdb HAL_ChibiOS: default STM32_VDD to 3.3V 2020-04-28 10:32:23 +10:00
Andrew Tridgell 2165fd66f1 HAL_ChibiOS: define FLASH_RESERVE_END_KB 2020-04-14 10:02:51 +10:00
bugobliterator ef91f1634b HAL_ChibiOS: add support for adding board validation test 2020-04-10 07:04:21 +10:00
Andrew Tridgell e0957c2bcc HAL_ChibiOS: include hwdef.dat in ROMFS
this allows download via ftp
2020-03-28 15:28:03 +11:00
Andrew Tridgell ea57b7b3cd HAL_ChibiOS: embed ROMFS files from hwdef directory
this allows for a scripts/ directory under hwdef board directory to
embed lua scripts
2020-03-28 15:28:03 +11:00
Andy Piper 3d0cf7e12a AP_HAL_ChibiOS: hardware M4-Cortex and M7-Cortex (and H7) implementation of HAL FFT abstraction
implements an FFT engine based on the betaflight feature using ARM hardware accelerated CMSIS library
make the FFT feature optional
add dynamic gyro windows
add quinns and candans estimators and record in DSP state
disable DSP for boards with limited flash
calculate power spectrum rather than amplitude
start/analyse version of analysis to support threading
allocate memory in a specific region
constrain window size by CPU class
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
Matt Lawrence e6f32f4572 AP_HAL_ChibiOS: Fix waf --default-parameters
If a defaults.parm file was present in the hwdef, waf ignored the --default-parameters=xyz.parm command line argument.  This will allow it to use that command line argument specified file.
2020-02-11 11:00:01 +11:00
Andrew Tridgell 7a812a5516 HAL_ChibiOS: use cortex m7 instructions on F7/H7 2020-01-25 08:50:09 +11:00
Andrew Tridgell 320a703afc HAL_ChibiOS: fixed UART DMA config for ALT() pins 2020-01-19 07:24:57 +11:00
Andrew Tridgell f7a65afa67 HAL_ChibiOS: allow for baro with no arguments 2020-01-18 17:00:44 +11:00
Andrew Tridgell 43172bdd57 HAL_ChibiOS: switch non-composite USB ID
use newly allocated 0x1209/0x5740
2020-01-06 11:43:15 +11:00
Andrew Tridgell 793b867706 HAL_ChibiOS: switched to new USB VID for dual-CDC boards 2020-01-06 09:55:26 +11:00
Andrew Tridgell ab0f1a8887 HAL_ChibiOS: added max uarts check 2020-01-03 17:32:23 +11:00
Andrew Tridgell 296a4cb086 HAL_ChibiOS: re-format and fix chibios_hwdef.py for flake8 2020-01-02 09:52:57 +11:00
Andrew Tridgell 9c2b5a05bd HAL_ChibiOS: fixed python3 error 2020-01-02 09:52:57 +11:00
Andrew Tridgell c5df48faa7 HAL_ChibiOS: break out make_line() for PAL_LINE defines 2020-01-02 09:52:57 +11:00
Andrew Tridgell 66dd5925cf HAL_ChibiOS: added support for alternative pin configs 2020-01-02 09:52:57 +11:00
Andrew Tridgell a30e637484 HAL_ChibiOS: fixed bug in UART pin assignment
this fixes an issue with the setting of pullup/pulldown on UARTs. It
also adds enforcement of DMA assignment for DMA required peripherals
2020-01-02 09:52:57 +11:00
Andrew Tridgell faf34970e1 HAL_ChibiOS: automatically control pullup/pulldown on inverted UARTs
this makes setup of sport telemetry much easier
2020-01-02 09:52:57 +11:00
CUAVcaijie 2df2e5c275 HAL_ChibiOS: Fix DMA of SPI1 TX on STM32F412 2019-12-26 15:50:18 +11:00
Andrew Tridgell 58292821b3 HAL_ChibiOS: fix DMA on UARTs for F303 2019-12-26 10:42:48 +11:00
Andrew Tridgell 652d137594 HAL_ChibiOS: fixed DMA channels for f3 USART2 2019-12-26 10:42:48 +11:00
Andrew Tridgell 6eb86c6cdb HAL_ChibiOS: removed PB1 and PB0 TIM1 complementary channels for F76x
these do not work, possibly a datasheet bug
2019-12-23 21:46:57 +11:00
Andrew Tridgell 1248519b11 HAL_ChibiOS: account for empty uarts in uart count
this fixes uart count on MatekF405-Wing
2019-12-22 08:27:17 +11:00
Andrew Tridgell fc867b1596 HAL_ChibiOS: automatically set AP_FEATURE_SBUS_OUT 2019-12-18 17:18:44 +11:00
Andrew Tridgell b3459c024c HAL_ChibiOS: automatically set AP_FEATURE_RTSCTS 2019-12-18 17:18:44 +11:00
Andrew Tridgell 4745c9f78d HAL_ChibiOS: setup define for number of serial ports 2019-11-19 07:13:20 +08:00
Andrew Tridgell bc1de7a208 HAL_ChibiOS: support STM32F3xx MCUs 2019-11-01 10:53:53 +11:00
Andrew Tridgell 8f14ea9e80 HAL_ChibiOS: enable advanced timers if we have any N PWM channels 2019-10-29 13:09:14 +11:00
Andrew Tridgell 49e669aa1f HAL_ChibiOS: support uncompressed bootloader on f103-periph
this allows update with very low memory
2019-10-24 22:03:43 +11:00
Andrew Tridgell 0a4576728e HAL_ChibiOS: support a app->bootloader comms region in SRAM
this allows for UAVCAN update without a 2nd BeginFirmwareUpdate call
2019-10-21 19:12:01 +11:00
Andrew Tridgell 44f895ab16 HAL_ChibiOS: fixed for ZubaxGNSS build 2019-10-21 19:12:01 +11:00
Andrew Tridgell e90bd27435 HAL_ChibiOS: fixed I2C on F103
we need to use open-drain, and the sign of the constant matters
2019-10-20 20:31:02 +11:00
Andrew Tridgell 47f2f1764d HAL_ChibiOS: generate HAL_MEMORY_TOTAL_KB for each board 2019-10-01 09:29:55 +10:00
Andrew Tridgell 850892c3d9 HAL_ChibiOS: fixes from LGTM errors 2019-09-22 18:35:15 +10:00
Andrew Tridgell 3c058851b2 HAL_ChibiOS: fixed undef for define lines
this fixes IMU heater enable for CubeBlack+
2019-09-16 12:53:44 +10:00
Andrew Tridgell 75696997cc HAL_ChibiOS: added buzzer support to CUAV_GPS 2019-09-10 16:22:33 +10:00
Andrew Tridgell b344946300 HAL_ChibiOS: prevent duplicate sensors in hwdef.dat
throw an error on configure if there is a duplicate
2019-09-05 06:37:35 +10:00
Andrew Tridgell beca17c638 HAL_ChibiOS: use GET_I2C_DEVICE() for i2c probing
this allows for the driver probing to use a macro to prevent loading
of duplicate i2c devices (AP_Compass does this)
2019-09-04 16:27:47 +10:00
Andrew Tridgell c8806acaf5 HAL_ChibiOS: use AP_PERIPH env var 2019-08-27 10:29:56 +10:00
Andrew Tridgell 2facfe0baa HAL_ChibiOS: support empty UART_ORDER
for CAN bootloader without uart support
2019-08-27 10:29:56 +10:00
Andrew Tridgell 16bdaaa1af HAL_ChibiOS: added support for STM31F10x for AP_Periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell 98f578394f HAL_ChibiOS: default OTG2 protocol to mavlink2 on most boards
For boards that haven't yet had a driver update in MissionPlanner to
cope with the 2nd OTG interface this change makes both interfaces work
as MAVLink

This also fixes an issue with connecting under a windows VM within
vmware
2019-07-26 21:58:57 +10:00
Andrew Tridgell 2f0a4ff1ab HAL_ChibiOS: fixed build on boards with less than max uarts 2019-07-12 17:01:21 +10:00
Andrew Tridgell 02014776e8 HAL_ChibiOS: auto-set HAL_HAVE_DUAL_USB_CDC 2019-07-12 17:01:21 +10:00