Raspberry Pi FreeMarker Java and Maven Project goes to 去 يذهب إلى GibLab and not to GitHub

Bisher hatte ich alle öffentlichen Repositorys in GibHub liegen. GitHub ist nun aber an Microsoft verkauft worden. Wenn das kein Grund ist, das nächste Repo mal in GitLab anzulegen. GitLab hat auch den Vorteil, das private Repos kostenlos sind und …

Also das FreeMarker-Maven-Java-Projekt nach GitLab hochladen.

Was etwas suche und Anpassung benötigte, war der CI-Prozess. Aber wenn man die Syntax der .gitlab-ci.yml kennt, geht es mit zwei Zeilen.
Also einen Docker-Container mal mit Java 11 und Maven, wie folgt erstellt: „Raspberry Pi FreeMarker Java and Maven Project goes to 去 يذهب إلى GibLab and not to GitHub“ weiterlesen

Raspberry Pi bricht beim signieren eines Git tags mit „gpg: signing failed: Unpassender IOCTL (I/O-Control) für das Gerät“ ab

Wollte einen Git Tag signieren auf einem Raspberry Pi W Zero. Nach der Key Erzeugung (gpg –gen-key) schlug das signieren des git tags mit -s:

mit folgender Fehlermeldung fehl:

gpg: signing failed: Unpassender IOCTL (I/O-Control) für das Gerät
gpg: signing failed ioctl

Ein erster Test mit:

schlug auch fehlt. Eine Kontrolle der Config (.gitconfig) mit: „Raspberry Pi bricht beim signieren eines Git tags mit „gpg: signing failed: Unpassender IOCTL (I/O-Control) für das Gerät“ ab“ weiterlesen

Warum nicht einfach auf dem Raspberry Pi mp3 und wav Voice-Dateien mit pico2wave und lame selber erstellen? Oder 1000 wav und mp3 kostenlos downloaden?

In dem Beitrag vor ein paar Tagen, hatte ich gezeigt wie mit einem Online-Service mp3 Dateien erzeugt werden können. Dazu schrieb Fred (Vielen Danke für die Idee): „Warum nicht einfach auf dem Raspberrypi die mp3 oder wav Voice-Dateien selber erstellen?

Beispiel

Das geht sehr einfach und ohne Online-Service der limitiert oder kostenpflichtig ist. Und die Qualität ist auch ganz gut. Hier eine Beispielausgabe im wav Format:

Das kann dann mit lame in mp3 umgewandelt werden, hier die Beispiel Datei: „Warum nicht einfach auf dem Raspberry Pi mp3 und wav Voice-Dateien mit pico2wave und lame selber erstellen? Oder 1000 wav und mp3 kostenlos downloaden?“ weiterlesen

Syntaxhighlighter sagt der Daltonist ;-) Wie kann Quellcode (Java, C++, C …) in PPT oder Word in Farbe eingefügt werden?

Manchmal braucht man für eine Präsentation oder ein Dokument farbige Beispiele von Quellcode oder auch für Dokus. Wie können die nun erstellt werden? Dafür gibt es ein cooles Programm highlight von Andre Simon. Highlight konvertiert Sourcecode in XHTML, HTML, RTF, TeX, LaTeX, SVG, BBCode und Terminal Escape-Sequenzen mit farbiger Syntaxhervorhebung. Sprachdefinitionen und Farbstile sind konfigurierbar. Es werden eine ganze Menge Sprachen unterstützt. Im Moment 215!

Auf dem Raspberry Pi ist das Programm schnell installiert mit:

So, nun ein Beispiel, wir nehmen mal eine CPP Klasse aus meinen C++ Lehrgang, Temperatur.cpp, und geben die farbig auf der Konsole aus mit:

Nun können wir auch die Ausgabe in eine Datei im RTF Format umleiten mit: „Syntaxhighlighter sagt der Daltonist 😉 Wie kann Quellcode (Java, C++, C …) in PPT oder Word in Farbe eingefügt werden?“ weiterlesen

Raspberry Pi: 0.18.7: Maintenance Release update für NodeRED vor ein paar Wochen erschienen, jetzt aber mal updaten …

NodeRED: „A visual tool for wiring the Internet of Things.“ Eine neue NodeRED Version 0.18.7 ist veröffentlicht worden. Was ist neu? Siehe hier. Sei Mutig! Update auf die neue Version.

