Zum 10-millionsten Download der Corona-Warn-App mal ein Bluetooth Scann mit dem Raspberry Pi und Wireshark

Zum 10-millionsten Download der Corona-Warn-App hatte ich mal Interesse an Bluetooth. Da die Corona-Warn-App mit Bluetooth arbeitet und der Quellcode und Doku auf github zu finden ist. Also erst mal eine Mindmap zum Thema Bluetooth:

Danke Dr.Kleinhirn.eu für die Erlaubnis zur Veröffentlichung der Mindmap

Dann fangen wir mal ganz einfach an mit ein Bluetooth-Scann mit dem Raspberry Pi und Auswertung der Daten mit Wireshark. Wir brauchen nicht viel. Einen Raspberry Pi und eine Bluetooth USB Stick und 1-2 Stunden Zeit. Ich habe z.B. diesen Bluethooth-USB-Adapter verwendet:

Erst mal das Rasbian-Linux-System updaten und ein paar Programme installieren, wenn sie nicht schon vorhanden sind: „Zum 10-millionsten Download der Corona-Warn-App mal ein Bluetooth Scann mit dem Raspberry Pi und Wireshark“ weiterlesen

Wie kann das Scrollen der Apple Maus unter Windows 10 aktiviert werden?

Wie kann das Scrollen der Apple Maus unter Windows 10 aktiviert werden? Wird die Apple Maus per Bluetooth an Windows 10 angeschlossen, geht das Scrollen nicht. Dafür den passenden Treiber auf einen Mac laden über das Boot Camp-Assistent.app Programm. Dort gleich im Menü die Windows Software speichern:

Dann das Verzeichnis AppleWirelessMouse mit dem Treiber auf den Windows Rechner kopieren: „Wie kann das Scrollen der Apple Maus unter Windows 10 aktiviert werden?“ weiterlesen

Wie können mit Java automatisch Webseiten mit Jsoup am Beispiel Corona abgefragt werden?

Das Robert Koch Institut (RKI) liefert für Deutschland aktuelle Corona-Fall-Zahlen auf dieser Webseite:

https://www.rki.de/DE/Content/InfAZ/N/Neuartiges_Coronavirus/Fallzahlen.html

in einer schönen Tabelle die wir mit Jsoup abfragen wollen.

Robert Koch Institut - Corona in Deutschland

Wir schauen uns erst einmal die Stuktur der Seite an. D.h. wir markieren z.B. Niedersachsen und öffnen das rechte Kontexmenü und klicken auf „Element untersuchen“. Nun wird unten der HTML-Quelltext angezeigt. Wir sehen das die Tabelle, an der ersten stelle steht, und mit den tr und td Tags erstellt ist. Das müssen wir für die Analyse wissen.

Hier nun der kommentierte Beispiel-Code: „Wie können mit Java automatisch Webseiten mit Jsoup am Beispiel Corona abgefragt werden?“ weiterlesen

Java Einzeiler des Tages: Lesen einer Webseite mit jsoup den Open source HTML Parser

Mit JSoup kann ganz einfach eine Webseite gelesen werden.

Dazu einfach in der pom.xml:

ergänzen und folgenden Einzeiler:

