Add IIS2MDCTR and ISM330DHCX to ScanI2C (#10723)
* add ScanI2C for IIS2MDCTR and ISM330DHCX * Trunk format * Minor cleanup Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
co-authored by
GitHub
Copilot Autofix powered by AI
parent
d878c81ce8
commit
43d485dd76
@@ -37,15 +37,15 @@ ScanI2C::FoundDevice ScanI2C::firstKeyboard() const
|
|||||||
|
|
||||||
ScanI2C::FoundDevice ScanI2C::firstAccelerometer() const
|
ScanI2C::FoundDevice ScanI2C::firstAccelerometer() const
|
||||||
{
|
{
|
||||||
ScanI2C::DeviceType types[] = {MPU6050, LIS3DH, BMA423, LSM6DS3, BMX160, STK8BAXX,
|
ScanI2C::DeviceType types[] = {MPU6050, LIS3DH, BMA423, LSM6DS3, BMX160, STK8BAXX,
|
||||||
ICM20948, QMA6100P, BMM150, BMI270, ICM42607P};
|
ICM20948, QMA6100P, BMM150, BMI270, ICM42607P, ISM330DHCX};
|
||||||
return firstOfOrNONE(11, types);
|
return firstOfOrNONE(12, types);
|
||||||
}
|
}
|
||||||
|
|
||||||
ScanI2C::FoundDevice ScanI2C::firstMagnetometer() const
|
ScanI2C::FoundDevice ScanI2C::firstMagnetometer() const
|
||||||
{
|
{
|
||||||
ScanI2C::DeviceType types[] = {MMC5983MA};
|
ScanI2C::DeviceType types[] = {MMC5983MA, IIS2MDCTR};
|
||||||
return firstOfOrNONE(1, types);
|
return firstOfOrNONE(2, types);
|
||||||
}
|
}
|
||||||
|
|
||||||
ScanI2C::FoundDevice ScanI2C::firstAQI() const
|
ScanI2C::FoundDevice ScanI2C::firstAQI() const
|
||||||
|
|||||||
@@ -99,6 +99,8 @@ class ScanI2C
|
|||||||
CW2015,
|
CW2015,
|
||||||
SCD30,
|
SCD30,
|
||||||
ADS1115,
|
ADS1115,
|
||||||
|
IIS2MDCTR,
|
||||||
|
ISM330DHCX,
|
||||||
} DeviceType;
|
} DeviceType;
|
||||||
|
|
||||||
// typedef uint8_t DeviceAddress;
|
// typedef uint8_t DeviceAddress;
|
||||||
|
|||||||
@@ -584,6 +584,9 @@ void ScanI2CTwoWire::scanPort(I2CPort port, uint8_t *address, uint8_t asize)
|
|||||||
if (registerValue == 0x6A) {
|
if (registerValue == 0x6A) {
|
||||||
type = LSM6DS3;
|
type = LSM6DS3;
|
||||||
logFoundDevice("LSM6DS3", (uint8_t)addr.address);
|
logFoundDevice("LSM6DS3", (uint8_t)addr.address);
|
||||||
|
} else if (registerValue == 0x6B) {
|
||||||
|
type = ISM330DHCX;
|
||||||
|
logFoundDevice("ISM330DHCX", (uint8_t)addr.address);
|
||||||
} else {
|
} else {
|
||||||
type = QMI8658;
|
type = QMI8658;
|
||||||
logFoundDevice("QMI8658", (uint8_t)addr.address);
|
logFoundDevice("QMI8658", (uint8_t)addr.address);
|
||||||
@@ -591,7 +594,17 @@ void ScanI2CTwoWire::scanPort(I2CPort port, uint8_t *address, uint8_t asize)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
SCAN_SIMPLE_CASE(QMC5883L_ADDR, QMC5883L, "QMC5883L", (uint8_t)addr.address)
|
SCAN_SIMPLE_CASE(QMC5883L_ADDR, QMC5883L, "QMC5883L", (uint8_t)addr.address)
|
||||||
SCAN_SIMPLE_CASE(HMC5883L_ADDR, HMC5883L, "HMC5883L", (uint8_t)addr.address)
|
case HMC5883L_ADDR:
|
||||||
|
registerValue = getRegisterValue(ScanI2CTwoWire::RegisterLocation(addr, 0x4FU), 1); // get ID
|
||||||
|
if (registerValue == 0x40) {
|
||||||
|
type = IIS2MDCTR;
|
||||||
|
logFoundDevice("IIS2MDCTR", (uint8_t)addr.address);
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
type = HMC5883L;
|
||||||
|
logFoundDevice("HMC5883L", (uint8_t)addr.address);
|
||||||
|
break;
|
||||||
|
}
|
||||||
#ifdef HAS_QMA6100P
|
#ifdef HAS_QMA6100P
|
||||||
SCAN_SIMPLE_CASE(QMA6100P_ADDR, QMA6100P, "QMA6100P", (uint8_t)addr.address)
|
SCAN_SIMPLE_CASE(QMA6100P_ADDR, QMA6100P, "QMA6100P", (uint8_t)addr.address)
|
||||||
#else
|
#else
|
||||||
|
|||||||
@@ -25,8 +25,7 @@
|
|||||||
|
|
||||||
const uint32_t g_ADigitalPinMap[] = {
|
const uint32_t g_ADigitalPinMap[] = {
|
||||||
// P0 - pins 0 and 1 are hardwired for xtal and should never be enabled
|
// P0 - pins 0 and 1 are hardwired for xtal and should never be enabled
|
||||||
0xff, 0xff, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
|
0xff, 0xff, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
|
||||||
26, 27, 28, 29, 30, 31,
|
|
||||||
|
|
||||||
// P1
|
// P1
|
||||||
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47};
|
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47};
|
||||||
|
|||||||
Reference in New Issue
Block a user