Also zum updaten ein:

auf der Konsole eingeben und nach 13 Minuten, ist die neue Version installiert:

„Raspberry Pi: 0.18.7: Maintenance Release update für NodeRED vor ein paar Wochen erschienen, jetzt aber mal updaten …“ weiterlesen

Shell Scripte überprüfen mit ShellCheck auch auf dem Raspberry Pi (Zero W) in 5 Minuten möglich und auch JUnit via xslt

Mit shellcheck kann man gut Shell Scripte überprüfen.Das kann man einfach online, über diese GUI www.shellcheck.net ausprobieren oder aber auch installieren.

Für den Raspberry Pi gibt es schon ein installations Packet, deshalb ist die Installation mit

schnell erledigt.

Das ist nun nicht gerade die aktuelle Version 0.5.0 aber immerhin. Ein selbst compilieren kommt für den Pi nicht infrage, da ShellCheck in Haskell programmiert ist und da für den compile mind. 2GB RAM benötigt werden, der Pi hat aber je nach Version max. 1GB.

Nun kann leicht eine Script Datei überprüft werden, mit Aufruf

shellcheck SCRIPT.sh. Hier mal zwei Beispiele:


„Shell Scripte überprüfen mit ShellCheck auch auf dem Raspberry Pi (Zero W) in 5 Minuten möglich und auch JUnit via xslt“ weiterlesen

Läuft eine Vaadin 8 Anwendung auch auf einem Raspberry PI Zero W?

Warum eigentlich nicht. Ist doch Java. Also mal ein Quicktest.

Java 1.8 und eine MySql DB (genauer Server version: 10.1.23-MariaDB-9+deb9u1 Raspbian 9.0, MariaDB ist schneller als MySQL) sind auf dem Pi schon installiert.

Das ist auch Voraussetzung.

Dann das mit

erzeugte Vaadin 8 Jar mit Tomcat Server auf den Pi per Drag and Drop kopiert (43 MB) und auf der Kommandozeile ein

Nach ein paar Sekunden

es startet schon mal. „Läuft eine Vaadin 8 Anwendung auch auf einem Raspberry PI Zero W?“ weiterlesen

Wie können mit SDR (auf 433 Mhz) auf dem Raspberry Pi Signale von Autos, Tempsensoren ua. empfangen und an ein MQTT-Host gesendet werden?

Hier hatte ich geschrieben, wie man Signale von Autos, Temp.-Sensoren usw. empfangen kann. Diese Daten können auch leicht an einen Mqtt-Host gesendet werden.

Mosquitto muss installiert sein, das geht aber schnell:

Marco Verleu hat ein kurzes Bash Script geschrieben, welche auf Github zu finden ist. Man braucht nur den Host und den Topic anpassen, zu testzwecken kann man den Host auch lassen. Dann einfach das Script mit ./rtl2mqtt.sh starten. Schon werden die empfangenen Nachrichten unter den Topic versendet. „Wie können mit SDR (auf 433 Mhz) auf dem Raspberry Pi Signale von Autos, Tempsensoren ua. empfangen und an ein MQTT-Host gesendet werden?“ weiterlesen

Traceroute mit mtr 0.92.56 (network diagnostic tool) auf dem Pi oder Traceroute + Ping = mtr

Manchmal will man das Netzwerk analysieren und sehen wie der Weg zum Zielrechner läuft. Das geht mit Traceroute. Also z.B. traceroute wenzlaff.de

Interesannter wird es in Verbindung mit dem ping. Dazu installieren wir das mtr programm mit sudo apt-get install mtr und schauen uns die Hilfe des Programms mit mtr -h an:

Ok, wir starten nun mtr mit dem Zielhost z.B. mit mtr wenzlaff.de und erhalten einen interaktiven Dialog. Wir klicken nun die d Taste und erhalten den Status in Echtzeit der letzten 70 Pings in einem schönen Diagramm:

Mit der h Taste, gibt es Hilfe: „Traceroute mit mtr 0.92.56 (network diagnostic tool) auf dem Pi oder Traceroute + Ping = mtr“ weiterlesen

Besser als ping ist noping auf dem Raspberry Pi

