ESP32-S3 USB OTG - USB Hub support?

chase.liu
Posts: 1
Joined: Fri Jun 16, 2023 8:42 am

ESP32-S3 USB OTG - USB Hub support?

Postby chase.liu » Sat Jun 17, 2023 6:25 am

I have a display board, there is a usb hub on the board. There is a cdc device behind the hub, and maybe more devices behind the hub in the future. I need the esp32s3(as the cdc host) to talk to the cdc device behind the hub. Is there any way to do this? Any info about the API, example, or doc will help a lot, thanks.

The communication I want works like this:
ESP32 -> usb HUB -> cdc device

ESP_Dazz
Posts: 308
Joined: Fri Jun 02, 2017 6:50 am

Re: ESP32-S3 USB OTG - USB Hub support?

Postby ESP_Dazz » Sun Jun 18, 2023 4:41 am

Hub support is still on our todo list. See the USB Host Library documentation for more details.

nickbits
Posts: 7
Joined: Tue Jul 27, 2021 4:58 am

Re: ESP32-S3 USB OTG - USB Hub support?

Postby nickbits » Tue Jul 04, 2023 1:22 am

FYI you also can't roll your own hub support because the current SDK does not let you open an endpoint for address 0, which is needed for device enumeration. I got things working up until that point and then was stuck.

davidb
Posts: 2
Joined: Sun Sep 10, 2023 1:04 am

Re: ESP32-S3 USB OTG - USB Hub support?

Postby davidb » Sun Sep 10, 2023 1:11 am

ESP_Dazz, how far is it on the todo list?

Is there a way to implement something without having official support? Via TinyUSB or other ways

stefro
Posts: 1
Joined: Fri Oct 13, 2023 8:38 am

Re: ESP32-S3 USB OTG - USB Hub support?

Postby stefro » Fri Oct 13, 2023 8:42 am

Also interested in the topic. Hub support could extend a lot the functionality of a single chip.
In my case I was looking to see if I can connect multiple usb webcams. If possible in another way, please let know.

Thank you!

TVA_VAE
Posts: 3
Joined: Sun Nov 29, 2020 3:15 pm

Re: ESP32-S3 USB OTG - USB Hub support?

Postby TVA_VAE » Mon Oct 16, 2023 3:10 pm

Dear,

Any update yet? We also need USB hub support (to communicate to 6 devices behind the hub, if already possible).

Greetings

ESP_Bob
Posts: 78
Joined: Fri Nov 27, 2020 12:52 pm

Re: ESP32-S3 USB OTG - USB Hub support?

Postby ESP_Bob » Wed Oct 18, 2023 8:43 am

USB Hub is not supported by Host Driver now. Would you please tell us the application scenario? Which kind of device users want to connect through HUB? and how many? this will help us evaluate the priorities of this driver development

davidb
Posts: 2
Joined: Sun Sep 10, 2023 1:04 am

Re: ESP32-S3 USB OTG - USB Hub support?

Postby davidb » Sun Nov 05, 2023 10:00 pm

2 HID devices in my case. Having both mouse & keyboard is a pretty basic use case

relevante
Posts: 3
Joined: Fri Dec 22, 2023 12:10 pm

Re: ESP32-S3 USB OTG - USB Hub support?

Postby relevante » Fri Dec 22, 2023 12:25 pm

ESP_Bob wrote:
Wed Oct 18, 2023 8:43 am
USB Hub is not supported by Host Driver now. Would you please tell us the application scenario? Which kind of device users want to connect through HUB? and how many? this will help us evaluate the priorities of this driver development
Has there been any progress on this?

We are trying to determine feasibility of an ESP-based single-chip solution for our project, so I haven't started looking deeply into the SDK code yet. Our project requires connecting to multiple low speed USB devices, but I wonder about nickbits' comment back in June. Can someone from Espressif please comment on this? Is there a hard block currently in the SDK that would prevent a third party from implementing their own USB hub support? Even if we were willing to modify the available ESP-IDF code to do so?

In other words, is the present limitation in the open source ESP-IDF codebase, or in the private ESP code?

I intend to assign some resources to work on this very soon, but obviously would like to know if it's currently impossible before starting, so we can focus our efforts elsewhere if our desired functionality is currently impossible.

Thank you.

ESP_Sprite
Posts: 9052
Joined: Thu Nov 26, 2015 4:08 am

Re: ESP32-S3 USB OTG - USB Hub support?

Postby ESP_Sprite » Sat Dec 23, 2023 10:58 am

Hi! I poked some people responsible for the USB stack; hope they will chime in. All the code that handles USB is entirely in the open-source part of ESP-IDF (with the exception of the CDC-ACM driver code in ROM, but host mode doesn't use any of that and even device mode only optionally uses that) so you should technically be able to implement it. I think nickbits tried to implement hub support without changing ESP-IDF and that indeed is not possible at this moment.

Who is online

Users browsing this forum: hdsjulian2 and 150 guests