diff --git a/src/main/target/DAKEFPVH743/target.c b/src/main/target/DAKEFPVH743/target.c index 1465bef05d2..3317e1c53bd 100644 --- a/src/main/target/DAKEFPVH743/target.c +++ b/src/main/target/DAKEFPVH743/target.c @@ -28,9 +28,18 @@ #include "common/maths.h" #include "fc/config.h" -BUSDEV_REGISTER_SPI_TAG(busdev_1_ICM42605, DEVHW_ICM42605, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); -BUSDEV_REGISTER_SPI_TAG(busdev_2_ICM42605, DEVHW_ICM42605, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); - +BUSDEV_REGISTER_SPI_TAG(busdev_1_mpu6000, DEVHW_MPU6000, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_1_mpu6500, DEVHW_MPU6500, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_1_ICM42605, DEVHW_ICM42605, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_1_BMI270, DEVHW_BMI270, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_1_lsm6dxx, DEVHW_LSM6D, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); + +// // Board hardware definitions - IMU2 slot +BUSDEV_REGISTER_SPI_TAG(busdev_2_mpu6000, DEVHW_MPU6000, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_2_mpu6500, DEVHW_MPU6500, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_2_ICM42605, DEVHW_ICM42605, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_2_BMI270, DEVHW_BMI270, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_2_lsm6dxx, DEVHW_LSM6D , IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); timerHardware_t timerHardware[] = { DEF_TIM(TIM5, CH1, PA0, TIM_USE_OUTPUT_AUTO, 0, 0), // M1 diff --git a/src/main/target/DAKEFPVH743/target.h b/src/main/target/DAKEFPVH743/target.h index 29e1154d34a..7b512a2d7e7 100644 --- a/src/main/target/DAKEFPVH743/target.h +++ b/src/main/target/DAKEFPVH743/target.h @@ -65,6 +65,7 @@ #define USE_IMU_ICM42605 #define USE_IMU_BMI270 +#define USE_IMU_LSM6DXX // Enable dual gyro mode diff --git a/src/main/target/DAKEFPVH743PRO/target.c b/src/main/target/DAKEFPVH743PRO/target.c index f5455be7016..2036da8a3b3 100644 --- a/src/main/target/DAKEFPVH743PRO/target.c +++ b/src/main/target/DAKEFPVH743PRO/target.c @@ -33,12 +33,14 @@ BUSDEV_REGISTER_SPI_TAG(busdev_1_mpu6000, DEVHW_MPU6000, IMU_1_SPI_BUS, IMU_ BUSDEV_REGISTER_SPI_TAG(busdev_1_mpu6500, DEVHW_MPU6500, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_1_ICM42605, DEVHW_ICM42605, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_1_BMI270, DEVHW_BMI270, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_1_lsm6dxx, DEVHW_LSM6D, IMU_1_SPI_BUS, IMU_1_CS_PIN, NONE, 0, DEVFLAGS_NONE, IMU_1_ALIGN); // // Board hardware definitions - IMU2 slot BUSDEV_REGISTER_SPI_TAG(busdev_2_mpu6000, DEVHW_MPU6000, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_2_mpu6500, DEVHW_MPU6500, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_2_ICM42605, DEVHW_ICM42605, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_2_BMI270, DEVHW_BMI270, IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_2_lsm6dxx, DEVHW_LSM6D , IMU_2_SPI_BUS, IMU_2_CS_PIN, NONE, 1, DEVFLAGS_NONE, IMU_2_ALIGN); timerHardware_t timerHardware[] = { DEF_TIM(TIM2, CH1, PA0, TIM_USE_OUTPUT_AUTO, 0, 0), // M1 diff --git a/src/main/target/DAKEFPVH743PRO/target.h b/src/main/target/DAKEFPVH743PRO/target.h index 379fd1b9464..3f4ce6a944d 100644 --- a/src/main/target/DAKEFPVH743PRO/target.h +++ b/src/main/target/DAKEFPVH743PRO/target.h @@ -65,6 +65,7 @@ #define USE_IMU_ICM42605 #define USE_IMU_BMI270 +#define USE_IMU_LSM6DXX // IMU_1 is verified to work on OBF4V6 and Omnibus Fireworks board # define IMU_1_CS_PIN PA4 diff --git a/src/main/target/DAKEFPVH743_SLIM/target.c b/src/main/target/DAKEFPVH743_SLIM/target.c index b85049fa483..591a1e205c3 100644 --- a/src/main/target/DAKEFPVH743_SLIM/target.c +++ b/src/main/target/DAKEFPVH743_SLIM/target.c @@ -33,12 +33,14 @@ BUSDEV_REGISTER_SPI_TAG(busdev_1_mpu6000, DEVHW_MPU6000, IMU_1_SPI_BUS, IMU_ BUSDEV_REGISTER_SPI_TAG(busdev_1_mpu6500, DEVHW_MPU6500, IMU_1_SPI_BUS, IMU_1_CS_PIN, IMU_1_IRQ_PIN, 0, DEVFLAGS_NONE, IMU_1_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_1_ICM42605, DEVHW_ICM42605, IMU_1_SPI_BUS, IMU_1_CS_PIN, IMU_1_IRQ_PIN, 0, DEVFLAGS_NONE, IMU_1_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_1_BMI270, DEVHW_BMI270, IMU_1_SPI_BUS, IMU_1_CS_PIN, IMU_1_IRQ_PIN, 0, DEVFLAGS_NONE, IMU_1_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_1_lsm6dxx, DEVHW_LSM6D, IMU_1_SPI_BUS, IMU_1_CS_PIN, IMU_1_IRQ_PIN, 0, DEVFLAGS_NONE, IMU_1_ALIGN); // // Board hardware definitions - IMU2 slot BUSDEV_REGISTER_SPI_TAG(busdev_2_mpu6000, DEVHW_MPU6000, IMU_2_SPI_BUS, IMU_2_CS_PIN, IMU_2_IRQ_PIN, 1, DEVFLAGS_NONE, IMU_2_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_2_mpu6500, DEVHW_MPU6500, IMU_2_SPI_BUS, IMU_2_CS_PIN, IMU_2_IRQ_PIN, 1, DEVFLAGS_NONE, IMU_2_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_2_ICM42605, DEVHW_ICM42605, IMU_2_SPI_BUS, IMU_2_CS_PIN, IMU_2_IRQ_PIN, 1, DEVFLAGS_NONE, IMU_2_ALIGN); BUSDEV_REGISTER_SPI_TAG(busdev_2_BMI270, DEVHW_BMI270, IMU_2_SPI_BUS, IMU_2_CS_PIN, IMU_2_IRQ_PIN, 1, DEVFLAGS_NONE, IMU_2_ALIGN); +BUSDEV_REGISTER_SPI_TAG(busdev_2_lsm6dxx, DEVHW_LSM6D , IMU_2_SPI_BUS, IMU_2_CS_PIN, IMU_2_IRQ_PIN, 1, DEVFLAGS_NONE, IMU_2_ALIGN); timerHardware_t timerHardware[] = { DEF_TIM(TIM1, CH1, PE9, TIM_USE_OUTPUT_AUTO, 0, 0), // S1 diff --git a/src/main/target/DAKEFPVH743_SLIM/target.h b/src/main/target/DAKEFPVH743_SLIM/target.h index f4c324f60ec..7e3b2f0c63c 100644 --- a/src/main/target/DAKEFPVH743_SLIM/target.h +++ b/src/main/target/DAKEFPVH743_SLIM/target.h @@ -65,6 +65,7 @@ #define USE_IMU_ICM42605 #define USE_IMU_BMI270 +#define USE_IMU_LSM6DXX // IMU_1 is verified to work on OBF4V6 and Omnibus Fireworks board # define IMU_1_CS_PIN PC9