Will man mehrere Hosts mit ipv4 oder/und ipv6 anpingen und das in einer guten Übersicht? Das geht mit noping. Wenn es nicht schon installiert ist, gehte es mit sudo apt-get install oping.
Die noping C Library generirt ICMP echo requests um zu sehen was so im Netzwerk läuft.
Dann ein Aufruf z.B. mit drei Zielen:

noping wenzlaff.de wenzlaff.info kleinhirn.eu liefert grüne Balken mit dem Ergebnis:

Das Programm kann mit Ctrl-C beendet werden und gibt dann ein Ergebnis zurück:

Alle Befehle gibt es mit
„Besser als ping ist noping auf dem Raspberry Pi“ weiterlesen

Filtern von doppelten Nachrichten in NodeRED auf einem Raspberry Pi

Wie können doppelte Nachrichten gefiltert werden? Manchmal will man das eine Nachricht nur einmal versendet wird, auch wenn sie innerhalb einer bestimmten Zeit nochmal mit dem gleichen Wert versendet wird. Das geht mit dem deduplicate Node. Wenn der mit npm i node-red-contrib-deduplicate installiert wurde, kann er wie folgt eingesetzt werden:

Rechts im Debug Fenstern kann man auch am Zeitstempel sehen, das die Test-Nachricht nur einmal ausgegeben wird, auch wenn man innerhalb von 5 Sekunden mehrmals klickt. Die Zeit kann in den Eigenschaften angepasst werden: „Filtern von doppelten Nachrichten in NodeRED auf einem Raspberry Pi“ weiterlesen

Raspberry Pi: 0.18.5: Maintenance Release update für NodeRED mit Flow zum Abfragen des Sonnen.- bzw. Mond.- auf und untergang

NodeRED: „A visual tool for wiring the Internet of Things.“ Eben ist eine neue NodeRED Version 0.18.5 veröffentlicht worden. Was ist neu? Siehe hier. Sei Mutig! Update auf die neue Version.

Also zum updaten ein:

auf der Konsole eingeben und nach ein paar Minuten (20-30 min), ist die neue Version installiert:

„Raspberry Pi: 0.18.5: Maintenance Release update für NodeRED mit Flow zum Abfragen des Sonnen.- bzw. Mond.- auf und untergang“ weiterlesen

Wie können 433 Mhz Signale von PKWs (Reifen, Zentralveriegelung) per MQTT auf einen Raspberry Pi auswertet werden?

In diesem Blogbeitrag hatte ich schon mal beschrieben, wie man mit einem Softwarenradio Temperatursensoren und Luftruck von Autoreifen (TPMS) uä. auf 433,92 Mhz empfangen kann. So kann man alle Autos über die Reifensensoren oder aber auch über die Schließanlangen tracken, da immer eine eindeutige ID versendet wird.

Datenschutz läßt grüßen.

Die Empfangsanlage steht mit Sicht auf die Straße, da für 433 Mhz nur die maximal zulässige äquivalente Strahlungsleistung von 10 mW ERP für die Funkanwendungen mit geringer Reichweite (SRD) verwendet werden darf.

Hier der Aufbau, mit Leistungsmessung und Accu. „Wie können 433 Mhz Signale von PKWs (Reifen, Zentralveriegelung) per MQTT auf einen Raspberry Pi auswertet werden?“ weiterlesen

Monitoring: Wie laufen Linux Performance Messungen mit vmstat auf dem Raspberry Pi? Es muss ja nicht immer top sein!

Mit vmstat (virtual memory statistics) können leicht folgende Werte fast in Echtzeit angzeigt werden:
Anzeige der Prozesse, Speicher, Paging, Block IO und CPU Aktivität …

Hier die Anleitung, die mit vmstat -h angezeigt werden kann:

„Monitoring: Wie laufen Linux Performance Messungen mit vmstat auf dem Raspberry Pi? Es muss ja nicht immer top sein!“ weiterlesen

Raspberry Pi Zero W: rtl_433 -G Error „Library error -5“

Beim starten von rtl_433 -G kommt es zu diesem Error:

Was hilft? „Raspberry Pi Zero W: rtl_433 -G Error „Library error -5““ weiterlesen

nmon 16g für CPU, Speicher, Netzwerk, Disk, Top … es muss ja nicht immer top (htop) sein

