P10 LED Module steuern mit ESP32

Hallo zusammen,
ich habe zufällig eine alte LED Tafel gefunden und dachte mir, die bekomme ich sicherlich wieder zum laufen. Ohne wirkliche Ahnung habe ich mich also an die Arbeit gemacht und erstmal versucht irgendwelche Treiber für das Ding zu finden.
Ursprünglich ist die LED Tafel von irgendeiner chinesischen oder asiatischen Firma, welche genau weiß ich leider nicht mehr. Jedenfalls konnte ich den verbauten Controller nicht ansteuern, da dieser nicht in der Software enthalten war. Das Ding ist wahrscheinlich schon uralt :smiley:

Kurzerhand habe ich mir dann einen ESP32-WROOM-32D gekauft und versuche seit dem die LED Module und den ESP richtig zu verkabeln und zu programmieren.
Da ich, wie schon erwähnt, keine wirkliche Ahnung davon habe und kurz vor der Aufgabe des Projektes stehe, wollte ich hier mal um Hilfe fragen.

Wie verkabel ich das richtig und wo finde ich einen passenden Code, den ich mit ArduinoIDE benutzen kann?
Selber schreiben wird schwierig für mich. Aus Zeitgründen kann ich mich da nicht reinlesen. ChatGPT und Reddit haben nicht wirklich geholfen und bei diverse YouTube Tutrorials kam nur sinnloses Pixel blinken. Nie das was ich, meines Wissen nach, eingeben habe.
Anbei auch Bilder:

Hallo und willkommen @jorit_sbt im besten Arduino-Forum wo gibt :slight_smile:

Lass mich deine bisherige Bemühung bei Reddit hier noch einmal verlinken, damit Teilerfolge nicht untergehen oder übersehen werden... :wink:

z.B. diese dort erwähnte gut beschriebene Anleitung "P10 led matrix and arduino"

Ich kenne das Display selbst nicht, aber als erstes würden mich zwei Sachen interessieren:
Welche Bezeichnung hat der erste IC nach dem Anschluss? Die anderen sind wohl 74HC595D-Shift-Register.
Mit welcher Spannungsquelle betreibst du das Ganze? Vor allem welche Leistung/wieviel Strom kannst du im 5V-Bereich liefern?

Und du @jorit_sbt solltest dabei nicht außer Acht lassen, das Display wird mit 5 Volt betrieben, der ESP32 verträgt nur 3,3V an den Pins. Das verträgt sich nicht. Du brauchst dafür einen SPI Levelshifter.

Hallo,
bei Reddit habe ich unteranderem folgende Beiträge zum Thema.

Die Anleitung werde ich mir morgen mal anschauen. Vielen Dank dafür schonmal.
Und welchen IC soll ich genau entziffern? Ist der auf einem der Bilder zu sehen, damit ich weiß, wonach ich suchen muss?

Insgesamt habe ich 3 Panel die mit je 5V betrieben werden. Zu denen gabs ein Netzteil mit welchem die betrieben wurden. Spannung liegt überall an, Strom kann ich nicht messen. ESP32 bis jetzt nur über USB-C Kabel und Laptop betrieben, unabhängig von den Panels

Dennoch solltest du die Verbindung zwischen beiden nicht ignorieren.


Diesen hier meinte ich :slightly_smiling_face: ist auf dem Bild schwer zu erkennen.

HIER habe ich noch eine Diskussion zum Thema gefunden. Leider nur englisch, aber da sehe ich einige Erfolge

Du suchst: Freetronics DMD 512 LED Matrix Display.

Hinweis: 5V!

Den Rest übernimmt @derGeppi für mich, ich bin leider zu nix zu gebrauchen.

Geppi: Belegung für Arduino DMD/DMD.h at master · freetronics/DMD · GitHub

1 Like

Hat Dich irgendwas erwischt? Dann gute Besserung.

Gruß Tommy

1 Like

...zuviel der Ehre :sweat_smile:
Wie gesagt, habe so ein Display ja selbst (noch!) nicht am Start,... da würde ich mich mit "mach so und so" weit aus dem Fenster hängen :wink:
Aber mit dem von Dir genannten Suchbegriff kommt man schon gut voran:

Auch wenn das mit dem ESP32 bestimmt irgendwie funktioniert, so habe ich doch bei der Recherche überflogen, daß das seine Tücken hat (Levelshifter verwenden, ältere Board-Definition laden, SPI-Pins umbelegen etc.).
Daher der bereits ausgesprochene und gut gemeinte Rat, es doch zuerst mit einem Arduino Uno/Nano zu probieren, um überhaupt mal ein Ergebnis zu erhalten.

