diff --git a/protobufs b/protobufs index d3375fe59..636212824 160000 --- a/protobufs +++ b/protobufs @@ -1 +1 @@ -Subproject commit d3375fe599da1dd48572354325d3186eccf6f449 +Subproject commit 636212824a446194b73b02ca5c6c15cd61d3e007 diff --git a/src/detect/i2cScan.h b/src/detect/i2cScan.h index 7f62a7604..3adb44277 100644 --- a/src/detect/i2cScan.h +++ b/src/detect/i2cScan.h @@ -147,11 +147,11 @@ void scanI2Cdevice(void) } if(addr == QMC6310_ADDR){ DEBUG_MSG("QMC6310 3-Axis magnetic sensor found at address 0x%x\n", (uint8_t)addr); - // nodeTelemetrySensorsMap[TelemetrySensorType_QMC6310] = addr; //Uncomment after protobufs PR is merged + nodeTelemetrySensorsMap[TelemetrySensorType_QMC6310] = addr; } if(addr == QMI8658_ADDR){ DEBUG_MSG("QMI8658 6-Axis inertial measurement sensor found at address 0x%x\n", (uint8_t)addr); - // nodeTelemetrySensorsMap[TelemetrySensorType_QMI8658] = addr; //Uncomment after protobufs PR is merged + nodeTelemetrySensorsMap[TelemetrySensorType_QMI8658] = addr; } } else if (err == 4) { DEBUG_MSG("Unknow error at address 0x%x\n", addr); diff --git a/src/main.cpp b/src/main.cpp index c5df7e021..95da04014 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -87,7 +87,7 @@ uint32_t serialSinceMsec; bool pmu_found; // Array map of sensor types (as array index) and i2c address as value we'll find in the i2c scan -uint8_t nodeTelemetrySensorsMap[TelemetrySensorType_LPS22+1] = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }; +uint8_t nodeTelemetrySensorsMap[TelemetrySensorType_QMI8658+1] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; Router *router = NULL; // Users of router don't care what sort of subclass implements that API diff --git a/src/main.h b/src/main.h index c92379274..f3f9c62c9 100644 --- a/src/main.h +++ b/src/main.h @@ -18,7 +18,7 @@ extern bool pmu_found; extern bool isCharging; extern bool isUSBPowered; -extern uint8_t nodeTelemetrySensorsMap[TelemetrySensorType_LPS22+1]; +extern uint8_t nodeTelemetrySensorsMap[TelemetrySensorType_QMI8658+1]; extern int TCPPort; // set by Portduino diff --git a/src/mesh/generated/telemetry.pb.h b/src/mesh/generated/telemetry.pb.h index 49c6fbf9f..38f4f9ca8 100644 --- a/src/mesh/generated/telemetry.pb.h +++ b/src/mesh/generated/telemetry.pb.h @@ -29,7 +29,11 @@ typedef enum _TelemetrySensorType { /* High accuracy temperature and humidity */ TelemetrySensorType_SHTC3 = 7, /* High accuracy pressure */ - TelemetrySensorType_LPS22 = 8 + TelemetrySensorType_LPS22 = 8, + /* 3-Axis magnetic sensor */ + TelemetrySensorType_QMC6310 = 9, + /* 6-Axis inertial measurement sensor */ + TelemetrySensorType_QMI8658 = 10 } TelemetrySensorType; /* Struct definitions */ @@ -81,8 +85,8 @@ typedef struct _Telemetry { /* Helper constants for enums */ #define _TelemetrySensorType_MIN TelemetrySensorType_SENSOR_UNSET -#define _TelemetrySensorType_MAX TelemetrySensorType_LPS22 -#define _TelemetrySensorType_ARRAYSIZE ((TelemetrySensorType)(TelemetrySensorType_LPS22+1)) +#define _TelemetrySensorType_MAX TelemetrySensorType_QMI8658 +#define _TelemetrySensorType_ARRAYSIZE ((TelemetrySensorType)(TelemetrySensorType_QMI8658+1)) #ifdef __cplusplus