In einem lauffenden OpenHAB2 System eine Wetterabfrage einzubauen geht schnell.
Zuerst das Yahoo-Wetter-Binding installieren: „OpenHAB2 Wetterabfrage mit Pushover Benachrichtigung in 30 Minuten via WOEID (Where On Earth IDentifier)“ weiterlesen

Wenzlaff.de – Rund um die Programmierung
mit Java, Raspberry Pi, SDR, Linux, Arduino, Sicherheit, Blender, KI, Statistik, Krypto und Blockchain
Anleitungen zu allen Themen.
In einem lauffenden OpenHAB2 System eine Wetterabfrage einzubauen geht schnell.
Zuerst das Yahoo-Wetter-Binding installieren: „OpenHAB2 Wetterabfrage mit Pushover Benachrichtigung in 30 Minuten via WOEID (Where On Earth IDentifier)“ weiterlesen
Manchmal lädt man mehrere Dateien hoch, und es ist einem nicht immer bewußt, das auch im 21. Jahrhundert Umlaute zu Problemen führen können.
Wer z.B. eine Datei mit Namen „Testdatei für Umlauttest.txt“ mit einem FTP Client wie z.B. File Zilla auf einen Server hochlädt, der keine Serverunterstüzung für Nicht-ASCII-Zeichen hat, erhält nach dem upload den folgenden Dateiname:
Da der upload klappt und man keine Fehlermeldung erhält, merkt man es nicht immer.
Dann passen später die Links auf diese Datei uä. nicht, oder man verwendet den „richtigen“ Dateinamen.
Ein weiteres Problem. Man kann diese Datei mit dem FTP Client nicht mehr löschen. Wenn man es versucht, kommt die Fehlermeldung: „Datei mit Sonderzeichen in Dateinamen läßt sich nicht per FTP löschen“ weiterlesen
Wie läuft der Umstieg von OpenHAB 1 auf die Version 2? Da ist eine Menge umgebaut worden. Da bei mir alles unter der Version 1 läuft, habe ich nicht große Not alles umzustellen.
Aber die neue GUI usw. ist doch ein Anreiz.
Deshalb habe ich mal Testweise auf einen Raspberry Pi Zero W die Version 2 installiert, wie hier beschrieben.
Das lief schon mal ganz gut. Nun wollte ich mal ein erstes Binding testen. Das Wemo-Binding. „OpenHAB2 mit Raspberry Pi Zero W: ERROR: 500 – Internal Server Error“ weiterlesen
Manchmal will man oder muss man alle Dateien, die einen Umlaut im Dateinamen haben ermitteln. Mir ging es so, als in der Dropbox Dateien mit Umlauten bei einem Programm bei der Synchronisation Probleme machte.
Dann sollte das auch noch auf Mac OS X, Windows, Linux und auf einen Raspberry Pi mit Debian laufen. Also mal ein kleines Java Programm geschrieben, das alle Dateien mit Umlaute (äöüÖÄÜ) im Dateinamen und auch die Anzahl ausgibt.
Das Programm läuft unter Java, da es ab Version 1.7 eine neue Klasse SimpleFileVisitor gibt, von der man leicht erben kann habe ich die mal verwendet. Man kann aber auch selbst das Interface FileVisitor implementieren.
Einfach die Datei laden und das Zip-Archive entpacken. „Suche alle Dateien rekursive mit Umlaute im Dateiname auf Win, Mac, Linux und Raspberry Pi und liefere die Anzahl“ weiterlesen
Peter Cornelius singt:
„Der Kaffee ist fertig,
klingt das net unheimlich zärtlich.
Der Kaffee ist fertig,
klingt das net unglaublich lieb.“
In diesem Sinne. Wenn ein Kaffee (кофе) gekocht wurde, werde ich von meinen Raspberry Pi informiert, wie hier schon mal beschrieben. Nun generiere ich noch in Echtzeit, einmal am Tag eine Grafik mit MATLAB Visualization wieviele Tassen pro Tag gekocht wurden, hier das Diagramm:
Diese paar Zeilen Quellcode erzeugen das Diagramm:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
% Kaffee pro Tag anzeigen % % Thomas Wenzlaff % % Lesen des Kanal readChannelID = hier die Kanal Nr einfügen; fieldID2 = 2; % Channel Read API Key readAPIKey = 'hier den Api Key einfügen'; data2 = thingSpeakRead(readChannelID, 'Field', fieldID2, 'NumPoints', 30, 'ReadKey', readAPIKey); data = [data2]; thingSpeakArea(data); |
Oder findet ihr die besser? „Raspberry Pi Kaffeezeit oder der „Kaffee (قهوة) ist fertig““ weiterlesen
Über Docker hatte ich hier schon mal berichtet.
Docker ist schnell installiert, einfach nach der Aktuallisierung des Systems folgenden Befehl eingeben: „Raspberry Pi Zero W: Debian Docker mit Alpinelinux installieren in 30 Minuten“ weiterlesen
Heute wird auf dem Raspberry Pi Zero W mal OpenHAB 2 installiert. Die 1.x Version läuft bei mir seit über einem Jahr erfolgreich. Mal sehen wie der Zero sich so schlägt.
Die Installation geht ziemlich schnell. Zuerst mal eine SD-Karte mit Jessie Lite 2.3.17 installieren.
Dann die folgenden Schritte:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# System aktualisieren sudo apt-get update sudo apt-get upgrade # Namen und ein paar Einstellungen sudo raspi-config # neue Firmware sudo apt-get dist-uprade # neues update Prog. installieren sudo apt-get install rpi-update # neueste Treiber installieren sudo rpi-update # Reboot sudo reboot now # Java 1.8 installieren, wenn nicht schon vorhanden sudo apt-get update && sudo apt-get install oracle-java8-jdk # so, jetzt die eigentliche OpenHAB 2 Installation # zuerst den Openhab Key ergänzen wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' | sudo apt-key add - # das Repo ergänzen echo 'deb http://dl.bintray.com/openhab/apt-repo2 stable main' | sudo tee /etc/apt/sources.list.d/openhab2.list # nun wieder alles updaten, da ein neues Repo ergänzt wurde sudo apt-get update # OpenHAB 2 installieren sudo apt-get install openhab2 # OpenHAB autom. bei Systemstart starten sudo /bin/systemctl daemon-reload sudo /bin/systemctl enable openhab2.service # und OpenHAB 2.0 starten sudo /bin/systemctl start openhab2.service # der Start hat ein paar Minuten gedauert, deshalb mal den Status ausgeben sudo systemctl status openhab2.service # wenn ein Restart nötig ist, dann sudo systemctl restart openhab2.service |
So, dann kann die URL im Browser aufgerufen werden:
http://(raspberry-pi-adresse):8080
Dort erscheint dann dieser Auswahl Dialog. Ich habe da den „Expert Best for 1.X User“ gewählt, da ich schon ein 1.x OpenHAB laufen habe. Da könnte man dann aber wohl Standard wählen:

