Beiträge von LaZZeR

    Danke für eure Antworten und die Mühe, den ein oder anderen Code zu schreiben (egal ob übers Handy oder Laptop ;) )
    Dennis89 dein Code ist sehr viel sauberer als meiner, daher hab ich ihn einfach mal übernommen und getestet. Einiges hat schon geklappt, ich bin aber noch nicht am Ziel.

    1. Das gpiozero Interface ist installiert und arbeitet wie ich es beurteilen kann korrekt (Habe mir einen Trigger über eine Print-Ausgabe in der Main ausgeben lassen)
    2. Auch die schedule library ist installiert und funktioniert

    Nun zu meinen Problemen:

    1. Ein Trigger wird zwar erkannt und ausgegeben, es wird jedoch kein Song abgespielt (hier weiß ich nicht, ob es an der Übergabe der Methoden scheitert, oder die play_song() Methode selbst probleme bereitet).
    2. Über die schedule Funktion ist es mir bislang nicht gelungen, eine dauerhafte Triggerabfrage zu coden. Innerhalb der definierten Zeit (08-22 Uhr) funktioniert der Trigger also nur einmal, anstatt - wie in meinem alten Code - nach jedem abgespielten Song (+180s Delay) einen neuen Trigger zu erwarten.

    Habt ihr Ideen zu verbesserung? Unten wie immer der Code, mit dem ich aktuell arbeite. Danke euch!

    Hallo zusammen!

    Vor einiger Zeit habe ich ein kleines Projekt mit dem Raspi 3+ realisiert: Der Pi gibt über eine angeschlossene Aktivbox zufallsbasiert Audiodateien aus. Ein verschalteter PIR-Sensor wird bei Bewegung getriggert und startet im Sketch einen Programmteil, welcher eine Audioausgabe bewirkt. Das Setup ist 24/7 am Strom und im WLAN.

    Nun möchte ich meinen Sketch um eine Zeitschaltuhr erweitern. Die Idee dahinter ist, dass der Pi über Nacht (22:00-08:00) keine Audioausgabe tätigt. Hat jemand eine Idee zur Umsetzung, ein Modul welches mir hilft oder andere Ideen? Den bisherigen Sketch linke ich unten. Er funktioniert fehlerfrei. Besten Dank im Voraus! :shy:

    Danke für die vielen Antworten!
    Das Problem ist nun gelöst und die Anwendung funktioniert so, wie sie gedacht ist. Eine kurze Erklärung: @__deets__ hat völlig Recht, die Verknüpfungen und Aufrufe sind mehr Wirrwarr als zielführend. Ich habe daher das randommusic Skript in das vom Bewegungssensor implementiert. Somit entfällt das Shell Skript und die entsprechenden Verbindungen/Aufrufe.
    Anfangs hatte ich eine etwas andere Umsetzung vom Projekt im Kopf, bin im Netz auf neue Ideen gestoßen habe somit das Projekt erweitert, ohne zwischendurch kleinere Zwischenschritte zu hinterfragen. Heute habe ich dann den Wald vor lauter Bäumen nicht gesehen. :shy:

    Umwege durch einen anderen Player oder sonstiges entfallen somit, das randommusic Skript hatte ja schon vorher keine Probleme bei der Ausführung bereitet.

    Bleibt mir nichts anderes als Danke an alle Beteiligten zu sagen, manchmal zeigt ein kleiner Input von außen in das eigene festgefahrene Denken ja doch große Wirkung!:bravo2::danke_ATDE:

    Ich kann jetzt nicht behaupten, den Fehler auf den ersten Blick zu sehen, aber ich würde vorschlagen, in randommusic.py die shebang-Zeile in die erste Zeile der Datei zu setzen (wo sie hingehört) und außerdem einheitlich phython3 zu verwenden.

    Danke für den Hinweis. Habe ich verbessert, ändert jedoch nichts am Fehler :denker:

    Hallo zusammen,

    seit einigen Tagen versuche ich mich an einem neuen Pi-Porjekt. Die Idee: Bewegungsdetektion über einen PIR-Sensor mit anschließender, zufallsbasierter Audiodateiwiedergabe für das Badezimmer. Da es mein zweites Projekt überhaupt ist, bin ich noch Neuling auf dem Gebiet. Viel gelernt habe ich durch Problemstellungen und anschließender Lösung durch Forenbeiträge. Nun sehe ich mich zum ersten Mal "gezwungen", selbst einen Beitrag zu verfassen, da ich keine Hilfestellung zu meinem Thema mehr finden kann.

    What I've done so far....

    -den Pi Model B+ grundlegend aufgesetzt

    -remote-Steuerung mittels Putty und VNC Viewer

    -Python 2.7 und 3.7 installiert, alle hier behandelten Skripte sind in der Python 3.7 Syntax geschrieben

    -kleine Aktivbox am Audiojack vom Pi

    -PIR Sensor am Pi verschaltet... das dazu passende Skript funktioniert!
    -ein Python-Skript (randommusic.py) geschrieben. Funktionsweise: Programm liest einen Ordner aus, wählt eine zufallsbasierte (Musik)Datei, anschließende Ausgabe mittels ffplay-Befehl (FFMPEG-Modul)

    Nun etwas genauer. Im PIR Skript habe ich an der Stelle, wo der Sensor eine Bewegung detektiert einen Subprocess eingebuden. Dieser Subprocess ruft eine Shell-Datei auf worin das Audio Programm gestartet wird.

    Mit einem einzelnen Pfad zur Musikdatei im Shell Skript funktioniert alles wunderbar: Das PIR-Skript wird gestartet, eine Bewegung wird erkannt, die Shell aus dem Subprocess wird aufgerufen und die hinterlegt Audiodatei wird abgespielt. Super!

    Nun zum Problem: Hinterlege ich in dem Shell Skript nun den Aufruf das zufallsbasierte Audioprogramm randommusic.py zu starten, die Zwischenschritte kann ich einsehen und es funktioniert alles wie es soll, nur bekomme ich keine Audioausgabe über meine Box

    Zur Info: Starte ich randommusic.py in der Python Umgebung Thonny via VNC, funktioniert alles inklusive anschließender Audioausgabe.

    Starte ich randommusic.py via Putty wird das Programm ausgefürt, am Ende die Info "Speicherzugriffsfehler".

    Dieser Fehler ist schätze ich der Grund, weshalb alles funktioniert, am Ende aber kein Audio ausgegeben wird.

    Wie bereits gesagt, für diesen Fehler finde ich im Netz wenig bis gar keine Lösungsvorschläge. Hat jemand eine Idee?

    Ich führe nun noch kurz die jeweiligen Skripte auf:

    Danke
    LaZZeR

    Python: Shell Skript
    #!/usr/bin/python3
    
    #ffplay /home/pi/Music/Lied.mp3
    exec(open('/home/pi/randommusic.py').read())