
Kategorie: devices
omxplayer-Status-LED

Vorrausgesetzt video_looper spielt über den Default-Prozess (omxplayer.bin) die Videos ab, lässt sich der laufende Prozess mit dieser LED überprüfen, hilfreich, wenn man sicher sein will, dass eben erst aufgespielte Daten mit dem USB-Stick abspielbar sind oder wenn man wissen will, wann genau der Prozess startet, ohne das ein Monitor angeschlossen ist.
Über einen System-Service kann man das permanent einschalten.
HQ-Camera-Module-Case


Aus einem DLT-Kasettengehäuse aus den 90ern lässt sich schnell ein Camera-Gehäuse für das Raspberry-Pi-HQ-Modul bauen, drin ist ein RPi Zero 2W (ohne Header). Ein paar Sachen fehlen noch für eine autonome Kamera im Tech-Look, zum Beispiel ein Umhängegurt 🙂
One-Button-Keypad (Raspberry Pi Pico)

Für eine Foto-Slideshow braucht man normalerweise die Taste „Weiter“, aber wer sagt denn, dass man dafür die Hand braucht? Ein Veritas-Nähmaschinepedal kann das auch machen, man braucht nur den Pico mit der HID-Library bestücken und die code.py entsprechend vorbereiten, System: Circuitpython.
In meinem Fall funktioniert das Teil zusammen mit einem KODI-System, bei dem auch die Slideshow automatisch gestartet wird. Eine Schwierigkeit ist, dem Host eine externe Tastatur vorzuspielen, das wird normalerweise erledigt mit einer boot.py-Datei, siehe unten. Achtung: danach sind jegliche Änderungen nur über ein erneutes Flashen des Pico möglich. Hardwareseitig muss die Taste/das Pedal an einen freien GPIO-Pin verdrahtet werden, hier GPIO15 (Pin 20).
Auch die hier benutzte Mini-Tastatur von Bobricius benutzt einen Pico als Keyboard-Controller.
CIRCUITPY/
├── code.py
├── boot.py
└── lib/
└── adafruit_hid/

RFT Adrett Radiostation mit LEDs (Icecast/Liquidsoap)

RFT Adrett Mod: Icecast hat eine praktische Status-Webseite als JSON-File: http://icecast-ip:8000/status-json.xsl (btw: keine Authentifizierung notwendig). Über die kann man diverse Icecast-Parameter abfragen und ein paar LEDs ansteuern. Ich habe insgesamt drei LEDs (die erste Blaue ist für On/Off). Die zweite Blaue zeigt an, ob der Stream eingeschaltet ist (GPIO 21) und die Gelbe zeigt an, ob grade Zuhörer (Listener) aktiv sind (GPIO 16).
Anbei Movie, das die Listener-Funktion illustriert, VLC startet hier den Stream.
Continue reading „RFT Adrett Radiostation mit LEDs (Icecast/Liquidsoap)“
Schabbellhaus Wismar
Installation des Universal Players im RL, Stadtmuseum Wismar, Video-on-demand.
Audioplayer mit SpeakerpHAT

Die SpeakerpHATs werden leider nicht mehr vertrieben, als Ersatz wäre der Pirate Audio Speaker denkbar, aber halt immer mit Bildschirm.
IKEA-Videoframe (KODI)

Ein KODI-Server lungert schon seit Jahren bei mir rum, aber es war mal Zeit für was Aufregendes. Bei IKEA findet man Praktisches und Schönes, ein Bilderrahmen lässt sich unauffällig in ein anderes Bild-Ensemble integrieren.
Die Elektronik muss klein und vor allem ohne grosse thermische Belastung auskommen, die aktuellen SSD-Preise (hier 29 Eur für 500 GB) lassen das zu und man kann endlich die alten mechanischen HDs rauswerfen.
Softwareseitig kommt LibreELEC Version 10 für RPi 3 zum Einsatz, die anderen Varianten, Version 11 und 12 für RPi 3 funktionierten nicht auf Anhieb, und das war auch Teil des Projektes, nämlich so schnell wie möglich Out-of-the-Box loslegen zu können. Das System auf dem RPi und die Daten auf der externen SSD sind getrennt benutzbar.
Die LibreELEC-Einrichtung erfordert den WLAN-Zugang, Hostname und SMB-Service-Einstellung, das dauert eine Minute, die angeschlossene Festplatte wird als externe Quelle mit der Formatierung MS-DOS (Dateigrössen-Limitierung 4 GB) erkannt.

