Quick-HowTo: Aktuellste cmake Version 3.13.4 auf dem Raspberry Pi selbst compilieren und linken

Im Debian Repo liegt für cmake nicht die neueste Version. Für ein Projekt brauche ich aber cmake mind. 3.13. Deshalb hier eine Anleitung wie die neueste Version von cmake selbst erstellt und installiert werden kann.

Deshalb erst mal die evl. installierte Version von cmake ausgeben:

Stromverbrauch des CC2531 Sniffer Protocol Analyzer Wireless Module USB (ZigBee) am Raspberry Pi

Wieviel Strom verbraucht der CC2531 am Raspberry Pi? Ich hatte ja vor ein paar Tagen schon 2 Beiträge dazu geschrieben. Die grüne LED ist sehr hell und dennoch …

0.00 Ampere im Leerlauf ist nicht viel. Dann mal ein anderes Messgerät … „Stromverbrauch des CC2531 Sniffer Protocol Analyzer Wireless Module USB (ZigBee) am Raspberry Pi“ weiterlesen

whsniff ein Packet Konverter für Sniffing im IEEE 802.15.4 Wireless Sensor Networks (ZigBee) bei 2.4 GHz

Whsniff ist ein Kommandozeilen Werkzeug für das TI CC2531 USB Dongle für IEEE 802.15.4 Traffic bei 2.4 GHz. Es läuft auf dem Raspberry Pi unter Linux (unter Windows geht wohl auch mit SmartRF von TI).
Und es erzeugt Datein im freien pcap Format (packet capture) für tshark und Wireshark.

Der USB Dongel, Details „whsniff ein Packet Konverter für Sniffing im IEEE 802.15.4 Wireless Sensor Networks (ZigBee) bei 2.4 GHz“ weiterlesen

„Keine Berechtigung“ mit find auf dem Raspberry Pi unterdrücken

Wenn man auf dem Pi eine Datei sucht, kommt es oft vor, das vielen Meldungen „Keine Berechtigung“ ausgegeben wird. Z.b. wenn nach der Datei passwd auf dem ganzen Rechner gesucht wird mit:

find / -name „passwd“

Dann erscheinen auch hunderte Einträge wie diese, und da findet man dann nicht so leicht den gesuchten Eintrag:

Was tun? „„Keine Berechtigung“ mit find auf dem Raspberry Pi unterdrücken“ weiterlesen

SDR auf den Pi: Generieren von Wasserfall Diagrammen mit rtl_power und heatmap.py nicht nur für ACARS Frequenzen

Mit einem SDR kann man Frequenzen überwachen. Mit rtl_power kann man dann CSV Dateien schreiben und diese dann mit einem Python Script in eine schöne übersichtliche Wasserfall Grafik umwandeln. Da kann man dann leicht sehen was für Aktivität auf den jeweiligen Frequenzen los war. Hier in Hannover ist halt nicht so viel los. Und das alles auf einen kleine Raspberry Pi.

Ich hatte vor einem Jahr schon mal davon berichtet, wie das mit meinem Java Programm geht. Nun wollte ich mal das Python Script ausprobieren was ich auf GitHub gefunden habe.

Wir nehmen mal die ACARS Frequenzen, andere siehe in dieser Tabelle.

Hier ein Auszug was so auf den Frequenzen läuft:

Wir starte rtl_power im Frequenzbereich 131 MHz bis 132 MHz, schreiben alle 10 Sekunden das Ergebnis in 1 KHz Schritten in die airband-131.000-131.999M-1k-12h.csv Datei und lassen das ganze 12 Stunden laufen. Als Korrekturfaktor gebe ich 48 ppm mit, das ist für andere Sticks natürlich ein anderer Wert, kann aber auch weggelassen werden.

Dann wandeln wir die erzeugte CSV Datei mit dem Python Script heatmap.py um. Wir schreiben alle 15 Minuten für die Y-Achse einen Zeit-Label und verwende die twente Palette, die gefällt mir am Besten:

