[Projekt] jukebox4kids (Jukebox für Kinder)

  • Hi,


    ich wollte hier einmal mein Projekt kurz vorstellen:


    Da das Hören von CDs für einen 3 jährigen etwas fummelig ist, und ich es satt hatte, dass mein Sohn die CDs nach dem Hören nicht ordentlich wieder zurück in die Hülle getan hatte, musste eine Lösung her.


    Auf Basis des Raspberry Pi Modell B habe ich eine Jukebox für ihn gebaut, die einfach zu bedienen war. Die erste Version (0.5) hatte noch einen Barcode-Reader, welche
    die Alben anhand von Barcodes einlesen konnte. Leider war die Erkennungsrate bei den Barcodes eher schlecht, sodass ich dann auf RFID (125khz) umgestiegen bin.


    Im Prinzip muss er nur noch die entsprechende Karte vor der Jukebox halten, dann wird
    das Album sofort geladen und abgespielt. Vorher habe ich eine kleine Sammlung von Karten mit RFID-Chips vorbereitet. Mit ein paar Skripten und Latex-Templates lies sich
    der Vorgang für die Vorbereitung der Album-Karten recht gut automatisieren.


    Das Ergebnis könnt ihr hier sehen:



    Weil es so schön war, habe ich letztes Jahr meiner Tochter (2) auch noch eins gebaut.
    Allerdings nicht auf Basis des Raspberry Pi, sondern auf Basis des STM32F407 Discovery
    Board. Die V2 hat den Vorteil, dass die in unter 4 Sekunden bootet:



    Vielleicht gefällt dem einen oder anderen das Projekt :D


    hdo


    UPDATE (Technische Infos, Sourcen, etc.):


    Technische Infos:


    Jukebox Version 1:


    Bilder: https://picasaweb.google.com/1…P1wc7slwE&feat=directlink


    Technische Komponenten:


    - Raspberry Pi Modell B, Software: (noch) Raspbian, geplant: Raspbian Read-Only FS, MPD, Python Skript
    - SD Card 64GB SaveTec
    - USB DAC auf Basis von PCM2704 (TI Burr Brown), Bezugsquelle: http://www.aliexpress.com/item…n-RaspBMC/2027885484.html
    - LPC1343 Cortex-M3 Mikrocontroller für UI (Buttons, 7-Segment, RFID, etc.), Bezugsquelle: http://www.watterott.com/de/LPC1343-QuickStart-Board
    - RFID-Reader: 125kHZ Brick (gibt es leider nicht mehr), Alternative: http://www.watterott.com/de/125Khz-RFID-Empfaenger-Modul
    - DC Step-Down Wandlermodul (12V->5V) LM2596, Bezugsquelle: http://www.aliexpress.com/item…able-power/725323743.html
    - Audio Amp, ausgeschlachtet aus Logitech Audiostation, 10W Stereo-Digital-Verstärker mit Volume-Control, 2 Lautsprecher
    - 2-fach Relay-Module (suche nach Arduino Relay-Modul), Zweck: Power-Management (Abschalten der Endstufe nach 3 Minuten Nichtbenutzung)
    - Knöpfe (suche nach Arcade Taster), Bezugsquelle: http://www.ebay.de/itm/Arcade-…&var=&hash=item3370114db3
    - Dual 7-Segment Anzeige, Bezugsquelle: Reichelt oder Conrad
    - 7-Segment Controller, Bezugsquelle: Reichelt oder Conrad
    - Infrarot Empfänger 1738, Bezugsquelle: Reichelt oder Conrad
    - Gehäuse: Holzkasten aus dem Baumarkt :-)
    - Front: Birke Multiplex 6mm, grüne Farbe aus dem Baumarkt
    - Kabel, Kleinteile, etc.


    Sourcen:


    Firmware für Mikrocontroller:


    https://github.com/hdo/lpcx1343_cmsis2_jukebox4kids_ui


    Python-Skript für RPi:


    https://github.com/hdo/jukebox4kids


    Jukebox Version 2:


    Bilder: TODO


    Technische Komponenten:


    - STM32F4Discovery, Bezugsquelle: http://www.watterott.com/de/STM32F4Discovery
    - SD Card 64GB SaveTec
    - VS1053b Decoder Module, Bezugsquelle: http://www.aliexpress.com/item…g-Function/742105038.html
    - RFID-Reader: 125kHZ Grove (gibt es leider nicht mehr), Alternative: http://www.watterott.com/de/125Khz-RFID-Empfaenger-Modul
    - DC Step-Down Wandlermodul (12V->5V) LM2596, Bezugsquelle: http://www.aliexpress.com/item…able-power/725323743.html
    - 8W Digital Audio Amp (TI Chipsatz), Bezugsquelle: http://www.aliexpress.com/snapshot/6067143330.html
    - 2-fach Relay-Module (suche nach Arduino Relay-Modul), Zweck: Power-Management (Abschalten der Endstufe nach 3 Minuten Nichtbenutzung)
    - Knöpfe (suche nach Arcade Taster), Bezugsquelle: http://www.ebay.de/itm/Arcade-…&var=&hash=item33672f7c93
    - 16x2 LCD Anzeige, Bezugsquelle: Elektronikversender
    - Rotary Encoder für Lautstärke, Bezugsquelle: Elektronikversender
    - Infrarot Empfänger 1738, Bezugsquelle: Reichelt oder Conrad
    - Gehäuse: Holzkasten aus dem Baumarkt :-)
    - Front: Birke Multiplex 6mm, Farbe *pink* aus dem Baumarkt
    - Kabel, Kleinteile, etc.


    Sourcen:


    Firmware für Mikrocontroller:


    *TODO*


    Sonstiges:


    Günstige RFID Karten bekommt ihr hier: http://www.aliexpress.com/snapshot/6249189248.html

  • Ganz ehrlich? Ich habe oben angefangen zu lesen und meine erster Gedanke: "Wat soll son Dötz mit nem PI und solch Technik kram - es sind Kinder!" Aber dann hab ich die Video mir angeschaut - Ich hab keine Kinder, aber das finde ich absolut genial! Und auch die Ausführung (neben der technischen Umsetzung und Idee) ist wirklich beeindruckend!


    Und wo bleibt die komplette Projektbeschreibung und die Skripte?

    --
    man ist das System-Anzeigeprogramm für die Handbuchseiten von Linux.

  • Oh mist, genau die gleich Idee hatte ich auch - wollte einen Mifare Reader (SPI) + Raspberry Pi benutzen.


    Also ich sage - SUPER IDEE und Optisch Top realisiert!


    Ich hab auch einen 1,5-jährigen Sohn und CD ist einfach nicht mehr zeitgemäß und kinderfreundlich.
    Zu anfällig für Kratzer. RFID- Karten sind robust und unempfindlich.
    Kann man auch mit Bildern bekleben und immer wieder neu zu MP3s zuordnen.

  • Welcher reader ist den in der tollen Kiste verbaut. Und wo stammen denn die knöpfe her.


    Achso was mich auch noch interessieren würde wie sind denn die boxen angeschlossen. Ist da noch ein kleiner vorverstärker eingebaut?

  • Guten Morgen Zusammen,


    ich freue mich sehr über das positive Feedback.
    Auch meine Kinder können ohne die Jukebox nicht mehr :-)


    Generell habe ich nichts dagegen, meine Sourcen zu veröffentlichen. Die liegen ohnehin auf Github.
    Ich werden den Beitrag entsprechend anpassen und ein paar Infos veröffentlichen.


    Dokumentation, puh, ich muss gestehen, dass ich davon nicht wirklich viel habe :-(


    Ggf. kann man aus den Sourcen einiges ableiten. Ich weiß das ist nicht ideal, aber immerhin etwas oder.


    Übrigens würde ich selber so eine Jukebox nicht mehr bauen, denn das Vorbereiten der Karten ist
    doch ganz schön aufwendig. Meine Kinder haben mittlerweile über 200 Karten in ihrer Sammlung.
    Deswegen hat die Version 2 auch ein Numpad, wo man die Albennummer
    eingeben kann. Diese Funktionalität ist aus Zeitmangel leider noch nicht fertig gestellt worden. Ebenso
    ist der Infrarot-Empfänger noch ohne Funktion.


    hdo

  • Ich hätte das ganze mit Raspberry Pi aufgebaut:


    RFID via SPI-Bus
    Audio driekt über Raspberry Pi B+
    IO über GPIO
    LCD via I2C (optional)
    Aktiv Boxen extern.

  • Moin moin,


    relativ einfach:


    Step-Down 12V: Der Verstärker aus der Logitech Audiostation braucht 12V und RPi
    braucht 5V. Ich wollte nur ein Netzteil verwenden.


    RFID via SPI-Bus: Welches Module unterstützt das? Ich kenne
    nur die RFID-UART Module


    Audio direkt über Raspberry Pi B+:
    Die Jukebox ist ca. 2 Jahre alt. Damals gab es noch kein B+ Modell.
    Der RPi hat keine DAC sondern nur ein 10Bit PWM. Audio-Qualität
    ist selbst mit iPhone Kopfhörern miserabel. Der USB DAC
    hat einen Burr-Brown Chipsatz von TI. Beringer verwendet
    diesen Chip ebenfalls bei ihrern USB-Audio Geräten.


    IO über GPIO: Der RPi B (normal) hat zu wenige IOs. Mit
    dem B+ könnte es klappen. Ja, 7-Segment würde ich auch nicht
    mehr nehmen, zuviel Arbeit. Mit I2C-LCD Modulen haben
    ich wenig gute Erfahrungen gemacht. Bei meiner 2. Jukebox
    habe ich das LCD im 4-Bit Modus angesteuert. Das klappt gut.


    Buttons auswerten gehen mit RPi GPIO zwar, aber zügig
    geht das nicht wirklich. Mit dem Cortex-M3 verarbeite ich
    die Eingaben in Echtzeit (braucht man das wirklich? Wahrscheinlich nicht :-))


    Aktiv Boxen extern: Geht zwar, aber ich wollte eine saubere Integration
    haben. Die 2. Jukebox hat einen 8W Digital-Verstärker von TI. Zusammen
    mit den Visaton-Lautsprecher ist der Sound wirklich klasse (zumindest
    für meine Ohren).


    Der Nachteil beim RPi ist, dass die Kiste knapp 30 Sekunden fürs Booten (Raspbian) braucht. Selbst PiCore Linux ist nicht wirklich schnell, obwohl es sehr schlank ist.


    Die V2 Kiste bootet in 3-4 Sekunden mit einfachem (taskgesteuertem) OS.


    Der größte Benefit war aber, dass ich bei der ganzen Sache einiges gelernt habe :D


    hdo


  • Interessanter RFID Reader, allerdings arbeitet dieser mit MIFARE und die Medien
    sind recht teuer. Die 125kHz Karten sind deutlich günstiger zu erstehen.


    Wir haben mittlerweile knapp 250 Karten im Einsatz. Ich zahle für ein 100er Pack
    knapp 17 Euro :D


  • Schon überzeugt hab mir so einen RFID-Reader und USB Audio bestellt.
    Kann man die RFID-Medien mit einem NFC Handy auslesen? Bei Mifare funktioniert das gut.

  • Hab ich mir gedacht - ich hab von einem China Shop Karten bekommen die ich mit meinem Reader und mit Handy nicht auslesen konnte. Ich denke das sind dann die 125kHz Karten - die waren auch um einiges günstiger. Der hatte sie wohl falsch ausgezeichnet.


    Es fehlen noch Infos zum Rotary Encoder. Das ist auch eine Komponente die sehr interessant ist - hab mich damit noch gar nicht beschäftigt.

  • Hi,


    ich bin mir nicht sicher, ob der RPi den Rotary Encoder verarbeiten kann.
    Den Encoder habe ich auch nur in der V2 drin. Der STM32 kann mehrere
    Rotary Encoder via Hardware Counter direkt verarbeiten. Das
    macht die Sache äußerst angenehm.




    Es fehlen noch Infos zum Rotary Encoder. Das ist auch eine Komponente die sehr interessant ist - hab mich damit noch gar nicht beschäftigt.

  • Gerade gesehen auf youtube...:bravo2:
    Top gemacht. Gefällt mir sehr gut.


    Das ist genau das was ich brauche für meine Kids.


    Nur wird es für einen Laien (ohne eine etwas genauere Doku) schwierig werden,
    das ganze nachzubauen. Schade :(


    Ansonsten nochmal Hut ab :thumbs1:


    Gruß mattes

  • Top Projekt, kann man ja kaum verbessern :-)


    Rotary Encoder wäre wirklich eine Idee und dann evtl ohne
    RFID, sondern mit grafischem Display auf dem nur noch
    die Cover angezeigt werden.


    Aber was soll, ist ja schon jetzt quasi perfekt.

  • Wie gerne ich das nachbauen würde..


    Da ich aber leider zu dumm dafür bin, muss ich meinem Kind wohl den Mainstream-Ramsch aus dem Otto-Normalo-Laden kaufen :D