abcminiuser / lufa

LUFA - the Lightweight USB Framework for AVRs.
http://www.lufa-lib.org
1.04k stars 329 forks source link

Add MIDI-CI Support #144

Open brandenbyers opened 5 years ago

brandenbyers commented 5 years ago

Add MIDI Capability Inquiry (MIDI-CI) Support

Are there any plans to implement the MIDI-CI spec? If there aren't current plans, is LUFA open to it being added?

For reference, see the MIDI-CI spec (sorry I can't post a direct link; the spec is behind a free user signup).

abcminiuser commented 5 years ago

It's not currently on my radar, but a quick at the overview shows that it's a much more enhanced MIDI spec that remains backwards compatible with the 1.0 version implemented in LUFA already. Do you have a specific application in mind that needs the extended feature-set that would benefit from the newer features?

I'm certainly open to adding it, but don't want to do a bunch of work for something that people aren't crying out for.

brandenbyers commented 5 years ago

If I’m the first one asking for this, then my guess is there aren’t too many people crying out for this in LUFA. 😀

There still isn’t much of any hardware adoption of MIDI-CI yet (the spec was released less than a year ago), but now that the roadmap for MIDI 2.0 was officially announced this month, there should be much more interest in this incremental step toward MIDI 2.0 with MIDI-CI.

I’m specifically interested in MIDI-CI for iOS development and bi-directional communication with hardware controllers. But I don’t have any hardware to test with. So I’m planning to build my own using QMK, which relies on LUFA for MIDI on AVR and LUFA + Chibios for ARM.

I have no idea if many hardware manufacturers are using LUFA for MIDI controllers, but if they are, this could be a little push they need to start implementing MIDI-CI. As a DIY MIDI controller maker, I’ve been using LUFA for midi for the past couple of years with great success. So whether you decide to implement this or not; thank you for all the work you have done!

I’ll continue digging into the spec too and see if I can contribute despite my lack of hardware programming experience.

Teknel commented 2 years ago

Adding MIDI 2.0 support will be a very interesting approach for LUFA, because is true that is not very common until now, but opens a very powerful window to new devices. We are working in a home control devices and platform based on MIDI 2.0. Mainly in SysEx8 functions that let to transmit 8bits data.