Format of SysEx messages MegaDrum can send

 

1.  Miscellaneous configuration data

F0 70 03 01 01 04 02 08 00 04 00 00 00 02 00 0a 01 04 00 00 F7 – Miscellaneous configuration data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex
03 		– MegaDrum Chain ID
01 		– MegaDrum Sysex type. 01 means a 'miscellaneous' config sysex
01 04 02 08 00 04 00 00 00 02 00 0a 01 04 00 00 data
	01 04 → 14 – 'note off' delay. 1 equals 10ms.
			In this example 0x14 → 20 → 200ms 
	02 08 → 28 – latency. 1 equals 100us.
			In this example 0x28 → 40 → 4000us → 4ms
	00 04 00 00 → 0004 – various ON/OFF flags
		bit 0 – 'All Gains Low' Yes/No
		bit 1 – not used
		bit 2 – 'Big VU Meter' Yes/No
		bit 3 – 'Quick Access' Yes/No
		bit 4 – 'Big VU Split' Yes/No
		bit 5 – 'AltFalseTrSupp' Yes/No
		bit 6 – 'InputsPriority' Yes/No
		bit 7 – not used
		bit 8 – 'MIDIThru Enbld' Yes/No
		bit 9..15 – not used
	00 00 → 14 – 'pressroll' time out. 1 equals 10ms.
 


2.  HiHat pedal configuration data

F0 70 03 02 00 03 00 05 00 04 0C 08 00 00 07 0F 00 03 00 00 00 08 07 01 00 0E 00 02 00 00
02 08 04 06 02 0C 01 06 01 06 02 0A 01 06 01 01 02 0C 01 06 01 06 02 0A 01 06 01 01 02 0A
02 0E F7 – HiHat pedal configuration data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex.
03 		– MegaDrum Chain ID.
02 		– MegaDrum Sysex type. 02 means a HiHat pedal config sysex
00 03 00 05 00 04 0C 08 00 00 07 0F 00 03 00 00 00 08 07 01 00 0E 00 02 00 00 02 08 04 06 02 0C
01 06 01 06 02 0A 01 06 01 01 02 0C 01 06 01 06 02 0A 01 06 01 01 02 0A 02 0E – data
	00 03 → 03 → 00000011
		bit 0 – pedal type: 0 – potentiometer, 1 – foot controller
		bit 1 – pedal levels: 0 – manual, 1 – auto
		bit 2 – AltIn for pedal: 0 – No, 1 – Yes
		bit 3 – LvlsRevers. Reverse levels of pedal
		bits 4..7 – curve number
			0 – Linear
			1 – Log1
			2 – Log2
			3 – Log3
			4 - Log4
			5 – Exp1
			6 – Exp2
			7 – S1
			8 – S2
			9 – Strong1
			10 – Strong2
			11 – Max
			12 – Custom1
			13 – Custom2
			14 – Custom3
			15 – Custom4
	00 05 → 05 – Chick delay in milliseconds
	00 04 → 04 – pedal CC value
	0C 08 00 00 → 00C8 – pedal low level (fully pressed)
	07 0F 00 03 → 037F – pedal high level (fully depressed)
	00 08 → 08 – HiHat Open level (OpenLvl)
	07 01 → 71 – HiHat Closed level (ClosedLvl)
	07 06 → 76 – HiHat level threshold for short (1-64) chicks
	00 0E → 0E – HiHat level threshold for long (1-127) chicks
	00 02 → 02 – HiHat cymbal input number. Must be an even number corresponding to Bow input
	00 00 → 00 → 00000000
		bit 0 – soft chicks: 0 – disabled, 1 -enabled
		bits 1..2 - CC MIDI messages reduction level
		bits 3..7 – reserved
	02 08 → 28 – HiHat Semi Open level (SOpenLvl)
	04 06 → 46 – HiHat Half Open level (HOpenLvl)
	02 0C → 2C – HiHat bow semi half open note
	01 06 → 16 – HiHat edge semi half open note
	01 06 → 16 – HiHat bell semi half open note
	02 0C → 2C – HiHat bow half open note
	01 06 → 16 – HiHat edge half open note
	01 06 → 16 – HiHat bell half open note
	02 0A → 2A – HiHat bow semi closed note
	01 06 → 16 – HiHat edge semi closed note
	01 06 → 16 – HiHat bell semi closed note
	02 0A → 2A – HiHat bow closed note
	01 06 → 16 – HiHat edge closed note
	01 06 → 16 – HiHat bell closed note
	02 0A → 2a – HiHat chick note
	02 0E → 2E – HiHat splash note

3. Pad configuration data

F0 70 03 03 01 02 0E 09 00 01 04 00 08 0F 00 00 03 01 04 00 02
00 00 00 00 02 0E 02 0E F7 – pad configuration data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex.
03 		– MegaDrum Chain ID.
03 		– MegaDrum Sysex type. 03 means a pad config sysex
01		- Pad number between 01 and 1F (32 inputs version)
                  or between 01 and 15 (22 inputs version)
