[Projekt] jukebox4kids (Jukebox für Kinder)

  • Ich bin noch immer auf Geschäftsreise und kann leider erst am Wochenende mit dem Löten beginnen.

    Ich zerbreche mir die ganze Zeit den Kopf, wie ich die Kabel auf der Platine verbinde.

    Die Lösung mit den Stiftleisten finde ich besonders ansprechend, habe aber die Befürchtung das die Jumperkabel von mir nicht richtig halten. Kann ich aber erst morgen testen.

    Hyle denkt sich bestimmt, was macht der sich für Gedanken. Hau doch einfach die Kabel drauf 😀 Er hat bestimmt auch Recht!

    Meine Patchkabel besitzen auch Stifte, die ich auf die Buchsen stecken kann.

    Jetzt meine Fragen!

    Ist es sinnvoll die Jumperkabel inklusive Stift auf die Platine zu löten?

    Werden die Kabel immer von unten angelötet?

    Wie würdet ihr die Lötpunkte z.B. von der 3,3V Powerline verbinden? Ich habe mir dafür

    extra einen Draht zum Löten mitbestellt.


    Bald ist Wochenende, bald seit Ihr meine lästigen Fragen los 😂

  • Hyle denkt sich bestimmt, was macht der sich für Gedanken. Hau doch einfach die Kabel drauf

    :lol:

    Naja, ist schon besser Du machst Dir vorher Gedanken, nicht das nachher eine Zeitmaschine auf dem Basteltisch steht... Obwohl, wäre auch nicht schlecht, die spielt dann aber keine Musik ab. :shy:

    Ist es sinnvoll die Jumperkabel inklusive Stift auf die Platine zu löten?

    Kann man machen, dann kannst Du bei Bedarf die Jumper von der Platine einfach abziehen oder anstecken. Das hängt IMHO auch ein bisschen vom Gehäuse und der damit verbundenen Zugänglichkeit zum RPi ab, falls Du da mal ran musst.

    Werden die Kabel immer von unten angelötet?


    Das sieht besser aus und hält auch besser, wenn die Kabel durch die Platine gefädelt sind und auf der anderen Seite verlötet werden. Unten oder oben ist dabei eine Frage der Sichtweise... ;)

  • Manul

    Es gibt verschiedene Geräte, die ähnlich dieser RFID Jukebox sind.


    - Toniebox

    Aus meiner Sicht erstmal preiswert aber jedes Hörspiel muss über den Hersteller gekauft werden mit Figur. Die Figuren sind dann die Erkennungsmerkmale für die Kinder, was dahinter steckt. Es gibt auch "freie" Figuren, allerdings ist davon die Auswahl gering. Ich denke nur an die Anzahl an Hörspiele, welche ich in meiner Kindheit hatte und jetzt auch noch (192 DDF-Folgen aktuell + Sonderfolgen :)) Wenn ich nun für jedes Hörspiel nun 10€ inkl. Figur bezahlen soll geht es aus meiner Sicht doch sehr ins Geld. (Benjamin Blümchen 100+, Bibi Blocksberg 100+ usw.)


    - Hörbert

    Ein sehr schönes und aus meiner Sicht hochwertiges Gerät. Hier werden die Hörspiele mit den Tasten im Frontbereich zugewiesen. Wie ich gelesen habe kann man durch verschiedene Speicherkarten, verschiedene Tastenbelegungen generieren. Um die Datein in das richtige Format umzuwandeln wird ein extra Programm dabei gegeben. ICh glaube es wird in .wav umgewandelt, damit keine Umkompremierung stattfinden muss und somit keine "leistungsfähige" Hardware benötigt. Gleichzeitig erhöht dieser Stritt auch die Laufzeit der Batterien/Akkus.


    Und es gibt verschieden Versionen im Arduino und Raspberry-Bereich wie hier. RFID, QR-Code lesende Geräte und was das Hobbyherz noch begehrt.


  • Hallo zusammen,


    ich baue derzeit ebenfalls gemäß der Anleitung von hailogugo eine Box.

    Hierzu hätte ich eine Frage:


    Ich möchte gerne ein 7-Segment Display anschließen. Mittels vlc bindings versuche ich Informationen vom VLC Player abzurufen. Dies funktioniert jedoch derzeit nicht, da ich nicht auf die Instanz des laufenden VLC's zugreifen kann. Hat jemand erfolgreich eine Abfrage vom VLC für das Display zum Laufen gebracht? Am meisten Hoffnung habe ich da beim User Audiofreund: Script bitte :):):):):)


    PS: hailogugo : Dank deiner Anleitung, kann ich für meine Tochter eine Jukebox bauen. Vielen Dank dafür.

  • Weiter vorher hatte jemand auch einen Skript hochgeladen für das Display. Guck mal etwas nach meiner Anleitung weiter hoch. Dort ist der Anhang. Bin gerade mit dem Handy online deshalb kann ich dir es nicht suchen.

  • Hallo JoachimJOY,


    erstmal willkommen im Forum!

    Das Script ist mir bekannt. Jedoch verwendet es einen anderen Media Player.

    Was hast Du wie und vor allem womit gemacht, damit Musik aus Deinem Lautsprecher kommt? :conf: Ein anderer Player != ein ander Server / Daemon.


    BTW: VLC hält einige Dokus bereit: https://wiki.videolan.org/VLC_command-line_help/ oder https://wiki.videolan.org/Documentation:Command_line/


    Vermutlich findest Du dort eine / Deine Lösung.

  • Hi Hyle,


    mittels VLC bindings habe ich es hinbekommen, dass ich eine VLC Instanz starte und z.B. Länge des Tracks etc. abfragen kann:


    instance = vlc.Instance()

    media = instance.media_new('test.mp3')

    print player.get_length()


    Was mir jedoch nicht gelingt, ist auf die bereits im Hintergrund bzw. auf dem Webserver laufende Instanz zuzugreifen. Ich habe mir bereits sämtliche Dokus angeschaut, finde dazu aber leider nichts.

  • Hi JoachimJOY ,


    kannst Du das Script zuDeinem Beitrag beifügen? Ich wollte nicht unbedingt eine Anzeige anschließen, aber vor einem Shutdown möchte ich den aktuellen Track (evt nebst Position) sichern, damit man nach dem restart dort weiterhören kann wo man aufgehört hat.

    Die ID der Instance kannst über "pidof VLC" oder "pgrep vlc" oder "ps aux | grep -i vlc" aufrufen. falls es das ist, was Du suchst.



    Viele Grüße

    X-Ray

  • Hi,

    ich bin neue hier und stehe vor dem gleichen Problem wie du. Ich habe bereits Sound auf meiner USB Soundkarte und alle Knöpfe tun so wie sie sollen außer die Volume Buttons. Im Webinterface kann ich Volume regeln. Ich habe bereits alles auf Speaker geändert. Das Problem was ich habe ist das der Sound einfach sehr leise wird und auch so bleibt wenn ich auf die VolumeUP oder VolumeDown Taste drücke. Das Ergenis ist das Gleiche. Hat einer von euch eine Ahnung woran das liegen könnte?

  • Hi @Maznel,


    Das gleiche Problem hatte ich auch, das war aber ein Tippfehler im Pythonscript, den ich gemacht habe, als ich die Pinbelegung der Buttons geändert habe. :~)

    Hast Du getestet, ob die Lautstärkeregelung mit Hilfe des Webinterfaces funktioniert? Wenn ja, dann ist der Tippfehler im Script aus meiner wahrscheinlich. Wenn das aber nicht funktioniert, dann ist wahrscheinlich die Konfigdatei für den VLC noch nicht richtig.

    Noch eine Bemerkung, falls Du die gleichen Hammeerboxen (kleiner Anfall von Ironie) wie ich verwendest, die haben auch einen Lautstärkeregler, den ich voll aufgedreht habe. Zudem kann man im VLC auch den maximalen Lautstärepegel einstellen. Evt ist der auch sehr leise eingestellt. Die letzteren Punkte könnten dazum führen, dass der VolUp Button nur vermeintlich nicht funktioniert. Anders gesagt er macht was er soll, nur erreicht er entweder den maximalen Lautstärkepegel vomVLC ode die Boxen begrenzen die Lautstärke.


    Hoffe das hilft Dir erstmal. Wenn du eine Lösung gefunden hast oder eben nicht, bitte posten, damit die anderen entweder daraus lernen oder dabei helfen können.


    Viele Grüße

    X-Ray

  • Habe das Problem beseitigen können indem ich die Zeile im Script von 1.5dB+ bzw. 1.5dB- auf 5+ bzw. 5- geändert habe. Der dB command scheint wohl nur mit PCM zu funktionieren, mit USB Audio muss man offensichtlicher nur mit Zahlen arbeiten. Ich poste später mal meinen genauen Code bin nur aktuell mit dem Handy unterwegs :)

  • kann mir bitte jemand helfen, ich bekomme das Projekt von sonix einfach nicht kompiliert mit msbuild:


    Code
    1. CSC : error CS1566: Error reading resource 'Jukebox.Device.Web.App.api.js.map' -- 'Could not find file "/home/pi/RaspberryPi.Musicbox/Device.Web/App/api.js.map"' /home/pi/RaspberryPi.Musicbox/Device.Web/Device.Web.csproj


    Das file api.js.map ist nicht im github Repo vorhanden. Hat jemand eine Idee, wie man diese aus der api.js generieren kann?

  • Hi X-Ray,


    ich habe erfolgreich mittels pidof VLC die ID der Session herausgefunden. Nun habe ich Schwierigkeiten die Instanz-Nummer einzubinden.

    Im Web habe ich leider nichts gefunden. Es gibt lediglich Programmcode mit instance = vlc.Instance() was aus meiner Sicht bedeutet, dass eine neue Instanz geöffnet wird. Hast du eine Ahnung wie ich die aktuell ermittelte Instanz ins Python bekomme?


    Hat irgendjemand Ahnung davon?


    Gruß Joachim

  • So, hat etwas gedauert bis alle Teile aus CN da waren, auf einen Button warte ich immer noch, daher habe ich mir die Zeit mal mit Eagle vertrieben, habe ich den Schaltplan für die Buttons soweit korrekt verstanden? Für was benötigt man hier eigentlich die Widerstände, in den gängigen Tutorials werden die PushButtons eigentlich immer direkt auf die GPIO Ports gesteckt?



    Edited 4 times, last by Snible ().

  • JoachimJOY

    Das weiss ich auch nicht. Ich hae für mich beschlossen - sobald ich Zeit habe - mich mit dem VLC zu befassen (ggf ist es schneller einen kleinen Player zu programmieren, der MP3 spielt. Aber halte mich/uns gerne auf em Laufenden, wen Du etwas rausbekommen hast.


    Snible

    Bin mir nicht ganz sicher ob das der Grund ist, aber mit den Widerständen sind die jeweiligen Ports auf jeden fall in einem definierten Zustand. Es kann evt auch ohne funktionieren, das habe ich nicht getestet.