Auch für den Raspberry Pi gibt es ein Systemtool nmon analog zu top.

Es ist schnell installiert mit

oder wie weiter unten beschrieben in aktuellster Version selbst compiliert.

Das starten des Kommandozeilen Tools geht dann mit Aufruf von nmon:

„nmon 16g für CPU, Speicher, Netzwerk, Disk, Top … es muss ja nicht immer top (htop) sein“ weiterlesen

Rasbperry Pi Zero W in 2 Minuten pimpen, aufpeppen, tunen (optisch) verbessern, aufblasen (ugs.), aufbohren (ugs.), aufmöbeln (ugs.), aufmotzen (ugs.), aufpolieren (ugs.), frisieren (ugs.), pimpen (ugs.)

In dem Projekt: “Raspberry Pi in a Bottle” oder ein neues Zuhause für den Pi Zero von gestern, hatte ich beschrieben, wie der Pi ein neues Gehäuse bekommen kann. Das kann man leicht pimpen, aufpeppen, tunen (optisch), verbessern, aufblasen (ugs.), aufbohren (ugs.), aufmöbeln (ugs.), aufmotzen (ugs.), aufpolieren (ugs.), frisieren (ugs.) oder pimpen (ugs.). Einfach vorsichtig mit dem Cuttermesser waagerecht leicht unter der Beschriftung einritzen und den Aufkleber entfernen. Der ist nur geklebt.

Der Aufwand: 2 Minuten.

Hier das Ergebnis, rechts sieht man die Stomleitung und den rausgeführten USB Anschluss:

Sieht doch besser aus, oder?

Projekt: „Raspberry Pi in a Bottle“ oder ein neues Zuhause für den Pi Zero mit Kernel update 4.13 (4.14) in ca. 30 Minuten

Warum immer teure Gehäuse kaufen? Es kann auch vorhandenes Material verwendet werden und eine weitere Verwendung zugeführt werden. Oder? Das hatte ich schon mal für das iPhone Stativ hier beschrieben.

Nach langer Planung und Architekturüberlegungen in der Badewanne ist nun folgende Ergebnis realisiert worden.

Ok, hier nun die Anleitung. Wir brauchen:

-Raspberry Pi Zero W
-Apothekers duchbad orange & vanille 200ml
-Cuttermesser
-Optional etwas Tesafilm

Wir nehmen das „leere“ Duschbad in der roten Apothekers Version:

Trenne den Pi vom Strom. Legen den Pi Zero neben der Verpackung und zeichnen die Größe an:


„Projekt: „Raspberry Pi in a Bottle“ oder ein neues Zuhause für den Pi Zero mit Kernel update 4.13 (4.14) in ca. 30 Minuten“ weiterlesen

Eine eigene Nextcloud Release 13 Installation auf dem Raspberry Pi macht Dropbox überflüssig!

Eine eigene Nextcloud Release 13 Installation auf dem Raspberry Pi macht Dropbox überflüssig! Und man kann sensible private Daten auf dem eigenen Server abspeichern. Nextcloud ist unter einer freien AGPLv3 Lizenz zu erhalten. Um erste Eindrücke zu erhalten, kann es mal eben auf einem Raspberry Pi (Zero W) installiert werden.

Das geht in unter einer Stunde. Also dann mal die Konsole auf und einen Apache2 mit Nextcloud 13 installieren:


„Eine eigene Nextcloud Release 13 Installation auf dem Raspberry Pi macht Dropbox überflüssig!“ weiterlesen

TWPlotter: Java Wasserfall Diagramme Generierung von rtl_power erzeugten CSV-Dateien

Mit rtl_power kann man via SDR alle Frequenzen scannen. Die Scann CSV-Ergebniss-Dateien können dann mit gopow in schöne Wasserfall Diagramme umgewandelt werden. Hier mal den Ablauf als BPMN 2.0

Hier ein Beispiel:

Das gopow Programm wollte ich mal in Java 8 schreiben, um auch selbst die Farben usw. beeinflussen zu können. Und auch um mal neue Funktionen von Java 8 zu benutzen. Auch kann das gopow auf dem Raspberry Pi nicht mit sehr großen Dateien umgehen. Die Scann Dateien können aber auch einige 100 MB groß sein. „TWPlotter: Java Wasserfall Diagramme Generierung von rtl_power erzeugten CSV-Dateien“ weiterlesen