„Raspberry Pi Zero W: OpenHAB 2.0 installieren in ca. 60 Minuten“ weiterlesen
675 Tassen Kaffee trinkt jeder Deutsche im Schnitt pro Jahr (2015). Das geht aus einer Erhebung des Statista Consumer Market Outlooks hervor. Wie sieht es aber bei mir aus?
Wer wissen will, wieviel Kaffee er trinkt oder besser gesagt kocht, kann den Raspberry Pi dazu verwenden.
Wenn dort OpenHab installiert ist, kann man eine Regel erstellen, die jedesmal eine Pushover Nachricht an das Handy sendet und gleichzeitig in einem Diagramm auf Thinkspeak die Anzahl zählt bzw. darstellt. Die Erfassung an der Kaffeemaschine geht über einen Leistungsmesser von Homematic. Das ist hier im Blog schon mal beschrieben worden.
Hier die Architektur:
In diesem Thingspeak Diagramm wird in Echtzeit jeweils der aktuelle Stand ab heute automatisch erstellt. Also immer mal wieder vorbeischauen, dann weiß man, wann bei mir Kaffee-Time ist und ob ich den Durchschnitt von 675 Tassen pro Jahr erreiche 😉
Hier die OpenHab Regel: „Raspberry Pi: Echtzeit Benachrichtigung wenn ein Kaffee (قهوة) gekocht wurde via OpenHab und ThingSpeak bzw. Pushover“ weiterlesen
Wie kann ein Archive aus dem Internet gelanden und der Inhalt angezeigt und dann entpackt werden?
Auf der Kommandozeile kann mit apt-get ein Archive geladen werden. Wir laden uns mal z.B. git:
|
1 |
apt-get download git |
Nach ein paar Sekunden habe wir im lokalen Verzeichnis das Archive git_1%3a2.1.4-2.1+deb8u2_armhf.deb oder neuer. „Raspberry Pi Zero W: Wie kann ein Archive gelanden und der Inhalt angezeigt und dann entpackt werden?“ weiterlesen
Was ist denn heute schönes aus Holland angekommen?
Übrigens, das auf dem Bild soll ich sein, aus der Sicht einer netten 5 jährigen! Ich bin begeistert!
Vorderansicht: „Frisch aus Nederland eingetroffen: Raspberry Pi Zero W“ weiterlesen
Es gibt viele Warnugen vor Fake-News! Sogar von der UN und auch von Heise. Das ist doch mal ein Grund, eine Fake-News-Generator mit Node-RED auf dem Raspberry Pi zu implementieren.
Dann hier das Ergebniss vom Fake-News-Generator, der jede Stunde (leicht anpassbar) auf Twitter Fake Meldungen postet:

