Skip to content

Commit

Permalink
[targets] MATEKRXF411/CRAZYBEEF4 add BMI270 ICM42688P
Browse files Browse the repository at this point in the history
  • Loading branch information
nerdCopter committed Apr 9, 2024
1 parent 8846a90 commit b0d5994
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 30 deletions.
28 changes: 20 additions & 8 deletions src/main/target/BETAFLIGHTF4/target.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,11 @@

#pragma once

#define TARGET_BOARD_IDENTIFIER "BFF4"
#define USBD_PRODUCT_STRING "BetaFlightF4"
#define TARGET_MANUFACTURER_IDENTIFIER "FPVM"
#define USBD_PRODUCT_STRING "BETAFLIGHTF4"

#define FC_TARGET_MCU STM32F405 // not used in EmuF
#define TARGET_BOARD_IDENTIFIER "S405" // generic ID

#define LED0_PIN PB5

Expand All @@ -32,18 +35,24 @@
// PC13 used as inverter select GPIO for UART2
#define INVERTER_PIN_UART2 PC13

#define MPU6000_CS_PIN PA4
#define MPU6000_SPI_INSTANCE SPI1

#define USE_ACC
#define USE_ACC_SPI_MPU6000
#define GYRO_MPU6000_ALIGN CW180_DEG

#define USE_GYRO
#define USE_GYRO_SPI_MPU6000
#define ACC_MPU6000_ALIGN CW180_DEG

#define MPU6000_CS_PIN PA4
#define MPU6000_SPI_INSTANCE SPI1

#define ACC_MPU6000_ALIGN CW180_DEG
#define GYRO_MPU6000_ALIGN CW180_DEG
#define MPU6000_CS_PIN PA4
#define MPU6000_SPI_INSTANCE SPI1

#define ACC_BMI270_ALIGN CW180_DEG
#define GYRO_BMI270_ALIGN CW180_DEG
#define BMI270_CS_PIN PA4
#define BMI270_SPI_INSTANCE SPI1

// MPU6000 interrupts
#define USE_EXTI
Expand Down Expand Up @@ -122,6 +131,9 @@
#define I2C2_SCL NONE // PB10, UART3_TX
#define I2C2_SDA NONE // PB11, UART3_RX
#define I2C_DEVICE (I2CDEV_2)
#define MAG_I2C_INSTANCE (I2CDEV_2)
#define BARO_I2C_INSTANCE (I2CDEV_2)
#define DASHBOARD_I2C_INSTANCE (I2CDEV_2)

#define USE_ADC
#define CURRENT_METER_ADC_PIN PC1
Expand All @@ -133,7 +145,7 @@
#define SBUS_TELEMETRY_UART SERIAL_PORT_USART2

#define ENABLE_BLACKBOX_LOGGING_ON_SPIFLASH_BY_DEFAULT
#define DEFAULT_FEATURES ( FEATURE_TELEMETRY | FEATURE_OSD )
#define DEFAULT_FEATURES (FEATURE_OSD | FEATURE_TELEMETRY | FEATURE_AIRMODE | FEATURE_RX_SERIAL)

#define TARGET_IO_PORTA (0xffff & ~(BIT(14)|BIT(13)))
#define TARGET_IO_PORTB (0xffff & ~(BIT(2)))
Expand Down
1 change: 1 addition & 0 deletions src/main/target/BETAFLIGHTF4/target.mk
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ FEATURES += VCP ONBOARDFLASH
TARGET_SRC = \
drivers/accgyro/accgyro_mpu.c \
drivers/accgyro/accgyro_spi_mpu6000.c \
drivers/accgyro/accgyro_spi_bmi270.c \
drivers/barometer/barometer_bmp280.c \
drivers/barometer/barometer_ms5611.c \
drivers/compass/compass_hmc5883l.c \
Expand Down
58 changes: 40 additions & 18 deletions src/main/target/MATEKF411RX/target.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,22 @@
#pragma once

#if defined(CRAZYBEEF4FR)
#define TARGET_BOARD_IDENTIFIER "C4FR"
#define USBD_PRODUCT_STRING "CrazyBee F4 FR"
#define TARGET_MANUFACTURER_IDENTIFIER "HAMO"
#define USBD_PRODUCT_STRING "CRAZYBEEF4FR"
#elif defined(CRAZYBEEF4FS)
#define TARGET_BOARD_IDENTIFIER "C4FS"
#define USBD_PRODUCT_STRING "CrazyBee F4 FS"
#define TARGET_MANUFACTURER_IDENTIFIER "HAMO"
#define USBD_PRODUCT_STRING "CRAZYBEEF4FS"
#elif defined(CRAZYBEEF4DX)
#define TARGET_BOARD_IDENTIFIER "C4DX"
#define USBD_PRODUCT_STRING "CrazyBee F4 DX"
#define TARGET_MANUFACTURER_IDENTIFIER "HAMO"
#define USBD_PRODUCT_STRING "CRAZYBEEF4DX"
#else
#define TARGET_BOARD_IDENTIFIER "M41R"
#define USBD_PRODUCT_STRING "MATEKF411RX"
#define TARGET_MANUFACTURER_IDENTIFIER "MTKS"
#define USBD_PRODUCT_STRING "MATEKF411RX"
#endif