Raspberry Pi: XML formatieren mit xmllint unter Linux

Manchmal hat man auf dem Raspberry Pi XML Dokumente die man ansehen will, die aber nicht schön formatiert sind.

Z.B. dieses XML Dokument hat alles in einer Zeile, und ist das Ergebnis einer Haltestellenabfrage in Hannover über diese API:

Wie können wir das nun schön formatieren? Dazu gibt es das Kommandozeilen-Tool xmllint. Damit kann eine XML Datei leicht formatiert werden. Dazu das xmllint installieren mit

Dann ein Aufruf von „Raspberry Pi: XML formatieren mit xmllint unter Linux“ weiterlesen

Heatmap mit Raspberry Pi Zero W und gopow erzeugen

Wie kann mit dem Raspberry Pi eine Heatmap erzeugt werden?

Hier mal ein Beispiel, um die unterschiedlichen Frequenzen zusehen in das Bild klicken und vergrößern:

Legende:

Und noch ein Beispiel:

Legende:

Airband (rtl_power -f 118M:137M:8k -g 50 -i 10 -e 1h airband-7.csv):

Und ein letztes Beispiel mit einem Scann nach den Flugzeugtranspondern auf 1090 Mhz (rtl_power -f 1089M:1091M:1k -g 50 -i 10 -e 1h airband-1090-2.csv) wo man gut die Transponder der Flugzeuge (rot) sehen kann:

Als Datenbasis nehmen wir die mit rtl_power erzeugte Datei.

Zuerst laden wir uns das go Programm als binary rtl-gopow herunter und entpacken es: „Heatmap mit Raspberry Pi Zero W und gopow erzeugen“ weiterlesen

GPIO Schnittstelle: Mit WiringPi in 15 Minuten auf die GPIO Ports des Raspberry Pi zugreifen – Teil 3

Mit der wiringpi kann man leicht auf die GPIO Ports des Raspberry Pi zugreifen. Mit den Pins kann man dann leicht Hardware steuern. Auf dem Blog gibt es eine gute ausführliche Anleitung. Das will ich nicht wiederholen, sondern hier geht es darum wie man mit C++ auf die GPIO zugreifen kann. Obwohl man auch in 15 Minuten nach Installation der wiringpi Api die GPIO über Bash Scripte oder Python ansprechen kann.

Hier nun die nötigen Vorarbeiten um C++ mit wiringpi machen zu können. Es sind dort auch einige C Beispiele im Repo. Dazu aber später mehr.

Entweder man installiert das Package mit

oder wie hier nun beschrieben über Git die neueste Version und compiliert es selber mit dem Ausführen des build Scriptes. Das ist hier beschrieben da wir das als API für die C++ Programmierung brauchen.
„GPIO Schnittstelle: Mit WiringPi in 15 Minuten auf die GPIO Ports des Raspberry Pi zugreifen – Teil 3“ weiterlesen

In 15 Minuten zum eigenen C++ Programm zum ausgeben der Systemtemperatur des Raspberry Pi Zero W – Teil 2

In der ersten Lektion haben wir in 15 Minuten gesehen wie wir checken können ob C++ auf dem Raspberry Pi installiert ist und haben unser 1. eigenes C++ Programm auf dem Pi mit der Kommandozeile erstellt, compiliert und ausgeführt.

Nun wollen wir auf dem Pi, in 15 Minuten die erste Klasse erstellen, da wir ja Objektorientiert programmieren wollen. Dazu erstellen wir mit dem vi ein einfache Klasse zum ausgeben der Temperatur des Pi.

Wir nennen die Klasse Temperatur. Damit wir nicht alles in einer Datei haben, erstellen wir für jedes Objekt eine eigene Datei. Also zuerst die Deklaration in der Temperatur.h:
„In 15 Minuten zum eigenen C++ Programm zum ausgeben der Systemtemperatur des Raspberry Pi Zero W – Teil 2“ weiterlesen

rtl_433 für den Raspberry Pi selbst compilieren um Temperatursensoren und Luftruck von Autoreifen (TPMS) uä. auf 433,92 Mhz zu empfangen

