Update ohne Probleme. JUnit Test läuft, was will man mehr… „Quicktest: Neue Version Eclipse 2021‑03 veröffentlicht – Better Than Ever“ weiterlesen
Crypto Währungsadressen wie z.B. Bitcoin in NodeRed Dashboard validieren
Wie können Kryptowährungsadressen überprüft werden? Also wie können z.B. Bitcoin Adresse überprüft werden? Die Bitcoin Adressen habe wie so viele Adressen eine interne Checksumme, die mit sha256 gebildet wird. Das heißt, es wird zweimal einSHA-256 Hash auf die Adresse gemacht und die ersten 4 Bytes als Checksumme verwendet und an die Adresse angehangen.
Um es ganz einfach zu machen, habe ich einen NodeRed Node node-red-contrib-cryptography-address-check erstellt. Und dazu einen Flow, wo die Adresse nur eingegeben werden muss, und es dann automatisch auf Gültig oder Ungültig überprüft wird.
Dieser Node, muss also nur über die „Pallette hinzufügen“ Funktion geladen werden:

So sieht meine public „Buy me a coffee“ Adresse aus, die ist gültig:
Sobald man da auch nur ein Zeichen verändert, … „Crypto Währungsadressen wie z.B. Bitcoin in NodeRed Dashboard validieren“ weiterlesen
Hausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)
Idee: In jedem Zimmer an der Tür oder sonstwo einen QR-Code anbringen. Einfach mit dem Handy scannen und schon wird automatisch das Zimmer gesaugt. Kein lästiges suchen der Sauger App, starten und auswählen des Zimmers. Gesagt getan!
Ein QR-Code wird einmalig erstell und an den Mülleimer (oder in der Nähe) angebracht. Wenn der mit dem Handy gescannt wird (muss im WLAN eingewählt sein, könnte man aber auch für alle freigeben ;-)) läuft der Roboter los, hält für 2 Minuten an. Macht eine Sprachausgabe. Nun kannn der Staubbehälter gelehrt werden. Dann fährt er mit der Reinigung der Küche fort, und fährt wieder zur Ladestation.
Also zuerst eine QR-Code erstellen mit der URL des Pis und dem Kommando:

Dann diesen Flow importieren bzw. erstellen:

