Inconsistent data collection with RuuviCollector and Pi 4

I’ve been setting up my ruuvicollector using Raspberry Pi 4, and got it working. However there is something very odd going on. After starting ruuvicollector, it collects data fine for couple of minutes. After that there may be gaps for several minutes (up to 10 minutes or so). And when the screen time outs, data collecting goes down to about twice an hour.
If I wake up the RasPi, collection resumes for another couple of minutes.
I’m running Raspbian on my Pi. Is this some sort of odd bluetooth power saving feature?

Hello, I’ve not seen anything like that related to screen going off, but then again I rarely connect screen to RPi. I would guess that is related to power saving somehow.

Maybe looking at the RSSI , sensor orientation (accelerometer) or other data sheds some light on the situation. Also the orientation of the Pi antenna relative to the sensor. Perhaps wifi or a microwave oven is briefly jamming the signal.

I don’t remember exactly hove grafana and influxdb are set up by default but the e seeing dots on the graph looks like that data is missing for a certain intervals. Ideally 1 signal received from the sensor each second, and over the interval (10s, 20s?) 1 measurement is stored (last? argerage?).

I am using two Ruuvi tags to monitor a terrarium with a snake. Among other things, it is important to have a cold and warm side so the snake can decided I am mainly interested in temperature.

The tags are just resting on the bottom material, so the snake can crawl over them. I found that not receiving receiving data from a certain sensor correlated with the snake being in top of the sensor.

I have a Pi 3 collecting data from a few meters away in the basement so while not far, there is a concrete floor in the signal path. When the the snake is on top of the ruuvi tag, I would guess that the water molecules in his body absorb enough of the signal or affect the radiation pattern of the antenna to put the signal just below the receivers.

Here we see temperature measurements, acceleration and RSSI. When there is a step change on one of there sensor axes, the snake has moved the sensor.

image
image
image

Have you ruled out the RuuviTag Transmission? When ruuvi collector takes a break can you still see data using another device (phone)? Does the ruuvitag blink during times of no data?

RSSI of the tags (I have 8 of them) is between -40 and -90 dB. The data collection inconsistency affects all of the tags simultaneously, and I can replicate the behavior pretty reliably.

I have all of my tags set to slow mode, and the data from tags shows up on ruuvi station.
Also I apparently seem to have a bugged out tag, since despite being set on slow mode, still sends updates (according to ruuvi station) every second…
edit: well, it seems my malfunctioning tag problem sorted itself out, with the tag deciding to jump off the table and stopped working entirely.

2 Likes

I "bounce them all the time and have never had a problem. I expect you have wiggled the battery.

I should probably set my tags to slow mode. I have six running with RuuviCollector (installed with the Ansible playbook). RSSI -70 to -100.

I installed the last one today on the north wall to get outside. It is probably near the limit of what is recievable with default settings (1 measurement/s). I made a little 3D printed case that hopefully keeps the woodpeckers out. Oddly the signal seemed to improve as it cooled to the outside temperature. The dew point is a but suspicious. The humidity measurement may take a bit longer to stabilize.

image

Anyway, I reread your original post and noticed that it was all or nothing so not a problem with a single sensor or signal strength.

I am using a Pi3B without a screen.which is most likely using one of the “lite” raspbian images. I haven’t encountered anything power related, but I haven’t installed many extra packages beyond what was necessary to install Ruuvi Collector with Ansible.

Maybe /var/log/kern.log may show something you can correlate to the lack of data.

Could also try disabling screen blanking with raspi-config and see if that makes a difference.

yea, me too. But i took off the battery because it was misbehaving, and the bare board jumped off my table. I don’t see any obvious damage, but it doesn’t work anymore ¯_(ツ)_/¯.

So, I finally found some time to do something about my logging problem.
After full reinstall of the Raspberry Pi OS, and compiling ruuvicollector from sources instead of using the ready-made binary, the whole system now happily logs temperature readings every five minutes.

The only nagging problems seems to be that after reboot, starting ruuvicollector as systemd service fails, with the ever helpful error code “failed with result ‘exit-code’”. Manually starting the service works just fine.

You might find my notes at RuuviCollectorSD
helpful. Especially the “Special configuration information section”