matthias-bs / BresserWeatherSensorReceiver

Bresser 5-in-1/6-in-1/7-in-1 868 MHz Weather Sensor Radio Receiver for Arduino based on CC1101, SX1276/RFM95W or SX1262
MIT License
113 stars 21 forks source link

Potential mix of weather sensor data using 6-in-1 decoder #141

Closed matthias-bs closed 7 months ago

matthias-bs commented 7 months ago

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.