Als Client für die Inhalte auf einer AppleTV-StreamingBox kommt Infuse zum Einsatz, die Anmeldung erfolgt über die Option „Anonymer Login“ und dort wird die Festplatte als „Favorit“, hier „Video500“, definiert. Danach sind alle Inhalte darüber verfügbar.

Unter macOS kann man eine konstante Datenrate von ca. 10 MB/s erreichen, das wäre auch das Maximum für die RPi-Hardware, also in einer Stunde könnte man 39 GB transferieren.
Alles in allem ein sehr nützliches und vor allem zuverlässiges Gerät, ähnliche Konfigurationen benutze ich schon mehrere Jahre ohne Ausfälle. Die Gesamtkosten betragen bei heutigem Stand 75 Euro plus Mini-SD-Karte und Stromversorgung, das ist nicht zuviel für eine elegante und langlebige Lösung.
BOM:
Update: anderer (getesteter) Client wäre VLC (AndroidTV/AppleTV).
Preisupdate: Gesamtkosten am 20.3.2026 -> RPi 3A+ (26 EUR), Rahmen (6 EUR), SSD (78 EUR), Adapter (8 EUR) = 118 EUR.
Player „Universal“ (Audio/Video)

Complete Image (with Button on Pin 11 and 9):
https://rootfriend.com/videolooper-masterimage
Complete Image (Version 2.0):
https://rootfriend.com/videolooper-masterimage-2-0/
Manual (Audio):
1. Connect Speaker or Head-Phones at the Audio-Connector
2. The Loop will start automatically after Power-On (Audio-Files need to be MP4 or M4A)
3. Re-Start the Audio-Loop with the Button on the Front
Manual (Video):
1. Connect Screen at the HDMI-Connector
2. The Loop will start automatically after Power-On (Video-Files need to be MP4)
3. Re-Start the Video-Loop with the Button on the Front
Convert AUDIO with FFMPEG to MP4:
https://rootfriend.com/konvertiere-in-mp4-audio-mit-ffmpeg/
Videolooper-Dev-Kit: Meijia Video Case
Dank der neuen GPIO-Integration in Videolooper seit Version v1.0.14 lassen sich leicht interaktive Video-Geräte bauen, hier in einem Meijia-Case. Billiger als ein Peli-Case!

Undervoltage-LED, external
#!/bin/bash
while [ $loop 1 ] ; do
dmesg | grep -iC 3 "Undervoltage detected!"
if [ $? != 0 ]
then
echo "normal voltage" &>/dev/null
else
sh /home/pi/LED/voltage-led
echo "under voltage" &>/dev/null
fi
sleep 1
done
sleep 0
done
Who is online

Based on https://rootfriend.com/online-led
Audioplayer „1120“

Dieser Player im Peli-Koffer, Model 1120, ist eigentlich ein DevKit für Volumio. Eine Idee hier war, die Lieblingsradiostation anzuwerfen und grob über Play/Pause zu steuern. Basis ist ein RPi 3A+, Audio Out erfolgt über das IQaudio DAC+ , das Akkupack kann man von aussen über Micro-USB aufladen.


Ganz wichtig: die GPIO-Steuerung (über das Volumio-GPIO-Buttons-Plugin) muss den Default-Pull-Status der einzelnen Pins respektieren, den kann man hier einsehen: https://community.volumio.com/t/plugin-gpio-control-control-gpio-with-volumio2-events/10173/47. Bedeutet konkret in meinem Fall: GPIO8 geht auf Masse, GPIO25 geht aber auf 3,3V.
Avahi Service File
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_ssh._tcp</type>
<port>22</port>
<txt-record>path=/home/yep/</txt-record>
<txt-record>u=fukit</txt-record>
</service>
</service-group>
/etc/avahi/services/ssh.service
sudo service avahi-daemon restartArgonPOD-Screen and VideoLooper (Zero 1 W/Zero 2 W)
Legacy-Version required: 32-bit-version
Installer-Script:
#!/bin/bash
sudo apt-get update
sudo apt-get install -y git
sudo rm -rf LCD-show
git clone https://github.com/goodtft/LCD-show.git
chmod -R 755 LCD-show
cd LCD-show/
sudo ./LCD28-show
echo "2.8” RPi Display (MPI2801) ... finished"
Die offizielle Anleitung befindet sich hier: https://cdn.shopify.com/s/files/1/0556/1660/2177/files/ARGON_POD_MANUAL.pdf
Backup