System.out.println(„Webseite: “ + Jsoup.connect(„http://wenzlaff.info“).get().html());

Das Ergebnis ist dann die HTML Seite. Mit JSoup können auch einfach Filter und Selektoren erstellt werden. Es unterstüzt leider kein JavaScript.
Dafür kann dann HtmlUnit oder Selenium verwendet werden.

Internet Adressen bzw. Links in Excel-Dateien in 5 Minuten überprüfen mit dem de.wenzlaff.linkchecker

Manchmal hat man in einer Excel-Tabelle eine oder mehrere Spalten mit Internet-Adressen (URLs) deren Gültigkeit man überprüfen will, da viele Adressen sich doch schnell ändern. Dh. ist die Adresse noch erreichbar oder ist eine ungültige Adresse (Broken Links) eingegeben. Man könnte nun einen VB-Macro schreiben der das tut, oder aber das de.wenzlaff.linkchecker Programm starten, das eine Spalte in einer Excel-Datei automatisch validiert und alle nicht erreichbaren bzw. falschen Adressen ausgibt. So kann mit einen Aufruf die ganze Datei überprüft werden.

Das wollen wir mal an einem Beispiel auf einem Raspberry Pi ausführen. Das würde analog natürlich auch auf Windows oder einem Mac laufen.

Wir haben diese Excel Testdatei. Die 3. Spalte, also Spalte C enthält Internet-Adressen die alle überprüft werden sollen. Alle anderen Spalten sind nicht relevant. Die Excel-Datei wir auch nicht verändert.

Voraussetzung ist, das auf dem Rechner Java installiert ist. Also ein java -version muss eine gültige Version >= 8 liefern und wer den aktuellen SNAPHOT holt, braucht mind. Java 11: „Internet Adressen bzw. Links in Excel-Dateien in 5 Minuten überprüfen mit dem de.wenzlaff.linkchecker“ weiterlesen

Beispiel Verwendung des Maven Plugin: de.wenzlaff.command.maven.plugin

Vor einiger Zeit hatte ich hier mal beschrieben, wie ein einfaches Maven-Plugin erstellt werden kann, dass alle Kommandozeilen Parameter im Log ausgibt z.B. ls, ps, ls -la. So können im Build-Prozess Verzeichnisse oder Prozesse überwacht werden.

Wer aber nur das Kommandozeilen Plugin nutzen will, kann dieses mit ein paar Zeilen in der pom.xml tun, da das Plugin auf Maven-Central frei verfügbar ist.

Squirrel (Sciurus vulgaris) in der 3.Etage am 15.01.2020

Einfach die pom.xml um folgende Zeilen ergänzen: „Beispiel Verwendung des Maven Plugin: de.wenzlaff.command.maven.plugin“ weiterlesen

Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen

Ein eigenes Maven-Plugin zu erstellen ist nicht schwer und ist schnell gemacht. Wir wollen ein Plugin welches einen Verzeichnis Inhalt mit ls -la in das Log schreibt erstellen. Es können aber auch andere Linux Befehle übergeben werden. Hier nun die 6 Schritte mit den Vorlagen die mind. nötig sind.

Freut euch immer
Always rejoice, mit freundlicher Genehmigung meines Lieblingskünstlers

1. Wir legen in Eclipse ein neue Maven Projekt mit Java 1.8 an. mit Artifact Id und Group Id de.wenzlaff.command.maven.plugin

2. In der pom.xml fügen wir die folgenden Abhängikeiten hinzu: „Ein eigenes Maven-Plugin in 15 Minuten inklusive Dokumentation erstellen“ weiterlesen

Wie kann das funktionsreiche Analysetool bettercap auf einem Raspberry Pi installiert werden? Oder sehen was zu Weihnachten im Netz los ist.

Bettercap ist in Go implementiert. Es gibt viele Module, darunter solche für DNS-Spoofing, Netsniffing, Wifi-Analysen und Wake-on-LAN.

Ok, dann mal eben in 30 Minuten auf einem Raspberry Pi W Zero installieren:

Ergebniss:

So, dann steht nun nichts mehr einer MITM attack im Wege, weitere Infos hier oder auf der Projektseite.

Zigbee CC2531 mit neuer Firmware vom Raspberry Pi aus flashen ohne CC Debugger

Um das CC2531 auch ohne CC Debugger neu zu flashen, gehen wir wie folgt vor.

Wiring Pi installieren

Wir benötigen auf dem Raspberry Pi die wiringpi zum ansteuern der GPIO-Ports

sudo apt-get install wiringpi

Nach der Installation testen wir mit gpio -v es muss diese Ausgabe kommen:

Wenn eine Fehlermeldung kommt, wie bei mir, da zwei der Raspberry Pis nicht unterstüzt wurden, erst fixen.

CC2531 an Pi

Die vier Drähte anlöten und mit dem Pi wie folgt anschließen:

Flasher installieren

„Zigbee CC2531 mit neuer Firmware vom Raspberry Pi aus flashen ohne CC Debugger“ weiterlesen

httpie ist auch auf dem Raspberry Pi in 5 Minuten installiert, es muss ja nicht immer curl sein

Um httpie auf dem Raspberry Pi zu installieren, ist nur ein

nötig. Und schon hat man einen curl Ersatz mit intuitiver UI, JSON support, Syntax Hervorhebung und mehr.

Quicktest, abfragen einer Domain, mit http get www.kleinhirn.eu „httpie ist auch auf dem Raspberry Pi in 5 Minuten installiert, es muss ja nicht immer curl sein“ weiterlesen

Java Quickie: Die Kommandozeilen Argumente mit Apache Commons CLI bändigen

Seit März 2017 gibt es noch kein neues Release von den Commons CLI. Aber warum die Commandline nicht auch damit auswerten? Macht alles viel übersichtlicher.

Das geht mit ein paar Zeilen Java Code und einen Eintrag in der pom.xml:

Hier ein Beispiel snippets: „Java Quickie: Die Kommandozeilen Argumente mit Apache Commons CLI bändigen“ weiterlesen

Update PDF-Formulare automatisch auswerten – PDF-Formulare to CSV (Excel) – Version 0.0.2 veröffentlicht – nun auch für Windows!

Wie hier ausführlich beschrieben, hier nun die Version 0.0.2 für den Raspberry Pi als DEB Archive aber auch als RPM für RedHat und für Windows nur die JAR Datei zum kostenlosen Download twpdfformulartocsv-0.0.2.zip

Einige Funktionen sind nun NEU z.b. die Hilfe, die mit -h aufgerufen werden kann, hier aber erst einmal das BPMN zum Programmablauf:

Die Versions Ausgabe mit -v „Update PDF-Formulare automatisch auswerten – PDF-Formulare to CSV (Excel) – Version 0.0.2 veröffentlicht – nun auch für Windows!“ weiterlesen

PDF-Formulare automatisch auswerten – PDF-Formulare to CSV

Manchmal möchte man mehrere PDF-Formulare automatisch auswerten. Z.B. von einer Umfrage. Also wie bekommt man die im PDF-Formular eingegebenen Felder aller PDF Dateien eines Verzeichnises in eine Excel CSV Datei für die Auswertung? Wie man PDF-Formulare kostenlos erstellt, hatte ich ja schon hier beschrieben.

Das geht mit dem Raspberry Pi (oder auch Mac und Windows) ganz einfach mit dem Java Tool twpdfformulartocsv das ich implementiert habe. Es muss mind. Java 8 auf dem Pi installiert sein. Das kann man mit java -version überprüfen. Es kommt auf dem Pi Zero bei mir

Hier nun die Schritte, um es zu installieren.

„PDF-Formulare automatisch auswerten – PDF-Formulare to CSV“ weiterlesen

Mit alien von rpm nach deb und zurück

Manchmal will man auf den Raspberry Pi ein rpm von Red Hat auf einem Debian installieren. Wenn es auch selten vorkommt.

Man kann dann mit alien das Package Format konvertieren. Auf dem Raspberry Pi installieren wir die aktuelle Version aus dem Jahre 2016 mit einem sudo apt-get install alien und schon ist die 8.95 Version installiert.

Wie kann nun ein rpm in das deb Format konvertiert oder auch gleich installiert werden? Dazu einfach mit sudo das rpm Archive aufrufen. Hier mal ein Beispiel mit dem twpdfformulartocsv-0.0.1-1.noarch.rpm „Mit alien von rpm nach deb und zurück“ weiterlesen

OpenOffice Quickie: Wie können Auswahlboxen für PDF-Formulare mit mehreren Werten erstellt werden?

Vor einiger Zeit hatte ich schon mal beschrieben, wie PDF-Formulare mit dem kostenlosen OpenOffice erzeugt werden können. Wie kann nun aber eine solche Auswahlbox mit Werten in einem PDF-Formular eingefügt werden?

Der Trick ist im Bearbeitungsmodus mit einem Doppelklick den Eigenschaften Dialog öffnen: „OpenOffice Quickie: Wie können Auswahlboxen für PDF-Formulare mit mehreren Werten erstellt werden?“ weiterlesen

Wie können kostenlos PDF Formulare schnell mit OpenOffice erstellt werden?

PDF Formulare sind oft sehr nützlich. Man braucht nicht das kostenpflichtige Adobe Tool dafür. Das geht gut mit dem kostenlosen OpenOffice. Mit Word geht es bisher nicht.

Wenn das OpenOffice installiert ist, ein neues Dokument öffnen und zuerst die beiden Symbolleisten über das Menü Ansicht – Symbolleisten – Formular-Entwurf und Formular-Navigation einblenden:

Diese Leisten erscheinen dann unten im Dokument. „Wie können kostenlos PDF Formulare schnell mit OpenOffice erstellt werden?“ weiterlesen

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