Echo Dot triggert Node-RED auf dem Raspberry Pi per „Node-RED Alexa Home Skill Bridge“

Wer per Sprache mit einen Echo Dot auch den Raspberry Pi auf dem Node-RED läuft steuern will, kann dazu die „Node-RED Alexa Home Skill Bridge“ verwenden. Hier mal ein Beispiel wie per Alexa Echo Dot Sprach-Befehl die Feinstaubwerte für Hannover abgefragt und per Pushover an Handys versendet wird.

Dazu muss der Node „node-red-contrib-alexa-home-skill“ mit npm installiert werden:

Für den Echo das folgende Skill installieren. „Echo Dot triggert Node-RED auf dem Raspberry Pi per „Node-RED Alexa Home Skill Bridge““ weiterlesen

Wie können Json Dateien in Java Objekte eingelesen werden mit google gson?

Wie kann eine Json Datei in ein Java Objekt eingelesen werden? Es kommt doch hin und wieder mal vor, das man eine Json Datei hat, die man einlesen will. Man könnte es generisch einlesen. Oder man erzeugt sich die nötigen Java BEs bzw. Pojos und liest die Datei dann ein. Hier mal ein Beispiel mit gson zum einlesen in die zuvor erzeugten Java Klassen.

Es muss in der pom.xml diese Abhängigkeit ergänzt werden:

Z.B. diese aircraft.json Datei. Die Felder werden hier beschrieben. Die Datei wird vom Dump1090 Server alle paar Sekunden aktualisert.

Wir schauen uns einfach die Struktur an, und erzeugen Java Klasse mit genau den Feldnamen, das ist wichtig da die Felder dann automatisch per reflection eingelesen werden. „Wie können Json Dateien in Java Objekte eingelesen werden mit google gson?“ weiterlesen

Wie können mit Eclipse Oxygen.1A aus XSD-Dateien mit JAXB Java Klassen generiert werden?

Wer keine Lust hat die Uhren umzustellen, kann ja mit JAXB Java Klassendateien generieren.

In der IDE für Java Developer für Eclipse, ist der JAXB Generator nicht installiert. Der müsste in der EE IDE vorhanden sein. Wer die nicht extra zusätzlich installieren will, kann auch über das Menü Windows – Help – Install New Software und dem Stichwort jaxb suchen und dort diese Installieren:

Dann nach einem Restart, ein neues JAXB-Projekt anlegen mit: „Wie können mit Eclipse Oxygen.1A aus XSD-Dateien mit JAXB Java Klassen generiert werden?“ 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

Eclipse Oxygen.1A PlugIn SortIt zum schnellen sortieren nach Länge, Buchstaben oder Nummern

Sortierung von Text ist doch hin und wieder mal nötig. Das Eclipse Plugin SortIt ist zwar schon älter, vom 11.8.2016, aber es läuft immer noch mit der aktuellen Eclipse Oxygen.1A Version. Es kann wie alle anderen Plugins installiert werden.
Cooles Plugin
Die Updateseite die unter dem Menü: Help->Install new Software eingetragen werden muss lautet:

Dann durch den Installationsvorgang gehen: „Eclipse Oxygen.1A PlugIn SortIt zum schnellen sortieren nach Länge, Buchstaben oder Nummern“ weiterlesen

Wie schalte ich die Passwortabfrage in Eclipse Oxygen.1A für die Übertragung nach GitHub ab?

Wer nicht bei jedem Checkin nach GitHub sein Namen und Passwort eingeben will, kann die OS X Keystore Integration auch abschalten.

Wie schalte ich die Passwortabfrage in Eclipse Oxygen.1A für die Übertragung nach GitHub ab?

Unter: General – Security – Secure Storage

Und schon kann automatisch eingescheckt werden. Diese Fünf­jäh­ri­ge, die sich selbst porträtiert hat, macht sich wie so viele keine Sorgen um Security 😉