Dann in den HTTP-Node die URL aus dem CQ-Code eintragen und get wählen: „Hausautomatisation 5.0: Steuerung des Roborock-Staubsaugers per QR-Code (Barcode)“ weiterlesen
TWProviders 1.0 – mal was anderes als HAFNIUM – Installierte Sicherheitsprovider anzeigen
Hier ein neues Java-Programm TWProviders 1.0, das alle Sicherheitsprovider auf dem System (Raspberry Pi, Mac, Windows…) anzeigt. Mal so „just for fun“ programmiert, mal was anderes als Exchange-Lücken HAFNIUM – BSI ruft „IT-Bedrohungslage rot“. Es muss Java auf dem System installiert sein. Einfach das PrintProvider.class.zip (884 Byte) laden und das ZIP auspacken. Dann in dem Verzeichnis starten mit
java PrintProvider
Also das Programm laden, auspacken und starten:
|
1 2 3 |
wget http://blog.wenzlaff.de/wp-content/uploads/2021/03/PrintProvider.class.zip unzip PrintProvider.class.zip java PrintProvider |
Das sind z.B. die 12 von einem Raspberry Pi 4:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
java PrintProvider TWProviders 1.0 from www.wenzlaff.info prints all 12 Security Provider: SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; PKCS12, JKS & DKS keystores; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores, JavaPolicy Policy; JavaLoginConfig Configuration) Sun RSA signature provider Sun Elliptic Curve provider (EC, ECDSA, ECDH) Sun JSSE provider(PKCS12, SunX509/PKIX key/trust factories, SSLv3/TLSv1/TLSv1.1/TLSv1.2/TLSv1.3/DTLSv1.0/DTLSv1.2) SunJCE Provider (implements RSA, DES, Triple DES, AES, Blowfish, ARCFOUR, RC2, PBE, Diffie-Hellman, HMAC, ChaCha20) Sun (Kerberos v5, SPNEGO) Sun SASL provider(implements client mechanisms for: DIGEST-MD5, EXTERNAL, PLAIN, CRAM-MD5, NTLM; server mechanisms for: DIGEST-MD5, CRAM-MD5, NTLM) XMLDSig (DOM XMLSignatureFactory; DOM KeyInfoFactory; C14N 1.0, C14N 1.1, Exclusive C14N, Base64, Enveloped, XPath, XPath2, XSLT TransformServices) Sun PC/SC provider JdkLDAP Provider (implements LDAP CertStore) JDK SASL provider(implements client and server mechanisms for GSSAPI) Unconfigured and unusable PKCS11 provider |
Mit diesm Programm kann nun auch leicht in einem Script oder in der Konsole nach Providern oder so gesucht werden, z.B. mit grep
java PrintProvider | grep Secure
Ergebnis:
SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; PKCS12, JKS & DKS keystores; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores, JavaPolicy Policy; JavaLoginConfig Configuration)
Sollte kein Java vorhanden sein, kommt es zu dieser Fehlermeldung. „TWProviders 1.0 – mal was anderes als HAFNIUM – Installierte Sicherheitsprovider anzeigen“ weiterlesen
Kryptographisch sicherer Zufallszahlengenerator mit dem Raspberry Pi und Hardware Random Number Generator (RNG)
Zufallszahlen kann man leicht online über random.org ermitteln. Es können da Münzen geworfen werden:
Es können verschiedene Währungen und Anzahl ausgewählt werden. Leider geht nicht Bitcoin. Aber die sind auch gut…
Auch Passwörter, Lotterie, Zeit, Zeichen, Wörter und andere Zufallszahlen können dort generiert werden.
Aber wie kann man Zufallszahlen generieren, die auch noch den hohen kryptografischen Anforderungen entsprechen? Mit Hardware (cryptographically secure pseudo-random number generator (CSPRNG)). Muss man da teure Crypto-Generatoren kaufen? Nein, ein kleiner Raspberry Pi reicht auch schon.
Der Raspberry Pi (Zero ua.) enthält, mit dem Chip BCM2708 / BCM2835 auch einen Hardware Random Number Generator (RNG). Welchen Chip der Pi hat, wird ausgegeben mit: cat /proc/cpuinfo.
Im Idealfall wird die Erstellung von Zufallszahlen durch eine nicht deterministische Entropiequelle gespeist. Das kann zum Beispiel ein hardwarebasierter Zufallsgenerator sein (PI) oder auch ein hybrider Generator. Für kryptologische Anwendungen sollten nicht-deterministische Generatoren verwendet werden, denn nur bei diesen kann garantiert werden, dass sie nicht reproduzierbar oder vorhersagbar sind.
Zugriff darauf erhält man über die Schnittstelle: /dev/hwrng ( und die blockende /dev/random und die nicht blockende /dev/urandom).
Wir aktivieren nun mal die rng-tools für den Zugriff auf den RNG. … „Kryptographisch sicherer Zufallszahlengenerator mit dem Raspberry Pi und Hardware Random Number Generator (RNG)“ weiterlesen
Bitcoin Adressen und Text in QR-Code schnell mit NodeRed erzeugen
Heute gehts mal kurz um die QR-Code Erzeugung wie z.B. dieser:
Manchmal braucht man z.B. einen QR-Code für die Bitcoin-Adresse. Wie z.B. By my a coffee: bitcoin:bc1qj4grttyhk2h5wqask3nku70e3qtycssz5kvw5l wird dann so erzeugt, und geht auf mein echtes Konto 😉 … „Bitcoin Adressen und Text in QR-Code schnell mit NodeRed erzeugen“ weiterlesen
Signieren von Nachrichten mit Digital Signature Algorithm (ECDSA) in Java und Elliptische-Kurven-Kryptografie (ECC) secp256k1
Wie werden in Java Nachrichten signiert und vom Empfänger validiert? Das geht mit ein paar Zeile aus dem Java Package java.security. Wir verwenden die auch in Bitcoin verwendeten Elliptische-Kurven-Kryptografie secp256k1. Was wollen wir zu Entspannung nach Feierabend machen?
Das wird in diesem BPMN-Diagramm dargestellt:
Hier die kommentierte Java Klasse: … „Signieren von Nachrichten mit Digital Signature Algorithm (ECDSA) in Java und Elliptische-Kurven-Kryptografie (ECC) secp256k1“ weiterlesen
Mal was anderes als der beschlossene Neubau des Rathaus in Langenhagen für 68 Millionen „Bitcoin“: Heimautomatisierung mit NodeRed Xiaomi Saugroboter Flow
Das Neues Rathaus in Langenhagen soll mehr als 68 Millionen Euro kosten und 2026 fertig sein. Ich bin gespannt und werde es beobacchten.
Nun ist die Integration in NodeRed fertig, meine Steuerung für den Xiaomi-Saug-Roboter. Die App ist eigentlich ausreichend und macht fast alles was man braucht. Aber wenn man schon auf Hausautomatisation setzt, dann muss das natürlich auch da rein.
Auch ist die Gui etwas einfacher zu erreichen. Man kann auch weitere Szenarien implementieren. Z.B. bei Abwesenheit autom. saugen.
Was ich aber brauchte, war die Anforderung mit einen Klick, drei Räume zu reinigen. Auch die Zeitliche Steuerung wie z.B. jeden Tag die Küche saugen usw. ist nun noch einfacher. Auch kann nun von jedem Browser aus die Gui gestartet werden, ohne SW zu installieren. Z.B. vom Mac oder Laptop. Oder wenn die Haustür aufgeht, und ich nicht da bin, soll der Roboter den Flur saugen und die Ansage abspielen („Hier bin ich“) das vertreibt dann jeden Einbrecher;-) Habe es bisher noch nicht versucht, auch anderen Text wie z.B. Hundegebell abzuspielen. Dazu müsste ich ihn dann mit einer neuen Firmware flashen. Noch hat das Teil aber noch Garantie und läuft seit Monaten sehr gut und hat sich nur einmal „verlaufen“.
Hier der NodeRed-Flow:
Hier die GUI die auch auf dem Handy bzw. Tablet läuft:… „Mal was anderes als der beschlossene Neubau des Rathaus in Langenhagen für 68 Millionen „Bitcoin“: Heimautomatisierung mit NodeRed Xiaomi Saugroboter Flow“ weiterlesen
Kryptowährungen eingebrochen: Bitcoin zeitweise auf 45.000 US-Dollar gefallen deshalb nun NodeRed mit Hash RIPEMD-150 Node inkl. GUI
Eben eine neue Version des NodeRed Node node-red-contrib-cryptography in Version 0.0.4 veröffentlicht. Jetzt auch mit RIPEMD-160 hash. RIPEMD-160 bietet kürzere hash Werte (40 Zeichen) als SHA-265. Wird deshalb u.a. auch für Bitcoin verwendet. Hier nun endlich auch eine GUI nach „jahrelanger“ Entwicklung, wo einfach Testwerte eingegeben werden können.
Und der dazugehörige Flow:… „Kryptowährungen eingebrochen: Bitcoin zeitweise auf 45.000 US-Dollar gefallen deshalb nun NodeRed mit Hash RIPEMD-150 Node inkl. GUI“ weiterlesen
New NodeRed Node: Hash mit SHA-256
Wer in NodeRed einen SHA-256 hash ohne Konfiguration verwenden will, kann das Modul node-red-contrib-cryptography verwenden. Das JavaScript Modul habe ich geschrieben, um das Hashen zu vereinfachen. Es brauchen keine Einstellungen gemacht werden und es gibt keine weiteren Abhängigkeiten. Das Modul wird dann später noch um RIPEMD-160 ua. die für Bitcoin verwendet werden können erweitert.
Die erste Version, kann wie gewohnt in der Palettenverwaltung geladen werden: … „New NodeRed Node: Hash mit SHA-256“ weiterlesen
Wie „geht“ ein upload eines lokalen NodeRed-Nodes im tgz-Archiv Format über die NodeRed-GUI für Docker Kontainer?
Wie kann man einen lokalen Node von der Festplatte in NodeRed hochladen, wenn er nicht im Repository vorhanden ist und nur lokal auf der Platte liegt? Und wenn dann noch NodeRed in einem Docker Kontainer läuft, wie geht es dann? Es kann natürlich auch über die Kommandozeil des Raspberry Pi laufen, aber das will man ja nicht immer.
Hier eine kurze Beschreibung wie das geht. Der Button zum hochladen ist etwas versteckt, unter „Palette verwalten“ und „Palette“ und „Installieren„, im Dialog zu finden.
Nach einem klick, einfach das tgz-Archiv auswählen und hochladen. Dann ist unbedingt ein Neustart von NodeRed nötig. Das ist im Docker Kontainer mit einem Restart schnell gemacht.
Kommt es beim hochladen zu einem Fehler, kann es sein das das npm-Package für den Node nicht richtig erzeugt wurde. Die npm-Packages müssen mit npm pack im jeweiligen node_modul erzeugt worden sein, z.B. so: … „Wie „geht“ ein upload eines lokalen NodeRed-Nodes im tgz-Archiv Format über die NodeRed-GUI für Docker Kontainer?“ weiterlesen
Kryptowährung: Wir erzeugen uns heute mal einen privaten Bitcoin Key mit Java bevor der BTC Kurs auf über 50000 Dollar springt