Noch ein Fund zur Verkabelung:
Freetronics empfiehlt zur Verwendung den hauseigenen DMD-Connector für den Arduino Uno und halten sich mit der Benennung der Anschlüsse etwas bedeckt.

Im Connector sieht es so aus:


Quelle: wireless-notice-board-Projekt

Danke, ich werd schon wieder.
Ist eben nix, wenn man alt ist und 1000 Sachen gleichzeitig macht.

Naja, viel ist ja da nicht.
Und in der Header-Datei ist das schon gut beschrieben.
2 Bänke, ein Genaralreset und der SPI. Viel falsch geht dabei zum Glück nicht. Ausser der Versuch die 5V vom Arduino zu holen :slight_smile:

Auf dem IC steht:
74HC245D
L9H4T5
UnG1003E

Zur Stromversorgung habe ich das:


und dann die 3 Panels in Reihe geschaltet

und ich bestelle mir mal einen Arduino Uno und gehe nach dieser Anleitung vor die @derGeppi vorgeschlagen hat

Passt. Der dient -salopp gesagt- nur zur Signalstabilisierung.

Netzteil 5V/40A. Das reicht! :slight_smile: (am Ende kann man sogar den Arduino/ESP und weitere 5V-Peripherie noch damit versorgen, wenn er nicht gerade am PC hängt)

Das ist zwar das Ziel, aber vorerst nur an einem Panel austoben. Eine falsche elektrische Verbindung, wo sie nicht hingehört und man hat 3x Schrott :face_with_peeking_eye:

Guter Plan. Und ich mir so ein P10-monochrom-Panel, einfach nur, weil haben will... :blush:

Statt eines UNO R3 würd ich einen Mega2560 nehmen. Mehr Speicher.
Aber bevor Du was bestellst, ist es besser mal zu schauen was Du brauchst.
Grüße Uwe

zu spät :blush: dann bestell ich mir den auch noch und teste was besser ist

Nein.
Probier es mal mit dem UNO R3. Wenn es nur mit einem LED Modul funktioniert, aber nicht mit 3, dann hat der UNO zu wenig Speicher.
Später kannst Du immer noch einen MEGA2560 kaufen.

Grüße Uwe

Hallo, ein Update!
Mit dem UNO Rev3 hats jetzt mit einem Display geklappt.
ich bin etwas verwirrt, da die Laufschrift nach dem Upload direkt gestartet hat, und ich das Panel nicht mal am Strom hatte :thinking:
und ich habe horizontal leere Zeilen in der Schrift.

(Da soll "Welcome to Circuit Digest") stehen

aber ich werte das schon als Erfolg für mich.
Und in meiner Euphorie hat sich mir die Frage gestellt, ob es ohne meegaaa Aufwand evtl. ein Programm mit GUI oder eine Web-Intergration zu schreiben. Damit ich nicht immer in ArduinoIDE den Text ändern muss. bin was das angeht echt faul :joy:

So, und jetzt teste ich das ganze nochmal mit allen Panels

So und Update Nummer 2!

Mit den 3 Displays gehts auch


allerdings habe ich, wie in den Bildern zu sehen, auf dem ersten (rechten) Panel irgendwie Pixelfehler. Die eine Reihe leuchtet nicht.

Auch wenn der UNO Rev3 getrennt vom Laptop ist und die Panel nur am Strom angeschlossen sind, leuchten da so komisch Pixel.

Kann es sein, dass da irgendwas auf dem Panel durchgbrannt ist oder so? Wobei dann würde wahrscheinlich gar nichts leuchte :joy:

naja, zur Not kaufe ich mir eben drei Neue, damit die auch wieder schön in das Gehäuse passen. Falls einer noch Ideen dazu hat, ich ganz Ohr. Sonst vielen vielen Dank für eure Hilfe. Hier im Forum ging das Projekt jetzt so schnell gut vorran. Davor habe ich Woche für Woche ohne Erfolge dagesessen und war am verzweifeln

update 3 :joy:
bei custom text läuft der einmal richtig durch, und beim zweiten mal sind am Ende noch irgendwelche Buchstaben und/oder Zeichen.

im Code ist das rot markierte ja für den Text verantwortlich wenn ich das richtig verstanden habe. So wie der Text in den Anführungszeichen steht läuft er einmal durch, dann werden zufällige Buchstaben/Zeichen drangehangen.
Aber nur bei Custom Text, wenn ich den ursprünglichen Text drinlasse, dann wird dieser problemlos angezeigt