Weil heute Sonntag ist: Java CO2 MQTT Client

Weil heute Sonntag ist. „Freut euch immer„! Nun ein kleiner Java CO2 MQTT Client um auch auf allen Betriebssystemen mit Java die CO2 Daten zu empfangen. Nicht nur für den Raspberry Pi auch Mac und Windows (ungetestet;-)).

Das selbstausführende JAR laden (siehe unten) und starten mit:

java -jar TWCo2Monitor-0.0.1-SNAPSHOT-jar-with-dependencies.jar [PI-Rechner Name/Adresse]

Hier mal eine Ausgabe auf einem Raspberry Pi W Zero:

Der MQTT Client besteht nur aus ein paar Zeilen Java Code:

Kurz, es muss nur eine Instanz vom MqttClient mit der Serverurl angelegt werden. Dann die Callback-Methode setCallback setzen. Dann braucht nur noch ein Connect und ein Subscribe des Topics (co2) erfolgen. Das ist schon alles. Es wird jetzt in einen Hintergrund Thread jeweis beim eintreffen einer MqttMessage der JSon String gelesen und ausgewertet.

Als Abhängigkeiten brauch man nur den Paho-Client und eine JSon-Lib:

Dann habe ich noch eine kleine Klasse für die DIN Norm und die Einschätzung der Werte gem. UBA geschrieben. Die bewertungUBAausgeben Methode liefert auch noch die Lüftungsampel zurück.

Das ganze Projekt kann von GitBucket geclont werden mit:

git clone https://itberater@bitbucket.org/itberater/mqttco2client.git

Oder man lädt sich das Jar mit

wget https://bitbucket.org/itberater/mqttco2client/downloads/TWCo2Monitor-0.0.1-SNAPSHOT-jar-with-dependencies.jar

auf den Rechner. Oder direkt aus der Web-Gui des Projekts.

Und hier die aktuellen Werte von Sonntag: