Direkt zum Hauptbereich

Mit NFC Tags Playlisten abspielen

Nun stellt euch mal vor, ihr müsst nur ein Tag vor dem Reader halten und schon wird eure Lieblings Playliste abgespielt oder die Playliste für die legendäre Party oder die Playliste für gemütliche Zweisamkeit oder was auch immer... ;-)

Wie ihr das macht, erkläre ich euch nun in diesem Post.

Als erstes müsst ihr natürlich den Reader wie hier beschrieben installiert haben, und natürlich auch den mpd-Player wie hier beschrieben, installiert haben.

Dann installiert ihr euch FileZilla und startet es.

Nun tragt ihr bei Server oben die IP-Adresse von euren Raspberry Pi ein, Username ist im Standard "Pi" und Kennwort "raspberry". Der Port ist 22 für SFTP.

Dann auf Verbinden und schon seht ihr sämtliche Ordner von eurem Raspberry Pi auf der rechten Seite und auf der linken Seite die Ordner von eurem PC.

Auf dem PC navigiert ihr zu eurer Musik und auf der rechten Seiten nach /var/lib/mpd/Music

Nun schiebt ihr einfach die Musik von links nach rechts.

Je nachdem wie viele MP3s ich übertragen wollt, kann dieser Vorgang eine Zeit in Anspruch nehmen.

Währenddessen verbinden wir uns mit Putty um die Playliste zu erstellen.

Sobald du dich eingeloggt, hast gibst du

cd /var/lib/mpd/playlists/

ein


nun erstellen wir eine neue Playliste mit

sudo nano playliste.m3u

Natürlich kannst du auch statt playliste.m3u irgendein anderen Namen geben.

Nun füllst du die Datei nach folgenden Schema.


Ich habe in dem Ordner "music" einen Unterordner "Asterix" mit einem Unterordner "Folge 3_ Asterix als Gladiator" und in dem sind dann sieben mp3s.


Nun mit

STRG+O speichern und mit STRG+X beenden.

Nun gebt ihr in der Konsole folgende Befehle nach einander ein (sofern die mp3-Übertragung erfolgreich abgeschlossen wurde)

mpc stop
mpc clear
mpc update



Nun ist die Playliste und die mp3s dem Raspberry bekannt und wir können mit

mpc load playliste
mpc Play

die Playliste abspielen.

Um nun ein Tag dazu zu nutzen die Playliste abzuspielen, wechseln wir in den Ordner wo unsere Read.py liegt

cd ~
cd /MFRC522-python



Mit

sudo python Read.py

starten wir das Script und halten das Tag davor. Nun wird uns eine ID angezeigt, diese merken wir uns.

drücken

STRG+C

um das Script zu beenden.

nun öffnen wir die Read.py mit

sudo nano Read.py


und ergänzen es am Ende pro Playliste mit folgenden Zeilen

        if uid == [123,456,789,123,456]:
                os.system("mpc stop")
                os.system("mpc clear")
                os.system("mpc load playliste")
                os.system("mpc play")



das if muss auf derselben Höhe stehen wie das else: in der vorletzten Zeile.

Nun noch den Raspberry Pi mit

sudo nano reboot

neustarten und schon könnt ihr das Tag vorhalten (sofern das Ready.py im Autostart ist) und die passenden Playliste wird abgespielt.

Kommentare

  1. Hallo,
    vielen Dank für die ausführliche Anleitung. Sie ist wirklich super und auch für mich als Raspberry-Neuling wirklich brauchbar.
    Leider komme ich an einer Stelle nicht weiter. Ich hab den mpd player erfolgreich installiert und meine Playlists lassen sich über die Kommandozeile abspielen. Ebenso habe ich den MFRC522-Reader denke ich erfolgreich angeschlossen. Solange ich keine Veränderungen im Read.py-Skript mache und eine Karte vorhalte, bekomme ich folgenden Code angezeigt:
    Card detected
    Card read UID: xxx,xxx,xxx,xxx
    Size: 8
    Sector 8 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

    Bis dahin scheint mir also alles zu funktionieren.
    Wenn ich jetzt allerdings eine Playlists über eine NFC-Karte abspielen will, also in der Read.py

    if uid == [xxx,xxx,xxx,xxx,xxx]:
    os.system("mpc stop")
    os.system("mpc clear")
    os.system("mpc load playliste")
    os.system("mpc play")

    ergänze, reboote und anschließend das Read.py Skript ausführe, wird "Authentication error" ausgegeben (also der Else-Zweig). Ich habe zum Testen auch schon probiert auch in den If-Zweig einen Print-Befehl zu schreiben, aber leider führt dies zum selben Fehler. Natürlich habe ich die xxx durch die UID meiner Karte ersetzt.
    Hast du eine Idee, woran das liegen könnte? Oder könntest du mir deine komplette Read.py zur Verfügung stellen, damit ich Sytax-Fehler ausschließen kann?
    Das wäre wirklich super nett.
    Leider habe ich es auch noch nicht geschafft, dass das Read.py Skript beim Starten automatisch ausgeführt wird. Wie geht das? Könnte es daran liegen?
    Nochmal vielen Dank für die super Dokumentation!!!
    VG Sandra

    AntwortenLöschen
    Antworten
    1. Hallo Sandra,

      da mein Sohn nun nur noch die Version 2.0 im Einsatz habe, habe ich leider nicht mehr das komplette Read.py Skript zum hochladen.
      Aber wenn du willst, kann ich dir die Skripte von der Version 2.0 geben.

      Löschen

