zmkfirmware / zmk

ZMK Firmware Repository
https://zmk.dev/
MIT License
2.48k stars 2.55k forks source link

feat(behaviors): add usb MIDI behavior support #2338

Open SolidHal opened 2 weeks ago

SolidHal commented 2 weeks ago

adds support for sending MIDI notes across 10 octaves adds support for sending MIDI control change codes adds MIDI behavior documentation

docs can be found at docs/docs/behaviors/midi.md

testing: example implementation on the btrfld keyboard here https://github.com/SolidHal/zmk/tree/btrfld/app/boards/shields/btrfld tested on both nice_nano_v2 and bluemicro840_v1 verified MIDI output using midisnoop https://linuxaudio.github.io/libremusicproduction/html/tools/midisnoop.html made a song using this :)

SolidHal commented 2 weeks ago

@petejohanson glad to hear. i'm hoping this means more people make weird, cool instruments :)

Do you have any interest in trying to also get the BLE bits working based on https://midi.org/midi-over-bluetooth-low-energy-ble-midi ?

perhaps in the future, but not right now. :)