An dem Diagramm sehen wir auch, das der Scann-Prozess nach 3 Stunden abgebrochen ist. Aber drei Stunden reichen auch:

Es können auch noch andere Paletten verwendet werden: „SDR auf den Pi: Generieren von Wasserfall Diagrammen mit rtl_power und heatmap.py nicht nur für ACARS Frequenzen“ weiterlesen

Meine TOP 12 des 35c3

1. Smart Home – Smart Hack https://www.youtube.com/watch?v=urnNfS6tWAY

auch als Zusammenfassung von Heise https://www.heise.de/newsticker/meldung/35C3-Ueber-die-smarte-Gluehbirne-das-Heimnetzwerk-hacken-4259891.html

2. Venenerkennung hacken https://www.youtube.com/watch?v=FsZE6fyF26U

3. Gesundheits Apps und vivy: All Your Gesundheitsakten Are Belong To Us https://www.youtube.com/watch?v=82Hfh1AItiQ
„Meine TOP 12 des 35c3“ weiterlesen

Build Pipeline mit YAML Script zum erzeugen eines *.deb Archives mit Maven und jdeb für Debian auf Raspberry Pi mit GitLab

Build Pipeline mit YAML Script zum erzeugen eines *.deb Archives mit Maven für Debian auf Raspberry Pi.

Oder wie kann man ein *.deb Archive mit Maven Plugin erzeugen?
Oder wie verpackt man ein JAR in ein deb Archive, um es einfach auf einem Raspberr Pi zu installieren?
Oder wer braucht ein Template für das erzeugen von Maven Artefacten mit einer automatischen Pipeline in GitLab?
Oder wie validiere ich die Build-Scripte der Build-Pipeline?

Auf diese ua. Frage gibt dieser Blog-Artikel Auskunft.

Wir wollen eine Build-Pipeline mit mehreren Javaversionen, test und build bzw. deploy erstellen. Hier der Flow der Pipeline:

So sieht die Pipeline mit den drei Stages aus: „Build Pipeline mit YAML Script zum erzeugen eines *.deb Archives mit Maven und jdeb für Debian auf Raspberry Pi mit GitLab“ weiterlesen

Jubiläum: 20 Jahre Homepage wenzlaff.de!

Heute vor 20 Jahren, am 1.12.1998 ging die Domain wenzlaff.de zum ersten mal ans Netz. Wie die Zeit vergeht.

Es war eine statische Webseite mit Freeware und Sprüche Datenbank mit Newsletter und einigen C++ und Java Programmen zum kostenlosen Download aus meiner Hand. Hier ein etwas unvollständiges Bildschirmfoto, mehr habe ich leider nicht mehr gefunden:

Aber auch schon lange vor dieser Zeit, hatte ich eine Homepage, die aber dann auf den Servern der UNI-Bremen kostenlos gehostet wurde. Da hatte ich als Informatiker einen Zugang mit Akustikkoppler mit 300 Baud und Lochkarten hatten wir da auch noch. Das war wenigstens etwas zum anfassen, batches mit Lochkarten schreiben, cool!

Und es gab keine Werbung im Internet.

Die schöne alte Zeit. Und in der Zwischenzeit gab es immer mal neue Technologie. Vom statischen html zum xhtml und JavaScript über einen eigenen Java html Generator mit Templates bis heute zu den Content-Management-System mit eigener Datenbank.

Bis heute konnte ich auch auf dieser Webseite immer auf Werbung verzichten. Juhu …

Wie soll es weiter gehen? Gibt es noch Themen nach über 1000 Beiträgen? Ideen habe ich noch genug, was fehlt ist die Zeit!

In diesem Sinne, vielen Dank an alle Leser und für das viele Feedback (die über 1000 Kommentare mit Kommentarfunktion habe ich ja abgeschaltet…DSGVO läßt grüßen) das auch nach wie vor erwünscht ist, aber eben über E-Mail 😉