Kommentar veröffentlichen

Beliebte Posts aus diesem Blog

Raspberry Pi Webseite im Kiosk Modus

Manchmal möchte man einfach, dass auf einem Bildschirm nichts weiter sehen ist als eine Webseite. Die Umsetzung dafür ist sehr einfach. Wir installieren und ein Raspbien. In meiner Anleitung habe ich das Raspbian Buster mit Desktop vom 26.09.2019 genommen. Wenn das fertig installiert ist und SSH aktiviert wurde, können wir uns nun mit dem Raspi verbinden. Als erstes installieren wir Chromium als Browser das geht einfach mit sudo apt-get install chromium-browser In normal Fall sollte dieser Browser bereits installiert sein. Wer keinen störenden Mauszeiger haben möchte, der muss sich noch unclutter installieren. Das geht mit sudo apt-get install unclutter Nun müssen wir dem Chromium-Browser sagen, dass er im Vollbildmodus starten soll und welche Webseite er anzeigen soll. Also führen wir folgenden Befehl aus: sudo nano /etc/xdg/lxsession/LXDE-pi/autostart Nun passen wir die Datei so an, dass diese Informationen alle drin stehen. Die ersten 3 Zeilen deakti

Datum und Uhrzeit auf LCD Display anzeigen

Manchmal ist es gar nicht so schlecht ein paar Basic-Informationen vom Raspberry Pi auf einem Display zu erhalten. Deswegen zeige ich euch nun wie ihr ein Display am Raspberry Pi anschließt und Datum und Uhrzeit euch darauf anzeigen könnt. Als erstes gehen wir einkaufen. Display Jumperkabel Drehpotiometer Wenn alles geliefert wurde, schließen wir das nach folgendem Schema an. LCD Pin LCD Funktion RasPi Funktion RasPi GPIO-Pin 01 GND GND GPIO Pin 6 02 +5V +5V GPIO Pin 2 03 Contrast GND GPIO Pin 6 04 RS GPIO7 GPIO Pin  26 05 RW GND GPIO Pin  6 06 E GPIO8 GPIO Pin  24 07 Data 0 08 Data 1 09 Data 2 10 Data 3 11 Data 4 GPIO25 GPIO Pin 22 12 Data 5 GPIO24 GPIO Pin 18 13 Data 6 GPIO23 GPIO Pin 16 14 Data 7 GPIO18 GPIO Pin 12 15 +5V GPIO Pin 2 16 GND GPIO Pin 6 Da wir das LCD Display via Python steuern werden, müssen wir als erstes die notwendigen Programme installieren. Das machen wir am besten über SSH und Putty. Wenn wir uns dann mit dem Raspberry

die neue Junior-Jukebox 2.0

Gerade ist die Anleitung für die Junior Jukebox fertig geworden, und schon habe ich etwas weiter gebastelt und die verbesserte Version 2.0 gebaut. Die beiden Jukeboxen unterscheiden sich in den Punkten: Display  - nun mit Coveranzeige, statt Text Optimierung Read-Script  - bei der alten Version lies sich das Script nach 100 Karten leider nicht mehr starten, weil es einfach zu lang wurde, deswegen werden nun die NFC-Tags beschrieben und das Problem somit gelöst Night-Modus  - das ist ein Zusätzliches Script, dass die Beleuchtung der Buttons nach 18:30 automatisch ausschaltet und die Lautstärke allmählich auf 80% reduziert. Somit ist es nun auch ideal zum Einschlafen geeignet. Und hier nun ein kleines Video wie das Radio nun aussieht. Natürlich findet ihr auch  wieder eine Anleitung zum Nachbauen.