Wie wird das mit Node-Red implementiert? Wir brauchen eine Flow in der Form:
„Fake-News-Generator mit Node-RED und Raspberry Pi“ weiterlesen
Habe vor ein paar Tagen aus China einen programmierbaren USB-Lüfter mit einem Programm für Windows auf einer mini CD und USB-Kabel erhalten. Musste ihn aber mal wieder beim Zoll direkt abholen, da das Teil für 0 Euro deklariert wurde. Da wollte der Zoll dann doch einmal reinschauen und die Rechnung sehen.
Denn Lüfter wollte ich mal an einem Raspberry Pi anklemmen, es geht aber auch jeder andere USB-Port wie Laptops, Netzteile oder Accus.
Hier meine erstes Demo-Video (2 Min) um zu zeigen was für Effekte man so programmieren kann. Im halbdunkeln, damit man es besser erkennen kann:
Hier ein paar „Programmierbarer USB Lüfter nicht nur für den Raspberry Pi“ weiterlesen
Vor ein paar Tagen hatte ich schon mal den ATTINY 85 vorgestellt.

Das ist ein cooles Teil mit USB und das für 1 Euro. Er emuliert eine Tastatur (HID).
Also mal ein weiteres Programm, für folgendes Problem. Wer lange und komplizierte Passwörter verwendet, hat mit unter keine Lust, sie immer wieder einzugeben. Das ist auch fehleranfällig. Oder man möchte jemand anderes an seinen Rechner lassen, und ihn nicht das Passwort geben. Also gibt man den Generator weiter.
Wir erstellen also ein Programm, das das Passwort automatisch an den Rechner sendet. Man muss dann natürlich auf das Teil aufpassen, das es nicht in falsche Hände kommt. Wir senden nur einmal, das gespeicherte Passwort. Hier mal ein 45 Sekunden Demo Video:
Hier das C-Programm, es ist ein sehr einfaches Programm mit ein paar Zeilen: „Video DIY USB Passwort Generator mit Attiny 85“ weiterlesen
Da ich hier beschrieben habe wie die Flugdaten mit einem Raspberry Pi an einen MQTT Server gesendet werden, habe ich mal gleich die neu Version vom MQTT.fx 1.3.1 Client geladen und getestet. Er hat jetzt auch ein dark Thema:
Ihr könnt es auch leicht testen. Verwendet den test.mosquitto.org und subscribe /Anzahl/Flugzeuge/Hannover dann habt ihr meine Flugdaten vom Raspberry Pi. Cool oder?
Vor einiger Zeit, hatte ich schon mal beschrieben, wie mit jq Flugdaten mit einen Raspberry Pi an Thingspeak.com gesendet werden können. Nun wollte ich das mal ablösen und mit Node-RED durchführen. Gesagt getan, erst mal die Architektur:
Nun noch den Flow modellieren:
„Senden von Flugdaten mit dem Raspberry Pi an Twitter und Thingspeak und MQTT (public, private) Server“ weiterlesen
Wie können die Flugdaten an das OpenSkyNetwork gesendet werden? Mit der neuen Software brauch man auch keine Ports usw. im Router freigeben. Einfach den Feed installieren. So wie das auch für die anderen Dienste geht. Hier mal das Ergebnis von eben:
Es ist unten links, gut zu erkennen das der weiteste Empfang 262 km ist. Cool.
Zuerste einen kostenlosen Account bei OpenSkyNetwork anmelden.
Dann wie hier beschrieben die Software auf dem Raspberry Pi installieren. Das geht aber einfacher so …
|
1 2 3 4 |
# wir holen uns die aktuelle Feeder Software wget https://opensky-network.org/files/firmware/opensky-feeder_latest_armhf.deb # und installieren die sudo dpkg -i opensky-feeder_latest_armhf.deb |
Es kommen dann noch die folgenden Setup Dialoge, die natürlich mit den eigenen Werten angepasst werden müssen:
Zuerst den Breitengrad, (Latitude) wo man wohnt:
Dann die Longitude (Längengrad): „Raspberry Pi: Flugdaten mit DUMP1090 an OpenSkyNetwork senden“ weiterlesen
Auf meinem Raspberry Pi läuft Node-Red. Nun wird seit einiger Zeit die Node-RED-Contrib-UI Gui nicht weiter entwickelt. Also mal die passende Gelegenheit es zu löschen und den Nachfolger das Node-RED-Dashboard zu installieren. Der Node hat eine schöne GUI, wie diese Bilder zeigen. Er läuf ab Node-RED version 0.14.
Vor dem update nicht vergessen, die alten Flows zu sichern.
|
1 2 3 4 5 6 |
# den alten Node löschen cd ~/.node-red sudo npm uninstall node-red-contrib-ui # den neuen installieren sudo npm install node-red-dashboard sudo reboot |
Nun können die neuen GUI-Elemente verwendet werden, hier links die verfügbaren Elemente.
„Upgrade von Node-RED-Contrib-UI nach Node-RED-Dashboard“ weiterlesen
Wie können die Menü Einträge, für die Digispark AVR Boards in der Arduino IDE ergänzt werden? Evl. fehlen diese Einträge im Menü: „Werkzeuge – Board“
Dann in dem Menü: „Arduino – Einstellungen“ auf den Button „Zusätliche Boardverwalter-URLs“ klicken und die folgende URL ergänzen:
URL:
|
1 |
https://raw.githubusercontent.com/digistump/arduino-boards-index/master/package_digistump_index.json |
Nun noch unter dem Menüeintrag: „Werkzeuge – Board – Board Verwalter …“ den Digistump AVR Boards auswählen und installieren:
Schon sind die Menüeinträge vorhanden. Dann kann der ATTINY85 ja geflasht werden.
Für 1,28 Euro inkl. versand aus China eingetroffen …
… und von hinten:
Hier ein paar tech. Daten vom Anbieter.
|
1 2 3 4 5 6 7 8 9 10 11 |
Support for the Arduino IDE 1.0+ (OSX/Win/Linux) Power via USB or External Source - 5v or 7-35v (automatic selection) On-board 500 mA 5V Regulator Built-in USB (and serial debugging) 6 I/O Pins (2 are used for USB only if your program actively communicates over USB, otherwise you can use all 6 even if you are programming via USB) 8k Flash Memory (about 6k after bootloader) I2C and SPI (vis USI) PWM on 3 pins (more possible with Software PWM) ADC on 4 pins Power LED and Test/Status LED (on Pin0) Size: 1.8 cm x 2.6 cm |
Dann mal an dem Raspberry Pi anschließen, aber nicht mehr heute. Oder andere Ideen?
Habe eine USB-Ladegerät, das von der Größe her auch als Gehäuse für den Raspberry Pi dienen könnte. Dann hätte man das Netzteil und den Pi zusammen. Also mal wieder ein Bastelprojekt. So sieht das Teil aus:
Und von unten mit CE Zeichen aus China:
Achtung! Netzspannung! Lebensgefahr! Nur von „Passt der Raspberry Pi in das USB-Netzteil-Gehäuse (JCMASTER)?“ weiterlesen
Manchmal will man sehen, was alles so in einer compilierten Java Datei steckt. Nicht immer hat man den Quelltext. Auch für die Fehlersuche ist ein Disassembler mal ganz gut.
In jedem JDK ist auch ein Disassembler javap dabei. Denn wollen wir nun einmal auf eine unbekannte Java Class Datei loslassen, um zu sehen, was es so zu sehen gibt.
Zuerst loggen wir uns auf die Kommandozeile eines Raspberry Pi ein, auf dem ein Java JDK installiert ist. Ob Java installiert ist kann mit
|
1 |
java -version |
getestet werden. Wenn dort eine Versionsangabe geliefert wird, ist alles ok.
Dann legen wir erst mal ein Testverzeichnis an und wechsel in das Verzeichnis:
|
1 2 |
mkdir java-test cd java-test |
Dann holen wir uns in das Verzeichnis eine unbekannte Flugzeug.class Datei (der Quellcode ist hier zu finden):
|
1 |
wget http://blog.wenzlaff.de/wp-content/uploads/2017/01/Flugzeug.class |
Diese Datei wollen wir nun disassemblieren, mit
|
1 |
javap Flugzeug.class |
Schon bekommen wir alle gewünschten Informationen:
Nun schauen wir uns mal alle Möglichkeiten an: „Mit dem Raspberry Pi den Java Class File Disassembler (javap) aufrufen“ weiterlesen
Vorgestern ist mein neues Gadget, das man für 7,40 Euro inkl. Versand aus China bekommen kann eingetroffen. Hier mal die Daten von der Ladung eines iPadMini:
Das ist ja schon interessant, wie unterschiedlich meine USB Ladegerät den Strom liefern. Kein wunder das mache doppelt solange laden. Ich bin nun gespannt, wie es mit dem Raspberry Pi aussieht. Nur heute will ich keinen vom Netz trenne, es ist ja kein Cubi, der jeden Tag gebootet werden muss 😉
Bei der Benachrichtigung stören solche Ausbildungsflüge:
Bei denen will ich nicht per Pushover benachrichtigt werden. „Raspberry Pi: Flugzeuge Erfassung jetzt mit Blacklist in Version (0.0.7) auf Maven Central veröffentlicht“ weiterlesen
Für meinen Raspberry Pi brauche ich nun eine Sprachausgabe da Karotz gestorben ist. Ich habe noch einen < 5 Euro Bluetooth Speaker aus der China-Bucht liegen. So ein Teil:

