kakutef7 spi: disable IMU drdy

It cause bad transfers on a Kopis 2, though not on a bench KakuteF7 unit.
Not sure if this is a single case.

nsh> icm20689 status
INFO  [SPI_I2C] Running on SPI Bus 4
INFO  [icm20689] FIFO empty interval: 1000 us (1000.000 Hz)
icm20689: transfer: 46375 events, 6790549us elapsed, 146.43us avg, min 54us max 1709us 81.564us rms
icm20689: bad register: 0 events
icm20689: bad transfer: 4284 events
icm20689: FIFO empty: 0 events
icm20689: FIFO overflow: 1 events
icm20689: FIFO reset: 2 events
icm20689: DRDY interval: 375585 events, 124.93us avg, min 99us max 250us 2.322us rms
INFO  [drivers_accelerometer] /dev/accel device instance: 0
INFO  [drivers_accelerometer] calibration scale: 1.02174 0.99918 0.98338
INFO  [drivers_accelerometer] calibration offset: 0.76124 -0.00725 -0.16437
INFO  [drivers_gyroscope] /dev/gyro device instance: 0
INFO  [drivers_gyroscope] calibration offset: -0.08153 0.02432 0.00050
This commit is contained in:
Beat Küng 2020-06-03 11:48:26 +02:00 committed by Daniel Agar
parent 5ce006dd8b
commit 2069576a6e
1 changed files with 3 additions and 2 deletions

View File

@ -43,8 +43,9 @@ constexpr px4_spi_bus_t px4_spi_buses[SPI_BUS_MAX_BUS_ITEMS] = {
initSPIDevice(DRV_OSD_DEVTYPE_ATXXXX, SPI::CS{GPIO::PortB, GPIO::Pin12}),
}),
initSPIBus(SPI::Bus::SPI4, {
initSPIDevice(DRV_IMU_DEVTYPE_ICM20689, SPI::CS{GPIO::PortE, GPIO::Pin4}, SPI::DRDY{GPIO::PortE, GPIO::Pin1}),
initSPIDevice(DRV_IMU_DEVTYPE_MPU6000, SPI::CS{GPIO::PortE, GPIO::Pin4}, SPI::DRDY{GPIO::PortE, GPIO::Pin1}),
// Note: DRDY is disabled as it caused bad IMU transfers (on a Kopis 2 with ICM20689)
initSPIDevice(DRV_IMU_DEVTYPE_ICM20689, SPI::CS{GPIO::PortE, GPIO::Pin4}),
initSPIDevice(DRV_IMU_DEVTYPE_MPU6000, SPI::CS{GPIO::PortE, GPIO::Pin4}),
}),
};