Thanks Mindmap
Danke Mindmap

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

Es muss ja nicht immer Apache Velocity sein, Apache FreeMarker™ tuts auch!

Es gibt unterschiedliche Template Engine, wie zum Beispiel Apache Velocity aber auch Apache Freemarker.

Bei der Verwendung von Templates, kann man sich einfach auf die Präsentation der Daten konzentrieren. Das läuft nach dem MVC (Model View Controller) Pattern. Die Templats können auch über diesen Online FreeMarker Template Tester ohne Aufwand getestet werden.

Heute mal ein kleines Beispiel, mit Freemarker. Wir wollen Verzeichnisse nach Mindmaps durchsuchen, und alle gefundenen Mindmaps in eine HTML-Seite ausgeben.

Fangen wir mit einem JUnit Test an: „Es muss ja nicht immer Apache Velocity sein, Apache FreeMarker™ tuts auch!“ 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

Kostenlose mp3 Dateien mit Inhalt 0,0 bis 100,0 für die Ansage in deutsch mit voicerss.com und id3v2.

In diesem Beitrag hatte ich beschrieben wie mp3 Dateien von 1-1000 erzeugt und kostenlos geladen werden können. Und hier hatte ich gezeigt, wie man offline mp3 und wav Dateien auf dem Raspberry Pi selbst erzeugen kann.

Hier nun alle mp3 Dateien mit dezimaler Ausgabe von 0,0 bis 100,0.

Hier wieder eine Testdatei zum anhören:

Download 15 MB als mp3-0-100-komma.zip.

„Kostenlose mp3 Dateien mit Inhalt 0,0 bis 100,0 für die Ansage in deutsch mit voicerss.com und id3v2.“ weiterlesen

Kostenlose mp3 Dateien mit Inhalt 0 bis 1000 für die Ansage in deutsch mit voicerss.com und id3v2.

Für ein Homeautomatisations Projekt mit Raspberry Pi, brauchte ich mp3 Dateien für die Ansage. Damit alles lokal läuft, und ich nicht die mp3 Dateien per Web jedesmal erzeugen bzw. laden muss, habe ich mal eben 1000 mp3 Dateien erzeugt. Jede mit dem jeweiligen Inhalt bzw. Ansage in deutsch in Mono mit 44khz in 16bit mit der Zahl aus dem Dateinamen. Jede Datei ist nur so um die 25 Kb groß.

Also alle Zahlen von 0 – 1000. Das Ergebnis ist hier nun kostenlos zum Downloaden in einer gezippten Datei mp3-1-1000.zip (14,8 MB).

Hier eine Hörprobe der 777.mp3 Datei:

Mit diesen Dateien, kann nun leicht eine Ansage von Systemdaten bzw. Temperaturen oder Flugdaten erfolgen.

Wie habe ich die nun alle erzeugt?

Mit der folgenden JUnit Methode:

Hier die Konvert.java Klasse: „Kostenlose mp3 Dateien mit Inhalt 0 bis 1000 für die Ansage in deutsch mit voicerss.com und id3v2.“ weiterlesen

In 5 Minungen: man to pdf auf dem Raspberry Pi mit ps2pdf aus dem Package ghostscript

Manchmal will man die manpages offline lesen. Da bietet sich das PDF Format an. Eine manpages als PDF kann leicht erzeugt werden mit:

„In 5 Minungen: man to pdf auf dem Raspberry Pi mit ps2pdf aus dem Package ghostscript“ weiterlesen

Usability-Verbesserunge: Code Mining (Code CodeLens) mit Eclipse Photon

Wer Zusatzinformationen im Quelltext sehen will, kann das mit dem Code Minig (CodeLens) machen. Folgende Infos werden geboten:

