8,720
edits
Changes
m
→MIDI SysEx
The SysEx common format is:
# 0xF0 - SysEx Start
# 3 bytes for Manufacturer ID(0x002033 for Kemper)# 1 byte for product type(0x02 for Kemper Profiling Amp)# 1 byte for device ID(0x7F for Omni)
# x bytes for the message (this is the device-specific part)
# 0xF7 - SysEx End
The Kemper MIDI SysEx protocol gets pretty intense, and I'll leave it to those interested to refer to the [http://www.kemper-amps.com/page/render/lang/en/p/170/id/27/cat/30/do/Kemper_Profiling_Amplifier___Downloads.html Kemper MIDI documentation]. For most users, SysEx will never be necessary. Where this really comes in handy is for software programs that want to communicate with KPA via MIDI. The big items that SysEx offer beyond NRPN above are string manipulation and requesting parameter values from the KPA. These would allow a program to act as an editor, or an advanced floorboard to maintain two-way communication with the KPA, displaying the KPA's current values and keeping on/off states in sync.
The x bytes above have a common scheme for Kemper SysEx messages, where the first byte is the function code. This is followed by an instance code, which is always 0x00. This is followed by the address, then the data. Depending on the function code, the address may be 2 bytes or 4 bytes, and the data can be variable length
{|
! Function Code !! Function !! Address Size !! Data Size
|-
| 0x01 || Single Parameter Change || ||
|-
| 0x02 || Multi Parameter Change || ||
|-
| 0x03 || String Parameter Change || ||
|-
| 0x04 || BLOB Change || ||
|-
| 0x06 || Extended Parameter Change || ||
|-
| 0x07|| Extended String Change || ||
|-
| 0x41 || Single Parameter Request || ||
|-
| 0x42 || Multiple Parameter Request || ||
|-
| 0x43 || String Request || ||
|-
| 0x47 || Extender String Request || ||
|-
| 0x7C || Request Parameter as String || ||
|}
=== Behringer FCB1010 - UnO4Kemper ===