Outo lukema oudolta RuuviTagilta

Olen ollut sellaisessa käsityksessä, että kun Android-puhelimessa RuuviStation saa lukemat RuuviTagilta, niin lukemat ovat varsin luotettavia. Tietysti mittaustarkkuudessa on rajansa, mutta että ollaan kuitenkin oikealla hehtaarilla aina.

Tätä seuraavaa tapausta jäin kuitenkin ihmettelemään. Vein kesämökille kokeeksi muutaman tagin ja rekisteröin ne sovellukseen. Omien laitteiden lisäksi sovellus löysi myös vieraan RuuviTagin. Se ilmoitti seuraavat tiedot: Lämpötila -14,46, ilmanpaine 757,62 hPa, ilmankosteus 125 % ja signaali -78 dBm.

Kyseiseen aikaan ulkoilman lämpötila oli noin -2 ja ilmanpaine normaalilla tuhannen hPa:n tasolla. Olen tätä pohtinut ajan kanssa, mutta en ole millään keksinyt, että mistä tuollaiset lukemat saattoivat olla peräisin.

Ilmanpaine ja lämpötila voisi viitata korkealla lentävään droneen, mutta illan hämärissä en nähnyt tai kuullut sellaista. Sitten tuo suuri ilmankosteus pakkasella, miten voi olla yli sata prosenttia?

Sain talteen vain parit lukemat. Sitten tuo lähetys vaikeni iäksi.

Mitä Ruuvi Stationin versiota käytät? Vanhassa Android-versiossa oli “ominaisuus”, että se ei filtteröinyt tarpeeksi tehokkaasti ja joskus listaukseen ilmestyi muitakin Bluetooth-laitteita.

Mulla on tuo kyseinen RuuviTag (MAC 5E:1E:1E:FF:B8:70 ja Voltage 65,288 V ) edelleen Ruuvi Stationin muistissa siltä varalta, että signaali tulisi myöhemmin vastaan. Kertomani mittaustulokset tallentuivat 24.12.2018 klo 21.36 silloin tuoreimmalla versiolla Android-sovelluksesta. Oma veikkaukseni on, että yli lensi joulupukin reki kyydissään ylijännitteellä kellotettu RuuviTagi.

Noita tulee jostain syystä itsellekkin

> select time,batteryVoltage from ruuvi_measurements where batteryVoltage > 3.4
name: ruuvi_measurements
time                batteryVoltage
----                --------------
1552615856577000000 28.092
1552681045533000000 47.108
1552936765805000000 26.368
> select * from ruuvi_measurements where time = 1552936765805000000
name: ruuvi_measurements
time                absoluteHumidity  accelerationAngleFromX accelerationAngleFromY accelerationAngleFromZ accelerationTotal  accelerationX accelerationY accelerationZ airDensity         batteryVoltage dataFormat dewPoint           equilibriumVaporPressure humidity mac          name            pressure rssi temperature
----                ----------------  ---------------------- ---------------------- ---------------------- -----------------  ------------- ------------- ------------- ----------         -------------- ---------- --------           ------------------------ -------- ---          ----            -------- ---- -----------
1552936765805000000 4.656225384168924 90.05661094767072      90.79257841546705      0.7945978561086143     1.0120973273356668 -0.001        -0.014        1.012         1.1729851422641555 26.368         3          0.5241653347198181 2701.464374956088        23.5     FBC98F3FE0D2 Tag1 99668    -56  22.36

>

Nuo ovat tulleet omilta tägeiltä, siis pariston jännite yli 3,4 volttia. Noita tuli huomattavasti enemmän, kun Raspberry Pi 3:seen oli asennettu uusin kernel rpi-update:n kautta.

Mulla on joskus tullut virheellisiä lukemia Raspberry Pin kanssa kun käytän kahta bluetoothia käyttävää ohjelmaa yhtäaikaa. Bluetooth-paketeissa itsessään pitäisi olla jokin CRC-tarkistus, mutta ehkä virheellinen paketti silti pääsee jostain kohtaa ketjua läpi jossain tilanteessa :thinking:

Kantosäteen sisällä on muitakin BT laitteita, mutta kumpaankaan Raspberry Pi ei ole liitetty yhtään BT laitetta, esim. näppäimistöä, hiirtä tmv.
Päivitetty Raspberry Pi, nro 1, on ulkoisesti lämpimämpi kuin päivittämätön, nro 2.
RP1 kirjoittaa kantaan enemmän “rikkinäisiä” paketteja kuin RP2.
RP1sen dmesg näyttää enemmän

Bluetooth: hci0: Frame reassembly failed (-84)

herjoja kuin RP2sen dmesg

pi@raspberrypi1:~ $ dmesg | grep -c ' Bluetooth: hci0: Frame reassembly failed (-84)'
32
pi@raspberrypi1:~ $ uptime
 19:42:45 up 9 min,  1 user,  load average: 0.17, 0.36, 0.26
pi@raspberrypi1:~ $

ja toinen

pi@raspberrypi2:~ $  dmesg | grep -c ' Bluetooth: hci0: Frame reassembly failed (-84)'
3
pi@raspberrypi2:~ $ uptime
 19:42:58 up 6 days, 23:43,  3 users,  load average: 0.04, 0.12, 0.16
pi@raspberrypi2:~ $

Rpi3+ on mulla lukemassa yhtä tagia, ja toinen on autossa eikä normaalisti kuuluvuusalueella.
Törmäsin tähän vain yhden kerran, että auton tägi aiheuttaa piikin mittauksessa, mutta en heti ymmärtänyt.

Toin sitten auton tägin väliaikaisesti sisälle, kun puhelinsovellus ei syystä X saanut siihen yhteyttä kun kävin autolla kaupassa.

No, ruuvi collector alkoi sujuvasti tallentaa molempien tagien mittaukset influxiin, ja mun käppyrät meni rikki.

Collectorin konffitiedostosta ruuvi-collector.properties löytyi sitten säädöt
filter.mode=whitelist ja filter.macs=DE8F1BD19330. Ja HUOM mac-osoitteeseen ei kuulu kaksoispisteitä tai filtteröinti ei toimi.