LoRaWAN IoT-Wetterstation mit Phantasiewerten


#1

Hallo,

ich habe das Projekt LoRaWAN IoT-Wetterstation nachgebaut (schönes Projekt @david), funktioniert auch fast auf Anhieb. In Ermangelung mehrerer Sensoren habe ich nur den Helligkeitssensor TSL45315 & VEML6070 angeschlossen. Welche Überraschung als ich dan auf der openSensMap Werte für Temperatur, Feuchte und Druck sehe, qbwohldafür keine Sensoren angeschlossen sind! siehe Bild


Das Ganze obwohl bei der Durchsicht des Programms geprüft wird welche Snesoren angeschlossen sind.
Woher kommen diese Phantasiewerte?


#2

Hi @altprog,

dieses “Problem” liegt an der Funktionsweise von LoRa und am Decoding der openSenseMap. Die senseBox schickt ihre Messwerte als eine Liste von Bytes. In deinem Fall 3 Bytes für Helligkeit und 3 Bytes für UV-Intensität. Insgesamt kommen also 6 Bytes bei der openSenseMap an.
Bei der Registrierung der Box auf der openSenseMap hast du angegeben, dass 8 Sensoren an der Box angeschlossen sind. Somit erwartet das Decoding der openSenseMap, dass für alle 8 Sensoren die entsprechenden Bytes ankommen. Die ankommenden Bytes werden in der Reihenfolge vom Screenshot ausgewertet. Das heißt: die ersten 2 ankommenden Bytes werden als Temperaturwert interpretiert, die nächsten 2 als rel. Luftfeuchte und so weiter. Das Decoding kann nicht erkennen, welche Bytes zu welchem Sensor gehören.

Du müsstest also entweder die Sensoren auf der openSenseMap so anpassen wie sie auch in echt sind, oder alle Sensoren die du auch registriert hast an die senseBox anschließen.


#3

Hi @Felix
Danke für die ausführliche Antwort. Die übrigen Sensoren sind bestellt und unterwegs, zum Ausprobieren habe ich nur den Helligkeitssensor anschließen können. Was ich nicht verstehe, die Daten werden in der Reihenfolge ausgewertet wie sie kommen, deswegen die falschen Werte für Temperatur usw. Die angegeben Werte für Helligkeit und UV scheinen aber plausibel zu sein, aber dafür wären ja keine Daten übertragen. Richtig erkannt wurden aber die fehlenden Werte für PM und CO2 als nicht gemessen.