Hello, my friends. I'm Saulo, writing from Brazil, (Brasília, Capital).
It's been a few months since I started working hard on implementing USB MIDI 2.0 on embedded systems. My starting points were Andrew Mee's AM_MIDI2.0Lib (MIDI 2.0 protocol), AmeNote's tusb_ump, and Mike Kent's ProtoZOA (embedded and USB), along with the official specs. My interest in this topic came from work I've been doing for a few years on MIDI transports for ESP32 (<a href=" removed link " target="_blank" rel="noopener noreferrer">ESP32_Host_MIDI). Along that path, I've been learning a bit about embedded architecture and the transport layer, especially USB.
It took many weeks of testing against Linux and Windows hosts, reading through M2-104-UM and the USB MIDI 2.0 Class Definition paragraph by paragraph. Last month I reached a stable version using TinyUSB, both Device and Host modes, validated first on RP2040 and then on Adafruit Feather RP2040 Host (Pico SDK, CMake). After testing across several devices, I opened the upstream PR: <a href=" removed link " target="_blank" rel="noopener noreferrer"> removed link .
Since then, I've been running a local branch based on the PR to keep the work moving. And that's the reason for this post: to see if others are on the same path and find allies here in the forum to push embedded MIDI 2.0 forward. So far, on my bench, I've enumerated on RP2040, RP2350, ESP32, Nordic nRF52840, and SAMD21. All of them enumerated cleanly on both Windows MIDI Services and Linux.
One angle in particular has been getting special attention: Teensy, Daisy Seed, and ESP32-P4. These are hacker-friendly boards with real audio processing capability. The experiments on these three are well under way, and this axis, where MIDI 2.0 meets real embedded audio, is where I'm going deeper.
It's been a really good experience. I'm excited about where this is going, and it would be great to find others walking a similar path.
Saulo - as your new to the forum it has dropped the links - can you please readd them to the post - thanks!