From a01f9bdda1d2aa0d7f2aee24a42b068809f3ae7f Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Tue, 13 Nov 2018 15:15:11 +0100 Subject: [PATCH] Add re-probe to NovaSDS sensor Add re-probe to NovaSDS sensor (#4335) --- sonoff/xsns_20_novasds.ino | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/sonoff/xsns_20_novasds.ino b/sonoff/xsns_20_novasds.ino index 8a584571c..c100c6ad6 100644 --- a/sonoff/xsns_20_novasds.ino +++ b/sonoff/xsns_20_novasds.ino @@ -73,8 +73,6 @@ void NovaSdsSetWorkPeriod() } } - - bool NovaSdsReadData() { if (! NovaSdsSerial->available()) return false; @@ -101,8 +99,6 @@ bool NovaSdsReadData() return false; } - novasds_valid = 10; - return true; } @@ -110,11 +106,17 @@ bool NovaSdsReadData() void NovaSdsSecond() // Every second { - if (NovaSdsReadData()) { - novasds_valid = 10; + if (XSNS_20 == (uptime % 100)) { + if (!novasds_valid) { + NovaSdsSetWorkPeriod(); + } } else { - if (novasds_valid) { - novasds_valid--; + if (NovaSdsReadData()) { + novasds_valid = 10; + } else { + if (novasds_valid) { + novasds_valid--; + } } } }