Ok, try looking on GitHub and getting a version of Espruino compiled and running on your board. Actually using a Linux PC or VM is probably the easiest way to build right now.
You should be able to tweak the descriptors in those to report back that it's a MIDI device. Finally I think you need to change the endpoint type to BULK here.
Hopefully you can specify in the descriptor that it's an audio device with just the IN endpoint. Actually trying to do the other endpoints could be a pain as it seems like pot luck trying to update the USB buffer sizes such that you can get enough working endpoints for USB CDC and something else.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Ok, try looking on GitHub and getting a version of Espruino compiled and running on your board. Actually using a Linux PC or VM is probably the easiest way to build right now.
Then, have a look at usbd_cdc_hid.c and usb_desc.c.
You should be able to tweak the descriptors in those to report back that it's a MIDI device. Finally I think you need to change the endpoint type to BULK here.
Hopefully you can specify in the descriptor that it's an audio device with just the IN endpoint. Actually trying to do the other endpoints could be a pain as it seems like pot luck trying to update the USB buffer sizes such that you can get enough working endpoints for USB CDC and something else.