Waveshare ESP32 S3 LCD Driver Board - GPIO Belegung - freie GPIOs

Hi,

ich habe diesen ESP32S3: https://www.waveshare.com/wiki/ESP32-S3-LCD-Driver-Board

Daran habe ich an TX0 und RX0 (im Bild U0TXD und U0RXD) einen Gyrosensor, der funktioniert. GPIOs 43 und 44.

Nun würde ich gerne noch einen Präsenzmelder (DF C4001) anschließen und bin mir nicht sicher, ob es überhaupt noch GPIOs gibt, die dafür verfügbar wären.

Manche PINs sind mehrfach vergeben oder nutzbar (anscheinend), daher fällt es mir schwer, 2 PINs auszumachen, die ich nutzen kann.

Vielleicht hat zufällig jemand dieses Board?

Am Board hängt noch ein 4" Display, an dem breiten Flachband-Anschluss.

Vielen Dank für eure Hilfe.

Ich habe dieses Board nicht, würde aber erstmal die Dokus lesen und wenn nichts zu finden (sehr unwahrscheinlich) ist, die einzelnen GPIOs als Led-Ausgang und Tastereingang testen.
Dann kommst du der Sache schon näher.

Ich dachte eigentlich, dass der o. g. Link zur Doku führt.

Hier gibts ein PDF, das im Link oben enthalten ist: https://files.waveshare.com/upload/f/f7/Esp32-s3_datasheet_en_%281%29.pdf

Mir fehlt ehrlich gesagt das Verständnis zu erkennen, welche GPIOs ich verwenden kann, wenn das Display per Flachbandkabel angesteckt ist.

Alle GPIOs durchprobieren, obwohl offensichtlich einige davon gar nicht verwendbar sind, das habe ich erstmal noch nicht vor. Werd ja nicht der einzige Mensch sein, der 2 Sensoren an das Teil anschließen möchte.

Vorderseite ESP32S3

Rückseite ESP32S3

In dem ersten Link hast doch alles gezeigt. GPIO 6, 7, 49 sind noch frei.
Ein bißchen nachdenken hilft.

Danke fürs Anschauen.

Ich kenne mich nicht so aus und habe sonst nur ChatGPT als "Partner".

GPIO6 und GPIO7 sind doch eigentlich für die Touchfunktion reserviert? Oder wenn ich die Funktion nicht brauche, kann ich den PIN nutzen? Und einen GIPO49 hab ich nicht gefunden oder war das nur die Mitmachkontrolle :innocent:

Sorry, aber für mich ist das alles nicht so eindeutig.

Ich habe einen GPIO7 und im Bild https://www.waveshare.com/w/upload/6/66/ESP32-S3-LCD-Driver-Board-details-9.jpg steht auch RTC, TOUCH6 und ADC1_5.

Das Display hat eine Touch-Funktion, die ich jedoch nicht nutze. Ist der GPIO durch die mögliche Nutzung der Touch-Funktion "weg"? Oder kann ich den GPIO nutzen, wenn die Touch-Funktion nicht genutzt wird. Oder spielt es keine Rolle, wenn das Display per Flachbandkabel angeschlossen ist?

Und warum das nicht ?
Wenn du mit der Doku und den zusätzlichen Angaben selbst nicht weiter kommst, ist das die beste Lösung für dich. Dann findest du auch raus, ob die Touch-Pins für dich verwendbar sind.
Oder du wartest, bis sich einer meldet, der auch dieses Board nutzt.

Eine Möglichkeit, weitere GPIOs zu schaffen, wäre es mit einem SPI-Portexpander (MCP23S17) zu arbeiten.

Portexpander brauch man nicht man kann doch die Touchpins nutzen sind , je nach dem ganz normale GPIO's. I2C ist auch noch frei.
Wie viele Pins brauchst du noch?

Was du schreibst, stimmt natürlich. Und ja, ich habe gehofft, jemand hat das Board oder kennt sich speziell mit diesem Board aus. Danke für die Idee mit dem PortExpander, vielleicht brauche ich das irgendwann mal.

Dein Vorschlag steht auch auf der Liste, falls Plan A nicht funktioniert.

Der Radar Sensor braucht nur RX/TX, also 2 PINs. Ich versuche mal 6 und 7 und melde mich wieder.

Nein ich habe mich vertan es sollte 39 sein, mit Telefon antworten ist hat blöd.

Das kommt doch immer drauf an wie viel GPIOs benötigt werden.

Positiv, der Sketch läuft durch. Das Radar initialisiert, Daten werden aber nicht ausgegeben. Vom Gyroskop kommen die Daten an.

:warning: Warum GPIO6–11 problematisch sind (ESP32-S3)

Diese Pins sind auf praktisch allen ESP32-S3 Boards intern mit dem Flash-Speicher (QSPI) verbunden.

