A MIDI library for Muse Kinetics and KMI products. Intended for 32bit embedded and desktop applications, this library should limit itself to the c++11 std library while maintaining a small memory footprint.
This library should remain compatible with the KMI MIDI Device Manage (KMDM) library that uses the Qt framework, but it should not use any Qt methods or libraries.
- CRC checks are dependent on system architecture (8bit, 32bit, little/big endian). Legacy KMI devices that crc was implemented under were 8bit little-endian. If CRC checks fail there is a debug message you can set a breakpoint on to trace the issue, see utils_crc.h for more info
- Bytestream parsing and formatting
- SysEx Universal messagine, mainly ID requests/reply
- Device metadata
- KMI formatted sysex - preamble, 8<>7 bit encoding/decoding, CRC, message category / type
- Pearl MalletStation EM Pro
- EM Pro Sound Card
- More in development
- Eric Bateman - eric@musekinetics.com
Copyright (c) 2026 KMI Music, Inc.
This project is licensed under the MIT License — see the LICENSE file for details.