Es ist bei Bitcoin sehr wichtig das Konzept zu verstehen, das man keine Online Verbindung für das generieren einer Bitcoion Wallet Adresse benötigt.
Das geht komplett Offline. Und ohne separaten Server, eine Webseite oder einen besonderen Service. Es wird nur etwas Mathe benötigt. Mit Java sind nur ein paar Zeilen nötig.
1. privaten Key erzeugen, dazu brauchen wir nur einen guten Zufallsgenerator der uns 32 Byte erzeugen kann. Könnte mal auch auswürfeln.
2. validieren ob der Key gültig ist
Hier der dokumentierte Code: … „Kryptowährung: Wir erzeugen uns heute mal einen privaten Bitcoin Key mit Java bevor der BTC Kurs auf über 50000 Dollar springt“ weiterlesen
Bitcoin: Public Key hashen mit SHA-256 und dann RIPEMD-160

Der public Key wird zunächst mit SHA-256 gehasht. Der Output dieser kryptografischen Hashfunktion wird dann mit RIPEMD-160 gehasht, einer anderen kryptografischen Hashfunktion, die als Output eine 160 Bit (20 Byte) lange Zahl erzeugt. Wir nennen diesen letzten Hash den public Key Hash (PKH). Wie hier im BPMN Flow dargestellt: … „Bitcoin: Public Key hashen mit SHA-256 und dann RIPEMD-160“ weiterlesen
Auf der Terrasse sitzen geht wegen 0,5 Meter Schnee nicht, deshalb Ripemd-160 eine Millionen check
Auf der Terrasse sitzen geht wegen 0,5 Meter Schnee nicht
deshalb Ripemd-160 JUnit Test mit eine Millionen check implementiert. … „Auf der Terrasse sitzen geht wegen 0,5 Meter Schnee nicht, deshalb Ripemd-160 eine Millionen check“ weiterlesen
Wo gibt es Bitcoin (BTC) Faucet für das Bitcoin Testnet kostenlos?
Das Bitcoin Testnet ist eine alternative Bitcoin-Blockchain, die Entwickler zum Testen verwenden. Testnet-Münzen haben keinen Wert. Entwickler verwenden Testnet, um mit der Blockchain zu experimentieren, ohne echte Bitcoins zu verwenden oder sich Sorgen zu machen, dass die Hauptkette unterbrochen wird.
Hier drei Seiten, um Bitcoin im Testnet zu „kaufen“:… „Wo gibt es Bitcoin (BTC) Faucet für das Bitcoin Testnet kostenlos?“ weiterlesen
Java Bitcoin: BIP39 Mnemonic Generierung mit Adressen mit Java auf einem Raspberry Pi in 1 Minute – Crypto BPMN
Wie kann man für Bitcoin die geheimen Wörter, private und public Key und Adressen mit Java auf einem Raspberry Pi generieren? Hier mal ein Beispiel. Zuerst ein BPMN für den Überblick wie es läuft.
Das geht in 1 Minute, mit diesen drei Schritten auf der Komandozeile … „Java Bitcoin: BIP39 Mnemonic Generierung mit Adressen mit Java auf einem Raspberry Pi in 1 Minute – Crypto BPMN“ weiterlesen
Java: Ausgabe Methode aller im System bekannten Security Providers oder safety first
Wer mal alle Security Provider im System ausgeben will, kann diese Methode verwenden:
|
1 2 3 4 5 6 7 8 |
private static Provider[] getSecurityProviders() { System.out.println("Alle " + Security.getProviders().length + " im System bekannten Security Provider:"); Provider[] provider = Security.getProviders(); for (int i = 0; i < provider.length; i++) { System.out.println(provider[i].getInfo()); } return provider; } |
Ergebnis auf einem Test-System: „Java: Ausgabe Methode aller im System bekannten Security Providers oder safety first“ weiterlesen
Refactoring: NodeRed Mqtt CO2-Flow der CO2-Ampel mit Datei History und Pushover Lüftungswarnung
Heute mal nur eine kleine refactoring Aufgabe des bekannten NodeRed Flows:
Hier das ganze CO2-Messsystem und der überarbeitete Flow …
„Refactoring: NodeRed Mqtt CO2-Flow der CO2-Ampel mit Datei History und Pushover Lüftungswarnung“ weiterlesen
Neujahr 2021: Mein erster Beitrag in 2021 – Hyperlinks in PDF: iText 7.1
Wie können Hyperlinks in PDFs erzeugt werden?

