diff --git a/I2CManager.cpp b/I2CManager.cpp index 59f455f..85dfea2 100644 --- a/I2CManager.cpp +++ b/I2CManager.cpp @@ -46,6 +46,8 @@ // Helper function for listing device types static const FSH * guessI2CDeviceType(uint8_t address) { + if (address >= 0x10 && address <= 0x17) + return F("EX-SensorCAM"); if (address == 0x1A) // 0x09-0x18 selectable, but for now handle the default return F("Piicodev 865/915MHz Transceiver"); diff --git a/IO_EXSensorCAM.h b/IO_EXSensorCAM.h index a8156eb..58e2bf4 100644 --- a/IO_EXSensorCAM.h +++ b/IO_EXSensorCAM.h @@ -85,6 +85,7 @@ class EXSensorCAM : public IODevice { void _begin() { uint8_t status; // Initialise EX-SensorCAM device + I2CManager.setClock(100000); // Set speed for I2C operations I2CManager.begin(); if (!I2CManager.exists(_I2CAddress)) { DIAG(F("EX-SensorCAM I2C:%s device not found"), _I2CAddress.toString()); diff --git a/version.h b/version.h index 8606c65..d87f350 100644 --- a/version.h +++ b/version.h @@ -3,7 +3,8 @@ #include "StringFormatter.h" -#define VERSION "5.5.23" +#define VERSION "5.5.24" +// 5.5.24 - SensorCAM in I2C scan and automatically setClock // 5.5.23 - Reminder loop Idle packet optimization // 5.5.22 - (5.4.9) Handle non-compliant decoders returning 255 for cv 20 and confusing with bad consist addresses. // - DCC 5mS gap to same loco DCC packet restriction