Wer eine Wetterstation hat, die auf 433,92 Mhz sendet kann die Daten empfangen. Oder wer keine hat, kann die von den Nachbarn mitbenutzen. Dazu reicht ein kleiner Raspberry Pi Zero W. Auf dem ein rtl_433 Programm läuft.

Voraussetzung:

rtl-sdr muss installiert sein, das hatte ich hier im Block aber schon mal beschrieben. Mit dem Empfänger kann man nicht nur Flugzeug-Transponder empfangen, sondern auch Kühlschränke, Wetterstationen und Autoreifen (Luftdruck, The tire pressure monitoring system (TPMS))…

Also wir müssen uns den Quellcode aus Git holen und das Programm selbst compilieren: „rtl_433 für den Raspberry Pi selbst compilieren um Temperatursensoren und Luftruck von Autoreifen (TPMS) uä. auf 433,92 Mhz zu empfangen“ weiterlesen

Sicherheit: gpg (GnuPG) Key Verwaltung mit pass auf dem Raspberry Pi oder sonst wo oder cooler kostenloser Passwort Manager für Raspberry Pi

Wer einen Passwort Manager braucht, kann pass verwenden. Den gibt es kostenlos für alle Betriebssysteme. Die Passwörter werden alle mit gpg Verschlüsselt und liegen in ~/.password-store so das sie leicht verwaltet werden können. Die Passwörter können mit unix shell Kommandos so leicht verwaltet werden. Auch eine bash Auto-Vervollständigung gibt es. Auch eine Git Integration ist möglich.

Wenn noch kein gpg Key auf dem Raspberry Pi angelegt wurde oder auch sonst noch keiner vorhanden ist, diesen einmal mit

erzeugen. Es muss nur der Name und die E-Mail Adresse angegeben werden, nach einem O muss man ein paar Minuten warten, bis der Key erzeugt wurde: „Sicherheit: gpg (GnuPG) Key Verwaltung mit pass auf dem Raspberry Pi oder sonst wo oder cooler kostenloser Passwort Manager für Raspberry Pi“ weiterlesen

MESZ, MEZ, UT, UTC, GMT – Raspberry Pi: Wie kann die Sommerzeit bzw. Winterzeit überprüft und die Zeitzone gestellt werden?

Oder alle Jahre wieder! Alle Jahre wieder. Aber wie lange noch? Wer einen Raspberry Pi laufen hat, kann die Zeitzone und Zeit leicht verändern bzw. stellen. Meistens läuft ein NTP, der alles autom. richtig macht. Was aber wenn die Sommerzeit bzw. Winterzeit nicht richtig berücksichtigt wurde?

Wie kann die Zeit einfach überprüft werden?

In der Konsole

„MESZ, MEZ, UT, UTC, GMT – Raspberry Pi: Wie kann die Sommerzeit bzw. Winterzeit überprüft und die Zeitzone gestellt werden?“ weiterlesen

Wie können Realtime ACARS Nachrichten in Eclipse Oxygen Konsolen View ausgeben werden?

Evl. möchte man ACARS Daten die von einem Raspberry Pi (W Zero) geliefert werden, wie hier berichtet, auch in einer Eclipse View auf einen anderen Rechern mit Mac OS X, Linux oder Windows anzeigen. Dann hat man alles immer im Auge 😉

Wie können also Realtime ACARS Daten, die von einem Raspberry Pi geliefert werden, in der Eclipse (Oxygen) Konsolen View ausgegeben werden?

Dafür habe ich einen kleinen ACARSConsoleViewer geschrieben der die Daten in Echtzeit auf der Konsole ausgibt. Die Zeiten werden so wie vom Server angezeigt, sie sind im UTC Format, also in Deutschland mit Sommerzeit 2 Stunden zurück. Der Viewer lauscht an Port 5555 und wartet auf eintreffende ACARS Meldungen via verbindungslosem UDP.

„Wie können Realtime ACARS Nachrichten in Eclipse Oxygen Konsolen View ausgeben werden?“ weiterlesen

Wie wird ein acarsserv Server mit SQLite3 Datenbank zum speichern von ACARS Meldungen auf dem Raspberry Pi Zero W installiert?