Das meint ChatGPT, aber ich weiß nicht, ob da was dran ist. Falls ja, komme ich um eine Erweiterung der PINs nicht rum.

Wenn dem so ist, lieber einen PortExpander oder, hätte ich noch hier liegen, die Sensoren an einen ESP32C6 und den dann wieder an den ESP32S3 anschließen?

@fony Ja, habs mir schon gedacht, kenne das Problem :slightly_smiling_face:

@HotSystems Danke nochmal mit dem Hinweis zum PortExpander. Da gibts zwei Modelle I2C und SPI, da bin ich aber so Grün, dass ich nicht weiß, welche Entscheidung für ein bestimmtes Modell, welche Konsequenzen nach sich zieht.

Wenn das von ChatGPT plausibel klingt und kein Veto kommt, denke ich, ich werde das mit einem zusätzlichen ESP32 lösen, um die Sensoren anzuschließen. Es soll noch ein UART-Mux-Dingsi geben, mit dem mehrere Geräte an einer UART Schnittstelle angeschlossen werden können? Wäre das besser?

Soviel zu ChatGPT, der hat da wohl was verwechselt. Du solltest dich besser an die Daten vom Hersteller halten.

Den ich oben genannt habe, der ist für SPI, ohne S ist für I2C.

Danke für den Link.

Da steht:

The ESP32-S3 chip features 45 physical GPIO pins

Ich habe nur die PINs die hier abgebildet sind: https://www.waveshare.com/wiki/ESP32-S3-LCD-Driver-Board

Ich nehme an, das ist mit physischen PINs gemeint. Das Board gibt auch mit mehr (freien) PINs, wenn das Display nicht direkt angeschlossen wird.

Danke, schau grad nach, was die Unterschiede sind (SPI/I2C).

Hier die ESP32S3 Boards: https://esp32s3.com/

Meins ist nicht dabei: https://www.amazon.de/dp/B0D89VTL8X

Das gilt nur für den ESP32-S3 Chip. Da hat jedes Board seine eigene Pin Anzahl. Wobei du dich auf die GPIO-Kennzeichnung wiederum boardübergreifend verlassen kannst. Die ist vom Chip festgelegt.

Dann ist es aber def. ein anderes Board mit einer anderen Bezeichnung.

IC nutze ESP 32 S 3 als DevKit da habe ich alle Pins.
Dein Display frisst dir unnötig Pins, günstig war es wahrscheinlich auch nicht den das ist Waveshare Ausführung.
Als Display werden nur SPI genutzt das macht gesamt 8 Pins.

Wie geschrieben, das ist Hersteller abhängig.
Und da gibt es viele von.
Das hier ist mein aktueller Favorit. Schön klein und bietet viele GPIOs.

Zumindest ist das kein Anfängerboard. :wink:

Das steht ESP32-S3-LCD-Driver-Board.

Ja, ich hätte mich intensiver damit befassen können... Dachte nicht, dass
PINs schon belegt sind. Mit 40 Euro recht teuer, ja, dachte aber, wenn das ein Komplettpaket ist, hab ich es einfacher :grinning_face_with_smiling_eyes: An die 2 quasi fehlenden PINs hab ich jetzt nicht gedacht.

Danke für den Link. Aber mein Display könnte ich da nicht anschließen? Oder meinst du, um meine GPIOs zu erweitern? Steht bei mir jetzt auf der Liste :slightly_smiling_face:

Ich sprach auch von "anderen Boards" ohne ein festgelegtes Display.

K.A. vermute mal nein. Aber sehr viele andere TFTs lassen sich damit betreiben. Dein Display wäre mir da aktuell zu speziell.

Also, ich gehe mal davon aus, dass ich keine freien GPIOs mehr habe. Es scheint für mich zumindest so. GPIO6 und GIPO7 werden gerade genutzt, es wird der Sensor initialisiert, aber es kommen keine Daten an. Die Daten vom Gyro-Sensor werden ausgespuckt, das passt.

Leider hab ich von diesem speziellen ESP32S3 keinen Ersatz, muss also an dem löten...

Daher, und weil ich noch ein paar ESP32 rumliegen habe, würde ich jetzt die Sensoren an den anderen ESP32 anschließen und diesen dann mit dem ESP32S3 verbinden. Dann werden die Daten auf dem anderen ESP32, mit den Sensoren, berechnet und einfach an den ESP32S3 zur Ausgabe übermittelt, das sollte dann auch performanter sein, hoffe ich. Und mit den belegten GPIOs ist dann auch Ruhe.

Es sei denn, die Idee ist blöd :grinning_face_with_smiling_eyes:

Diese Pinbelegung gibts bei Amazon: PIN-Belegung ESP32S3-LCD-Driver-Board
Heißt das GPIO6 wäre RESET? Dann ist der PIN auch dahin... im Sinne von vergeben.