Allgemein
Zeige references
Zeige implementations
Zeige method parameter Namen
Zeige method parameter types
Zeige end statement
JUnit
Zeige JUnit status
Zeige JUnit run
Zeige JUnit debug
Debugging
Zeige variable values inline im debugging
EGit
Zeige revision recent change
Zeige avatar
Zeige date ago
Zeige authors

Man kann sich also z.B. die Git-Information anzeigen lassen, wer wann eine Methode editiert hat. Für JUnit-Tests wird angezeigt, ob sie erfolgreich ausgeführt wurden. Zusätzlich lassen die JUnit-Methoden sich direkt starten bzw. debuggen

Das Code Mining mit Eclipse Photon muss noch über die Update-Site (Update Site http://oss.opensagres.fr/jdt-codemining/snapshot/) installiert werden:

Dann noch in den Einstellungen aktivieren:

Das sieht dann
„Usability-Verbesserunge: Code Mining (Code CodeLens) mit Eclipse Photon“ weiterlesen

Eclipse Photon kann deprecated Felder und Methoden ausblenden

In Eclipse Photon können nun deprecated Felder und Methoden in Outline view, Members view, Package Explorer view, Project Explorer view, und Quick Outline mit dem neuen Filter ausgeblendet werden. Wenn man eine annotierte deprecated Methode hat, wird sie ja durchgestrichen im Project Explorer anzgezeit:

Mit dem neuen Filter, der über das Menü „Filters and …“ erreichbar ist:

dort diesen Eintrag selektieren „Eclipse Photon kann deprecated Felder und Methoden ausblenden“ weiterlesen

Gestern ist das Spring Tool Suite 3.9.5 PlugIn released für Eclipse Photon mit Support für JDK 9/10

Es ist eine neue Version der STS für Photon veröffentlicht worden. Dann mal wie folgt über den Eclipse-Marktplatz installieren, neu ist in Photon der Dialog mit den Zertifikaten. Also nach Spring suchen, und auf den Install Button klicken …

„Gestern ist das Spring Tool Suite 3.9.5 PlugIn released für Eclipse Photon mit Support für JDK 9/10“ weiterlesen

Wie können UML 2.0 Klassen-Diagramme mit Spring STS (Spring Tool Suite 3.9.4) erstellt werden?

Auch in der aktuellen STS Version, der Spring IDE kann das kostenlose UML Plugin installiert werden.

Es ist super fürs Reverse Engineering, um schnell einen Überblick zu erhalten.

Das Eclipse-Plugin ObjectAid installieren über die Install URL

http://www.objectaid.com/update/current

Dann einfach ein neues Objectaid Diagramm erstellen:

Auf dem Dialog ein paar Einstellungen oder die default belassen: „Wie können UML 2.0 Klassen-Diagramme mit Spring STS (Spring Tool Suite 3.9.4) erstellt werden?“ weiterlesen

Glances, es muss ja nicht immer nmon oder top sein also „An Eye on your system“

Um die Systemprozesse zu überwachen gibt es auch für den Raspberry Pi eine Menge Tools. Die Features Liste von Glances ist umfangreich:

Das Glances kann schnell installiert werden mit:

Dann starten mit glances und schon erscheint das Monitoring Tool:


„Glances, es muss ja nicht immer nmon oder top sein also „An Eye on your system““ 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

Schöner C/C++ Code mit clang-format in 10 Minuten

Wie kann C/C++/Java … Quellcode auf dem Raspberry Pi headless formatiert und hübscher gemacht werden. Mit dem clang-format Programm das auch in Visual Studio, Emacs, Vim ua. Programme integriert werden kann. Das ist auch in Projekten sehr wichtig, um gleiche formatierungen für alle Projektmitglieder zu nutzen. Auch klappt es dann besser mit dem compare!

Das ist schnell installiert mit:

Ok, dann noch hier die ganze Anleitung: „Schöner C/C++ Code mit clang-format in 10 Minuten“ weiterlesen