From 2a61cc73fe4b11b216c3802897339478a42dd6a5 Mon Sep 17 00:00:00 2001 From: Andy Piper Date: Thu, 29 Feb 2024 20:35:59 +0000 Subject: [PATCH] AP_HAL_ChibiOS: BlitzF745AIO update to ICM-42688 enable OSD use minimal FPV config enable compass probing pull uart pins high in bootloader for ELRS --- libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/README.md | 2 +- .../AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef-bl.dat | 7 +++++++ libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef.dat | 11 +++++++---- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/README.md b/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/README.md index dfe9dd7810..5b5d441d18 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/README.md +++ b/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/README.md @@ -7,7 +7,7 @@ The Blitz F7 AIO is a flight controller produced by [iFlight](https://shop.iflig ## Features - MCU: BGA-STM32F745, 216MHz - - Gyro: DPS310 + - Gyro: BMI270 or ICM42688 - 16Mb Onboard Flash - BEC output: 5V 2.5A - Barometer: DPS310 or None diff --git a/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef-bl.dat b/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef-bl.dat index 7ee6400830..eb9a170bc8 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef-bl.dat +++ b/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef-bl.dat @@ -38,5 +38,12 @@ PA15 FLASH1_CS CS PE4 OSD1_CS CS PA4 GYRO1_CS CS +# Keep UART RX pins high to prevent ELRS going into bootloader mode +PA10 USART1_RX USART1 OUTPUT HIGH +PA3 USART2_RX USART2 OUTPUT HIGH +PB11 USART3_RX USART3 OUTPUT HIGH +PA1 UART4_RX UART4 OUTPUT HIGH +PE7 UART7_RX UART7 OUTPUT HIGH + PD15 LED0 OUTPUT LOW GPIO(90) # Blue LED define HAL_LED_ON 0 diff --git a/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef.dat b/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef.dat index ca57956fab..14da6c0054 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef.dat +++ b/libraries/AP_HAL_ChibiOS/hwdef/BlitzF745AIO/hwdef.dat @@ -3,6 +3,8 @@ # for IFLIGHT_BLITZ_F7_AIO hardware. # thanks to betaflight for pin information +DEFAULTGPIO OUTPUT LOW PULLDOWN + # MCU class and specific type MCU STM32F7xx STM32F745xx @@ -130,11 +132,12 @@ define STM32_I2C_USE_DMA FALSE # Dataflash setup SPIDEV dataflash SPI3 DEVID1 FLASH1_CS MODE3 104*MHZ 104*MHZ SPIDEV bmi270 SPI1 DEVID1 GYRO1_CS MODE3 2*MHZ 10*MHZ +SPIDEV icm42688 SPI1 DEVID1 GYRO1_CS MODE3 1*MHZ 16*MHZ define HAL_LOGGING_DATAFLASH_ENABLED 1 # OSD setup -# SPIDEV osd SPI4 DEVID1 OSD1_CS MODE0 10*MHZ 10*MHZ +SPIDEV osd SPI4 DEVID1 OSD1_CS MODE0 10*MHZ 10*MHZ define OSD_ENABLED 1 define HAL_OSD_TYPE_DEFAULT 1 ROMFS_WILDCARD libraries/AP_OSD/fonts/font*.bin @@ -144,15 +147,17 @@ BARO DPS310 I2C:1:0x76 # no built-in compass define ALLOW_ARM_NO_COMPASS +define HAL_PROBE_EXTERNAL_I2C_COMPASSES define HAL_I2C_INTERNAL_MASK 0 define STM32_PWM_USE_ADVANCED TRUE # save some flash -include ../include/save_some_flash.inc +include ../include/minimize_fpv_osd.inc # one IMU: bmi270 IMU BMI270 SPI:bmi270 ROTATION_ROLL_180_YAW_135 +IMU Invensensev3 SPI:icm42688 ROTATION_ROLL_180_YAW_315 define HAL_DEFAULT_INS_FAST_SAMPLE 1 # Motor order implies Betaflight/X for standard ESCs @@ -160,5 +165,3 @@ define HAL_FRAME_TYPE_DEFAULT 12 # This is a whoop AIO board, not really suitable for anything other than copter AUTOBUILD_TARGETS Copter - -include ../include/no_bootloader_DFU.inc