MIDI Implementation Chart

Basic SysEx format

In below explanations, hexadecimal numbers are written with a leading '0x' prefix.
Value Name

0xF0

SysEx header

0x00 0x20 0x0D

MIDITEMP manufacturer ID

0x5A

Model ID (12Mic)

0x00..0x0F

Device ID (0..15)

mm

Message type (1 byte)

data

Data bytes (optional and not limited in size)

0xF7

EOX

Device ID

A number between 0 and 15 as set in the GUI of the device.

Message Types

Value Name

0x10

Request Settings Dump

0x11

Request Levelmeter Dump

0x12

Request Changes

0x13

Request Channel Label

0x20

Set Parameter

0x23

Set Channel Label

0x30

Value/Dump response

Request Settings Dump (0x10)

Format: F0 00 20 0D 5A (bank no. / dev ID) 10 F7

This type triggers a complete dump of all value response data bytes.

Settings Dump Response 0x30 (for Request 0x10 / for Parameter setting 0x20)

After being triggered by receiving a request (settings/set parameter), the device sends value response data bytes (three bytes per parameter) with its message type set to 0x30.

Request Levelmeter Data (0x11)

Format: F0 00 20 0D 5A (bank no. / dev ID) 11 F7

This type triggers a dump of levelmeter data.

Levelmeter Response 0x31 (for Request 0x11)

A consecutive dump of (single byte) levelmeter data of the following channels:

Mic1..Mic12, Phones L..R pre attenuation, Phones L..R post attenuation

Each byte corresponds to the following dBFS value:

Decimal Description

126

OVR

125..95

0dB..-6dB (level[dB] = (Value - 125) * 0.2)

94…​23

-6.5dB..-42dB (level[dB] = (Value - 107) * 0.5)

22..1

-43..-64dB (level[dB] = Value - 65)

0

UFL

Request Changes (0x12)

This type requests only changes since the last 0x10 request.

Request Channel Label (0x13)

Set Value (0x20)

Sets any number of parameters in four byte words.

Byte Description

0

Parameter number (see below)

1

LSB

2

MSB

3

Valid

The 'valid' byte value is specified for each parameter below. Its purpose is to allow partial update of the the current parameter, acting as a mask for LSB and MSB.

Example:

Parameter 0 (Input Channel 1) includes gain, AutoSet, phase invert, and other settings.

In order to only set phase invert: . Look up the valid bit in the third column: 0x08 (bit 3). . Look up the settings byte and bit in the first colum: MSB bit 3 . Create the complete parameter setting: 00 00 08 08 to set phase invert on, 00 00 00 08 to set phaes invert off.

To set both phase invert and gain at the same time for channel 2: . Look up the value of the gain byte: LSB bit 0..6, so for example 0x41 for 65 dB gain . Look up the value for phase inversion: MSB bit 3 . Add both valid bits from the third column: 0x01 + 0x08 = 0x09 (bits 0 and 3) . Create the parameter: 02 41 08 09

Parameters

Decimal Hex Description

0-11

0x00-0x0B

Input Channel Settings

12

0x0C

Combo Channel Jack

13

0x0D

Combo Channel High-Z

14

0x0E

Headphones Left

15

0x0F

Headphones Right

21

0x15

Clock Settings

23-25

0x17-0x19

Clock Lock / Sync

26

0x1A

Clock Current

48

0x30

Preset Operation

Input Channel Settings (0x0-0xB)

Byte Description Valid

LSB

Bit 0-6 Gain: values 0dB to 75

0x01

MSB

Bit 0 Reserved

Bit 1 AutoSet

0x02

Bit 2 +48V

0x04

Bit 3 Phase Invert

0x08

Bit 4-6 Group (0: none, 1-6: group)

0x10

Combo Channel Jack (0xC)

Byte Description Valid

LSB

Bit 0 Jack Channel 1: (0: XLR, 1: TRS)

0x01

Bit 1 Jack Channel 2: (0: XLR, 1: TRS)

0x02

Bit 2 Jack Channel 3: (0: XLR, 1: TRS)

0x04

Bit 3 Jack Channel 4: (0: XLR, 1: TRS)

0x08

MSB

0

Combo Channel High-Z (0xD)

Byte Description Valid

LSB

Bit 0 High-Z Channel 1

0x01

Bit 1 High-Z Channel 2

0x02

Bit 2 High-Z Channel 3

0x04

Bit 3 High-Z Channel 4

0x08

MSB

0

Headphone Volume and Settings (0xE, 0xF)

Byte Description Valid

LSB

Bit 0-6 Volume: values -63.5dB to 0dB

MSB

Bit 0 Volume: range (0: -127dB, -63.5dB)

0x01

Bit 1 Mute

0x02

Right Channel Only: Bit 2-3 Mode (0: Link, 1: Indep, 2: Bal)

0x04

Mode is only set on the right channel (0xF)

Clock Settings (0x15)

Byte Description Valid

LSB

Bit 0-3 Clock Source: (Internal, WCK, MADI Coax, MADI Opt, AVB 0-7, AVB CRF)

0x01

Bit 4: WCK always single

0x02

MSB

Bit 0-3 Sample rate index: (44.1k, 48k, 88.2k, 96k, 176.4k, 192k)

0x08

Clock Status (0x17-0x19) (Receive only)

Byte Description

0x17 LSB

Lock: Bit 0: WC, Bit 1: MADI Coax, Bit 2: Madi Opt, Bit 3-6: AVB 1-4 PRI

0x17 MSB

Sync: Bit 0: WC, Bit 1: MADI Coax, Bit 2: Madi Opt, Bit 3-6: AVB 1-4 PRI

0x18 LSB

Lock: Bit 0-3: AVB 5-8 PRI, Bit 4-6: AVB 1-3 SEC

0x18 MSB

Sync: Bit 0-3: AVB 5-8 PRI, Bit 4-6: AVB 1-3 SEC

0x19 LSB

Lock: Bit 0-4: AVB 4-8 SEC, Bit 5: AVB CRF PRI, Bit 6: AVB CRF SEC

0x19 MSB

Sync: Bit 0-4: AVB 4-8 SEC, Bit 5: AVB CRF PRI, Bit 6: AVB CRF SEC

Current Clock Source (0x1A, Receive Only)

Byte Description

LSB

Bit 0-3 Clock Source: (Internal, WCK, MADI Coax, MADI Opt, AVB 0-7, AVB CRF)

MSB

Bit 0-3 Sampling rate index: (44.1k, 48k, 88.2k, 96k, 176.4k, 192k)

Preset Operation (0x30)

Byte Description Valid

LSB

Bit 0-3 loaded preset

Bit 6 preset modified

0x40

MSB

0

Channel Labels (0x13 Request, 0x23 Set)

Channel labels are set per channel, starting with the channel number and then followed by a base64-encoded UTF-8 string.