Context
Affected are only 5-in-1/6-in-1 weather sensors using decodeBresser6In1Payload(), where a complete set of data consists of two different messages.
Describe the bug
In clearSlots(), each data slot was marked invalid and incomplete, but the individual *_ok flags (e.g. temp_ok, rain_ok etc.) were left unchanged. When the first message (e.g. containing rain data) was received, the slot was marked valid. Because *_ok flags remained set from a previous cycle, old data (e.g. temperature - from the same sensor or any other sensor) could have been treated as current data.
To Reproduce
Steps to reproduce the behavior:
Run the software with one or more sensors using decodeBresser6In1Payload(), at least one of the weather sensors stated in Context.
Context Affected are only 5-in-1/6-in-1 weather sensors using
decodeBresser6In1Payload()
, where a complete set of data consists of two different messages.Describe the bug In
clearSlots()
, each data slot was markedinvalid
andincomplete
, but the individual*_ok
flags (e.g.temp_ok
,rain_ok
etc.) were left unchanged. When the first message (e.g. containing rain data) was received, the slot was marked valid. Because*_ok
flags remained set from a previous cycle, old data (e.g. temperature - from the same sensor or any other sensor) could have been treated as current data.To Reproduce Steps to reproduce the behavior: Run the software with one or more sensors using
decodeBresser6In1Payload()
, at least one of the weather sensors stated in Context.