Da die Klasse Link in iText 7.1 von der Text Klasse erbt, wie das UML oben zeigt, ist es einfach. Hier ein Beispiel:… „Neujahr 2021: Mein erster Beitrag in 2021 – Hyperlinks in PDF: iText 7.1“ weiterlesen
.gitignore mal etwas anders
Auf Github gibt es viele Templates für die .gitignore Datei. Für das Erstellen einer .gitignore Datei kann aber auch die Webseite von gitignore.io verwendet werden.

Auf dem Raspberry Pi kann man aber auch eine Shell Funktion installieren, dann geht es noch einfacher. Dazu einfach diese Funktion einmal auf der Kommandozeile aufrufen: … „.gitignore mal etwas anders“ weiterlesen
Impfbeginn in Deutschland – Mal was anderes: Wie können Header in PDF Dokumente mit iText 7.1 autom. auf jede Seite erzeugt werden?
Manchmal braucht man in automatisch generierten PDFs eine Überschrift auf jeder Seite.

Wie geht das mit iText 7?
Mit einen implementierten IEventHandler. Der dann nach jeder erzeugten Seite PdfDocumentEvent.START_PAGE einen Event generiert, der dann die Überschrift erzeugt. Dazu habe ich eine Klass HeaderHandler entwickelt. Es kann als Option auch entschieden werden ob auch auf der ersten Seite einen Überschrift erzeugt werden soll. Hier die Klasse:
„Impfbeginn in Deutschland – Mal was anderes: Wie können Header in PDF Dokumente mit iText 7.1 autom. auf jede Seite erzeugt werden?“ weiterlesen
PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF
Ein PDF in Java ist mit iText 7 in ein paar Minuten gemacht.

