@@ -61,6 +61,7 @@ const char *dev_imu_names[] = {
6161 "ICM-20948" ,
6262 "ICM-42688-P/ICM-42688-V" ,
6363 "ICM-45686" ,
64+ "ICM-45688-P" ,
6465 "LSM6DSO16IS/ISM330IS" ,
6566 "LSM6DS3" ,
6667 "LSM6DS3TR-C/LSM6DSL/LSM6DSM/ISM330DLC" ,
@@ -80,6 +81,7 @@ const sensor_imu_t *sensor_imus[] = {
8081 & sensor_imu_none ,
8182 & sensor_imu_icm42688 ,
8283 & sensor_imu_icm45686 ,
84+ & sensor_imu_icm45686 , // compatible with driver
8385 & sensor_imu_none , // will not implement, does not have FIFO
8486 & sensor_imu_lsm6dsm , // compatible with driver (unfortunately)
8587 & sensor_imu_lsm6dsm ,
@@ -102,13 +104,13 @@ const uint8_t i2c_dev_imu_reg[] = {
102104};
103105const uint8_t i2c_dev_imu_id [] = {
104106 4 , 0xEA ,0xD1 ,0x24 ,0x43 , // reg 0x00
105- 1 , 0xE9 , // reg 0x72
107+ 2 , 0xE9 , 0xE7 , // reg 0x72
106108 5 , 0x68 ,0x70 ,0x71 ,0x47 ,0xDB , // reg 0x75
107109 8 , 0x22 ,0x69 ,0x6A ,0x6B ,0x6C ,0x6D ,0x70 ,0x71 // reg 0x0F
108110};
109111const int i2c_dev_imu [] = {
110112 IMU_ICM20948 , IMU_BMI160 , IMU_BMI270 , IMU_BMI323 ,
111- IMU_ICM45686 ,
113+ IMU_ICM45686 , IMU_ICM45688 ,
112114 IMU_MPU6050 , IMU_MPU6500 , IMU_MPU9250 , IMU_ICM42688 , IMU_ICM42688 , // ICM-42688-P, ICM-42688-V
113115 IMU_ISM330IS , IMU_LSM6DS3 , IMU_LSM6DSM , IMU_LSM6DSR , IMU_LSM6DSO , IMU_LSM6DST , IMU_LSM6DSV , IMU_ISM330BX
114116};
@@ -263,4 +265,4 @@ int sensor_scan_mag_ext(const sensor_ext_ssi_t *ext_ssi, uint16_t *ext_dev_addr,
263265 return sensor_scan_ext (ext_ssi , ext_dev_addr , ext_dev_reg , i2c_dev_mag_addr_count , i2c_dev_mag_addr , i2c_dev_mag_reg , i2c_dev_mag_id , i2c_dev_mag );
264266}
265267
266- #endif
268+ #endif
0 commit comments