Skip to content

Commit e0fd181

Browse files
committed
Fix printing of event.data[4]
1 parent 65578b5 commit e0fd181

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

src/components/i2c/WipperSnapper_I2C.cpp

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1206,7 +1206,7 @@ void WipperSnapper_Component_I2C::update() {
12061206
wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_VOC_INDEX,
12071207
"VOC Index", "", event, &sensors_event_t::voc_index, sensorsReturningFalse, retries);
12081208

1209-
// Proximity sensor
1209+
// Proximity sensor -- sends using event.data[0] same as raw sensor_type
12101210
sensorEventRead(iter, curTime, &msgi2cResponse,
12111211
&WipperSnapper_I2C_Driver::getEventProximity,
12121212
&WipperSnapper_I2C_Driver::sensorProximityPeriod,
@@ -1249,23 +1249,25 @@ void WipperSnapper_Component_I2C::sensorEventRead(
12491249
curTime = millis();
12501250
if (((*iter)->*getPeriodFunc)() != 0L &&
12511251
curTime - ((*iter)->*getPeriodPrvFunc)() > ((*iter)->*getPeriodFunc)()) {
1252+
// within the period, read the sensor
12521253
if (((*iter)->*getEventFunc)(&event)) {
1254+
if (sensorType == wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_RAW ||
1255+
sensorType == wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PROXIMITY) {
1256+
float value = event.data[0];
1257+
} else {
1258+
float value = event.*valueMember;
1259+
}
12531260
WS_DEBUG_PRINT("Sensor 0x");
12541261
WS_DEBUG_PRINTHEX((*iter)->getI2CAddress());
12551262
WS_DEBUG_PRINTLN("");
12561263
WS_DEBUG_PRINT("\t");
12571264
WS_DEBUG_PRINT(sensorName);
12581265
WS_DEBUG_PRINT(": ");
1259-
WS_DEBUG_PRINT(event.*valueMember);
1266+
WS_DEBUG_PRINT(value);
12601267
WS_DEBUG_PRINTLN(unit);
12611268

12621269
// pack event data into msg
1263-
if (sensorType == wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_RAW ||
1264-
sensorType == wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PROXIMITY) {
1265-
fillEventMessage(msgi2cResponse, event.data[0], sensorType);
1266-
} else {
1267-
fillEventMessage(msgi2cResponse, event.*valueMember, sensorType);
1268-
}
1270+
fillEventMessage(msgi2cResponse, value, sensorType);
12691271

12701272
((*iter)->*setPeriodPrvFunc)(curTime);
12711273
} else {

0 commit comments

Comments
 (0)