Heute Abend gleich auch mal den Node-Red Docker auf die neue Version updaten.
Die aktuellen 3.0.1, 3.0.1, 3.0.2 laufen auf den Fehler: „Node-Red 2.2.2 im Docker auf einem Raspberry Pi 4 da 3.x.x auf Fehler läuft“ weiterlesen
Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, Krypto und Blockchain
Heute Abend gleich auch mal den Node-Red Docker auf die neue Version updaten.
Die aktuellen 3.0.1, 3.0.1, 3.0.2 laufen auf den Fehler: „Node-Red 2.2.2 im Docker auf einem Raspberry Pi 4 da 3.x.x auf Fehler läuft“ weiterlesen
Benzin Preise per NodeRED ermitteln und in Echtzeit grafisch darstellen mit dem Raspberry Pi, dazu hatte ich schon vor 5 Jahren diesen Beitrag geschrieben. Ist nun immer noch aktuell oder?
Benzinpreise in Langenhagen „Das große Tank-Chaos: Benzinpreise mit NodeRed abfragenbe“ weiterlesen
Dann heute noch mal die neue Version 2.11.1 von Portainer installieren. Die gibt es schon seit 4 Wochen.
Es gibt ua. diese Updates: „Portainer update für Docker update auf dem Raspberry Pi 4“ weiterlesen
Saubere Luft ist für die Gesundheit wichtig. Nun hat die WHO nach 15 Jahren neue Leitlinien zur Luftqualität gegeben. Feinstaub und CO2-Ampel ist auf diesem Block schon mehrfach das Thema.
Bei Feinstaub mit maximal 10 Mikrometer (µm) mit aerodynamischem Durchmesser (PM10) empfiehlt die WHO nun 15 statt bisher 20 µg/m3. Der EU-Grenzwert liegt mit 40 µg/m3 deutlich darüber.
Die WHO-Linie für die Langzeitbelastung mit Feinstaub mit aerodynamischem Durchmesser von maximal 2,5 µm (PM2.5) liegt nun bei 5 statt bisher 10 µg/m3. Die EU gibt sich auch hier mit 25 µg/m3 unverkennbar laxer.
Wer die Leitlinien der WHO mit fast 300 Seiten lesen will, findet hier den Link. NodeRed und andere Feinstaubprojekte sind auf dieser Seite für den Raspberry Pi auch zu finden.
Es gibt nun auch einen neuen Node „bip39 wordlist“ für die BIP39 Wortlisten.
Der Beispiel-Flow zum generieren und validieren der BIP39 Wortlisten könnte so aussehen: … „BIP39 Wortlisten als Node für NodeRed“ weiterlesen
Wer Kurse auch im NodeRed-Dashboard anzeigen bzw. umrechnen will, kann diesen Beispiel Flow als Template verwenden.
Die Funktion ist schnell erklärt. Es wird nach der Eingabe des Bitcoin Wert (Achtung, kein Komma, nur den Dezimalpunkt verwenden) der Kurs bei Kraken abgefragt und der aktuelle BTC in Euro umgerechnet. Der Beispiel Button, im Flow, erzeugt z.B. den Wert für 1000 Euro. Kann ja leicht angepasst werden oder auch direkt vom Konto eingspielt werden, wie hier schon mal gezeigt. … „BTC -15,94% wenn das kein Grund für einen BTC to Euro Dashboard mit NodeRed ist“ weiterlesen
In der neuen Version von gestern von NodeRed können nun nur selektierte Nodes exportierte werden. Dazu die Nodes markierern die exportiert werden sollen und im Menü auf Export:
Schon erscheinen die selektierten Nodes, und man kann evl. vertrauliche BTC Adressen löschen: „NodeRed export von selektierten Nodes“ weiterlesen
Es gibt nun auch seit ein paar Stunden einen neuen Docker Kontainer für den Raspberry Pi.
Was es neu gibt, kann hier nachgeschlagen werden.
Hier die Haupt Features
-npm packaged subflows (da bin ich ja gespannt, wie mein erster Flow in gepackt wird, später mehr)
-Function node use of npm modules
-Referencing msg properties in Change/Switch nodes
-Node-RED Plugins framework
Editor Features
-Export preview (siehe hier … „Neue NodeRed Version 1.3.1 veröffentlicht auch für Docker auf dem Raspberry Pi (v6, v7)“ weiterlesen
Bitcoin Transaktionen kosten im Moment im Durchschnitt ca. 18 Dollar. Man kann ja die Gebühr selbst festlegen und damit die Geschwindigkeit der Überweisung steuern. Wählt man zuwenig, wird sie evl. auch nach Tagen nicht ausgeführt. Evl. reicht aber auch eine kleinere Gebühr, wenn die Transaktion nicht in den nächsten Block der Blockchain kommen muss und man evl. Zeit für ein paar Tage hat. Dann reichen evl. schon wie unten zu sehen 4 Satoshi per Byte.
Bei BTC hängen ja die Gebühren nicht an dem Betrag, sondern an der Länge der Transaktion, die je nach Adressentyp unterschiedlich ist.
Man kann hier schauen, was so im Moment berechnet wird. Dort steht:
1 2 |
The fastest and cheapest transaction fee is currently 102 satoshis/byte, shown in green at the top. For the median transaction size of 224 bytes, this results in a fee of 22,848 satoshis. |
Das ist aber umständlich. Um die aktuelle Kosten anzuzeigen, habe ich einen kleinen NodeRed-Flow im Dashboard entwickelt, das einen Web-Service von mempool.space abfragt und anzeigt. So sieht man auf einen Blick, welcher Betrag ca. für welche Zeit nötig ist.
So braucht man nur einmal auf den „Update“ Button klicken und erhält die Möglichen werte um nicht zuviel zu bezahlen. Manche Wallets ermöglichen ja auch nachträglich die Kosten zu erhöhen wenn die Transaktion nicht durchkommt. Das nervt zwar, spart aber und nennt sich Replace-by-Fee (RBF). Hier das Dashboard:… „Empfohlene Transaktionsgebühr für Bitcoin Transaktionen im NodeRed Dashboard anzeigen, es muss ja nicht immer Replace-by-Fee (RBF) oder CO2-Ampel sein“ weiterlesen
Idee: In jedem Zimmer an der Tür oder sonstwo einen QR-Code anbringen. Einfach mit dem Handy scannen und schon wird automatisch das Zimmer gesaugt. Kein lästiges suchen der Sauger App, starten und auswählen des Zimmers. Gesagt getan!
Ein QR-Code wird einmalig erstell und an den Mülleimer (oder in der Nähe) angebracht. Wenn der mit dem Handy gescannt wird (muss im WLAN eingewählt sein, könnte man aber auch für alle freigeben ;-)) läuft der Roboter los, hält für 2 Minuten an. Macht eine Sprachausgabe. Nun kannn der Staubbehälter gelehrt werden. Dann fährt er mit der Reinigung der Küche fort, und fährt wieder zur Ladestation.
Also zuerst eine QR-Code erstellen mit der URL des Pis und dem Kommando:
Dann diesen Flow importieren bzw. erstellen:
Dann in den HTTP-Node die URL aus dem CQ-Code eintragen und get wählen: „Hausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)“ weiterlesen
Heute gehts mal kurzt um die Praxis. Im letzten Artikel ging es um kryptographisch sicherer Zufallszahlengenerator mit dem Raspberry Pi und Hardware Random Number Generator (RNG).
Man unterscheidet übrigens grundsätzlich zwischen nicht-deterministischen und deterministischen Zufallszahlengeneratoren. Nicht-deterministisch ist ein Zufallszahlengenerator, wenn er auch bei gleichen Ausgangsbedingungen unterschiedliche Werte liefert, so wie der hier vorgestellte. Da die Implementierung einer Software-Prozedur in der Regel deterministisch arbeitet, muss zur Realisierung eines nicht-deterministischen Zufallszahlengenerators ein externer (beispielsweise physikalischer per Hardware) Vorgang der auf dem Raspberry Pi läuft einbezogen werden.
Nun eine Anwendung als NodeRed-Flow um kryptographisch sichere Zufallszahlen zu generieren die dann als Seed ua. auch für Bitcoin verwendet werden können.
Der Flow läuft übrigens auch erfolgreich auf einem NodeRed das in einem Docker-Kontainer läuft. Es wird übrigens die Schnittstelle mit head -c 128 /dev/hwrng abgefragt und der Timeout auf 2 Sekunden gesetzt. Wer größere oder kleinere Zahlen braucht, kann die 128 anpassen. Die 512 Bit kann man übrigens auch für Bitcoin gut gebrauchen 😉
Hier eine kleine Gui dazu: … „Kryptographisch sicherer Zufallszahlengenerator NodeRed-Flow mit dem Raspberry Pi und Hardware Random Number Generator (RNG) und GUI“ weiterlesen
Heute gehts mal kurz um die QR-Code Erzeugung wie z.B. dieser:
Manchmal braucht man z.B. einen QR-Code für die Bitcoin-Adresse. Wie z.B. By my a coffee: bitcoin:bc1qj4grttyhk2h5wqask3nku70e3qtycssz5kvw5l wird dann so erzeugt, und geht auf mein echtes Konto 😉 … „Bitcoin Adressen und Text in QR-Code schnell mit NodeRed erzeugen“ weiterlesen
Für den Saugroboter habe ich noch eben eine weitere Funktion programmiert. Wenn man auf den „Staubbehälter leeren“ Button klickt, fährt er automatisch zum Mülleimer in der Küche.
Macht eine Ansage „Hier bin ich“ wenn er da ist, das ist bei mir nach 45 Sekunden der Fall, kann aber auch leicht angepasst werden. Dann habe ich 2 Minuten für das leeren des Staubbehälters vorgesehen. Dann fährt er automatisch mit der Reinigung fort. Hier kann man es sich in einem kurzen Video anschauen:
Das ist der dazugehörige NodeRed Flow, der auf einem Raspberry Pi 4 im Docker Kontainer läuft:… „Saugroboter: Automatische Navigation zum Mülleimer mit NodeRed und Demo Video“ weiterlesen
Das Neues Rathaus in Langenhagen soll mehr als 68 Millionen Euro kosten und 2026 fertig sein. Ich bin gespannt und werde es beobacchten.
Nun ist die Integration in NodeRed fertig, meine Steuerung für den Xiaomi-Saug-Roboter. Die App ist eigentlich ausreichend und macht fast alles was man braucht. Aber wenn man schon auf Hausautomatisation setzt, dann muss das natürlich auch da rein.
Auch ist die Gui etwas einfacher zu erreichen. Man kann auch weitere Szenarien implementieren. Z.B. bei Abwesenheit autom. saugen.
Was ich aber brauchte, war die Anforderung mit einen Klick, drei Räume zu reinigen. Auch die Zeitliche Steuerung wie z.B. jeden Tag die Küche saugen usw. ist nun noch einfacher. Auch kann nun von jedem Browser aus die Gui gestartet werden, ohne SW zu installieren. Z.B. vom Mac oder Laptop. Oder wenn die Haustür aufgeht, und ich nicht da bin, soll der Roboter den Flur saugen und die Ansage abspielen („Hier bin ich“) das vertreibt dann jeden Einbrecher;-) Habe es bisher noch nicht versucht, auch anderen Text wie z.B. Hundegebell abzuspielen. Dazu müsste ich ihn dann mit einer neuen Firmware flashen. Noch hat das Teil aber noch Garantie und läuft seit Monaten sehr gut und hat sich nur einmal „verlaufen“.
Hier der NodeRed-Flow:
Hier die GUI die auch auf dem Handy bzw. Tablet läuft:… „Mal was anderes als der beschlossene Neubau des Rathaus in Langenhagen für 68 Millionen „Bitcoin“: Heimautomatisierung mit NodeRed Xiaomi Saugroboter Flow“ weiterlesen
Eben eine neue Version des NodeRed Node node-red-contrib-cryptography in Version 0.0.4 veröffentlicht. Jetzt auch mit RIPEMD-160 hash. RIPEMD-160 bietet kürzere hash Werte (40 Zeichen) als SHA-265. Wird deshalb u.a. auch für Bitcoin verwendet. Hier nun endlich auch eine GUI nach „jahrelanger“ Entwicklung, wo einfach Testwerte eingegeben werden können.
Und der dazugehörige Flow:… „Kryptowährungen eingebrochen: Bitcoin zeitweise auf 45.000 US-Dollar gefallen deshalb nun NodeRed mit Hash RIPEMD-150 Node inkl. GUI“ weiterlesen
Wer in einer schönen GUI mit NodeRed mal einen SHA-256 Hash erzeugen will, kann das gern hiermit machen. Hier der Flow: … „#Hashgenerator: NodeRed Hash SHA-256 GUI Flow Generator“ weiterlesen
Wer in NodeRed einen SHA-256 hash ohne Konfiguration verwenden will, kann das Modul node-red-contrib-cryptography verwenden. Das JavaScript Modul habe ich geschrieben, um das Hashen zu vereinfachen. Es brauchen keine Einstellungen gemacht werden und es gibt keine weiteren Abhängigkeiten. Das Modul wird dann später noch um RIPEMD-160 ua. die für Bitcoin verwendet werden können erweitert.
Die erste Version, kann wie gewohnt in der Palettenverwaltung geladen werden: … „New NodeRed Node: Hash mit SHA-256“ weiterlesen
Wie kann man einen lokalen Node von der Festplatte in NodeRed hochladen, wenn er nicht im Repository vorhanden ist und nur lokal auf der Platte liegt? Und wenn dann noch NodeRed in einem Docker Kontainer läuft, wie geht es dann? Es kann natürlich auch über die Kommandozeil des Raspberry Pi laufen, aber das will man ja nicht immer.
Hier eine kurze Beschreibung wie das geht. Der Button zum hochladen ist etwas versteckt, unter „Palette verwalten“ und „Palette“ und „Installieren„, im Dialog zu finden.
Nach einem klick, einfach das tgz-Archiv auswählen und hochladen. Dann ist unbedingt ein Neustart von NodeRed nötig. Das ist im Docker Kontainer mit einem Restart schnell gemacht.
Kommt es beim hochladen zu einem Fehler, kann es sein das das npm-Package für den Node nicht richtig erzeugt wurde. Die npm-Packages müssen mit npm pack im jeweiligen node_modul erzeugt worden sein, z.B. so: … „Wie „geht“ ein upload eines lokalen NodeRed-Nodes im tgz-Archiv Format über die NodeRed-GUI für Docker Kontainer?“ weiterlesen
Mal zum Feierabend einen kleine Bitcoin Flow mit NodeRed implementiert. … „NodeRed: Bitcoin Kurs übersichtlich anzeigen“ weiterlesen
Wer mal sehen will, wie lange sein Raspberry Pi läuft, hier mal dazu ein kleiner Flow:
Hier die Gui dazu. … „small but mighty: NodeRed uptimer mit Gui“ weiterlesen
Heute mal nur eine kleine refactoring Aufgabe des bekannten NodeRed Flows:
Hier das ganze CO2-Messsystem und der überarbeitete Flow …
„Refactoring: NodeRed Mqtt CO2-Flow der CO2-Ampel mit Datei History und Pushover Lüftungswarnung“ weiterlesen
Gerade in der Zeit der Corona-Pandemi sind Videokonferenzen oft angesagt. Um z.B. Meetings zu begrenzen können diese Countdown-Timer verwendet werden, um immer die Zeit im Blick zu haben. Hier der Gruppierte-Flow, der auch leicht an eigene Bedürfnisse bzw. Zeiten angepasst werden kann.
So sieht es dann im Browser aus: … „Mal was anderes als Corona-Impfstrategien: NodeRed Timer für den Raspberry Pi“ 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
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
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
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
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