MP3 Player mit Waveshare 1.3 Zoll 240x240 Pixel IPS Display Hilfe und Anregungen

  • Hallo, ich bin Informationselektroniker und habe Erfahrung in Basic Atmel Programmierung. Linux Grundkenntnisse sind ausbaufähig. Elektronik Löten und Entwurf von Schaltungen kein Problem. Mit dem Raspberry habe ich bis jetzt nur sporadischen Kontakt.

    Ich möchte für meinen Sohn einen bezahlbaren MP3 Player bauen, der das Coverbild aus der MP3 auslesen kann und auf dem LCD anzeigt. Mein Sohn kann noch nicht lesen, kennt aber die Cover.

    Mein Sohn nutzt zur Zeit so einen kleinen Mp3 Würfel ohne Display. Der Sound ist gut, aber ich muss jedes Mal eine andere Geschichte auf die SD Karte kopieren, da das Gerät die Playlist pro Ordner nicht unterscheidet und ich nicht alle Tracks umbenennen/nummerieren will und bei 10 Geschichten drückt man sich nen Wolf um eine bestimmte Geschichte zu finden.

    Es gibt nichts auf dem Markt, das einen einfachen MP3 Player mit Farbdisplay und annehmbaren klang anbietet. Ich habe schon einiges getestet und zurück geschickt. Ein Tablet verführt immer zum spielen und im Bett zum Einschalfen auch zu hell und von mir verboten worden.

    Verwendet wird ein Raspberry Zero mit Wlan. Das ganze sollte Akkubetrieben sein und wird wahrscheinlich über eine Power-bank gespeist.
    Display für 9€ und den Raspberry für 12€ bestellt.

    Ich werde wohl einen mini USB Hub verbauen müssen, um Sound und einen Kartenleser anschließen zu können.
    über einen externen Kartenleser sollen die Mediadaten, so bleibt die mSD Karte im Raspberry Autark nur für das Betriebssystem.
    30 Cent Kartenleser

    Ich würde mich über Mithilfe und Ideen, Programmierlösungen /Codeschnipsel freuen und möchte das Projekt mit allen Installationen auch hier zum Nachbauen dokumentieren.

    Die Dateistruktur ist gegeben. Jedes Hörspiel ist in einem eigenen Ordner.
    Ein Wiki für die Einrichtung des Displays habe ich gefunden:

    https://www.waveshare.com/wiki/1.3inch_LCD_HAT#FAQ

    Leider ist dort nicht beschrieben, wie die Tasten auf der Displayplatine konfiguriert werden. Mit dem klick auf dem Bild gehts zum Wiki.

    1in44%2BLCD%2BHAT.jpg

    Wäre schön, wenn die Cover per Tastendruck, also der Player von Verzeichnis zu Verzeichnis wechselt. Dazu bräuchte man auch nur die drei Tastrer auf der rechten Seite Start/Stop, nächster Track,nächstes Verzeichnis.

    Man muss halt abstriche machen bei diesem sehr kleinen Display. Aber Kosten und Stromverbrauch stehen im Vordergrund.

    Hier im Wiki ist ein einfacher MP3 Player beschrieben. Den würde ich gern ausprobieren.
    Ist mein vorhaben damit möglich oder empfiehlt ihr mir einen anderen Player?
    Es soll möglichst die Menüstruktur der Player wie Stream, Einstellungen usw gar nicht erst angezeigt werden.
    Was noch cool wäre wären videos, aber muss nicht.
    Auch ein Herunterfahren mit einem Tastendruck ist beschrieben und wird mit eingebaut.
    Nach dem Hochfahren soll gleich der Player gestartet werden, also kinderleichte Bedienung,
    Als Lautsprecher kommen Aktivboxen mit interner USB Soundkarte. Hoffe der Raspi kann damit umgehen.
    Auf dem Bild ist nur der Klinkenstecker, aber Strom und Daten gehen alternativ über USB.

    px2530_0.jpg

    Edited 5 times, last by mirco99 (October 25, 2018 at 2:13 PM).

  • MP3 Player mit Waveshare 1.3 Zoll 240x240 Pixel IPS Display Hilfe und Anregungen? Schau mal ob du hier fündig wirst!

  • Moin micro99,

    erstmal: Herzlich Willkommen im Forum!

    Ich hoffe das es nicht überheblich rüberkommt, aber fast alle deiner Fragen werden in dem Link zum Display beantwortet.

    Dort ist die Belegung der Pins und Programmbeispiele in für verschiedene Librarys und Sprachen zu finden.

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Hallo Bernd666 ,

    Danke. Bei dem Display Wiki für den Raspberry sind die Tasten aber nicht gezeigt.
    Ich wollte mir das ausprobieren mit den bekanntesten Playern ersparen, falls mir jemand eine Empfehlung nach meinen Vorgaben geben kann.

    Quote


    Dort ist die Belegung der Pins und Programmbeispiele in für verschiedene Librarys und Sprachen zu finden.

    Die Pinbelegung muss ich nicht selber anschließen, da die Buchsenleiste für den Pi Zero kompatibel ist und passt.
    Das Wiki zeigt weiter unten andere Displays, wo das nötig wäre.
    Sonst finde ich nur einen Democode, der ein Video und ein Bild anzeigen kann. Von Tasten Zuweisungen habe ich bis jetzt nichts finden können.

    Oder werden die Tasten automatisch bei der fbtft Einbindung mit aktiviert? Bei Touch Screens habe ich gerade gelesen, können diese ebenfalls über fbtft eingebunden werden.

    Zum laufen werde ich das Display mit dem Wiki bekommen, will aber nicht nur einfach den Desktop komplett anzeigen (was ja beschrieben ist), sondern am besten gleich und nur die Coverbilder meiner MP3s aus dem Playerprogramm. Das Display hat halt nur 1,3 Zoll Da muss die Navigation einfach gehen. Deshalb die Frage mit welchem Player oder Betriebssystem dies am besten /einfachsten geht. Mein Board kommt ja erst noch, aber die meisten Player zeigen natürlich etliche Informationen mehr an, oder eine Liste der MP3 Alben in Textform. Das bei einem so kleinen Display nicht mehr lesbar wäre und für jemanden, der nicht lesen kann (ich meine jetzt nicht mich :) ) auch nichts bringt.

    Vielleicht habe ich mich da etwas unglücklich ausgedrückt.

    Edited 4 times, last by mirco99 (October 25, 2018 at 4:14 PM).

  • Moin micro99,

    schau dir in den Ordner wiringpi/obj die Dateien DEV_config an. Dort wird gezeigt wie man die Tasten nutzen kann.

    Falls du Python bevorzugst. Dort wird es doch ähnlich gemacht.

    Das Problem ist, zumindest meins, das ich nicht wirklich bereit bin, für andere die Entwicklungsarbeit zumachen.

    Bei vorhandenen Ansätzen, sowohl beim Code als auch bei der harten Ware, helfe ich gerne.

    Mein Vorschlag: Wenn die Teile bei dir sind, installiere dir Raspbian und fang das "Spielen" an. Dann bekommst du langsam das Gefühl für den Raspberry.

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Super, das suchte ich.

    Ich wollte es von dir ja nicht entwickelt haben, aber als Neuling ist es nicht einfach Zusammenhänge und Vorgehensweisen zu erkennen.

    Jetzt weiss ich, das in der BCM2835 Libary, die ich ja sowieso für die Anzeige laden muss auch Tasten deklariert werden.

  • Oder werden die Tasten automatisch bei der fbtft Einbindung mit aktiviert?

    Nein, hier im user manual findest Du die Zuordnung. Sie sind so mit den drei letzten GPIO (auf der Pinleiste) verbunden, so lese ich das draus.

    KEY1 P21 Button 1GPIO (ist Pin 40)
    KEY2 P20 Button 2GPIO (ist Pin 38)
    KEY3 P16 Button 3GPIO (ist Pin36)



  • Bin wieder zurück.... :)

    Alle Teile bekommen und 25 Stunden rumprobiert und gelesen, studiert und ausprobiert.
    Ich nutze das RASPBIAN STRETCH WITH DESKTOP. und den Raspberry Zero.

    Das Display funktioniert mit dem bcm2835 Sample.

    Ich möchte Kodi zum Abspielen der MP3 verwenden und habe dazu KodiDisplayInfo installiert.

    Ich habe alle Skripte auf 240x 240 Pixel angepasst, LCD bleibt schwarz.
    Muss beim KodiDisplayInfo die Datei __init__.py im Verzeichnis classes die initialisierung des Displays eingetragen werden?

    Ich bin nach der Anleitung von Waveshare vorgegangen und alle Libarys installiert.

    Python-dev, Python3, spidev, bcm2835 wiringPi

    Das Display wird auch als Dev1 angezeigt.
    Wichtig war auch zu wissen, das es 2 verschiedene Displays gibt. Habe anfänglich die falsche Anleitung für das 1.44 Zoll Display verwendet.
    Also Raspi wieder neu Installiert und von vorne.

    Zurück zu den Samples des Herstellers. ich bekomme das Python Sample nicht zum laufen.

    https://www.waveshare.com/wiki/File:1.3inch_LCD_HAT.tar.gz

    Fehlermeldung bei Eingabe von:

    python main.py

    root@raspberrypi:/home/pi/1.3inch_LCD_HAT/python# python main.py

    Traceback (most recent call last):

    File "main.py", line 18, in <module>

    disp = ST7789.ST7789(SPI.SpiDev(bus, device),RST, DC, BL)

    IOError: [Errno 2] No such file or directory

    root@raspberrypi:/home/pi/1.3inch_LCD_HAT/python#

    Gebe ich in der Main.py device =1 anstatt 0 an gibt es keine Fehlermeldung aber auch kein Bild.

    könnt Ihr mir einen Tip geben, bin am verzweifeln.

    Edited once, last by mirco99 (November 15, 2018 at 3:15 PM).

  • Bitteschön :) Der Quellcode ist 1zu1 der Samplecode des Herstellers! Dort ist nichts verändert.

  • Ja in der Raspi config, wie bereits geschrieben: Das Display funktioniert mit dem bcm2835 Sample.
    Brauche aber Python und das Python Sample zeigt die Fehlermeldung als wenn er das Device an Bus 0 nicht findet.

  • Wenn ich in der fbtft.conf das device auf 1 stelle, vorher das Sample über bcm2835 gestartet und gestoppt habe, zeigt das Display ja noch das letzte Bild an. starte ich dann das Pyton Sample, wird das Display schwarz. Bei device =0 wie es in der Anleitung steht, kommt die oben gezeigte Fehlermeldung. Das Display zeigt aber noch das letzte Bild des bcm Samples weiterhin.

    Das zeigt mir doch das das Python Sample eine Initialisierung schafft, nur die Daten kommen nicht richtig an.

    Keiner eine Idee?

    Der Controller ST7789VM ist auch mit keinem anderen Treiber kompatible, habe zumindest keinen gefunden. Sonst hätte man mit einem Adafruit Treiber vielleicht testen können.

    meiner Meinung liegt das Problem hier:

    sudo nano /etc/modprobe.d/fbtft.conf

    Das ist direkt aus der Anleitung herauskopiert

    https://www.waveshare.com/w/upload/6/6b/…r_manual_en.pdf

    Müssen die Adresszuweisungen in ein Zeile? oder kann man das so lassen? Habe beides probiert.

    Edited once, last by mirco99 (November 16, 2018 at 10:20 AM).

  • Fehler gefunden. Beim Auspacken der Samples gab es ein Berechtigungsproblem. Jetzt funktioniert auch das Python Sample.

    Kennt sich jemand mit Kodi und dem KodiDisplayInfo aus?

    https://www.opendisplaycase.de/kodidisplayinfo.html

    Mit dem Start Script bekomme ich das Display nicht zum arbeiten.

    Wird das Addon im Kodi angezeigt oder muss es irgendwie hinzugefügt werden?

    Das Start Script startet das Displayinfoprogramm, dann Kodi.

    Beende ich Kodi und starte das Displayinfo manuell, bekomme ich folgende Fehlermeldung:

    pygame error

    No Video Mode Large enough for 240x240

    Es werden Teile von Pygame benötigt. Kann mir jemand sagen, wo ich die Anpassung der Auflösung im Pygame machen kann?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!