grainuum
grainuum copied to clipboard
Consider collaboration?
I have the software USB stack running on an ESP over at espusb. http://github.com/cnlohr/espusb
We also are toying with trying to do software updating over the USB port via a bootloader USB. When I saw your talk I was finally thinking about DFU. Is that where you were leaning or something else?
Additionally, I was confused by your lack of mention of libUSB, since we've used that on a variety of windows/linux systems and seems to work in a very uniform manner.
Fyi, I'm also attempting a port to the ESP32, using the RMT as a hardware sampling device thingamajig for now.
Coincidentally, just noticed yesterday, it looks like USB full speed MIGHT be possible on the '32. Also, I think my USB with espusb should port easily to the '32.
libUSB is a fantastic resource, and I use it on Windows for working with e.g. openocd and USB JTAG boxes. But it can be challenging to install and isn't as foolproof as USB HID.
I have looked at DFU, and there are three reasons why I decided against using it.
- It still requires a driver, although there may be a way to get around that by having it present itself as a HID device and just talking to EP0.
- More critically, there aren't a lot of DFU desktop applications available.
- DFU seems vague enough that you need to define everything yourself, so might as well make a complete implementation yourself.
Things may have changed since I last looked, though.
I have been doing more and more with signal11. I am pretty comfortable with it now. The next round of s/w usb stuff from me will totally do hidusb. I will admit, when I was doing the ESPUSB bootloader, I didn't consider DFU for similar reasons.