Wie kann ein JEE 8 Projekt mit GlassFish v5 in Docker mit Eclipse Oxygen in 5 Minuten mit Archetyp erstellt werden?

Wer mal eben schnell ein JEE 8 Projekt mit GlassFish Server in einem Docker Kontainer erstellen will, kann das leicht mit dem Archtype com.airhacks von Adam Bien tun.

Voraussetzung ist Eclipse Oxygen (Mindmap) mit Java 1.8 und Docker.

Was ist zu tun?

1. Ein neues Mavenprojekt starten über das Menü: New – Other – Maven Projekt„Wie kann ein JEE 8 Projekt mit GlassFish v5 in Docker mit Eclipse Oxygen in 5 Minuten mit Archetyp erstellt werden?“ weiterlesen

Soeben wurde die finale Version des JDK 9 veröffentlicht. Endlich!

Ab jetzt gibt es das Java 9 JDK zum Downloaden mit Jigsaw, Erweiterung der Stream-API, Kommandozeilenanwendung JShell, Neue Collection Factory-Methoden, usw. … und Oracle plant auch kürzere Releasezyklen (6 Monate).

Also, Archive laden und installieren:

Quicktest:

Feier! Freude! Und das sogar im Urlaub

ESP-32S NodeMCU Development Board 2.4GHz WiFi+Bluetooth

Aus der Bucht eingetroffen, ESP32 ESP-32S NodeMCU Development Board 2.4GHz WiFi+Bluetooth Dual Mode.

Der ESP32 hat 2,4-GHz-WLAN und Bluetooth in Low Power 40-nm-Technologie.

Der Stromverbrauch ist mit 56 mA sehr gering. Die Leistungsaufnahme mit dem Blink Testprogramm liegt bei 283 mW. Die Vorderansicht mit der Antenne oben und dem USB Anschluss unten: „ESP-32S NodeMCU Development Board 2.4GHz WiFi+Bluetooth“ 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

JUnit 5 Test-Ergebnisse Import und Export im XML Format mit Eclipse Oxygen

Manchmal möchte man die lokalen JUnit 5 Testergebnisse für später aufheben oder als Doku verwenden oder sichern. Man kann die Ergebnisse als XML exportieren und auch später wieder importieren. So kann man sich dann Fehler oder Laufzeiten mal wieder anschauen.

Die Import und Export Menüs, erscheinen aber nur, wenn schon mal ein JUnit Test gelaufen ist, dann an dieser Position:


„JUnit 5 Test-Ergebnisse Import und Export im XML Format mit Eclipse Oxygen“ weiterlesen

Wie wird JUnit 5 (RC3 – Beta) Eclipse Oxygen 4.7.0 Support (Plug-In) installiert?

Heute wurde das JUnit 5 (RC3 – Beta) Plugin für Eclipse Oxygen 4.7.0 veröffentlicht (upgedated). JUnit 5 RC3 wurde schon am 23.8.2017 veröffentlicht. Der JUnit 5 Release Kandidat soll ja noch im 3. Quatal 2017 erscheinen, also im nächsten Monat 🙂

Wie wird das nun installiert?

Das JUnit 5 Plugin gibt es hier.

Einfach diesen Install Button per Drag and Drop in den Eclipse Workspace ziehen:

oder wie in der installations Anleitung beschrieben.

Es öffnet sich dieser Dialog: „Wie wird JUnit 5 (RC3 – Beta) Eclipse Oxygen 4.7.0 Support (Plug-In) installiert?“ 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 wird die Heap Status Anzeige in Eclipse Oxygen aktiviert?

Manchmal oder immer möchte man wissen wieviel Speicher Eclipse gerade verbraucht wird. Oder man will wissen, ob Eclipse gerade was tut. In Eclipse kann man den Heap-Speicher Status der JVM unten rechts anzeigen lassen. Default wird er nicht angezeigt:

Oxygen Heap View