Wer wie hier beschrieben ACARS Meldungen empfangen will, kann sie mit dem acarsserv Server auch in eine DB speichern. Dazu muss der acarsserv wie folgt compiliert und gestartet werden. Das holen des Quellcodes aus Git habe ich in diesen Blogeintrag beschrieben, und ist Vorraussetzung für das erstellen des Servers.

„Wie wird ein acarsserv Server mit SQLite3 Datenbank zum speichern von ACARS Meldungen auf dem Raspberry Pi Zero W installiert?“ weiterlesen

Wie wird ein Multi-Channel ACARS Decoder auf einem Raspberry Pi Zero W mit Software Defined Radio (SDR) installiert?

Flugzeuge senden nicht nur transponder Daten im Bereich von 1090 MHz via ADS-B die mit Dump1090 empfangen werden können.

Auch ACARS Daten auf ca. 130 MHz (3 Meter Band). Auch diese können mit eine Software Radio und eine kleinen Raspberry Pi Zero W empfangen werden. Diese ACARS Meldungen enthalten diverse Infos, wie aus dieser Mindmap hervorgeht:

Vorraussetzung ist ein frisch installiertes Debian Raspbian Stretch Lite Version 2017-08-16 und das ein rtl_test -t ohne Fehler auf der Konsole durchläuft. Das heißt, ein RTL-SDR Software Radio ist erfolgreich installiert. „Wie wird ein Multi-Channel ACARS Decoder auf einem Raspberry Pi Zero W mit Software Defined Radio (SDR) installiert?“ weiterlesen

Raspberry Pi Zero W Headless WLAN via SSH mit Raspbian Stretch Lite Version 2017-08-16

Bei der Raspbian Stretch Lite Version 2017-08-16 konnte bei mir kein WLAN starten.

Lösung:

Es muss eine leere ssh Datei und eine wpa_supplicant.conf mit folgenden Inhalt in das /boot Verzeichnis der SD-Karte kopiert werden, dann läuft auch die Anmeldung mit User pi und Passwort raspberry. Die beiden ersten Zeilen sind nun von Jessie auf Stretch hinzugekommen.

Weitere Details siehe hier und für den SSH hier zu finden.

Wie läuft Groovy auf dem Raspberry Pi, Mac OS X und Eclipse Oxygene? Super!

Als Java Entwickler verwendet man als Scriptsprache gern Groovy da sie auf der Java Virtual Machine ausgeführt wird. Groovy läuft auf fast allen Betriebssystemen und ist auch wie Java objektorientiert. Man kann die Klassen und Scripte auch leicht von Java aus aufrufen und umgekehrt.

Groovy - Mega - Stark
Groovy – Mega – Stark

Deshalb installieren wir mal Groovy mit sdkman.io und schreiben ein Groovy Script mit drei Zeilen welches einen Server startet und die Systemumgebung im Browser ausgibt:

Hier die TestServer.groovy Datei:

„Wie läuft Groovy auf dem Raspberry Pi, Mac OS X und Eclipse Oxygene? Super!“ weiterlesen

Jenkins Pipeline optimieren mit parallele Ausführung auf dem Raspberry Pi

In diesem Blog Beitrag hatte ich gezeigt, wie man auf einem Raspberry Pi einen aktuellen Jenkins installieren kann.

Nun möchte ich mal zeigen, wie Aufgabe parallelisiert werden können.

Parallelisieren von Jenkins Stages

Ein Jenkins Jobs der folgendes macht, soll mal als Beispiel dienen, um parallele Pipeline zu demonstrieren.

Ein einfacher Job der

  • Flugdaten aus Hannover abfragt
  • mein Kaffee verbrauch ermittelt
  • Temperatur und Luftfeuchte in HAJ abfragt
  • Umweltdaten des Lufthygienisches Überwachungssystem Niedersachsen abfragt
  • meine drei Server per Ping 10 mal checkt
  • und das Ergebnis aller Abfragen per E-Mail versendet

Dazu das kleine Groovy Script, das die öffentlichen Daten abfragt, in den Job eintragen: „Jenkins Pipeline optimieren mit parallele Ausführung auf dem Raspberry Pi“ weiterlesen

Wie können mit Jenkins 2.72 Pipelines rurociągi auf einen Raspberry Pi Zero W angelegt werden?

