Elektron device ID 16 (FO 00 20 3C 10 ...)?

Exactly that.

If anyone is interested in how to decode and encode these messages you can take a look here.

Also, when running Elektroid at full verbosity the message exchange can be clearly seen.

$ elektroid -v -v
Using [...] as local dir...
Initializing audio...
Adding hw:0 (Elektron Digitakt) Elektron Digitakt MIDI 1...
Loading devices...
Selecting device 0...
Initializing connector to 'hw:0'...
Setting blocking mode...
Stopping device...
Raw message sent: f0 00 20 3c 10 00 00 00 00 00 00 01 f7
Message sent: 00 00 00 00 01
Raw message received: f0 00 20 3c 10 00 04 00 01 00 00 01 0c 10 00 01 02 10 13 11 12 20 00 21 22 23 30 31 32 40 00 41 42 44 69 67 69 74 00 61 6b 74 00 f7
Message received: 00 01 00 00 81 0c 10 01 02 10 13 11 12 20 21 22 23 30 31 32 40 41 42 44 69 67 69 74 61 6b 74 00
Raw message sent: f0 00 20 3c 10 00 00 00 01 00 00 02 f7
Message sent: 00 01 00 00 02
Raw message received: f0 00 20 3c 10 00 04 00 02 00 01 02 30 30 00 33 32 00 31 2e 31 31 00 00 f7
Message received: 00 02 00 01 82 30 30 33 32 00 31 2e 31 31 00
Connected to Digitakt 1.11
Raw message sent: f0 00 20 3c 10 00 00 00 02 00 00 10 2f 00 f7
Message sent: 00 02 00 00 10 2f 00
Raw message received: f0 00 20 3c 10 00 04 00 03 00 02 10 00 00 00 00 00 00 00 00 00 00 00 44 64 72 75 6d 20 6d 00 61 63 68 69 6e 65 73 00 00 00 00 00 00 00 00 00 00 00 00 44 64 72 75 00 6d 73 00 00 00 00 00 00 00 00 00 00 00 44 45 00 6c 65 6b 74 72 6f 6e 00 20 53 50 00 00 00 00 00 00 00 00 00 00 00 44 00 69 6e 63 6f 6d 69 6e 00 67 00 00 00 00 00 00 00 00 00 00 00 44 6c 6f 00 6f 70 73 00 00 00 00 00 00 00 00 00 00 00 44 00 72 65 63 6f 72 64 65 00 64 00 00 00 00 00 00 00 00 00 00 00 44 73 69 00 6e 67 6c 65 20 63 79 00 63 6c 65 00 00 00 00 00 00 00 00 00 00 00 44 00 77 61 76 65 74 61 62 00 6c 65 73 00 f7
Message received: 00 03 00 02 90 00 00 00 00 00 00 00 00 00 44 64 72 75 6d 20 6d 61 63 68 69 6e 65 73 00 00 00 00 00 00 00 00 00 00 44 64 72 75 6d 73 00 00 00 00 00 00 00 00 00 00 44 45 6c 65 6b 74 72 6f 6e 20 53 50 00 00 00 00 00 00 00 00 00 00 44 69 6e 63 6f 6d 69 6e 67 00 00 00 00 00 00 00 00 00 00 44 6c 6f 6f 70 73 00 00 00 00 00 00 00 00 00 00 44 72 65 63 6f 72 64 65 64 00 00 00 00 00 00 00 00 00 00 44 73 69 6e 67 6c 65 20 63 79 63 6c 65 00 00 00 00 00 00 00 00 00 00 44 77 61 76 65 74 61 62 6c 65 73 00
[...]
  • Messages are the payload of raw SysEx messages. These messages contain bytes over 0x7f, which are not allowed in the content of a SysEx message, so they need to be converted to 7 bit chunks and for every 7 chunks an additional byte containing the 7 missing bits is added.
  • SysEx messages are transmitted over MIDI.

Notice that MIDI USB messages are always 4 byte packages, which payload may vary from 1 to 3 bytes with 0 padding and where the first byte specifies the content type. See section 4 (USB-MIDI Event Packets) on the quoted document.

4 Likes