Das Cheap Yellow Display (CYD) verfügt über eine integrierte Touchoberfläche, über die sich komfortabel virtuelle Buttons auf dem Display realisieren lassen. In vielen Projekten reicht das völlig aus.
Es gibt jedoch Situationen, in denen klassische Taster sinnvoller sind – zum Beispiel dann, wenn das Display nicht ungeschützt zugänglich sein soll oder das Gerät in einem Gehäuse verbaut wird. Auch für robuste Industrie- oder Outdoor-Anwendungen sind physische Taster oft die bessere Wahl.
Auf der Rückseite des CYD befinden sich zwei Anschlüsse, über die insgesamt fünf freie GPIOs des verbauten ESP32 erreichbar sind. Über diese Pins lassen sich problemlos bis zu fünf Taster anschließen und direkt Funktionen auf dem Display auslösen.
In diesem Beitrag zeige ich dir nicht nur, wie du diese vier Taster korrekt anschließt, sondern auch eine elegante Lösung, mit der du noch mehr als vier Taster verwenden kannst.



Zwei Möglichkeiten, einen Taster anzuschließen
Grundsätzlich gibt es zwei Wege, einen Taster an einen GPIO des ESP32 anzuschließen:
- Mit externem PullUp- oder PullDown-Widerstand
- Ohne externen Widerstand, unter Nutzung der internen PullUp-Funktion des ESP32
Die bequemere und für die meisten Projekte völlig ausreichende Variante ist die zweite. Hier nutzen wir einfach die im ESP32 integrierten PullUp-Widerstände. Dadurch wird die Verdrahtung deutlich einfacher und es sind keine zusätzlichen Bauteile notwendig.
Benötigte Komponenten
Für den Anschluss von vier Tastern benötigst du:
- zwei Taster* (12×12 mm, Printmontage, mit Tasterkappe)
- fünf Breadboardkabel*, 10 cm, männlich–männlich
- ein 400 Pin Breadboard*
- ein Anschlusskabel*
(Breadboardkabel weiblich auf vierpolige Mini-JST-Anschlüsse,
1.25 mm Raster, PH 1.25 4 Pin) - ein ESP32 Cheap Yellow Display*
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
Da das Cheap Yellow Display über insgesamt vier freie GPIOs verfügt, lassen sich grundsätzlich bis zu vier Taster anschließen.
Mit dem mitgelieferten 4-poligen Mini-JST-Kabel können jedoch nur zwei dieser GPIOs komfortabel genutzt werden. Möchtest du alle vier freien Pins verwenden und somit vier Taster anschließen, benötigst du ein weiteres passendes Anschlusskabel.
Solche Mini-JST-Kabel mit 1,25 mm Raster (PH_1.25_4P) findest du beispielsweise bei Amazon oder AliExpress meist recht günstig.
Freie GPIOs auf der Rückseite des Cheap Yellow Display
Auf der Rückseite des Cheap Yellow Display (ESP32-2432S028) befinden sich zwei Mini-JST-Anschlüsse, über die mehrere freie GPIOs des ESP32 erreichbar sind.
Diese sind wie folgt aufgebaut:
Anschluss 1:
- 3× GPIO
- 1× GND
Anschluss 2:
- 2× GPIO
- 1× GND
- 1× 3,3V
Damit stehen dir insgesamt fünf frei nutzbare GPIO-Pins zur Verfügung, die sich ideal für Taster, Sensoren oder andere digitale Eingänge eignen.
Der Anschluss mit der zusätzlichen 3,3V-Leitung ist besonders praktisch, wenn du externe Bauteile direkt mit der vom Board bereitgestellten Spannung versorgen möchtest – beispielsweise Sensoren oder Widerstandsnetzwerke.
Wichtig:
Die GPIOs arbeiten mit 3,3V Logik. Es dürfen daher keine 5V-Signale direkt an diese Pins angelegt werden.
Warum ohne externen Widerstand?
Beim Anschluss ohne externen Widerstand wird der Taster wie folgt verschaltet:
- Ein Pin des Tasters → an einen GPIO
- Der andere Pin → an GND
Im Code wird der GPIO dann als INPUT_PULLUP definiert.
Der interne PullUp-Widerstand sorgt dafür, dass der Pin im Normalzustand auf HIGH liegt. Beim Drücken des Tasters wird der Pin mit GND verbunden und geht auf LOW.
Programmierung vorbereiten
Bevor wir mit der Programmierung beginnen, solltest du zunächst alle angeschlossenen Kabel vom Cheap Yellow Display entfernen – mit Ausnahme des USB-Kabels zur Stromversorgung und zum Upload des Sketches.
Der Grund dafür ist einfach:
Nach einem Reset oder beim Hochladen eines neuen Programms können die GPIOs kurzfristig ihren Zustand ändern. Je nach vorherigem Sketch können Pins beispielsweise als OUTPUT konfiguriert gewesen sein und beim Start auf HIGH oder LOW gesetzt werden.
Sind in diesem Moment externe Bauteile angeschlossen, kann es – im ungünstigsten Fall – zu Kurzschlüssen oder unerwünschten Spannungszuständen kommen.
Um das Risiko zu vermeiden, empfiehlt es sich, das Board zunächst „nackt“ zu programmieren und die Taster erst danach wieder anzuschließen.
Programmierung: RGB-LED als Rückmeldung nutzen
Für die Programmierung starten wir bewusst mit einem einfachen Beispiel:
Statt direkt etwas auf dem Display anzuzeigen, verwenden wir die auf der Rückseite verbaute RGB-LED als visuelle Rückmeldung.
Das hat zwei Vorteile:
- Wir können schnell prüfen, ob ein Tastendruck erkannt wurde.
- Der Fokus bleibt auf den Tastern und der GPIO-Logik – ohne zusätzlichen Display-Code.
Im folgenden Beispiel lassen wir die RGB-LED in unterschiedlichen Farben aufleuchten. Später können wir diese Farben dann gezielt nutzen, um Tastendrücke zu bestätigen.