Frei nach Tim Bendzko (Jenkins):

„Ich bin doch eine Maschine!
Ich bin eine Maschine aus Bits und Bytes
Und ich will leben, bis zum letzten Zug
Ich bin eine Maschine mit all meinen Fehlern
Meiner Wut und der Euphorie
Bin eine Maschine,
ich leb‘ von Volt und Spannung“
– (c) Thomas Wenzlaff

Wenn man Jenkins schnell installieren will, und die Version keine Rolle spielt, dann geht es mit

wie hier schon mal beschrieben.

Wer aber eine neue Version 2.7 mit Pipelines testen will, muss wie folgt vorgehen. „Wie können mit Jenkins 2.72 Pipelines rurociągi auf einen Raspberry Pi Zero W angelegt werden?“ weiterlesen

Feinstaub (Particulate Matter, Pył ) Messung mit dem Raspberry Pi aus einer JSON Datei und NodeRED – Teil 1

Man kann mit dem Raspberry Pi auch Feinstaub messen, wenn man einen entsprechenden Sensor hat.

In diesem 1. Teil, beschreibe ich, wie man Messwerte aus öffentlicher Quelle, auch um später Vergleichswerte zu haben auswertet. Die Niedersächsische Gewerbeaufsicht misst Umweltdaten und stellt sie zur freien Verfügung bereit. Unter LÜN gibt es z.B. das Ergebniss für Hannover. Da gibt es auch eine kostenlose App für diese Daten für alle Handys.

Hier nun die Architektur:

Die Daten für zur Zeit 27 Messstationen werden im JSON-Format (und auch XML) im Internet frei veröffentlicht unter der URL: http://www.luen-ni.de/JSON.txt und enthalten ua. folgende Daten:

„Feinstaub (Particulate Matter, Pył ) Messung mit dem Raspberry Pi aus einer JSON Datei und NodeRED – Teil 1“ weiterlesen

OpenHAB2 mit Raspberry Pi Zero W: ERROR: 500 – Internal Server Error

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.

WeMo-Binding

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

Suche alle Dateien rekursive mit Umlaute im Dateiname auf Win, Mac, Linux und Raspberry Pi und liefere die Anzahl

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

Raspberry Pi Zero W: OpenHAB 2.0 installieren in ca. 60 Minuten

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:

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

Raspberry Pi Zero W: Wie kann ein Archive gelanden und der Inhalt angezeigt und dann entpackt werden?

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:

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

Raspberry Pi Zero W ohne Passwort mit Public RSA Key über SSH vom Mac aus zugreifen

Wenn man vom Mac aus auf einen entfernten Raspberry Pi (Zero W) 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:

Dann in der /etc/ssh/sshd_config des Pi die folgenden Einträge setzen:

Dann den SSH Service restarten und in der Konsole bleiben.

Dann einmalig auf dem Mac einen RSA Key mit der Größe von 2048 anlegen.

Dazu bin ich in das .ssh Verzeichnis gewechselt und habe einen Key nur für die Pis ohne Passwort wie folgt angelegt:

Bei der Nachfrage nach einem Passwort, einfach nur Enter eingeben.
Da ich mehrere Keys in Verwendung habe, habe ich den Key in einer neuen Datei gespeichert, z.B. pi_id_rsa
Es werden nun zwei Dateien generiert, die pi_id_rsa mit dem privaten Key und die pi_id_rsa.pub mit dem public key.

Da mein default Key im Mac ein anderer ist, habe ich in der ~/.ssh/config Datei des Macs, wie hier schon mal beschrieben, um den folgenden Eintrag IdentityFile mit dem Namen für den privaten Key für die Verwendung des eben generierten Key und nicht des default Keys eingetragen:

Weitere Optionen zur ~/.ssh/config gibt es in der umfangreichen Referenz.

Jetzt noch den Key vom Mac auf den Pi kopieren damit er in der ~/ssh/authorized_keys Datei eingetragen wird, dazu in das ~/.ssh Verzeichnis wechseln und:

Jetzt von einer anderen Konsole testen ob alles läuft.

Wenn das Anmelden mit:

ohne Passwort nachfrage klappt ist alles ok. Sonst in der anderen Konsole fixen, sonst sperrt man sich selbst aus.

Habe ich was vergessen?