Wir können z.B. ein String Liste mit nur 3 Zeilen Code mit dem Times Roman Font auf DIN A4 ausgeben:… „PDF Erzeugung mit iText 7 oder in 3 Zeilen Java zum PDF“ weiterlesen
Ziel 2021: Die ganze Bibel in einem Jahr lesen? Terminplan, Bibelleseplan im Kalender ics Format zum Download
Das ist nun wahrscheinlich der letzter Beitrag für 2020. Wer das Ziel hat, die Bibel in einem Jahr zu lesen, hat hier nun die nötige Unterstüzung. Die Termine und Kapitel können nun leicht in einen eigenen Kalender importiert werden.
Habe mal neue Bibellese Termine ab 1.1.2021 mit dieser neuen GUI der TWBibel erzeugt. Die Version 0.0.5 Unterstützt bisher die drei Online Bibeln: NWI, RBI und BI12 in Deutsch. Andere Sprachen sind auch schon vorbereitet und auch diese Bibelübersetzungen: BDS, BGV, BKR, BSV, BTX, CARS, CBT, CCBT, CEP, CKK, CST, CUVS, DK, ELB, ESV, EU, FCB, GNB, HFA, HTB, HUN, ITA, KAR, KJV, LSG, LUT, LXX, MENG, NAV, NGÜ, NIRV, NIV, NLB, NOR, NPK, NRS, NTR, NVI, NeÜ, OT, PRT, PSZ, RSZ, S21, SLT, SNC, TR, ZB.
Einfach einen Bibellese-Plan, in Euren Kalender im Handy, Tablet usw. kostenlos laden und importieren: „Ziel 2021: Die ganze Bibel in einem Jahr lesen? Terminplan, Bibelleseplan im Kalender ics Format zum Download“ weiterlesen
Git switch auf dem Raspberry Pi 4 B installieren – oder wie compiliere ich GIT
In der aktuellen Version von git auf dem Pi fehlt z.B. der git switch Befehl. Der ist zwar im Status: THIS COMMAND IS EXPERIMENTAL. THE BEHAVIOR MAY CHANGE.
Deshalb will ich mal eben die aktuelle Version von Git auf einem Raspberry Pi 4 B installieren. Ich nehme mal die 2.30.0-rc1.
|
1 2 3 |
sudo apt update sudo apt install git git --version |
Das reicht für die meisten. Dann hat man aber nicht die aktuellste Version, die derzeit v2.30.0-rc1 ist. Wer aber z.B. experimentelle Befehle wie switch ausprobieren will, kann sich in 2 Stunden selbst auf einen Raspberry Pi Zero oder auf einem Pi 4 B in 10 Minuten eine Version zusammen bauen.
Hier kann man die aktuellste Version sehen https://github.com/git/git/tags:
Wie kann die aktuelles Git Version auf einem Raspberry Pi installiert werden? Hier die Schritte: „Git switch auf dem Raspberry Pi 4 B installieren – oder wie compiliere ich GIT“ weiterlesen
Quicktest: Eclipse 2020-12 auch für native Raspberry Pi
Quicktest Eclipse 2020-12 die sich nun auch auf einem Raspberry Pi 3 oder 4 nativ ausführen läßt, ohne bremsenden x86-Emulator. Und was für mich wichtige ist, mit Korrekturen für macOS 11 alias Big Sur.
„Quicktest: Eclipse 2020-12 auch für native Raspberry Pi“ weiterlesen
Vaadin Anwendung auf dem Raspberry Pi 4 B in 10 Minuten mit Jetty-Server und Archetype erstellen als Vorbereitung für den richtiger Lockdown ab Mittwoch!
Eine kleine Demo zeigt, dass es gar nicht so kompliziert ist, ein professionelles Web-Application-Framework auf dem Raspberry Pi zum Laufen zu bekommen. Und das in 10 Minuten! Ok, dann los.