/* RGB-LED am Cheap Yellow Display per Taster steuern --------------------------------------------------- In diesem Beispiel werden zwei externe Taster am Cheap Yellow Display (ESP32-2432S028) verwendet, um die integrierte RGB-LED als visuelle Rückmeldung anzusteuern. Gelber Taster → LED leuchtet Gelb Blauer Taster → LED leuchtet Blau Hinweis: Die RGB-LED auf dem CYD ist als Common-Anode-LED ausgeführt. Das bedeutet: LOW = LED an HIGH = LED aus Autor: Stefan Draeger Blogbeitrag:Cheap Yellow Display mit Tastern erweitern – so geht’s*/ // --- RGB LED Pinbelegung (CYD Rückseite) --- #define ledRedPin 4 #define ledGreenPin 16 #define ledBluePin 17 // --- Taster GPIOs --- #define buttonYellowPin 27 #define buttonBluePin 22 void setup() { Serial.begin(9600); // Taster mit internem PullUp-Widerstand konfigurieren // Nicht gedrückt = HIGH // Gedrückt = LOW pinMode(buttonYellowPin, INPUT_PULLUP); pinMode(buttonBluePin, INPUT_PULLUP); // RGB LED Pins als Ausgang definieren pinMode(ledRedPin, OUTPUT); pinMode(ledGreenPin, OUTPUT); pinMode(ledBluePin, OUTPUT); // Alle Farben ausschalten (Common Anode → HIGH = aus) digitalWrite(ledRedPin, HIGH); digitalWrite(ledGreenPin, HIGH); digitalWrite(ledBluePin, HIGH); } void loop() { // Prüfen ob gelber Taster gedrückt wurde if (digitalRead(buttonYellowPin) == LOW) { Serial.println("Taster GELB gedrückt!"); setRgbLedValue(true, true, false); // Gelb (Rot + Grün) delay(500); // einfache Entprellung } // Prüfen ob blauer Taster gedrückt wurde if (digitalRead(buttonBluePin) == LOW) { Serial.println("Taster BLAU gedrückt!"); setRgbLedValue(false, false, true); // Blau delay(500); // einfache Entprellung } } // Funktion zum Setzen der RGB-Farbe // true = Farbe an // false = Farbe aus void setRgbLedValue(bool r, bool g, bool b) { // LOW schaltet LED EIN // HIGH schaltet LED AUS digitalWrite(ledRedPin, r ? LOW : HIGH); digitalWrite(ledGreenPin, g ? LOW : HIGH); digitalWrite(ledBluePin, b ? LOW : HIGH); }
Fazit und Ausblick
Das Cheap Yellow Display (ESP32-2432S028) lässt sich nicht nur über die integrierte Touchoberfläche bedienen, sondern auch problemlos mit externen Tastern erweitern. Über die freien GPIOs auf der Rückseite können mehrere Buttons direkt angeschlossen und mit der internen PullUp-Funktion des ESP32 ausgewertet werden.
Gerade bei Projekten, bei denen das Display geschützt verbaut ist oder eine robuste Bedienung erforderlich ist, sind physische Taster eine sinnvolle Ergänzung.
Dank der integrierten RGB-LED eignet sich das CYD außerdem hervorragend, um Eingaben direkt sichtbar zu machen – ganz ohne zusätzlichen Display-Code.
Ausblick
Im nächsten Schritt zeige ich dir, wie du noch mehr Taster an nur einem einzigen GPIO betreiben kannst – mithilfe eines analogen Eingangs und einer Widerstandsleiter. Damit lässt sich die Anzahl der Eingabemöglichkeiten deutlich erhöhen, ohne zusätzliche Hardware wie Portexpander einsetzen zu müssen.
Wenn du das Cheap Yellow Display weiter ausreizen möchtest, folgen außerdem Beiträge zu:
- Mehrere Taster an einem ADC-Pin
- Drehencoder am CYD
- Erweiterung über I²C
- Gehäusebau und feste Integration
Das CYD bietet deutlich mehr Möglichkeiten, als es auf den ersten Blick vermuten lässt.
FAQ – Taster am Cheap Yellow Display (ESP32-2432S028)
Wie kann ich einen Taster am Cheap Yellow Display anschließen?
Ein Taster wird einfach zwischen einem freien GPIO und GND angeschlossen.
Im Code wird der Pin als INPUT_PULLUP konfiguriert. Dadurch ist kein externer Widerstand notwendig. Beim Drücken des Tasters wechselt der Pin von HIGH auf LOW.
Warum reagiert mein Taster nicht am ESP32-2432S028?
Mögliche Ursachen sind:
- Kein gemeinsamer GND angeschlossen
- Falscher GPIO verwendet
- PullUp-Widerstand im Code vergessen
- Pin im vorherigen Sketch als OUTPUT konfiguriert gewesen
Prüfe außerdem, ob du den Taster korrekt zwischen GPIO und GND verbunden hast.
Warum ist die RGB-LED am CYD invertiert?
Die RGB-LED auf dem Cheap Yellow Display ist als Common-Anode-LED ausgeführt.
Das bedeutet:
- LOW = LED an
- HIGH = LED aus
Dieses Verhalten unterscheidet sich von manchen Arduino-Beispielen.
Wie viele Taster kann ich am Cheap Yellow Display anschließen?
Über die freien GPIOs auf der Rückseite stehen insgesamt fünf Pins zur Verfügung.
Mit den Mini-JST-Anschlüssen lassen sich komfortabel zwei bis vier Taster anschließen.
Für noch mehr Taster kann ein analoger Eingang mit einer Widerstandsleiter verwendet werden.
Kann ich 5V an die GPIOs des Cheap Yellow Display anschließen?
Nein.
Die GPIOs des ESP32 arbeiten mit 3,3V Logik.
5V können den Mikrocontroller dauerhaft beschädigen.
Kann ich mehrere Taster an einem GPIO betreiben?
Ja, das ist möglich.
Dazu wird eine Widerstandsleiter verwendet, die unterschiedliche Spannungen am Analog-Pin erzeugt. Diese können im Code ausgewertet werden. Eine ausführliche Erklärung folgt in einem separaten Beitrag.
Letzte Aktualisierung am: 19. Februar 2026





