Ruuvitag - some BLE advertisments are missing - not each second

I use the standard Ruuvitag with an ESP32 and the kolban’s libraries to make the BLEScan. Now I only have the BLEScan in my loop(). I read and decode the data without any problem.
But sometimes, the Ruuvitag seems to skip some messages, because i don’t receive the message during 2, 3 or 4 seconds. During 1 minute, the tag seems to skip around 4 to 10 messages.
What could be the problem? Do you have some tips ?

It’s common to lose roughly 10-20% of transmissions in “typical conditions” due to the nature of advertisements; they’re sent only once with no retransmission regardless of the environmental factors. Other devices operating at or near 2.4Ghz frequency (other bluetooth devices, 2.4Ghz wifi, etc) contribute to the environmental noise that can cause transmissions to be unreadable and thus missed. Normal background radio noise affects this too, as does the quality of the receiver device and its antenna. Especially in case of interference originating from other devices, the “loss rate” varies somewhat randomly, and often causes sequential advertisements to be lost rather than “every Nth advertisement”.

In my case I receive roughly 85-90% of the advertisements sent by tags in ideal locations (indoors, terrace, etc), with some of the tags getting as low as 50% (fridge and freezer). My tags are configured to transmit at 5s interval, or 720 times per hour, and the reception rate looks like this (measurements received per hour for the past 7 days):


Note how the tags with less ideal conditions vary differently over time

1 Like

OK, I understand.
Thank you for your answer and explanations.

What is the SELECT you used to generate the measurements per hour Graf?

count("temperature") with a fixed GROUP BY time(1h), for example:

SELECT count("temperature") FROM "ruuvi_measurements" WHERE ("name" = 'Indoors') AND time >= now() - 7d GROUP BY time(1h) fill(none);