02 0E 09 00 01 04 00 08 0F 00 00 03 01 04 00 02 00 00 00 00 02 0E 02 0E – data
	02 0E → 2E	- note numbe (Note)
  	09 00 → 90 – channel and curve.
		9 – MIDI channel (0..9 corresponds to channels 1..10)
		0 – curve number (0..9)
			0 – Linear
			1 – Log1
			2 – Log2
			3 – Log3
			4 - Log4
			5 – Exp1
			6 – Exp2
			7 – S1
			8 – S2
			9 – Strong1
			10 – Strong2
			11 - Max
			12 – Custom1
			13 – Custom2
			14 – Custom3
			15 – Custom4
	01 04 → 14 – pad level threshold
	00 08 → 08 – pad retrigger
	0F 00 00 03 → 03F0 – max pad level.
	01 04 → 14 – MinScan
	00 02 → 02  00000010 – pad type
		bit 0 – pad type: 0 – piezo, 1 – switch
                          (only used on rim/edge inputs)
		bit 1 – max pad level type: 0 – manual, 1 – auto 
		bit 2 – dual head: 0 – no, 1 – yes
                          (only used on head/bow inputs)
		bit 3 – 3way head: 0 – no, 1 – yes
                          (only used on head/bow inputs)
		bits 4-7 - gain level (bit7 bit6 bit5 bit4)
			0000 – 0
			0001 – 1
			0010 – 2
			0011 – 3
			0100 – 4
			0101 – 5
			0110 – 6
			0111 – 7
			1000 – 8
	00 00 → 00 → 00000000 - crosstalk suppresion
  		bits 0-2 – crosstalk suppression level (0..7)
		bits 3-5 – crosstalk suppression group (0..7)
		bits 6-7 – not used
	00 00 → 00 → 00000000 – dynamic threshold
		bits 0-3 – dynamic threshold decay time (0-15 corresponds to 0-60ms decay time).
		bits 4-7 – dynamic threshold level (0-15)  
	00 00 → 00 → 00000000 – compression and shift
		bits 0-2 – compression level (0..7)
  		bits 3-5 – level shift (0..7 corresponds to 0-56 level shift)
    		bits 6-7 – not used
    	02 0E → 2E	- 'pressroll' note number (PNote)
	02 0E → 2E	- alternating note number (ANote) 

4. 3rd zone pad configuration data

F0 70 03 04 00 02 0E 01 04 F7 – pad configuration data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex.
03 		– MegaDrum Chain ID.
04 		– MegaDrum Sysex type. 04 means a config sysex for 3rd zone
00		- 3rd zone number between 00 and 0e (32 inputs version)
                  or between 00 and 09 (22 inputs version). 00 corresponds to HiHat,
                  01 – Snare and so on.
02 0E 01 04 – data
	02 0E → 2E	- 3rd zone note number (BNote)
	For dual piezo/switch pads/cymbals:
	01 04 → 14	– 3rd zone switch level threshold (BThreshold) 
	For dual piezo/piezo pads:
	01 04 → 14
		bits 0-3 – Midpoint width for rim shots
		bits 4-7 – Midpoint position for head/rim hits separation.
	02 0E → 2E	- 3rd zone 'pressroll' note number (PBNote)
	02 0E → 2E	- 3rd zone alternating note number (ABNote)
	02 0E → 2E	- dampened note number for head/bow input (DBNote)
 

5.  Firmware version data

F0 70 03 05 04 02 06 0A 03 02 00 01 F7 – Firmware version data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex
03 		– MegaDrum Chain ID
05 		– MegaDrum Sysex type. 05 means firmware version
04 02 06 0A 03 02 00 01 data
	04 02 06 0A 03 02 00 01 → 01326A42(hex)  20081218(dec) – firmware version.

 

6. Custom curves configuration data

F0 70 03 06 00 00 02 01 0f 03 0f 05 0f 07 0f 09 0f 0b 0f 0d 0f 0f 0f F7 – curve configuration
data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex.
03 		– MegaDrum Chain ID.
06 		– MegaDrum Sysex type. 06 means a config sysex for CustomCurve
00		- custom curve number between 00 and 03 corresponding to curves 1-4
00 02 01 0f 03 0f 05 0f 07 0f 09 0f 0b 0f 0d 0f 0f 0f – data
	02 0E → 02	- value for midpoint P1
	01 0f → 1f	- value for midpoint P2
	...
	02 0E → 02	- value for midpoint P9

 

7. Positional sensing data

F0 70 03 07 00 00 02 00 05 00 0f F7 – positional sensing configuration data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex.
03 		– MegaDrum Chain ID.
07 		– MegaDrum Sysex type. 07 means a config sysex for Positional sensing
00		- Positional input number between 0 and 3 (SnareH, RideH, CrushH, Tom1H)
00 02 00 05 00 0f – data
	00 02 → 02 – Positional Sensing algorithm between 0 and 3. 0 - PS is disabled.
	00 05 → 05 – PositionalLow value.
	00 0f → 0f – PositionalHi value.
 

8. Custom Pads Names data

F0 70 03 08 00 03 01 03 02 03 03 03 04 03 05 03 06 03 07 03 08 F7 – curve configuration
data where:

F0 and F7 	- Sysex envelope bytes (mark start and stop of a sysex message)
70 		– MegaDrum Sysex ID. Signifies that it is a MegaDrum Sysex.
03 		– MegaDrum Chain ID.
08 		– MegaDrum Sysex type. 08 means a config sysex for Custom Pad Name
00		- custom name number between 00 and 1f corresponding to custom names 0-31
03 01 03 02 03 03 03 04 03 05 03 06 03 07 03 08 – data
	03 01 → 31	- value (0x31) of the first letter ("1" in this example) of the custom name  
	03 02 → 32	- value (0x32) of the second letter ("2" in this example) of the custom name
	...
	03 08 → 38	- value (0x38) of the eighth and last letter ("8" in this example) of the custom name