In den Einstellungen einfach unter „Show Heap Status“ den Hacken setzen: „Wie wird die Heap Status Anzeige in Eclipse Oxygen aktiviert?“ weiterlesen

Groovy Programm zum abfragen pytanie der Maven Central Repository API vom Raspberry Pi (Mac, Linux, Windows) aus

Habe mal ein kleines Groovy Programm zum abfragen der Maven Central Repository API vom Raspberry Pi aus erstellt. Dann braucht man nicht extra die Web-GUI von Maven Central.

Einfach das MavenApi.groovy Programm in ein Verzeichnis des Raspberry Pi kopieren. Was Groovy mit ein paar Zeilen macht, ist schon cool. Java braucht wohl ein paar Zeilen mehr, oder? Auch an die fehlenden Semikolons kann man sich gewöhnen.

Und in der Konsole ausführen. Zum Beispiel: „Groovy Programm zum abfragen pytanie der Maven Central Repository API vom Raspberry Pi (Mac, Linux, Windows) aus“ weiterlesen

Wie kann ein Raspberry Pi Debian Image via Docker auf dem Mac OS X und unter Eclipse Oxygen laufen?

Mit Docker ist es ganz einfach möglich, auf Mac OS X (oder auch Windows und Linux) ein Raspberry Pi oder andere Betriebssysteme laufen zu lassen. Dann braucht man keinen echten Raspberry Pi mehr 😉

Hier mal das Beispiel unter Mac OS X wie Docker installiert und Ubuntu, Alpine Linux und zu guter letzt ein Raspbian Debian Linux für Raspberry Pi installiert wird unter Eclipse Oxygen. Die 4.7 Version von Eclipse hat eine coole Docker Unterstüzung. Also allen Grund, auf die aktuelle Eclipse Version zu wechseln.

Docker auf dem Mac OS X ist schnell eingerichtet. Wir nehmen den Stable channel von docker.com, hier der direkt link. Das docker.dmg nach dem Download doppel klicken und in den Application Ordner ziehen.

Dann im Applicatons Ordner die Docker.app starten. Oben in der Menüleiste erscheint dann das Docker Icon für die Einstellungen. „Wie kann ein Raspberry Pi Debian Image via Docker auf dem Mac OS X und unter Eclipse Oxygen laufen?“ weiterlesen

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

Wie wird die Beitragsbreite vergrößert زيادات in WordPress Thema θέμα Twenty Seventeen?

Mancher hat auf seinen Raspberry Pi auch WordPress laufen, wie hier schon mal beschrieben und fragt sich evl. wie man die Breite der Beiträge vergrößern. Wie wird die Beitragsbreite vergrößern in WordPress Thema Twenty Seventeen (Version: 1.3) und ähliche?
Wie zum Beispiel auf dieser Seite oder auch hier.

Dann auf dem Menüpunkt „Zusätzliches CSS“ gehen:

Nach einem klick, öffnet sich dieser Editor: „Wie wird die Beitragsbreite vergrößert زيادات in WordPress Thema θέμα Twenty Seventeen?“ weiterlesen

Cooler CSV Reader in JUnit 5

Will man Testfälle aus einer CSV-Datei verwenden, geht das mit JUnit 5 Super einfach. Es gibt da eine neue Annotation @CsvFileSource der nur der Dateiname der CSV-Datei übergeben werden muss, und schon wird für jede Zeile der Test ausgeführt. Die Datei muss im Classpath liegen und mit Komma (,) getrennt sein. Sie darf keine Überschrift haben.

JUnit 5

Als Beispiel soll mal die flug-data.csv dienen, die ua. die Summe aller erfassten Flugzeuge enthält.

Hier ein Auszug:

Wir wollen jetzt jede Zeile überprüfen, ob die Summe über 3000 Flugzeuge liegt und ob die UID vorhanden ist. Auch wollen wir die Testergebnisse um eine laufende Nr. ergänzen. „Cooler CSV Reader in JUnit 5“ weiterlesen