cnlohr / espusb

Software-only ESP8266 USB Device
Other
1.45k stars 224 forks source link

USB HID MIDI Device? #36

Open Boscop opened 6 years ago

Boscop commented 6 years ago

Is it possible to make the ESP8266 appear as a HID MIDI device over USB with this library? If so, what are the necessary steps?

leopck commented 6 years ago

Not that I know of currently, I think it's not impossible to get this done. You'll just need the USB descriptor from the HID MIDI device and compile it together with espusb. This should make espusb look like a HID MIDI device.

cnlohr commented 6 years ago

AFAIK, modern OSes for some reason have started banning low-speed devices from being more sophisticated, to be in-line with the USB standard. I REALLY WISH THEY DIDN'T DO THIS! But it does mean things like MIDI, CDC, RMDIS, mass storage, etc. are all prohibited on low-speed systems :(.

There've been a lot of people complaining and for some reason nothing's been done to allow it.

Boscop commented 6 years ago

But it's possible with the Attiny85 / Digispark and Arduino (with HIDUINO): https://github.com/heartscrytech/DigisparkMIDI https://github.com/ddiakopoulos/hiduino https://github.com/NicoHood/HID

And those are also low-speed systems, right?

cnlohr commented 6 years ago

I tried this about a year ago, and got an error message saying it "didn't have enough bandwidth."

Would you be willing to try on your system? What is your system? Windows? Linux?

Boscop commented 6 years ago

Windows 8.1. Yes, I'm willing to try. What exactly should I do? :)

cnlohr commented 6 years ago

get one of the existing low-speed devices, get them to enumerate and work with Windows!