Map Arduino Nano ESP32-S3 pins to GPIO 19 and 20

It appears that the Arduino version of the ESP32-S3 has no pins that map to Expressif's GPIO pins 19 and 20. Is this correct? Is there no way to use this board as a USB Host? Thanks, Aaron

It looks like they might be exposed via the pads on the underside so a bit of soldering would be required, although it seems they are also routed to the USB-C connector.

See the full pinout PDF.

Why can't you use different pins?

Thanks for the comments

BitSeeker:

"might be exposed via the pads on the underside"

I had previously look at this. None of the pads are mapped to GPIO 19 or 20.

sonofcy Karma: 2000+

"Why can't you use different pins?"

According to Expressif's schematic GPIO's 19 & 20 are hardwired to the USB>UART OTG unit. The DEV versions have a 2nd C socket for hosting. The programmer C socket's USB>UART is a separate chip.

Since a USB Host has to supply power back to the client device it might be easier for you to use a USB C breakout to get GPIO 19, 20 and the supply power correctly for your client. You would power the Nano normally and power your client with its own supply.

Thanks for your suggestions. I'm already using a breakout board and separate power supply to the KB. The question is how to connect D+/D- to an Arduino NANO ESP32-S3 board that doesn't seem to map GPIO 19 & 20 to any of its pins.

Oh, I see. As you suspected, the NANO ESP32-S3 board only maps its GPIO 19 & 20 pins to the USB C connector. This give you at least two ways to connect. One is to solder wires to the traces that go to the GPIO 19 & 20 pins. Another is to use a USB C breakout board plugged into the USB C connector on the NANO ESP32-S3 board to pick up the signals. Whichever way you choose power the NANO ESP32-S3 board through Vin and use an independently regulated, current-limited 5V supply for the USB device's VBUS with just the grounds common.

Search for "usb otg type c male to type a female cable or adapter". This kind of cable is the same cable or adapter used to connect a USB keyboard to a MacBook USB type c port. Also the same cable to connect a USB keyboard to a phone with USB type C port. I use this type of cable on a Uno R4 Minima to experiment with USB host.