Home Assistant
Home Assistant: Lokale Audio Ausgabe auf Raspberry PI
Der Raspberry PI steht aktuell günstig so dass ich mir dachte es wäre doch eine Idee die 3,5" Audioausgang des Raspi zu nutzen. Dazu habe ich einfach alte PC-Boxen angehängt und wollte via Home Assistant einfach Meldungen und Töne auf diesen Boxen ausgeben.
Meine Lösung hab ich als Shell-Script definiert und wollte dazu einfach die bestehende ffmpeg Anwendung ffplay nutzen. Home Assistant setzt ffmpeg ein, nur leider ist scheinbar ffplay nicht Teil dieses Pakets darum musste ich es mit "apk add ffplay" nachinstallieren. So wie Home Assistant aufgesetzt ist muss man vor allem bei Updates dann aufpassen dass dieses Programm nicht wieder verschwindet. Darum hab ich gleich mal als ersten Schritt diesen Eintrag in meiner configuration.yaml ergänzt:
shell_command: install_ffplay: apk add ffplay
Mit einem Neustart werden die Konfigurationen wieder neu eingelesen und damit ist dieses Shellcommand auch für Automationen dann verfügbar.
Zusätzlich habe ich die Lautstärke auch via Shell-Command angepasst:
shell_command: set_audio_volume: amixer cset numid=3 100%
Beides habe ich dann in einer Automation "Sobald Home Assistant gestartet wird" unter "Dann" als zwei Aktionen eingetragen:
- Shell Command: shell_command.set_audio_volume
- Shell Command: shell_command.install_ffplay
Dann hab ich unter Medien / "My Media" eine MP3-Datei mit dem Namen "person_an_der_eingangstuer.mp3" hochgeladen und ein Shell Command für das Abspielen ebenfalls via configuration.yaml erstellt:
shell_command: play_sound_local_person_front_door: ffplay -loglevel quiet -nodisp -vn -autoexit -volume 100 /media/person_an_der_eingangstuer.mp3
Und auch hier dann eine Automation erstellt mit "Sobald [KameraName] Person eingeschaltet wird" dann soll diese Aktion ausgeführt werden:
- Shell Command: shell_command.play_sound_local_person_front_door
Und schon gab es eine Meldung lokal am Raspberry wenn die Kamera eine Person erkannt hat.
Also gesamt sieht dann mein Shell-Command Teil in der configuration.yaml so aus:
shell_command: install_ffplay: apk add ffplay set_audio_volume: amixer cset numid=3 100% play_sound_local_person_front_door: ffplay -loglevel quiet -nodisp -vn -autoexit -volume 100 /media/person_an_der_eingangstuer.mp3
Möglicherweise gibt es bessere Ideen, mir hat dieses Setup am Besten gefallen. Das lässt sich natürlich auch mit weiteren Shell-Commands für verschiedene Meldungen erweitern.
Die Personenerkennung erfolgt mit einer ReoLink 4K Überwachungskamera, aufgesetzt habe ich meinen Raspberry PI mit der vorgefertigten Home Assistant Distirbution wie im Tutorial von Home Assistant beschrieben. Meine Versuche hier habe ich mit Home Assistant in der Version 2025.2.1 erstellt.
Mag. Andreas Bimminger; Raiffeisenstrasse 6; 2326 Maria Lanzendorf; Österreich; Tel.: +43/699/11685959
Sie befinden sich auf https://www.bimminger.at/
im Pfad: Tipps / Home AssistantErstellt: 2025-02-17