Eine vaadin Anwendung Version 16.0.0 und Jetty Server 9.4.15 in 10 Minuten erstellen. Das ist mit dem Archetype möglich. Als Version wird latest angegeben. Diesen Aufruf auf der Kommandozeile in einem leeren Verzeichnis aufrufen:
|
1 2 3 4 5 6 7 |
mvn -B archetype:generate \ -DarchetypeGroupId=com.vaadin \ -DarchetypeArtifactId=vaadin-archetype-application \ -DarchetypeVersion=LATEST \ -DgroupId=de.wenzlaff.twvaadinprojekt.app \ -DartifactId=twvaadinprojekt-app \ -Dversion=1.0-SNAPSHOT |
Das ist beim 2. Mal in 10 Sekunden erledigt. Beim 1. Mal müssen noch die Maven Artefakte ins lokale Repo geladen werden, das dauert etwas. „Vaadin Anwendung auf dem Raspberry Pi 4 B in 10 Minuten mit Jetty-Server und Archetype erstellen als Vorbereitung für den richtiger Lockdown ab Mittwoch!“ weiterlesen
Mal was anderes als COVID-19 Impfstoff BNT162b2: Maven install auf einem Raspberry Pi 4 B mit Beispielprojekt in 10 Minuten mit Archetype
Auf dem Rasberry Pi 4 ist ja default Java 11 installiert. Nun wollen wir mal schnell ein kleines Java Projekt mit Maven erstellen. Da ist schnell gemacht mit Archetype vom Maven.
Danke Dr.Kleinhirn.eu für die Bereitstellung der Mindmap
Also nur noch Maven 3.6.0 installieren mit: sudo apt-get install maven
Dann checken ob alles richtig installiert ist mit: mvn -version
Dann in einem leeren Verzeichnis „Mal was anderes als COVID-19 Impfstoff BNT162b2: Maven install auf einem Raspberry Pi 4 B mit Beispielprojekt in 10 Minuten mit Archetype“ weiterlesen
PDF to PNG, JPG oder TIFF auf einem Raspberry Pi mit pdftoppm
Um PDF-Dokumente in ein Bildformat wie PNG zu überführen, und auch zum skalieren kann das Tool pdftoppm auf einem Raspberry Pi verwendet werden. Aber auch noch andere Funktionen sind mit den poppler-utils möglich.

Installiert sind sie auf einem Raspberry Pi schnell mit: „PDF to PNG, JPG oder TIFF auf einem Raspberry Pi mit pdftoppm“ weiterlesen
Cloud Dashboard für CO2-Messungen (CO2-Ampel) mit Ubidots für Java und Python
So ein Dashboard, hier am Beispiel der CO2 Messungen ist mit dem Cloud Anbieter Ubidots.com schnell gemacht. Kostenlos gibt es 3 Geräte. Es muss ja auch nicht immer Thinkspeak sein.

Hier ist der Api Token zu finden: „Cloud Dashboard für CO2-Messungen (CO2-Ampel) mit Ubidots für Java und Python“ weiterlesen
CO2 mit dem Raspberry Pi
Hier mal eine Zusammenfassung eines CO2-Messsystems (CO2-Ampel) mit dem Raspberry Pi an dem der MH-Z19b, OLED Anzeige, LED-Rgb-Ampel hängen. Auch werden die Daten Online an Thinkspeak, MQTT, NodeRed, Alexa ausgabe von Warnungen und abfrage der Co2 Werte, Pushover nachrichten ans Handy, REST Java-Client, Docker Container und an einen History Browser gesendet. Wie hier auch schon einzeln veröffentlicht.



















