--- a/thermferm/devices.c Thu Apr 11 13:18:20 2024 +0200 +++ b/thermferm/devices.c Thu Apr 11 14:57:32 2024 +0200 @@ -238,7 +238,7 @@ time_t now, my_timestamp; int my_value, test_value; #ifdef HAVE_WIRINGPI_H - int i; + int rc, i; char buf[40]; #endif @@ -792,9 +792,12 @@ // syslog(LOG_NOTICE, "sensor %s value %d", dev_w1->address, dev_w1->value); found = TRUE; if ((dev_w1->value == -1) || (dev_w1->value < -55000)) { - syslog(LOG_NOTICE, "sensor %s value error %d", device->address, dev_w1->value); + if (device->present != DEVPRESENT_ERROR) + syslog(LOG_NOTICE, "sensor %s value error %d, keep %d", device->address, dev_w1->value, device->value); device->present = DEVPRESENT_ERROR; } else { + if (device->present != DEVPRESENT_YES) + syslog(LOG_NOTICE, "sensor %s value ok %d", device->address, dev_w1->value); device->value = dev_w1->value; device->timestamp = time(NULL); device->present = DEVPRESENT_YES;