Täglich um 10:00 .mp3-Datei abspielen - einfach umsetzen?
Moin liebe Tüftler-Gemeinde,
ich bräuchte jetzt nochmal eure schlauen Ideen-Köpfchen:
Ich würde gerne jeden morgen um 10:00 im Hühnerstall den Donau-Waltzer (als .mp3-Datei) abspielen. Wie kann ich das günstig und schnell realisieren?
Ich dachte jetzt daran auf einen Raspi einfach Windows zu installieren und dann mit der Aufgabenplanung (welche in Windows integriert ist) die .mp3 mittels Aufgabe jeden morgen um 10:00 starten.
Habt ihr bessere und vielleicht kostengünstigere Methoden zu Kopf? Wie würdet ihr das schnell und einfach umsetzen?
Danke im Voraus!
4 Antworten
Die armen Hühner *Grins*
Aber ganz ehrlich? Warum Windows?
Linux besitzt als Bordmittel alles, was man benötigt. Das Zauberwort heisst "CRON" und die dazugehörige Tabelle namens "CRONTAB".
CRON ist ein Systemdienst, welcher Aufgaben zu bestimmten Uhrzeiten immer wiederkehrend erledigt. Also genau DAS, was Du suchst ;-)
Einfach täglich in der Crontab das Starten eines audio-Players Deiner Wahl mit der gewünschten MP3 Datei starten - Thema erledigt.
Arbeit?
15 Minuten zur Installation von Linux, 1 Minute zur Installation des Befehls und zum reboot - FERTIG
Aber im Endeffekt ist es doch ganz simpel ;-) Dafür braucht man doch kein Betriebssystem mit einem Overhead jenseits von Gut und Böse ;-) CRON läuft schliesslich auf dem allersimpelsten Unix und Linux
auf dem Raspery ist doch Linux zu Hause.
Installiere Tcl/Tk und du kannst das wunderbar einrichten.
und auch einrichten, dass er "mpg123 Donau-Waltzer.mp3" zur gegebenen Zeit aufruft.
Wenn du selbst zur Tüftler-Gemeinde gehören willst, kann ich dir helfen.
Windows habe ich schon vor 23 Jahren entsorgt.
Willst du damit anfangen?
Wusste nicht, dass Linux auch so eine Art Aufgabenplanung besitzt. Wie installiere ich denn "Txl/Tk"? Was ist das überhaupt?
Tcl ist eine Scriptsprache mit viel Komfort. Für grafische Anwendungen ist dann die Erweiterung Tk vorgesehen.
Ich schreibe meine Programme nur noch in dieser Sprache.
Schreiben, Starten und Fehler behandeln. Schneller kann es nicht gehen.
Tcl/Tk gibt es auch für Windows. Wenn die auf deinem "großen PC" kein Linux hast, gucke es dir unter Windows an.
Übrigens braucht du keine 10 Zeilen Code für dein Donau-Walzer-Abspielprogramm..
Wusste nicht, dass Linux auch so eine Art Aufgabenplanung
Vielleicht weil Fachleute und Linuxianer das als Cronjob bezeichnen. 😉
Angenommen, ich will die MP3-Datei um 14:10 laufen lassen. Wäre der Code so richtig(?):
10 14 * * * /usr/bin/mpg123 /home/user/Musik/Donau.mp3 >/dev/null 2>&1
Könnte ich mir vorstellen - bin aber auch nicht der Crack in solchen Dinge.
Für mein tägliches Backup z. B. habe ich eine sh-Script angelegt und dieses über die Crontab aufgerufen:
Aufruf mit crontab -e
0 2 * * * /home/pi/backup.sh > /dev/null
Damit wird das Backup-Skript jede Nacht um 2 Uhr morgens ausgeführt.
In der Backup.sh wird dann der Rest ausgeführt:
#!/bin/bash
#Festplatte einbinden
mount -t cifs -o user=*****,password=*****,rw,file_mode=0777,dir_mode=0777 //0.0.0.0/Ordner /mnt/nas
#Variablen
BACKUP_PFAD="/mnt/nas/Raspberry"
BACKUP_ANZAHL="15"
BACKUP_NAME="BackupName"
#Backup erstellen
dd if=/dev/mmcblk0 | gzip > ${BACKUP_PFAD}/${BACKUP_NAME}-$(date +%Y%m%d%H%M%S).img.gz
#Alte Sicherung löschen
pushd ${BACKUP_PFAD}; ls -tr ${BACKUP_PFAD}/${BACKUP_NAME}* | head -n -${BACKUP_ANZAHL} | xargs rm; popd
#Festplatte auswerfen
umount /mnt/nas
So - und ganz nebenbei hast Du jetzt ein Skript, mit dem Du image-Backups der SD-Karte auf eine Netzwerkfreigabe schieben kannst. Sehr zu empfehlen, wenn man basteln will. 😉
...naja, also die SD-Karte im Raspberry-PI hat 128GB, mein NAS genau dasselbe. Würde also gar nicht funzen.
Trotzdem stelle ich mir die Frage, was ich falsch mache. Wieso wird der Code, den ich verfasst habe, nicht ausgeführt?
...naja, also die SD-Karte im Raspberry-PI hat 128GB, mein NAS genau dasselbe. Würde also gar nicht funzen.
Da hast Du natürlich recht.
Öhm... Mein Raspi hat nur 32 GByte und mein NAS zig TByte. 😉
Wieso wird der Code, den ich verfasst habe, nicht ausgeführt?
Packe ihn in eine sh-Datei und "erkäre" sie mit....
sudo chmod +x test.sh
...ausführbar.
Rufe dann die sh-Datei aus dem Crontab auf.
Welche Parameter dann mpg123 benötigt kann ich Dir nicht sagen.
Könnte aber auch nur sein, dass der Crontab die Parameter nicht korrekt übergibt. Deshalb der Umweg über das Script. 🤔
das sollte so funktionieren. Richtig ist auch, den Befehl mpg123 mit vollem Pfad aufzurufen, denn für cron wird keine PATH-Variable angelegt.
Ich würde ein billiges Handy nehmen und dann den Wecker mit entsprechendem Song zur gewünschten Uhrzeit stellen.
Handy, bekommst ja billig auf eBay Kleinanzeigen.
Evtl hängst noch ein Lautsprecher dran.
auf einen Raspi einfach Windows zu installieren
Das kannst du auch mit Linux machen und dort einfach einen Cron Job ausführen.
Wie wäre sowas?
Da kannste Lautsprecher dran anschließen und einen Wecker einstellen, welcher dann über SD Karte mp3s abspielt.
Hab da was verschwiegen: Hatte bereits schon Linux installiert, allerdings für ein Projekt, was ich längst wieder verworfen hatte.
Weil ich mich mit Windows besser auskenne, hatte ich direkt an die Aufgabenplanung gedacht.
Ich habe es nun doch mit Linux durch folgenden Befehl hinbekommen, dass die Audio immer morgens um 10:00 abspielt.
Funktioniert, wie ich's wollte.
Naja, nicht ganz. Habe dann doch eine gute halbe Stunde gebraucht, um mich mit crontab auseinander zu setzen.
Ich habe mich immer wieder gewundert, warum der Code im crontab nicht gespeichert wird. Habe immer und immer wieder vergessen, "Strg+O" und dann "Strg+X" zu drücken.
Funktioniert nun wie gesagt schlussendlich doch alles.