Ein PDF in Java ist mit iText 7 in ein paar Minuten gemacht.
Wir können z.B. ein String Liste mit nur 3 Zeilen Code mit dem Times Roman Font auf DIN A4 ausgeben:… „PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF“ weiterlesen
Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, Statistik, Krypto und Blockchain
Anleitungen zu allen Themen.
Ein PDF in Java ist mit iText 7 in ein paar Minuten gemacht.
Wir können z.B. ein String Liste mit nur 3 Zeilen Code mit dem Times Roman Font auf DIN A4 ausgeben:… „PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF“ weiterlesen
Gestern hatte ich ja Kalendereinträge erstellt, die man leicht in seinen Kalender importieren kann. Wer aber Old School unterwegs ist,
hat hier die Pläne als PDF zum ausdrucken. Habe in Java mal eben ein paar PDF-Bibellesepläne für das neue Jahr zum ausdrucken erstellt:
bibelleseplan-1-pro-tag-ab-01.01.2021.pdf
bibelleseplan-2-pro-tag-ab-01.01.2021.pdf
bibelleseplan-3-pro-tag-ab-01.01.2021.pdf
Oder wer heute starten will: bibelleseplan-3-pro-tag-ab-25.12.2020.pdf
Hier ist die Java Klasse, mit Stream Klasse und neuer Date API: „Ziel 2021: tägliches Bibellesen – Bibelleseplan als Old School PDF“ weiterlesen
Das ist nun wahrscheinlich der letzter Beitrag für 2020. Wer das Ziel hat, die Bibel in einem Jahr zu lesen, hat hier nun die nötige Unterstüzung. Die Termine und Kapitel können nun leicht in einen eigenen Kalender importiert werden.
Habe mal neue Bibellese Termine ab 1.1.2021 mit dieser neuen GUI der TWBibel erzeugt. Die Version 0.0.5 Unterstützt bisher die drei Online Bibeln: NWI, RBI und BI12 in Deutsch. Andere Sprachen sind auch schon vorbereitet und auch diese Bibelübersetzungen: BDS, BGV, BKR, BSV, BTX, CARS, CBT, CCBT, CEP, CKK, CST, CUVS, DK, ELB, ESV, EU, FCB, GNB, HFA, HTB, HUN, ITA, KAR, KJV, LSG, LUT, LXX, MENG, NAV, NGÜ, NIRV, NIV, NLB, NOR, NPK, NRS, NTR, NVI, NeÜ, OT, PRT, PSZ, RSZ, S21, SLT, SNC, TR, ZB.
Einfach einen Bibellese-Plan, in Euren Kalender im Handy, Tablet usw. kostenlos laden und importieren: „Ziel 2021: Die ganze Bibel in einem Jahr lesen? Terminplan, Bibelleseplan im Kalender ics Format zum Download“ weiterlesen
In der aktuellen Version von git auf dem Pi fehlt z.B. der git switch Befehl. Der ist zwar im Status: THIS COMMAND IS EXPERIMENTAL. THE BEHAVIOR MAY CHANGE.
Deshalb will ich mal eben die aktuelle Version von Git auf einem Raspberry Pi 4 B installieren. Ich nehme mal die 2.30.0-rc1.
1 2 3 |
sudo apt update sudo apt install git git --version |
Das reicht für die meisten. Dann hat man aber nicht die aktuellste Version, die derzeit v2.30.0-rc1 ist. Wer aber z.B. experimentelle Befehle wie switch ausprobieren will, kann sich in 2 Stunden selbst auf einen Raspberry Pi Zero oder auf einem Pi 4 B in 10 Minuten eine Version zusammen bauen.
Hier kann man die aktuellste Version sehen https://github.com/git/git/tags:
Wie kann die aktuelles Git Version auf einem Raspberry Pi installiert werden? Hier die Schritte: „Git switch auf dem Raspberry Pi 4 B installieren – oder wie compiliere ich GIT“ weiterlesen
Quicktest eines alten Raspberry Pi BPMN 2.0 Model. Der Modeler ist am 10.11.2020 in einer neuen Version veröffentlicht worden (Mac, Win, Linux).
Werden alte Modelle geladen, wird gefragt, ob der neue Namensspace verwendet werden soll: „Quicktest des BPMN Camunda Modeler in neuer Version 4.4.0“ weiterlesen
Eine kleine Demo zeigt, dass es gar nicht so kompliziert ist, ein professionelles Web-Application-Framework auf dem Raspberry Pi zum Laufen zu bekommen. Und das in 10 Minuten! Ok, dann los.
Eine vaadin Anwendung Version 16.0.0 und Jetty Server 9.4.15 in 10 Minuten erstellen. Das ist mit dem Archetype möglich. Als Version wird latest angegeben. Diesen Aufruf auf der Kommandozeile in einem leeren Verzeichnis aufrufen:
1 2 3 4 5 6 7 |
mvn -B archetype:generate \ -DarchetypeGroupId=com.vaadin \ -DarchetypeArtifactId=vaadin-archetype-application \ -DarchetypeVersion=LATEST \ -DgroupId=de.wenzlaff.twvaadinprojekt.app \ -DartifactId=twvaadinprojekt-app \ -Dversion=1.0-SNAPSHOT |
Das ist beim 2. Mal in 10 Sekunden erledigt. Beim 1. Mal müssen noch die Maven Artefakte ins lokale Repo geladen werden, das dauert etwas. „Vaadin Anwendung auf dem Raspberry Pi 4 B in 10 Minuten mit Jetty-Server und Archetype erstellen als Vorbereitung für den richtiger Lockdown ab Mittwoch!“ weiterlesen
Manchmal möchte man aus einem PDF den Text extrahieren oder Infos aus dem PDF gewinnen. Das geht mit den poppler Utils auf dem Raspberry Pi.
Wir laden uns die poppler.pdf als Beispiel in ein Verzeichnis.
Dann rufen wir die pdftotext Anwendung auf:
pdftotext poppler.pdf
und wir erhalten eine neue Datei poppler.txt mit dem Text aus der PDF: „PDFtoText (Pdf2Text), PDF to Fonts, PDF to Info“ weiterlesen
Auf dem Rasberry Pi 4 ist ja default Java 11 installiert. Nun wollen wir mal schnell ein kleines Java Projekt mit Maven erstellen. Da ist schnell gemacht mit Archetype vom Maven.
Danke Dr.Kleinhirn.eu für die Bereitstellung der Mindmap
Also nur noch Maven 3.6.0 installieren mit: sudo apt-get install maven
Dann checken ob alles richtig installiert ist mit: mvn -version
Dann in einem leeren Verzeichnis „Mal was anderes als COVID-19 Impfstoff BNT162b2: Maven install auf einem Raspberry Pi 4 B mit Beispielprojekt in 10 Minuten mit Archetype“ weiterlesen
Wenn der Bose QC-35 II Kopfhörer keine Bluetooth-Verbindung mit dem Mac OS Big Sur herstellen kann, obwohl es mit anderen Geräten klappt, hat bei mir dies geholfen.
Löschen der drei leeren Verzeichnisse (Components, MAST, VST) in
/Library/Audio/Plug-Ins/
Dann mit gedrückten Tasten Shift + Optionen auf das Bluetooth Menü Icon klicken. In dem Debug Menü auf den Punkt „Das Bluetooth Modul zurücksetzen“ klicken. Dann den Rechner neustarten. Dann kann der Kopfhörer wie sonst auch verbunden werden.
Wenn man vom Mac (Windows geht natürlich auch) aus auf einen entfernten Raspberry Pi 4 B zugreifen will, kann man das auch ohne jedesmal ein Passwort eingeben zu müssen. Dafür kann das Public RSA Key Verfahren verwendet werden.
Dazu muss auf dem Pi ein .ssh Verzeichnis mit einer authorized_keys Datei angelegt werden:
1 2 3 4 5 6 7 |
# wenn das .ssh Verzeichnis noch nicht da ist, dann anlegen mit mkdir .ssh cd .ssh touch authorized_keys chmod 700 ~/.ssh/ chmod 600 ~/.ssh/authorized_keys |
Dann in der /etc/ssh/sshd_config des Pi die folgenden Einträge setzen: … „Raspberry Pi 4 B mit SSH und RSA Key ohne Passwort von der Konsole aus zugreifen“ weiterlesen
Um PDF-Dokumente in ein Bildformat wie PNG zu überführen, und auch zum skalieren kann das Tool pdftoppm auf einem Raspberry Pi verwendet werden. Aber auch noch andere Funktionen sind mit den poppler-utils möglich.
Installiert sind sie auf einem Raspberry Pi schnell mit: „PDF to PNG, JPG oder TIFF auf einem Raspberry Pi mit pdftoppm“ weiterlesen
Um mit Apple-Rechner (Mac OS X, Big Sur oder Monterey) per Freigaben mit dem Finder auf dem Raspberry Pi 4 B zugreifen zu können, kann Netatalk verwendet werden. Auf dem aktuellen Raspberry Pi wird Netatalk 3.1.12 installiert. So würde eine Freigabe z.B. aussehen:
Was ist nötig? 10 Minuten Zeit und … „Apple Freigabe (Zugriff) für den Finder in Big Sur, Monterey oder Ventura einrichten für Raspberry Pi 4 B (oder auch 3 BPlus, Zero, S920) mit Netatalk installieren“ weiterlesen
Kryptowährungen wie z.B. Bitcoin sind in aller Munde. Es gibt heute ca. 9000 Kryptowährungen, wie z.B. Bitcoin, Ethereum, Tether, XPR, Chainlink, Litercoin und Monero um mal 7 zu nennen.
Kann man mit einem alten Raspberry Pi Model B oder W Zero Krypto-Geld schürfen? Ja, warum nicht, das geht sogar ziemlich einfach, wie dieser Artikel zeigt. Rechnet es sich? Dazu später mehr.
Vorraussetzung ist ein aktuell installiertes Debian und zugriff auf die Kommandozeile.
Dann brauchen wir noch eine Anmeldung bei Minig-Pool, da man alleine es nicht schaft. Z.b. bei Minergate.com und die E-Mail-Adresse, womit wir uns dort angemeldet haben. Die Anmeldung bei diesem Mining-Pool ist kostenlos. Minergate ist ein Open-Source-Multi-Kryptowährungs-Mining-Pool.
So, jetzt wollen wir mal Krypto-Geld erzeugen. Wir werden die Währung Monero erzeugen. Wikipedia sagt zu Monero: „Monero (XMR) ist eine dezentrale, Blockchain-basierte Kryptowährung, vergleichbar mit Bitcoin. Im Gegensatz zu Bitcoin setzt Monero jedoch einen stärkeren Fokus auf die Privatsphäre bzw. Anonymität seiner Nutzer (Privacy Coin) und verfolgt einen anderen Ansatz in Bezug auf die Skalierbarkeit. Das Wort „monero“ ist der Sprache Esperanto entnommen und bedeutet „Münze“. Monero (XMR) ist auf bis zu 12 dezimale Nachkommastellen teilbar, d. h. die kleinste Währungseinheit beträgt 0,000 000 000 001 XMR = 10 hoch −12 XMR.
Ok, dann mal los, es dauert ca. 1-2 Stunden ( 15 Min, auf einem Raspberry Pi 4) um den Miner zu bauen und das erste Geld zu erzeugt. Es sind nur diese 4 Schritte nötig und es ist mal etwas anderes als Co2-Ampeln bauen … „Kryptowährung schürfen mit einem Raspberry Pi“ weiterlesen
Wie kann das Ubidots Dashboard so eingestellt werden, das auch die Ampelfarben bei bestimmten Warnwerten dargestellt werden? Hier z.B. in Grün:
Gelb: „CO2 Ampel: Ubidots CO2 Dashboard mit Ampelfarben einstellen“ weiterlesen
So ein Dashboard, hier am Beispiel der CO2 Messungen ist mit dem Cloud Anbieter Ubidots.com schnell gemacht. Kostenlos gibt es 3 Geräte. Es muss ja auch nicht immer Thinkspeak sein.
Hier ist der Api Token zu finden: „Cloud Dashboard für CO2-Messungen (CO2-Ampel) mit Ubidots für Java und Python“ weiterlesen
Hier mal eine Zusammenfassung eines CO2-Messsystems (CO2-Ampel) mit dem Raspberry Pi an dem der MH-Z19b, OLED Anzeige, LED-Rgb-Ampel hängen. Auch werden die Daten Online an Thinkspeak, MQTT, NodeRed, Alexa ausgabe von Warnungen und abfrage der Co2 Werte, Pushover nachrichten ans Handy, REST Java-Client, Docker Container und an einen History Browser gesendet. Wie hier auch schon einzeln veröffentlicht.
Wer noch 5 Minuten hat, kann das Beispielprojekt mit der CO2-Ampel auch gleich in einem Docker Container laufen lassen. Vorraussetzung Docker läuft und das Beispielprojekt wurde installiert.
Dann sind, dank der automatisch generierten Docker-Files nur diese 3 Schritte im Verzeichnis der root pom nötig:
1 2 3 4 5 6 7 8 |
// 1. das Projekt bauen mvn package -Dquarkus.package.type=fast-jar // 2. das Image bauen, man beachte den Punkt am Ende docker build -f src/main/docker/Dockerfile.fast-jar -t quarkus/info-kleinhirn-fast-jar . // 3. den Container starten mit docker run -i --rm -p 8080:8080 quarkus/info-kleinhirn-fast-jar |
Schon läuft der CO2 Service http://localhost:8080/v1/rest/co2 und CO2-Ampel über http://localhost:8080/v1/rest/co2ampel
Cool. Und hier das Dockerfile … „Docker Container mit REST Service in 5 min mit CO2-Ampel Service erstellen“ weiterlesen
Einen REST Service in 15 min mit Quarkus, OpenAPI, Swagger UI und JUnit-Test erstellen und um CO2-Ampel Service erweitern ist nicht kompliziert.
Vorraussetzungen Java 11 und Maven. Test mit:
mvn -version
auf der Kommandozeile:
1 2 3 4 5 6 |
➜ ~ mvn -version Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) Maven home: /opt/local/share/java/maven3 Java version: 11.0.9, vendor: AdoptOpenJDK, runtime: /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home Default locale: de_DE, platform encoding: UTF-8 OS name: "mac os x", version: "10.15.7", arch: "x86_64", family: "mac" |
Dann fangen wir in einem leeren Verzeichnis an
1 2 |
mkdir rest-co2ampel cd rest-co2ampel |
jetzt rufen wir mit dem Maven Quarkus Plugin das create Goal auf:
1 |
mvn io.quarkus:quarkus-maven-plugin:1.9.0.Final:create -DprojectGroupId=de.wenzlaff.co2ampel -DprojectArtifactId=info-kleinhirn -DclassName="de.wenzlaff.Co2AmpelResource" -Dpath="/co2ampel" |
Zwei Sekunden später, ist das Projekt angelegt: „REST Service in 15 min mit Quarkus, OpenAPI, Swagger UI und JUnit-Test erstellen und um CO2-Ampel Service erweitern“ weiterlesen
Und nicht vergessen die Uhr auf dem Raspberry Pi umstellen, wie hier (MESZ, MEZ, UT, UTC, GMT – Raspberry Pi: Wie kann die Sommerzeit bzw. Winterzeit überprüft und die Zeitzone gestellt werden?) beschrieben wenn nicht die automatische Umstellung aktivierte ist oder der Rechner keinen Zugang zum Internet hat.
Die Co2-Ampel hat nun ein nachhaltiges Ampel-Design bekommen. Hier die Rote-Warnung die bei über 1000ppm in der Luft erzeugt wird:
Und das ganze als Video, mit allen Ampel-Farben (oder in HD-Qualität):
Und hier noch der Grüne Status: „Co2-Ampel: Nachhaltiges Ampel-Design – wiederverwendung (sustainable) eines Seifenspenders“ weiterlesen
So, nun habe ich an die CO2-Ampel noch eine RGB LED,
die ich seit längerer Zeit liegen hatte angeschlossen:
So zeigt sie ROT:
Hier der ganze Schaltplan der CO2-Ampel in der 4. Version.
„CO2-Ampel: RGB LED an Rasperry Pi“ weiterlesen
Wie können bash Scripte auf dem Raspberry Pi automatisch nach dem reboot gestartet werden?
Mit einem Service systemctl. Was ist nötig? Nicht viel …
1. Erstellen einer Datei: „Autostart: systemd zum script starten als service mit systemctl am Beispiel der co2ampel“ weiterlesen
Zusätzlich zur CO2-Ampel auch noch die Temperatur zur Anzeige des CO2-Wertes hinzufügen. Das ist schnell gemacht, hier das Ergebnis:
Das zusätzliche Einlesen der Temperatur ist in Python auch schnell gemacht:
1 2 3 4 5 6 |
input_json = json.loads(sys.argv[1]) messung_json = input_json['messung'] satz_json = messung_json['satz'] satz_array_json = satz_json[1] co2_wert = satz_array_json['co2'] temperatur_wert = satz_array_json['temperature'] |
So sieht ja das JSon File welches per MQTT gesendet wird aus:
„CO2-Ampel: Temperatur zur OLED-Anzeige des CO2-Wertes ergänzen“ weiterlesen
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
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
Hier hatte ich ja das Video hochgeladen von der CO2-Ansage der CO2-Ampel mit Alexa. Hier nun das aktuelle fehlende Architektur-Bild:
Es ist gleich wieder soweit … „Alexa sagt den Co2 Wert in der Luft an, wenn man sie fragt – CO2-Sprech-Ampel – Architektur Big Picture“ weiterlesen
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.
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
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 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 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
Jetzt sind coole Gruppen mit Farbe in NodeRed möglich. Einfach die zu gruppierenden Nodes selektiern und im Menü: Groups -> Group selection klicken:
Dann kann mit einem doppelklick auf die Gruppe auch die Farbe geändert werden: „Jetzt sind coole Gruppen mit Farbe in NodeRed möglich“ weiterlesen
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
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.
Die CO2-Ampel ltd. Bundesumweltamt (PDF, Tabelle 4) wurde nun in den NodeRed-Flow der CO2-Messungen integriert. So zeigt das C02-Dashboard auch die Meldungen des UBA an. Die Meldung im Dashboard:
Hier der Flow:
„CO2-Ampel ldt. Bundesumweltamt in NodeRed Flow integriert“ weiterlesen
Damit man zur rechten Zeit lüftet, habe ich nun eine Lüftungsampel in den NodeRed-Flow integriert. Sie zeigt grün, wenn alles ok ist.
Und bei über 1000 ppm CO2 zeigt sie rot:
Natürlich, zeigt auch der Gauge die Farben entsprechend an. Aber so ist der Wert noch etwas übersichtlicher.
Hier die Nodes „NodeRed CO2-Flow mit CO2-Ampel (Lüftungsampel)“ weiterlesen
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
Habe mal neue Bibellese Termine ab heute mit dieser neuen GUI der TWBibel erzeugt.
Einfach einen Bibellese-Plan, in Euren Kalender kostenlos laden und importieren: „Die Bibel in einem Jahr lesen? Terminplan zum kostenlosen Download! Ab heute! Und los …“ weiterlesen
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
Mein Raspberry Pi misst ja seit einigen Tagen die CO2 Werte in der Luft, wie hier beschrieben. Nun können hier die Werte in Echtzeit abgelesen werden. Sie werden von NodeRed jede Minute aktuallisiert und weitergeleite.
Ja, „Freut euch immer“ …
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
Dank für die Mindmap geht an (c) Dr.Kleinhirn.eu
Vor dem CO2-Messprojekt mit einem Raspberry Pi und einem MH-Z19B hier mal ein paar Infos zum CO2: „Kohlenstoffdioxid – CO2 – Mindmap“ weiterlesen
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 …
Habe in der covid-19 Pandemie und bei 30 Grad Celsius mal einen weiteren Pinsel für Procreate® entwickelt. Da ich ja mit dem Raspberry Pi die ISS-Positionsdaten per NodeRed tracke, brauchte ich auch mal ein Bild der ISS. Deshalb habe ich mal einen neuen Stempel entwickelt.
Es können damit mit einen klick (Stempel) ua. diese Grafiken erstellt werden:
Hier der kostenlosee download „Kostenloser TW_ISS Pinsel (brush) für Procreate® zum kostenlosen Download“ weiterlesen
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
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
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
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
Hatte noch eine 8×8 LED mit Treiber liegen. Die wollte ich mal an den Raspberry Pi anklemmen und über die Kommandozeile ansteuern.
Die Hardware ist mit 5 Drähten schnell verbunden:
1 2 3 4 5 |
rot - vcc - +5 V -> PIN 2 sw - gnd -> PIN 6 braun - vin -> PIN 19 ws - cs -> PIN 24 gr - clk -> PIN 23 |
Verwendet habe ich den Luma.LED_Matrix: Display drivers for MAX7219, WS2812, APA102. Den Kommandozeilen Wrapper gab es noch nicht. Also dann mal los … Mal wieder etwas python3 programmieren … „8×8 LED mit max7219 auf einen Raspberry Pi mit python sagt „Freut euch allezeit““ weiterlesen