Denn wollte ich nun drahtlos anbinden.
Dazu verwende ich für den Raspberry Pi den folgenden Bluethooth USB-Adapter, denn ich schon mal mit Fhem angebunden hatte.
Das ist schnell gemacht! „MP3 und WAV Dateien mit einem Raspberry Pi über Bluetooth (Drahtlos) abspielen“ weiterlesen
Mein heutiges Raspberry Pi Projekt soll einfach eine Pushover Nachricht auf alle Handys und iPads versenden, wenn ein Kaffee gekocht wurde. So kann ich immer sehen, wieviele Kaffee ich so am Tag getrunken habe und wann.
Es wird ein Homematik „Pushover Nachricht mit dem Raspberry Pi versenden wenn ein Kaffee (قهوة) gekocht wurde via OpenHab“ weiterlesen
Zuerst die 4 Schrauben unten entfernen, dann sieht er schon mal nackt aus:
Eine Handvoll weitere Schrauben entfernen und man sieht schon mehr:
Links ist der RFID Reader, in der Mitte das Mainboard und rechts das WIFI: „Karotz en détails – Requiescat in pace“ weiterlesen
Dazu einfach das Tool Digital Color Meter starten:
Nun wird der Farbwert angezeigt, wo die Maus hinzeigt: „Wie können Farbwerte auf einem Mac OS X 10.12.2 Sierra angezeigt werden?“ weiterlesen
Das geht nicht mit der Funktion Einfügen – Feldbefehlt – Seitennummer wie eigentlich erwartet, sondern über die Funktion:
Einfügen – Feldbefehlt – Andere – Variablen – Nummernkreis
einfügen in die Kopfzeile:
Wenn der Seriendruck-Assistent gestartet wird, muss das generierte Dokument als ein Dokument gespeichert werden.
Nach der Info musst ich aber schon etwas suchen 😉 Aber es geht zumindestens 🙂
Cooler Step-Down Regle aus China eingetroffen. Was man so für 1,99 Euro inkl. Versand aus der Bucht bekommt! Hier mal das erste Foto:
Hier die angegebenen Daten:
1. Input Voltage range:4~40 VDC
2. Output voltage range:1.25-37 VDC adjustable
3. Output current:2A
4. Voltmeter range: 0 to 40V, error ±0.1V
5. Input reverse polarity protection
6. Built in output short protection function
7. Built in thermal shutdown function
8. L x W x H = 6.1*3.4*12 cm
9. Weight: 22g
10. LEDdigital voltmeter tube, the accuracy is adjustable function, can be aimed at your multimeteradjustable accurate.
11. Press the rightkey to let the display show the input or output voltage. when the right “OUT” led light, it shows output, the left “IN” led show input.
Ok, dann mal der erste Test. Mal als Eingangsspannung eine 9 Volt Batterie angeklempt, die Eingangsspannung kann auch angezeigt werden:
Wahlweise wird auch die Ausgangsspannung angezeigt. Die kann über das Poti verändert werden. Cool!
Dann werde ich mal einen Raspberry Pi anschließen oder was anderes …
Auf der Platine ist ein LM2596 verbaut, das Datenblatt von TI gibt es hier.
Hier noch die Anleitung und ein Hinweis wenn es nicht „geht“: „Für 1,99 Euro inkl. Versand aus China eingetroffen: DC-DC Spannungsregler LM2596 Step-Down Regler einstellbar mit LED Voltmeter“ weiterlesen