Wie man sieht so im Durchschnitt bei 57,7 Grad Celsius. Und auch in diesem warmen Sommer maximal 64,6 Grad Celsius. Und das bei einer CPU Nutzung von 25 %:
Will man *.deb Archive bzw. Programme auf dem Raspberry Pi installieren gibt es mind. zwei Möglichkeiten:
1. Installation ohne Abhängigkeiten
dpkg löst die Abhängigkeiten der zu installierenden Pakete nicht automatisch auf. Installiert man daher ein Paket, das von anderen abhängt, so kommt es zu Fehlermeldungen. Hier ein Beispiel mit dem twkaffee-0.0.1.deb, das für Testzwecke hier geladen werden kann.
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:
Vor ein paar Tagen hatte ich die Auswertung zum Kaffeeverbrauch gepostet. Die Daten werden ja online von einem meiner Raspberry Pi erfasst. Gestern der Beitrag zu der Frage: Wann der 1. Kaffee des Tages gekocht wird.
Heute habe ich mal gefragt, um welche Uhrzeit wird bei uns eigentlich der letzte Kaffee am Abend gekocht? Man soll ja vor dem zu Bett gehen nicht noch viel Kaffee trinken.
Die Antwort im Durchschnitt um 15:14 Uhr. Der gemessene Zeitraum ist fast 2 Jahre mit über 500 Messwerte. Hier dazu die Grafik mit der Uhrzeit als Y Wert. X ist die Anzahl der Messungen (Tage). Die rote Linie der Mittelwert.
Habe ja schon einige Artikel über die Erfassung des Kaffee قهوة verbrauches mit dem Raspberry Pi geschrieben. Jetzt aber mal eine kleine Auswertung nach 612 Tage oder fast 2 Jahren. Erfasst wurden 2467 Tassen an 555 Tagen. Das macht einen Durchschnitt von etwas mehr als 4 Tassen Kaffee pro Tag die gekocht wurden, Tendenz steigend, aber nicht nur von mir getrunken wurde. Hier die ganzen Messwerte.
Details zum Aufbau mit Pushover benachrichtigung siehe in diesen Artikel.
Hier dazu etwas Javacode:
// Erster Eintrag
// 2017-04-05 17:20:41 UTC 1 1
// Letzter Eintrag
// 2018-12-09 11:43:37 UTC 2423 7
long anzahlTage = ChronoUnit.DAYS.between(kaffeeItems.get(0).getErstelltAmLokal(),
kaffeeItems.get(kaffeeItems.size() - 1).getErstelltAmLokal());
System.out.println("--------------------");
// gehe über den Tag solange der nächste gleich ist
int tage = 0;
int summe = 0;
for (int i = 0; i < kaffeeItems.size() - 1; i++) {
if (kaffeeItems.get(i).getErstelltAmLokal().getDayOfMonth() != kaffeeItems.get(i + 1).getErstelltAmLokal()
.getDayOfMonth()) {
System.out.println(kaffeeItems.get(i));
tage++;
summe += kaffeeItems.get(i).getAnzahlKaffeeAsInt();
}
}
System.out.println("--------------------");
System.out.println("Summe: " + summe + " Durchschnitt: " + summe / tage + " Tassen Kaffee pro Tag");
System.out.println("Anzahl Tage: " + tage);
System.out.println("Anzahl der Tage die gemessen wurden: " + anzahlTage);
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 😉
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 …
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
1
pico2wave--lang=de-DE--wave=in.wav"Warum nicht einfach auf dem Raspberrypi die mp3 oder wav Voice-Dateien selber erstellen? Viele Grüße sagt die Eule. Hi hi hi ..."
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:
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:
1
2
3
4
5
6
7
8
sudo apt-get install highlight
# Version ausgeben mit
highlight--version
# Ergebnis: highlight version 3.18
# Anleitung
man highlight
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:
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:
1
2
cd.node-red
update-nodejs-and-nodered
auf der Konsole eingeben und nach 13 Minuten, ist die neue Version installiert:
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
Running Node-RED update foruser pi at/home/pi
Thiscan take20-30minutes on the slower Pi versions-please wait.
Stop Node-RED✔
Remove old version of Node-RED✔
Remove old version of Node.js-
Update Node.js LTS✔Node v9.5.0Npm5.6.0
Clean npm cache✔
Install Node-RED core✔0.18.7
Move globalnodes tolocal-
Install extra Pi nodes-
Npm rebuild existing nodes✔
Add menu shortcut✔
Update systemd script✔
grep:/home/pi/.config/lxpanel/LXDE-pi/panels/panel:No such file ordirectory
Update update script✔
Any errors will be logged to/var/log/nodered-install.log
All done.
You can now start Node-RED with the command node-red-start
orusing the icon under Menu/Programming/Node-RED
Thenpoint your browser tolocalhost:1880orhttp://{your_pi_ip-address}:1880
Started Mon25Jun21:19:56CEST2018-Finished Mon25Jun21:32:32CEST2018
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
1
2
3
sudo apt install shellcheck
# Testen welche Version installiert wurde#
# version: 0.4.4
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
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
1
mvn package
erzeugte Vaadin 8 Jar mit Tomcat Server auf den Pi per Drag and Drop kopiert (43 MB) und auf der Kommandozeile ein
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:
Ist eine Kafka Installation auf einen Raspberry Pi Zero W möglich? Wir wollen mal sehen! Um Kafka zu installieren braucht man zu erst einmal das Archiv von der Downloadseite:
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:
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:
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:
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:
1
2
cd.node-red
update-nodejs-and-nodered
auf der Konsole eingeben und nach ein paar Minuten (20-30 min), ist die neue Version installiert:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Thiscan take20-30minutes on the slower Pi versions-please wait.
Stop Node-RED✔
Remove old version of Node-RED✔
Remove old version of Node.js-
Update Node.js LTS✔Node v9.5.0Npm5.6.0
Clean npm cache✔
Install Node-RED core✔0.18.5
Move globalnodes tolocal-
Install extra Pi nodes-
Npm rebuild existing nodes✔
Add menu shortcut✔
Update systemd script✔
Update update script✔
Any errors will be logged to/var/log/nodered-install.log
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.