#define FC_TARGET_MCU STM32F411 // not used in EmuF
#define TARGET_BOARD_IDENTIFIER "S411" // generic ID

#define LED0_PIN PC13

#define USE_BEEPER
Expand All @@ -43,6 +46,16 @@
#define USE_SPI

// *************** SPI1 Gyro & ACC **********************
#define USE_GYRO
#define USE_GYRO_SPI_MPU6000
#define USE_GYRO_SPI_ICM20689
#define USE_GYRO_SPI_ICM42688P
#define USE_ACC
#define USE_ACC_SPI_MPU6000
#define USE_ACC_SPI_ICM20689
#define USE_ACC_SPI_ICM42688P
#define USE_ACCGYRO_BMI270

#define USE_SPI_DEVICE_1
#define SPI1_SCK_PIN PA5
#define SPI1_MISO_PIN PA6
Expand All @@ -57,27 +70,36 @@
#define MPU_INT_EXTI PA1
#define USE_MPU_DATA_READY_SIGNAL

#define USE_GYRO
#define USE_GYRO_SPI_MPU6000
#define USE_GYRO_SPI_ICM20689
#define ICM42688P_CS_PIN PA4
#define ICM42688P_SPI_INSTANCE SPI1

#define BMI270_CS_PIN PA4
#define BMI270_SPI_INSTANCE SPI1

#if defined(CRAZYBEEF4FS) || defined(CRAZYBEEF4FR) || defined(CRAZYBEEF4DX)
#define GYRO_MPU6000_ALIGN CW90_DEG
#define GYRO_MPU6000_ALIGN CW90_DEG
#define GYRO_ICM20689_ALIGN CW90_DEG
#define GYRO_ICM42688P_ALIGN CW90_DEG
#define GYRO_BMI270_ALIGN CW90_DEG
#else
#define GYRO_MPU6000_ALIGN CW180_DEG
#define GYRO_MPU6000_ALIGN CW180_DEG
#define GYRO_ICM20689_ALIGN CW180_DEG
#define GYRO_ICM42688P_ALIGN CW180_DEG
#define GYRO_BMI270_ALIGN CW180_DEG
#endif
#define USE_ACC
#define USE_ACC_SPI_MPU6000
#define USE_ACC_SPI_ICM20689

#if defined(CRAZYBEEF4FS) || defined(CRAZYBEEF4FR) || defined(CRAZYBEEF4DX)
#define ACC_MPU6000_ALIGN CW90_DEG
#define ACC_MPU6000_ALIGN CW90_DEG
#define ACC_ICM20689_ALIGN CW90_DEG
#define ACC_ICM42688P_ALIGN CW90_DEG
#define ACC_BMI270_ALIGN CW90_DEG
#else
#define ACC_MPU6000_ALIGN CW180_DEG
#define ACC_MPU6000_ALIGN CW180_DEG
#define ACC_ICM20689_ALIGN CW180_DEG
#define ACC_ICM42688P_ALIGN CW180_DEG
#define ACC_BMI270_ALIGN CW180_DEG
#endif

// *************** SPI2 OSD *****************************
#define USE_SPI_DEVICE_2
#define SPI2_SCK_PIN PB13
Expand Down
10 changes: 6 additions & 4 deletions src/main/target/MATEKF411RX/target.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,16 @@ FEATURES += VCP SDCARD

TARGET_SRC = \
drivers/accgyro/accgyro_spi_mpu6000.c \
drivers/accgyro/accgyro_spi_icm20689.c \
drivers/accgyro/accgyro_spi_icm20689.c \
drivers/accgyro/accgyro_spi_icm426xx.c \
drivers/accgyro/accgyro_spi_bmi270.c \
drivers/max7456.c \
drivers/rx/rx_cc2500.c \
rx/cc2500_common.c \
rx/cc2500_common.c \
rx/cc2500_frsky_shared.c \
rx/cc2500_frsky_d.c \
rx/cc2500_frsky_x.c \
rx/cc2500_redpine.c \
rx/cc2500_frsky_x.c \
rx/cc2500_redpine.c \
rx/cc2500_sfhss.c
ifeq ($(TARGET), CRAZYBEEF4FS)
TARGET_SRC += \
Expand Down

0 comments on commit b0d5994

Please sign in to comment.