ESP32-S3 USB OTG - USB Hub support?
Re: ESP32-S3 USB OTG - USB Hub support?
Is there any news ?
Re: ESP32-S3 USB OTG - USB Hub support?
Hi everyone,
Seeking any news regarding support for USB hub.
We are developing a product where it is required. The limitations mentioned in earlier posts are not a showstopper for us.
But we would like to see the beta branch for public testing mentioned by tore-espressif. It would certainly help and be interesting to explore.
Any news on that one?
Seeking any news regarding support for USB hub.
We are developing a product where it is required. The limitations mentioned in earlier posts are not a showstopper for us.
But we would like to see the beta branch for public testing mentioned by tore-espressif. It would certainly help and be interesting to explore.
Any news on that one?
Re: ESP32-S3 USB OTG - USB Hub support?
Looking forward for a beta release.
I have experience developing a USB stack for MSX computers via a CH376 in low-level mode. Will contribute my findings and use it in a new ESP32 S3 project.
Btw. in my previous project I had a 8 port hub connected with various devices. But the user could choose which ones it wanted to communicate with to go around the I/O limits of the CH376.
I have experience developing a USB stack for MSX computers via a CH376 in low-level mode. Will contribute my findings and use it in a new ESP32 S3 project.
Btw. in my previous project I had a 8 port hub connected with various devices. But the user could choose which ones it wanted to communicate with to go around the I/O limits of the CH376.
Re: ESP32-S3 USB OTG - USB Hub support?
Okay, little update, I managed to connect to a USB HUB, retrieve the Hub descriptor, power-on and check which ports have devices attached, and reset each and every device.
From that moment on I'm a bit stuck because messages send/from a reset hub port attached device are not being returned. Per specification after RESET you can continue to communicate to EP0 on address 1 where the hub will forward the communication to EP0 of the connected device. Instead I still wrongly get (cached?) answers from the Hub.
One of those messages would be the SET_ADDRESS command to tell the device (and hub) that from that moment on it is at for example address 2.
After this you can communicate to address 1 for hub related messages and address 2 to N for the other devices messages.
From that moment on I'm a bit stuck because messages send/from a reset hub port attached device are not being returned. Per specification after RESET you can continue to communicate to EP0 on address 1 where the hub will forward the communication to EP0 of the connected device. Instead I still wrongly get (cached?) answers from the Hub.
One of those messages would be the SET_ADDRESS command to tell the device (and hub) that from that moment on it is at for example address 2.
After this you can communicate to address 1 for hub related messages and address 2 to N for the other devices messages.
Re: ESP32-S3 USB OTG - USB Hub support?
any news ?
Re: ESP32-S3 USB OTG - USB Hub support?
tore-espressif wrote: ↑Fri Dec 29, 2023 7:17 pm2. Small Receive FIFO - 512 bytes: 512 bytes is borderline enough for one streaming (high-bandwidth) FullSpeed device. It will not be possible to stream from 2 USB camera at the same time on S2/3 (at reasonable definition of the video).
I am trying to read data from a isochronous device, the InfiRay TS2+ thermal camera.
It uses a MPS of 524 instead of 512, which is 12 bytes too short.
that seems to be [UVC header] + [256 pixels per line * 2 byte]
My question:
Its this limit of 512 a physical limitation, where there is no way to work around?
Or might it be possible with a hack to throw away 12 bytes of every transfer.
I would be even happy with receiving 512 byte, throwing away the last 6 pixels (12 byte).
Best regards
Re: ESP32-S3 USB OTG - USB Hub support?
Hello everyone,
Any news ?
Thanks.
Any news ?
Thanks.
Re: ESP32-S3 USB OTG - USB Hub support?
Hi,
im not sure i am the one who should post this, but i believe that USB hub support is added in master now.
And bu USB hub support i mean we can connect usb hub to esp32S2/S3/P4 and USB host API should access devices connected to hub.
Good job espressif
im not sure i am the one who should post this, but i believe that USB hub support is added in master now.
And bu USB hub support i mean we can connect usb hub to esp32S2/S3/P4 and USB host API should access devices connected to hub.
Good job espressif
-
- Posts: 19
- Joined: Thu Oct 07, 2021 8:11 am
Re: ESP32-S3 USB OTG - USB Hub support?
Hello everyone interested in USB HUBs!
First of all, I'm sorry for the misinformation about the beta branch. After internal discussion we decided to wait and provide a stable HUB support. This is now available in esp-idf master branch!
Since ESPs are embedded systems there are some notable limitations (I mentioned some of them in previous posts)
* ESP32-S2/S3 has 8 channels, this practically means 1 HUB + 2 devices active at the same time. P4 has 16 channels
* Low-Speed devices through HUB do not work yet
* More in official docs (already merged internally, should be public within days)
First of all, I'm sorry for the misinformation about the beta branch. After internal discussion we decided to wait and provide a stable HUB support. This is now available in esp-idf master branch!
Since ESPs are embedded systems there are some notable limitations (I mentioned some of them in previous posts)
* ESP32-S2/S3 has 8 channels, this practically means 1 HUB + 2 devices active at the same time. P4 has 16 channels
* Low-Speed devices through HUB do not work yet
* More in official docs (already merged internally, should be public within days)
The physical limitation is 1024 bytes for all transfers. Maximum for RX is 600 when you select USB_HOST_HW_BUFFER_BIAS_IN in menuconfigIts this limit of 512 a physical limitation, where there is no way to work around?
Who is online
Users browsing this forum: Majestic-12 [Bot] and 28 guests