Damit die CO2-Werte der Co2-Ampel auch ohne Internet angezeigt werden, habe ich ein kleine OLED-Display an den Raspberry Pi angeschlossen. Das hatte ich noch in der Bastelkiste. Hatte es auch schon an einem Arduino. So werden die Werte nun dauernd angezeigt:
Hier der Schaltplan mit KiCad:
Und alles etwas größer …
„CO2-Ampel an OLED1306 (GM009605B in Vers. 2.0, 128X64) via I2C“ weiterlesen
CO2 History Browser mit NodeRed
Ein Raspberry Pi dient ja als CO2-Ampel und misst jede Minute den CO2-Wert bei mir in der Luft. Die Werte werden auch als CSV-Datei gespeichert. Jeden Tag wird eine neue Datei erzeugt. Die Dateien sind dann nur ca. 30 kB groß.
Mit dem CO2-History Browser kann ich nun mit jeden Browser auch die CO2-Vergangenheit leicht anzeigen lassen. Es braucht nur die entsprechende Datei ausgewählt zu werden und auf den „GRAPH“ Button geklickt zu werden. Hier z.B. der CO2-Verlauf von gestern:
Mit klick auf den „OPEN“-Button kann die Datei auch im CSV-File geladen, und dann in Excel oder Numbers geöffnet werden:
Hier der NodeRed Flow, der diesen CO2-History-Browser erzeugt: „CO2 History Browser mit NodeRed“ weiterlesen
Auswertung der CO2 Messung an einem Arbeitstag mit CO2-Ampel
Hier mal die CO2 Werte von Heute in der History-Ansicht:
Man sieht deutlich, das ich um 6:30 Uhr angefangen habe zu arbeiten (die Rote 1).
Bei der Grünen 2 habe ich jeweils gelüftet und das Fenster geöffnet, da die 1000 ppm an CO2 im Zimmer erreicht wurden. Deshalb fallen die Werte schnell ab, es wird aber auch schon im Zimmer kalt. Um 12 Uhr hatte ich das Fenster aufgemacht, und bin in die Mittagspause gegangen.Dann heute etwas früher Feierabend gemacht, und kurz nach 15 Uhr noch mal gelüftet.
Wie das ganze mit dem Raspberry Pi und NodeRed und Mqtt erfasst wird, siehe hier.
Check neue Version KiCad 5.1.7
Vor zwei Tagen wurde die neue KiCad 5.1.7 Version veröffentlicht. Dann mal gleich die 1,3 G laden und einen Plan für die CO2-Ampel von einem alten Projekt für den Raspberry Pi anlegen. Zuerst den Footprint für die CO2-Ampel:
und den Schaltplan „Check neue Version KiCad 5.1.7“ weiterlesen
Carbon dioxide, heute das 1. Mal die Warnung per Alexa (Selbstversuch)
Heute zum 1. Mal die Warnung per Alexa von NodeRed. Und das bei nur zwei Personen und defekter Heizung.
Übrigens: Bei 1000 ppm empfinden rund 20 % der Personen die Raumluft als unbefriedigend. Diese Konzentration entspricht der Pettenkofer-Zahl, die von dem Hygieniker Max von Pettenkofer (1858) als Richtwert für die maximale CO2- Konzentration in Wohn- und Aufenthaltsräumen mit 0,1 Vol% CO2 (1000 ppm) definiert wurde.
Wo es viel CO2 gibt, werden auch besonders viele Keime gefunden. Die amerikanischen Wissenschaftler Rudnick und Milton zum Beispiel untersuchten 2003, wie hoch das Grippe Ansteckungsrisiko in einem Klassenraum ist. 30 Personen waren vier Stunden lang im Klassenraum, eine Person hatte akut Grippe. Das Ergebnis: Bei 1.000 ppm CO2 steckten sich fünf Personen an, bei 2.000 ppm waren es zwölf und bei 3.000 ppm sogar 15.
MAK-Werte Deutschland für CO2: 9100 mg/m3 Warum ist das so hoch?
Nach dem Querlüften sind die Wert aber schnell wieder auf Normal, wie man im Trend sehen kann. „Carbon dioxide, heute das 1. Mal die Warnung per Alexa (Selbstversuch)“ weiterlesen
Schaltplan C02-Sensor mh-z19b an Raspberry Pi für CO2-Ampel und NodeRed Ansteuerung
Hier noch der Schaltplan C02-Sensor mh-z19b an Raspberry Pi für die Co2-Ampel. Zuerst der Co2-Sensor:
Und hier die ganze „Schaltung“ „Schaltplan C02-Sensor mh-z19b an Raspberry Pi für CO2-Ampel und NodeRed Ansteuerung“ weiterlesen
Automatischer Server-Check auf Erreichbarkeit und im Fehlerfall eine Pushover Nachricht an das Handy senden – Wie?
Automatischer täglicher Server Check mit Ping. Es wird auf Erreichbarkeit getestet und im Fehlerfall eine Pushover Nachricht an das Handy versendet. Kann schnell und leicht erweitert werden. Einfach einen neuen inject Node mit Server URL und Zeitpunkt ergänzen.
Der Code des Flows „Automatischer Server-Check auf Erreichbarkeit und im Fehlerfall eine Pushover Nachricht an das Handy senden – Wie?“ weiterlesen
Alexa sagt den Co2 Wert in der Luft an, wenn man sie fragt – CO2-Sprech-Ampel
Alexa sagt den Co2-Wert in der Luft in ppm an, wenn man sie fragt. Hier ein kurzes Demo-Video:
Auf dem Raspberry Pi läuft ein NodeRed mit dem node-red-contrib-alexa-remote2 der nicht nur Text ausgeben kann, sondern auch Befehle auswerten kann. Hier der relevante Teil der Sprachausgabe: „Alexa sagt den Co2 Wert in der Luft an, wenn man sie fragt – CO2-Sprech-Ampel“ weiterlesen
NodeRed mit IOTstack im Docker Container läuft nun auch auf Rasberry Pi Model B Rev 2
Bei der Installation von NodeRed mit IOTstack im Docker Container auf einem Rasberry Pi Model B Rev 2 kann NodeRed nicht installiert werden. Es kommt der Fehler beim aufrufen des menu.sh Scriptes:
ERROR: Service ’nodered‘ failed to build: The command ‚/bin/sh -c for addonnodes in ; do npm install ${addonnodes} ;done;‘ returned a non-zero code: 139
Die Ursache ist, das das Model B eine ARMv6-compatible processor rev 7 (v6l) hat. Docker kann das nicht richtig erkennen, wie es hier steht. Was also tun?
Erst mal ein Issue aufmachen.
Lösung: „NodeRed mit IOTstack im Docker Container läuft nun auch auf Rasberry Pi Model B Rev 2“ weiterlesen
WLAN Passwort aus wpa_supplicant.conf entfernen
Wenn in der /etc/wpa_supplicant/wpa_supplicant.conf eines Raspberry Pi noch das WLAN-Passwort im Klartext steht, kann das optional durch einen Key ersetzt werden. Der Key kann einfach als ROOT erstellt werden:
1 2 |
sudo -i wpa_passphrase "WLAN-NAME" "WLAN-PASSWORT" >> /etc/wpa_supplicant/wpa_supplicant.conf |
Dann noch die auskommentierte Passwortzeile löschen, wie hier ausführlich beschrieben.
NodeRed auf dem Rasberry Pi: 3 Countdown Timer
Brauchte für laufende Videokonferenzen mal einen Timer. Habe mal drei Countdown Timer zusammengestellt:
So sieht es aus. Es gibt eine Warnung, kurz vor Ablauf im Browser oben rechts und die Farbe ändert sich auch:
„NodeRed auf dem Rasberry Pi: 3 Countdown Timer“ weiterlesen
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: „Weil heute Sonntag ist: Java CO2 MQTT Client“ weiterlesen
CO2-Messsystem mit Raspberry Pi und MQTT und NodeRed
Wir wollen nun mal ein CO2-Messsystem mit dem MH-Z19B aufbauen und die CO2-Konzentrationen mit einem Raspberry Pi einlesen und per MQTT an eine NodeRed-Installation senden. Parallel dazu werden die Daten noch in einer CSV-Datei geschrieben für Langzeitauswertungen. Wenn der Grenzwert von 1000 ppm erreicht ist, wird noch eine Pushover Nachricht an ein Handy gesendet, so das rechtzeitig gelüftet werden kann.
Hier die Architektur-Übersicht:
Installation „CO2-Messsystem mit Raspberry Pi und MQTT und NodeRed“ weiterlesen
Nichtdispersiver CO2 Infrarotsensor MH-Z19B mit UART und PWM-Ausgang eingetroffen
Der CO2 Sensor MH-Z19B (NDIR-Sensor) ist nun eingetroffen. Die Genauigkeit liegt bei ±50 ppm+5%.
Hier gibt es das Handbuch (engl.) zu dem Sensor als PDF vom Hersteller und hier die Kommandos.
Die Bauanleitung für den Raspberry Pi kommt in einem nächsten Beitrag …
„Crew Dragon“ erfolgreich von der ISS auf der Erde zurück – ISS Tracker to CSV – Vers. 3 – „Freut euch immer“
ISS Tracker to CSV für den Raspberry Pi – Vers. 3. Hier nun noch eine Möglichkeit die ISS Postion zu ermitteln und in CSV-Format zu übersetzen. In diesem Flow, ist das CSV-Ergebniss etwas anders. Jeder Satz besteht aus drei Zeilen siehe:
Hier noch die Einstellung für den Datei-Node „„Crew Dragon“ erfolgreich von der ISS auf der Erde zurück – ISS Tracker to CSV – Vers. 3 – „Freut euch immer““ weiterlesen
„Crew Dragon“ dockt eben von der ISS erfolgreich von der ISS ab
Teslas SpaceX-Astronauten sind nun von der ISS auf dem Rückweg zur Erde und werden heute Abend in Florida landen. Wer sich das live anschauen will, kann das über den live Stream der NASA um 20:48 Uhr tun.
Heimreise aus 400 Kilometern Höhe.
Mein Raspberry Pi trackt ja die Position der ISS wie hier berichtet.
Mit dem NodeRed-Flow wird ja ein Webservice für die Position verwendet und direkt abgefragt. Es gibt aber auch noch einen eigenen NodeRed Flow. Dieser Node, ist nicht defaultmäßig vorhanden und muss erst in NodeRed installiert werden (suche nach node-red-contrib-iss-location). Eine Code Analyse hat gezeigt, das der Node die gleiche OpenNoitify API abfragt. Die Parameter heißen bei der Rückgabe des Flows nur etwas anders: lon, lan, name (der name ist der Timestamp)
Hier nun der Code des Flow mit dem eigenen ISS Node (siehe Foto oben), der genau das gleiche tut wie der erste. Er schreibt die Positions-Daten der ISS in eine Datei im CSV-Format.
Und hier der ganze NodeRed-Flow zum importieren „„Crew Dragon“ dockt eben von der ISS erfolgreich von der ISS ab“ weiterlesen
CSV-Daten mit den Positionen der ISS
Wer mal ein paar Daten im CSV Format haben möchte, kann die hier (iss-standort-bis-1-August.csv über 11000 Zeilen, nur 128 kB) vom Raspberry Pi ermittelten laden. Die sind die Basis für diese Grafik:
Und wie immer, „CSV-Daten mit den Positionen der ISS“ weiterlesen
Tracken der ISS mit dem Raspberry Pi und NodeRed über Open-Webservices
Mit einen einfachen NodeRed Flow wollen wir mal die ISS tracken.
Es gibt einen öffentlichen Open-Notify Web-Service der die Position der ISS liefert. Und auch wieviel Leute da im moment sind (zwei sind eben gegangen 2.7.2020).
Also mal eben einen kleinen NodeRed-Flow zusammen geklickt, der den Webservice alle 10 Sekunden abfragt und das Ergebniss in eine CSV-Datei auf dem Raspberry Pi speichern.
Der Webservice liefert das JSON Format, z.B.
1 2 3 4 |
{"message":"success","timestamp":1596176595,"iss_position":{"longitude":"87.1150","latitude":"2.4840"}} {"message":"success","timestamp":1596176610,"iss_position":{"longitude":"87.6557","latitude":"3.2446"}} {"message":"success","timestamp":1596176625,"iss_position":{"longitude":"88.1973","latitude":"4.0047"}} {"message":"success","timestamp":1596176640,"iss_position":{"longitude":"88.7401","latitude":"4.7645"}} |
und wird in das CSV Dateiformat umgewandelt: timestamp, longitude, latitude
Dann die Daten mal für eine Erdumrundung (= 93 Minuten) laufen gelassen und mit einer Visualisierung mit OpenStreetMap unterlegt:
Hier 4 Umrundungen:
Und hier mit Überflug am Horizont von Langenhagen:
Und hier der NodeRed-Flow „Tracken der ISS mit dem Raspberry Pi und NodeRed über Open-Webservices“ weiterlesen
Endlich bin ich „Arctic Code Vault Contributor“ mit Java und C++-Code für 1000 Jahre in Spitzbergen
Endlich liegt mein Code für 1000 Jahre in Spitzbergen …
Und das nicht nur für den Raspberry Pi. Ich bin begeistert, ja „Freut euch immer“.
Freut euch immer – 2020 – mit dem Raspberry Pi und LED-Matrix
Es gehen natürlich auch 2 x 8 x 8 LED-Matrix, wie hier gezeigt …
Die Anleitung „Freut euch immer – 2020 – mit dem Raspberry Pi und LED-Matrix“ weiterlesen