microDS18B20
microDS18B20 copied to clipboard
Датчик вернул ошибочную температуру -2045.93
Всем привет!
Я только собрал устройство (WEMOS D1 mini), оно работало первую ночь и возможно я рано паникую. Но всё же, вдруг появятся какие-то мысли. Есть два датчика, подключены к одному пину (D1), опрос делается примерно так:
inflowSensor.requestTemp();
outflowSensor.requestTemp();
while (millis() - lastReading < 2000) { //Задержка для получения данных с датчиков температуры 2сек
portalLoop();
mqtt.loop();
}
if (inflowSensor.readTemp()) {
float temp = inflowSensor.getTemp();
if (abs(prevInflowSensorValue - temp) > memory.minChangeToReport || (millis() - lastReportInflow > memory.maxReportInterval)) {
inflowTemperature->setValue(temp);
prevInflowSensorValue = temp;
lastReportInflow = millis();
}
} else {
Serial.println("Error reading inflow temp sensor");
}
if (outflowSensor.readTemp()) {
float temp = outflowSensor.getTemp();
if (abs(prevOutflowSensorValue - temp) > memory.minChangeToReport || (millis() - lastReportOutflow > memory.maxReportInterval)) {
outflowTemperature->setValue(temp);
prevOutflowSensorValue = temp;
lastReportOutflow = millis();
}
} else {
Serial.println("Error reading outflow temp sensor");
}
Использую библиотеку ArduinoHA и отправляю эти данные в HomeAssistant через MQTT. И вот, сегодня ночью один из датчиков прислал такое значение: -2045.93
Вот тут видны предыдущие и последующие значения, температура была стабильна и не менялась
Я пока продолжаю наблюдение, но возмонжо у кого то появится мысль что это может быть, может переполнение какое-то? При этом второй датчик никаких проблем в показаниях не показывал