USB OTG for ESP32 display HMI Display modules
Hello
I have an application that requires the HMI to connect to a printer via USB. The ESP32 S3 has support for USB OTG on pins 19 and 20. But HMI series displays are using port 19 and 20 for I2C port.
I have found when using the ESP32 with Arduino IDE, the default I2C pins are GPIO 22 (SCL) and GPIO 21 (SDA) but you can configure your code to use any other pins.
It looks like I can cut the traces at 19 and 20 and move them to two other pins.
Even though the ESP32 has many io they are all used for all the peripherals.
So my conclusion is that I can give up one peripheral that is not needed for an application and use that one for I2c.
The peripherals that I am considering not using are UART, SD Card, or I2S
If I cut the traces at the ESP32 at 19 and 20 and then jump the open traces to ESP pin 37 and 36 then change the wire begin to use the new i2c pins.
Then Jumper ESP pins 19 and 20 to a USB C connector along with +5 and ground from the board.
Any comments would be appreciated.
Comments
Hello Mark,
IO36 and IO377 have been occupied by the module's internal OSPI PSRAM, so you can not use them as I2C port
You can use the IO17, IO18 as I2C interface
Hello Winny thanks for your reply
You said "IO36 and IO377 have been occupied by the module's internal OSPI PSRAM, so you can not use them as I2C port RE: PINS 36 and #7"
I said "ESP pin 37 and 36 " that is TXD0 and RXD0" But I realize now it is the programming port
IO17 and IO18 are used for the i2S - and would be good If I don't need sound
How about if I do not need the SD card Can I use IO10 , IO11 IO12, or IO13 ?
Mark
Yes, you can use IO10 , IO11 IO12, or IO13 if you don't need SD card