Page 1 of 1

Fast USB stack

Posted: Thu May 10, 2018 3:04 pm
by Deouss
I am looking for code and examples how to make esp32 work with USB 2.0 protocols mostly isochronous and bulk.
I am not sure if USB 3.0 is possible and just wonder if there are any projects or libraries that could help with that.

Re: Fast USB stack

Posted: Thu May 10, 2018 7:13 pm
by loboris
ESP32 does not have any USB hardware! :?

Re: Fast USB stack

Posted: Thu May 10, 2018 9:46 pm
by Deouss
You can turn esp32 into usb device with full protocols support just don't know how fast.

Re: Fast USB stack

Posted: Thu May 10, 2018 10:14 pm
by loboris
I'm aware of some tests on implementing the software USB on ESP32, but as far as I know it is far from "you can turn esp32 into usb device with full protocols support".
Maybe USB 1.0 could be implemented, but I'm quite shure USB 2.0/3.0 will never be possible.
If you have more information, please share it.

Re: Fast USB stack

Posted: Thu May 10, 2018 10:34 pm
by Deouss
Check this guy insane attempts

https://www.youtube.com/watch?v=-NxoNdTj_7U

Re: Fast USB stack

Posted: Fri May 11, 2018 3:21 am
by ESP_Sprite
Heh, that's an USB1.1 low-speed (1.5MBit) stack on an entirely different processor. You're skipping straight past USB1.1 full-speed (12MBit) and are not only intending to run USB2.0 on it (480MBit) but even USB3.0 (5GBit)? I like your optimism, but I hope you can imagine we think that not only porting this library from the ESP8266 to the ESP32 but also increasing the speed 320-fold or even 3333-fold is... well, let's say I wish you good luck in your attempt and sincerely hope you find some way to pull it off, but you'll have to excuse us for not holding our collective breath.

Re: Fast USB stack

Posted: Fri May 11, 2018 11:16 am
by Deouss
Well, yes that example was done on ESP8266 but ESP32 is faster, right? So at least usb1.1 would be possible.
I am not sure how to calculate speed but with 240MHz running 2 parallel transfers (per core) can give you insane speeds.
I wonder if anyone measured common esp32 transfer speeds like bluetooth, wifi etc