Cheap Yellow Display

OP #7667735
Lesenswert?

Im Moment versuche ich gerade das "Cheap Yellow Display" in Betrieb zu nehmen.

https://radio-bastler.de/forum/showthread.php?tid=24576

Nach dem Einstecken zeigte es zeigte das Display ein Demo-Menue.

Ich habe es dann mit einem "Hello World" von hier:
https://github.com/witnessmenow/ESP32-Cheap-Yellow-Display/blob/main/Examples/Basics/1-HelloWorld/1-HelloWorld.ino

neu geflasht, aber es bleibt dunkel. Weiß jemand, woran das liegt?

OP #7667739
Lesenswert?

Ok, jetzt geht es. Hier die Lösung, falls jemand das Display auch verwendet:

Um das Display zu betreiben, muss man die Library TFT eSPI installieren
( https://github.com/Bodmer/TFT_eSPI )

Die läuft aber nicht automatisch, da sie für alle möglichen Displays gemacht ist und die Default-Konfiguration nicht passt. Die muss man von hier

https://github.com/witnessmenow/ESP32-Cheap-Yellow-Display/blob/main/DisplayConfig/User_Setup.h

in den "TFT eSPI" Library-Ordner kopieren ( und vermutlich hoffen, dass sich nicht irgendwann das Hardware Layout ändert )

Anleitung dazu hier: https://github.com/witnessmenow/ESP32-Cheap-Yellow-Display/blob/main/SETUP.md

#7667770
Lesenswert?

Christoph M. schrieb:

Im Moment versuche ich gerade das "Cheap Yellow Display" in Betrieb zu nehmen. https://radio-bastler.de/forum/showthread.php?tid=24576

.. neu geflasht, aber es bleibt dunkel. Weiß jemand, woran das liegt?

Und falls du wieder Unterstützung brauchst, kannst du auch Jupp aka saarfranzose direkt im dortigen Forum anschreiben, er ist sehr hilfsbereit.

OP #7668341
Lesenswert?

Die RX/TX Leitungen des ESP32 sind hart an den CH340 angeschlossen (U0RXD,U0TXD). Die Widerstände gehen nach außen an den Stecker, deshalb haben die Signale des CH340 immer ein höhere Priorität als die vom Stecker. Irgendwo habe ich gelesen, dass es funktioniert, wenn die USB-Schnittstelle nicht bestromt ist. Das finde ich aber eher unpraktisch.

OP #7674818
Lesenswert?

Die beste Möglichkeit, Daten seriell in das Display zu bringen, ist "SoftwareSerial" zu verwenden, da die freien Pins keine Hardware-Uart haben.

1
#include <SoftwareSerial.h>
2

3
EspSoftwareSerial::UART SerialSoft;
4

5
//#define TFT_BL       21 // RED is backlight enable signal cannot be used freely
6
#define SOFTWARE_TXPIN 22 // YELLOW cable connector P3
7
#define SOFTWARE_RXPIN 35 // BLUE can only be used as input
8
#define SOFTWARE_GND      // BLACK GND
9

10
void setup()
11
{
12
  SerialSoft.begin(9600, SWSERIAL_8N1, SOFTWARE_RXPIN, SOFTWARE_TXPIN, false);
13
..

Hier gibt es noch eine Diskussion zu den Anschlussteckern:
Beitrag "Welcher Connector ist bem Cheap yello Display verbaut"

#7674868
Lesenswert?

Das ist das Pinout des verwendeten ESP32-WROOM

UART0 ist auf Pin 34/34 (IO3/1) UART1 ist auf Pin 17/18 (IO9/10) UART2 ist auf Pin 27/28 (IO16/17)

Diese I/Os scheinen nicht verwendet zu werden (der "Schaltplan" des Boards ist eines der üblichen Such-Dir-Deine-Verbindungen-Selbst-Wimmelbildchen)

#7674890
Lesenswert?

"Mein" Schaltplan ist zwar von der Variante mit einem größeren Display (3.5" statt 2.8") und daher einem anderen Layout (die RGB-LED ist auf der anderen Platinenseite bestückt, aber das Elend dürfte das gleiche sien.

Christoph M. schrieb:

Fast alle Pins sind mehrfach belegt

Ja, leider doch. Meine Wimmelbildsuche hatte die übersehen. IO16/17 hängen an der RGB-LED, damit ist UART2 blockiert.

IO9/10 sind mit dem nicht bestückten Footprint des SPI-Flash (U4) verbunden, damit /könnte/ UART1 vielleicht noch nutzbar sein.

#7674914
Lesenswert?

Harald K. schrieb:

IO9/10 sind mit dem nicht bestückten Footprint des SPI-Flash (U4) verbunden, damit könnte UART1 vielleicht noch nutzbar sein.

Nachtrag: Tatsächlich sind die auch mit dem Flash-Chip innerhalb des ESP32-WROOM verbunden und nur dann nutzbar, wenn das Flash nicht im QSPI-Modus angesteuert wird.

Man wird die Funktion also irgendwelchen anderen unbenutzten GPIOs zuweisen müssen.

Da wird man im miesen Wimmelbildschaltplan 'ne Weile suchen müssen, bis man die sicher identifiziert hat.

OP #7674922
Lesenswert?

Da wird ja nur der Default angezeigt. Das ist ein Feature des ESP32.

Sehr interessant, danke :-) Allerdings legt dann die konkrete Implementierung aus mir unerfindlichen Gründen das Display lahm ..

1
  int8_t rxPin=35;
2
  int8_t txPin=22;
3
  int8_t ctsPin = -1;
4
  int8_t rtsPin = -1;
5
  Serial1.setPins( rxPin, txPin, ctsPin, rtsPin);
6
  Serial1.begin(9600);
OP #7675019
Lesenswert?

Vielleich solltest du Serial2 oder 3 ummappen? Super Idee, damit geht es.

1
  int8_t rxPin=35;
2
  int8_t txPin=22;
3
  int8_t ctsPin = -1;
4
  int8_t rtsPin = -1;
5
  Serial2.begin(9600);
6
  Serial2.setPins( rxPin, txPin, ctsPin, rtsPin);

Die Frage ist warum? Ich habe im Programm-Header noch die SPI für den Touchscreen eingebunden. Vielleicht ist ja Serial1 irgendwie mit der SPI verbandelt ..

1
#include <SPI.h>
2
#include <XPT2046_Touchscreen.h>
OP #7958518
Lesenswert?

Es gibt immer mehr Beispiele im Repository für das CYD.
Gestern hatte ich mal den JPEG Digital Bilderrahmen probiert.

Der funktioniert gut mit kleinen JPEGS:
https://github.com/witnessmenow/ESP32-Cheap-Yellow-Display/tree/main/Examples/Projects/Slideshow

Eigentlich sollte man das Display irgendwie als Display für den Raspi nutzen können (villeicht I2C), da es vermutlich billiger als andere Displays für den Raspi sind.

#7958932
Lesenswert?

Christoph M. schrieb:

Was du damit meinst musst du mal genauer erklären. ESP weg - und Display direkt an den Raspi? Ich meine direkt, ohne Modifikation des CYD. Man könnte es entweder einfache über die USB-Schnittstelle ansteuern oder über die freien RX/TX-Pins.

Was möchtest du damit erreichen? Ein ultra lahmarschige Anzeige? Ein Display mit möglichst aufwendigen Software gehample?

Dann ist es wohl besser auf so etwas in der Art zu gehen : https://www.reichelt.de/de/de/shop/produkt/raspberry_pi_shield_-_display_lcd-touch_3_2_320x240_pixel_xp-363848

Gibt es auch in anderen Größen und bestimmt noch günstiger.

Ansonsten "Parallel RGB LCD on the Raspberry Pi GPIO Pins" -> Google

: Bearbeitet durch User

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren