From b5c37d7d37f1112322cde32a5d5d442138c57784 Mon Sep 17 00:00:00 2001 From: nerdCopter <56646290+nerdCopter@users.noreply.github.com> Date: Wed, 13 Mar 2024 09:18:14 -0500 Subject: [PATCH] BMI270 - 6k code ; but does not properly work --- src/main/drivers/accgyro/accgyro.h | 1 + src/main/drivers/accgyro/gyro_sync.c | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/drivers/accgyro/accgyro.h b/src/main/drivers/accgyro/accgyro.h index 0bcf72738c..ac4192b978 100644 --- a/src/main/drivers/accgyro/accgyro.h +++ b/src/main/drivers/accgyro/accgyro.h @@ -69,6 +69,7 @@ #define GYRO_RATE_1_kHz 1000.0f #define GYRO_RATE_1100_Hz 909.09f #define GYRO_RATE_3200_Hz 312.5f +#define GYRO_RATE_6400_Hz 156.25f #define GYRO_RATE_8_kHz 125.0f #define GYRO_RATE_9_kHz 111.11f #define GYRO_RATE_16_kHz 64.0f diff --git a/src/main/drivers/accgyro/gyro_sync.c b/src/main/drivers/accgyro/gyro_sync.c index 3653c24d43..1c3e37bd3b 100644 --- a/src/main/drivers/accgyro/gyro_sync.c +++ b/src/main/drivers/accgyro/gyro_sync.c @@ -62,7 +62,16 @@ uint32_t gyroSetSampleRate(gyroDev_t *gyro, uint8_t lpf, uint8_t gyroSyncDenomin if (lpfNoneOr256) { gyro->gyroRateKHz = GYRO_RATE_3200_Hz; } break; case BMI_270_SPI: //bmi270 - gyro->gyroRateKHz = GYRO_RATE_3200_Hz; +#ifdef USE_GYRO_DLPF_EXPERIMENTAL + if (gyro->hardware_lpf == GYRO_HARDWARE_LPF_EXPERIMENTAL) { + // 6.4KHz sampling, but data is unfiltered (no hardware DLPF) + gyro->gyroRateKHz = GYRO_RATE_6400_Hz; + //gyroSampleRateHz = 6400; + } else +#endif + { + gyro->gyroRateKHz = GYRO_RATE_3200_Hz; + } break; default: if (gyro_use_32khz) {