This document contains information about the SysEx implementation in the Arturia MicroBrute and its publication is due to the lack of official support in this matter.
Disclaimer
Arturia and MicroBrute are trademarks™ or registered® trademarks of their owners. There is no affiliation with Arturia or endorsement by Arturia whatsoever.
There is no warranty for the information provided here.
General information
All bytes in hexadecimal except noted otherwise.
All the messages have a sequence number in the interval 0-7F starting at 0. For every new request message the sequence number is incremented in 1. In case of the response messages, the sequence number is echoed by the MicroBrute. For simplicity's sake it will be called SN from now on.
The following parameter codes and values are used in all the messages to get and set parameters.
Parameter | Parameter Value | Values | Notes |
---|---|---|---|
Receive MIDI channel | 5 | 0-10 | The value is the MIDI channel minus 1. 10 is all. |
Transmit MIDI channel | 7 | 0-F | The value is the MIDI channel minus 1. |
Note Priority | B | 0 | Last |
1 | Low | ||
2 | High | ||
Envelope Legato | D | 0 | Off |
1 | On | ||
LFO Key Retrigger | F | 0 | Off |
1 | On | ||
Velocity Response | 11 | 0 | Linear |
1 | Logarithmic | ||
2 | Exponential | ||
Step On | 2A | 0 | Clock |
1 | Gate | ||
Bend Range | 2C | 1-C | The value is the number of semitones. |
Play On | 2E | 0 | Hold |
1 | Note On | ||
Next Sequence | 32 | 0 | End |
1 | Instant Reset | ||
2 | Instant Continuation | ||
Retriggering | 34 | 0 | Reset |
1 | Legato | ||
2 | None | ||
Gate Length | 36 | 1 | Short |
2 | Medium | ||
3 | Long | ||
Step Length | 38 | 4 | 1/4 |
8 | 1/8 | ||
16 | 1/16 | ||
32 | 1/32 | ||
Sync | 3C | 0 | Automatic |
1 | Internal | ||
2 | External |
Calibration
To calibrate the MicroBrute, you must follow all the steps in the same order while fullfilling the notes.
Step | Parameter Value | Value | Notes |
---|---|---|---|
Step 1 | 0x21 | 0 | This message must be sent while setting the pitch bend wheel at the center |
Step 2 | 0x22 | 0 | This message must be sent while setting both wheels at the bottom |
Step 3 | 0x23 | 0 | This message must be sent while setting both wheels at the top |
End | 0x24 | 0 | This message must be send 1s after the previous one |
Getting configuration from the MicroBrute
The following message is used to request for a parameter of the MicroBrute configuration.
Start | Arturia ID | 5 | 1 | SN | 0 | Parameter + 1 | End | ||
---|---|---|---|---|---|---|---|---|---|
F0 | 0 | 20 | 6B | 5 | 1 | 0 | 0 | 6 | F7 |
And this is the response message.
Start | Arturia ID | 5 | 1 | SN | 1 | Parameter | Value | Unknown | 0 | 0 | 0 | 0 | 0 | 0 | Unknown | End | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
F0 | 0 | 20 | 6B | 5 | 1 | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | F7 |
In this case, the sequence number is 0, the requested paremeter is the receive MIDI channel and the returned value is 0, which means channel 1.
Setting configuration to the MicroBrute
Setting a value is as simple as sending the following SysEx message.
Start | Arturia ID | 5 | 1 | SN | 1 | Parameter | Value | End | ||
---|---|---|---|---|---|---|---|---|---|---|
F0 | 0 | 20 | 6B | 5 | 1 | 1 | 1 | B | 0 | F7 |
In this case, the sequence number is 1, the paremeter is the note priority and the value is 0, which means last.
Getting sequences from the MicroBrute
There are 8 sequences which Sequence Id goes from 1 to 8. Internally, sequences are numbered from 0 to 7 and this convention must be used in the messages.
Sequences have 64 steps and are encoded into 2 SysEx messages.
For the notes, the midi note number is used. For the rests, the value used is 7F.
Notice that the first message has an Offset of 0, while the second message has 20 (32 in decimal).
A value of 0 means the end of the sequence has been reached, so from the first 0 on the bytes are ignored.
With this message we are requesting the last 32 bytes
Start | Arturia ID | 5 | 1 | SN | 3 | 3B | Sequence | Offset | Length | End | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|
F0 | 0 | 20 | 6B | 5 | 1 | 17 | 03 | 3B | 6 | 20 | 20 | F7 |
And the MicroBrute answers with this.
Start | Arturia ID | 5 | 1 | SN | 23 | 3A | Sequence | Offset | Length | Data (32 bytes) | End | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
F0 | 0 | 20 | 6B | 5 | 1 | 17 | 23 | 3A | 6 | 20 | 20 | data | F7 |
Notice that SN, Sequence, Offset and Length are echoed by the MicroBrute. Also, this message has the same structure as the message for setting the sequence.
Setting sequences to the MicroBrute
Same rules for getting sequences on sequence length, note encoding and rests apply here.
It is possible, however, to set sequences shorter than 32 notes. In order to achieve this, the only thing to set is the field Length but we still must provide 32 data bytes in the message (a note 0 will be used to padding the notes).
The following message would set the first 32 notes of the sequence 2.
Start | Arturia ID | 5 | 1 | SN | 23 | 3A | Sequence | Offset | Length | Data (32 bytes) | End | ||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
F0 | 0 | 20 | 6B | 5 | 1 | 47 | 23 | 3A | 1 | 0 | 20 | data | F7 |
Notice this message has the same structure as the message response for setting the sequence.
Handshaking
The handshaking process is very simple and is based on standard Non Real Time Universal SysEx.
The request message is a General Information Identity Request.
Start | Non Real Time ID | SysEx Channel | General Information | Identity Request | End |
---|---|---|---|---|---|
F0 | 7E | 7F | 6 | 1 | F7 |
The reply message is a General Information Identity Reply. Notice that the Version Number in this case is 1.0.3.2 which corresponds to the current firmware installed.
Start | Non Real Time ID | SysEx Channel | General Information | Identity Reply | Arturia ID | Family Number | Model Number | Version Number | End | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
F0 | 7E | 1 | 6 | 2 | 0 | 20 | 6B | 4 | 0 | 2 | 1 | 1 | 0 | 3 | 2 | F7 |