Control Surface main
MIDI Control Surface library for Arduino
Go to the documentation of this file.
1#pragma once
3#include <Def/Channel.hpp>
7namespace MCU {
22constexpr uint8_t REC_RDY_1 = 0x00;
23constexpr uint8_t REC_RDY_2 = 0x01;
24constexpr uint8_t REC_RDY_3 = 0x02;
25constexpr uint8_t REC_RDY_4 = 0x03;
26constexpr uint8_t REC_RDY_5 = 0x04;
27constexpr uint8_t REC_RDY_6 = 0x05;
28constexpr uint8_t REC_RDY_7 = 0x06;
29constexpr uint8_t REC_RDY_8 = 0x07;
31constexpr uint8_t SOLO_1 = 0x08;
32constexpr uint8_t SOLO_2 = 0x09;
33constexpr uint8_t SOLO_3 = 0x0A;
34constexpr uint8_t SOLO_4 = 0x0B;
35constexpr uint8_t SOLO_5 = 0x0C;
36constexpr uint8_t SOLO_6 = 0x0D;
37constexpr uint8_t SOLO_7 = 0x0E;
38constexpr uint8_t SOLO_8 = 0x0F;
40constexpr uint8_t MUTE_1 = 0x10;
41constexpr uint8_t MUTE_2 = 0x11;
42constexpr uint8_t MUTE_3 = 0x12;
43constexpr uint8_t MUTE_4 = 0x13;
44constexpr uint8_t MUTE_5 = 0x14;
45constexpr uint8_t MUTE_6 = 0x15;
46constexpr uint8_t MUTE_7 = 0x16;
47constexpr uint8_t MUTE_8 = 0x17;
49constexpr uint8_t SELECT_1 = 0x18;
50constexpr uint8_t SELECT_2 = 0x19;
51constexpr uint8_t SELECT_3 = 0x1A;
52constexpr uint8_t SELECT_4 = 0x1B;
53constexpr uint8_t SELECT_5 = 0x1C;
54constexpr uint8_t SELECT_6 = 0x1D;
55constexpr uint8_t SELECT_7 = 0x1E;
56constexpr uint8_t SELECT_8 = 0x1F;
58constexpr uint8_t V_POT_SELECT_1 = 0x20;
59constexpr uint8_t V_POT_SELECT_2 = 0x21;
60constexpr uint8_t V_POT_SELECT_3 = 0x22;
61constexpr uint8_t V_POT_SELECT_4 = 0x23;
62constexpr uint8_t V_POT_SELECT_5 = 0x24;
63constexpr uint8_t V_POT_SELECT_6 = 0x25;
64constexpr uint8_t V_POT_SELECT_7 = 0x26;
65constexpr uint8_t V_POT_SELECT_8 = 0x27;
67constexpr uint8_t ASSIGN_TRACK = 0x28;
68constexpr uint8_t ASSIGN_SEND = 0x29;
69constexpr uint8_t ASSIGN_PAN = 0x2A;
70constexpr uint8_t ASSIGN_PLUGIN = 0x2B;
71constexpr uint8_t ASSIGN_EQ = 0x2C;
72constexpr uint8_t ASSIGN_INSTR = 0x2D;
74constexpr uint8_t BANK_LEFT = 0x2E;
75constexpr uint8_t BANK_RIGHT = 0x2F;
76constexpr uint8_t CHANNEL_LEFT = 0x30;
77constexpr uint8_t CHANNEL_RIGHT = 0x31;
79constexpr uint8_t FLIP = 0x32;
80constexpr uint8_t GLOBAL_VIEW = 0x33;
81constexpr uint8_t NAME_VALUE = 0x34;
82constexpr uint8_t SMPTE_BEATS = 0x35;
84constexpr uint8_t F1 = 0x36;
85constexpr uint8_t F2 = 0x37;
86constexpr uint8_t F3 = 0x38;
87constexpr uint8_t F4 = 0x39;
88constexpr uint8_t F5 = 0x3A;
89constexpr uint8_t F6 = 0x3B;
90constexpr uint8_t F7 = 0x3C;
91constexpr uint8_t F8 = 0x3D;
93constexpr uint8_t VIEW_MIDI = 0x3E;
94constexpr uint8_t VIEW_INPUTS = 0x3F;
95constexpr uint8_t VIEW_AUDIO = 0x40;
96constexpr uint8_t VIEW_INSTR = 0x41;
97constexpr uint8_t VIEW_AUX = 0x42;
98constexpr uint8_t VIEW_BUSSES = 0x43;
99constexpr uint8_t VIEW_OUTPUTS = 0x44;
100constexpr uint8_t VIEW_USER = 0x45;
102constexpr uint8_t SHIFT = 0x46;
103constexpr uint8_t OPTION = 0x47;
104constexpr uint8_t CONTROL = 0x48;
105constexpr uint8_t CMD_ALT = 0x49;
107constexpr uint8_t AUTOMATION_READ_OFF = 0x4A;
108constexpr uint8_t AUTOMATION_WRITE = 0x4B;
109constexpr uint8_t AUTOMATION_TRIM = 0x4C;
110constexpr uint8_t AUTOMATION_TOUCH = 0x4D;
111constexpr uint8_t AUTOMATION_LATCH = 0x4E;
113constexpr uint8_t GROUP = 0x4F;
114constexpr uint8_t SAVE = 0x50;
115constexpr uint8_t UNDO = 0x51;
116constexpr uint8_t CANCEL = 0x52;
117constexpr uint8_t ENTER = 0x53;
119constexpr uint8_t MARKER = 0x54;
120constexpr uint8_t NUDGE = 0x55;
121constexpr uint8_t CYCLE = 0x56;
122constexpr uint8_t DROP = 0x57;
123constexpr uint8_t REPLACE = 0x58;
124constexpr uint8_t CLICK = 0x59;
125constexpr uint8_t SOLO = 0x5A;
127constexpr uint8_t REWIND = 0x5B;
128constexpr uint8_t FAST_FWD = 0x5C;
129constexpr uint8_t STOP = 0x5D;
130constexpr uint8_t PLAY = 0x5E;
131constexpr uint8_t RECORD = 0x5F;
133constexpr uint8_t UP = 0x60;
134constexpr uint8_t DOWN = 0x61;
135constexpr uint8_t LEFT = 0x62;
136constexpr uint8_t RIGHT = 0x63;
138constexpr uint8_t ZOOM = 0x64;
139constexpr uint8_t SCRUB = 0x65;
141constexpr uint8_t USER_SWITCH_A = 0x66;
142constexpr uint8_t USER_SWITCH_B = 0x67;
144constexpr uint8_t FADER_TOUCH_1 = 0x68;
145constexpr uint8_t FADER_TOUCH_2 = 0x69;
146constexpr uint8_t FADER_TOUCH_3 = 0x6A;
147constexpr uint8_t FADER_TOUCH_4 = 0x6B;
148constexpr uint8_t FADER_TOUCH_5 = 0x6C;
149constexpr uint8_t FADER_TOUCH_6 = 0x6D;
150constexpr uint8_t FADER_TOUCH_7 = 0x6E;
151constexpr uint8_t FADER_TOUCH_8 = 0x6F;
152constexpr uint8_t FADER_TOUCH_MASTER = 0x70;
154constexpr uint8_t SMPTE = 0x71;
155constexpr uint8_t BEATS = 0x72;
157constexpr uint8_t RUDE_SOLO = 0x73;
159constexpr uint8_t RELAY = 0x76;
166constexpr uint8_t V_POT_1 = 0x10;
167constexpr uint8_t V_POT_2 = 0x11;
168constexpr uint8_t V_POT_3 = 0x12;
169constexpr uint8_t V_POT_4 = 0x13;
170constexpr uint8_t V_POT_5 = 0x14;
171constexpr uint8_t V_POT_6 = 0x15;
172constexpr uint8_t V_POT_7 = 0x16;
173constexpr uint8_t V_POT_8 = 0x17;
175constexpr uint8_t EXTERNAL_CONTROLLER = 0x2E;
177constexpr uint8_t JOG_WHEEL = 0x3C;
201} // namespace MCU
constexpr Channel CHANNEL_2
Definition: Channel.hpp:119
constexpr Channel CHANNEL_1
Definition: Channel.hpp:118
constexpr Channel CHANNEL_6
Definition: Channel.hpp:123
constexpr Channel CHANNEL_9
Definition: Channel.hpp:126
constexpr Channel CHANNEL_3
Definition: Channel.hpp:120
constexpr Channel CHANNEL_4
Definition: Channel.hpp:121
constexpr Channel CHANNEL_5
Definition: Channel.hpp:122
constexpr Channel CHANNEL_7
Definition: Channel.hpp:124
constexpr Channel CHANNEL_8
Definition: Channel.hpp:125
A type-safe class for MIDI channels.
Definition: Channel.hpp:13
constexpr uint8_t JOG_WHEEL
Jog wheel (Relative) (Out)
Definition: MCU.hpp:177
constexpr uint8_t V_POT_5
V-Pot 5 (Relative) (Out)
Definition: MCU.hpp:170
constexpr uint8_t V_POT_2
V-Pot 2 (Relative) (Out)
Definition: MCU.hpp:167
constexpr uint8_t V_POT_1
V-Pot 1 (Relative) (Out)
Definition: MCU.hpp:166
constexpr uint8_t V_POT_7
V-Pot 7 (Relative) (Out)
Definition: MCU.hpp:172
constexpr uint8_t V_POT_8
V-Pot 8 (Relative) (Out)
Definition: MCU.hpp:173
constexpr uint8_t V_POT_6
V-Pot 6 (Relative) (Out)
Definition: MCU.hpp:171
constexpr uint8_t V_POT_3
V-Pot 3 (Relative) (Out)
Definition: MCU.hpp:168
constexpr uint8_t EXTERNAL_CONTROLLER
External controller (Out)
Definition: MCU.hpp:175
constexpr uint8_t V_POT_4
V-Pot 4 (Relative) (Out)
Definition: MCU.hpp:169
constexpr uint8_t F7
Function key 7 (Out)
Definition: MCU.hpp:90
constexpr uint8_t FAST_FWD
Fast forward (In/Out)
Definition: MCU.hpp:128
constexpr uint8_t VIEW_BUSSES
View busses (Out)
Definition: MCU.hpp:98
constexpr uint8_t REPLACE
Replace (In/Out)
Definition: MCU.hpp:123
constexpr uint8_t REC_RDY_5
Record/Ready 5 (In/Out)
Definition: MCU.hpp:26
constexpr uint8_t F3
Function key 3 (Out)
Definition: MCU.hpp:86
constexpr uint8_t ZOOM
Zoom (In/Out)
Definition: MCU.hpp:138
constexpr uint8_t FADER_TOUCH_6
Fader touch 6 (Out)
Definition: MCU.hpp:149
constexpr uint8_t SELECT_6
Select 6 (In/Out)
Definition: MCU.hpp:54
constexpr uint8_t V_POT_SELECT_8
V-Pot select 8 (In/Out)
Definition: MCU.hpp:65
constexpr uint8_t VIEW_USER
View user (Out)
Definition: MCU.hpp:100
constexpr uint8_t DOWN
Cursor down (Out)
Definition: MCU.hpp:134
constexpr uint8_t REC_RDY_3
Record/Ready 3 (In/Out)
Definition: MCU.hpp:24
constexpr uint8_t SELECT_4
Select 4 (In/Out)
Definition: MCU.hpp:52
constexpr uint8_t SHIFT
Shift (Out)
Definition: MCU.hpp:102
constexpr uint8_t LEFT
Cursor left (Out)
Definition: MCU.hpp:135
constexpr uint8_t F1
Function key 1 (Out)
Definition: MCU.hpp:84
constexpr uint8_t FADER_TOUCH_7
Fader touch 7 (Out)
Definition: MCU.hpp:150
constexpr uint8_t REC_RDY_4
Record/Ready 4 (In/Out)
Definition: MCU.hpp:25
constexpr uint8_t VIEW_INPUTS
View inputs (Out)
Definition: MCU.hpp:94
constexpr uint8_t MUTE_1
Mute 1 (In/Out)
Definition: MCU.hpp:40
constexpr uint8_t F6
Function key 6 (Out)
Definition: MCU.hpp:89
constexpr uint8_t V_POT_SELECT_6
V-Pot select 6 (In/Out)
Definition: MCU.hpp:63
constexpr uint8_t MARKER
Marker (In/Out)
Definition: MCU.hpp:119
constexpr uint8_t FADER_TOUCH_1
Fader touch 1 (Out)
Definition: MCU.hpp:144
constexpr uint8_t UNDO
Undo (In/Out)
Definition: MCU.hpp:115
constexpr uint8_t F8
Function key 8 (Out)
Definition: MCU.hpp:91
constexpr uint8_t SELECT_2
Select 2 (In/Out)
Definition: MCU.hpp:50
constexpr uint8_t ASSIGN_EQ
Assign Equalizer (In/Out)
Definition: MCU.hpp:71
constexpr uint8_t SELECT_7
Select 7 (In/Out)
Definition: MCU.hpp:55
constexpr uint8_t RIGHT
Cursor right (Out)
Definition: MCU.hpp:136
constexpr uint8_t DROP
Drop (In/Out)
Definition: MCU.hpp:122
constexpr uint8_t BANK_RIGHT
Banks: Bank Right (Out)
Definition: MCU.hpp:75
constexpr uint8_t SMPTE
Definition: MCU.hpp:154
constexpr uint8_t SOLO_6
Solo 6 (In/Out)
Definition: MCU.hpp:36
constexpr uint8_t REC_RDY_2
Record/Ready 2 (In/Out)
Definition: MCU.hpp:23
constexpr uint8_t SCRUB
Scrub (In/Out)
Definition: MCU.hpp:139
constexpr uint8_t REC_RDY_1
Record/Ready 1 (In/Out)
Definition: MCU.hpp:22
constexpr uint8_t SOLO
Solo (In/Out)
Definition: MCU.hpp:125
constexpr uint8_t V_POT_SELECT_4
V-Pot select 4 (In/Out)
Definition: MCU.hpp:61
constexpr uint8_t MUTE_5
Mute 5 (In/Out)
Definition: MCU.hpp:44
constexpr uint8_t RECORD
Record (In/Out)
Definition: MCU.hpp:131
constexpr uint8_t F4
Function key 4 (Out)
Definition: MCU.hpp:87
constexpr uint8_t F5
Function key 5 (Out)
Definition: MCU.hpp:88
constexpr uint8_t FADER_TOUCH_3
Fader touch 3 (Out)
Definition: MCU.hpp:146
constexpr uint8_t VIEW_AUDIO
View audio tracks (Out)
Definition: MCU.hpp:95
constexpr uint8_t FADER_TOUCH_8
Fader touch 8 (Out)
Definition: MCU.hpp:151
constexpr uint8_t VIEW_INSTR
View audio instrument (Out)
Definition: MCU.hpp:96
constexpr uint8_t ASSIGN_PAN
Assign Pan (In/Out)
Definition: MCU.hpp:69
constexpr uint8_t SELECT_8
Select 8 (In/Out)
Definition: MCU.hpp:56
constexpr uint8_t CANCEL
Cancel (Out)
Definition: MCU.hpp:116
constexpr uint8_t V_POT_SELECT_2
V-Pot select 2 (In/Out)
Definition: MCU.hpp:59
constexpr uint8_t VIEW_MIDI
View MIDI tracks (Out)
Definition: MCU.hpp:93
constexpr uint8_t V_POT_SELECT_5
V-Pot select 5 (In/Out)
Definition: MCU.hpp:62
constexpr uint8_t FADER_TOUCH_2
Fader touch 2 (Out)
Definition: MCU.hpp:145
constexpr uint8_t AUTOMATION_WRITE
Automation write (In/Out)
Definition: MCU.hpp:108
constexpr uint8_t MUTE_6
Mute 6 (In/Out)
Definition: MCU.hpp:45
constexpr uint8_t ASSIGN_INSTR
Assign Instrument (In/Out)
Definition: MCU.hpp:72
constexpr uint8_t SELECT_5
Select 5 (In/Out)
Definition: MCU.hpp:53
constexpr uint8_t CLICK
Click (In/Out)
Definition: MCU.hpp:124
constexpr uint8_t GROUP
Group (In/Out)
Definition: MCU.hpp:113
constexpr uint8_t SOLO_2
Solo 2 (In/Out)
Definition: MCU.hpp:32
constexpr uint8_t AUTOMATION_TRIM
Automation trim (In/Out)
Definition: MCU.hpp:109
constexpr uint8_t ASSIGN_SEND
Assign Send (In/Out)
Definition: MCU.hpp:68
constexpr uint8_t SOLO_1
Solo 1 (In/Out)
Definition: MCU.hpp:31
constexpr uint8_t SOLO_8
Solo 8 (In/Out)
Definition: MCU.hpp:38
constexpr uint8_t AUTOMATION_TOUCH
Automation touch (In/Out)
Definition: MCU.hpp:110
constexpr uint8_t FADER_TOUCH_4
Fader touch 4 (Out)
Definition: MCU.hpp:147
constexpr uint8_t MUTE_8
Mute 8 (In/Out)
Definition: MCU.hpp:47
constexpr uint8_t SOLO_4
Solo 4 (In/Out)
Definition: MCU.hpp:34
constexpr uint8_t F2
Function key 2 (Out)
Definition: MCU.hpp:85
constexpr uint8_t SOLO_5
Solo 5 (In/Out)
Definition: MCU.hpp:35
constexpr uint8_t MUTE_7
Mute 7 (In/Out)
Definition: MCU.hpp:46
constexpr uint8_t ASSIGN_PLUGIN
Assign Pluggin (In/Out)
Definition: MCU.hpp:70
constexpr uint8_t CHANNEL_LEFT
Banks: Channel Left (Out)
Definition: MCU.hpp:76
constexpr uint8_t MUTE_4
Mute 4 (In/Out)
Definition: MCU.hpp:43
constexpr uint8_t REC_RDY_8
Record/Ready 8 (In/Out)
Definition: MCU.hpp:29
constexpr uint8_t AUTOMATION_READ_OFF
Automation read/off (In/Out)
Definition: MCU.hpp:107
constexpr uint8_t STOP
Stop (In/Out)
Definition: MCU.hpp:129
constexpr uint8_t SOLO_7
Solo 7 (In/Out)
Definition: MCU.hpp:37
constexpr uint8_t BANK_LEFT
Banks: Bank Left (Out)
Definition: MCU.hpp:74
constexpr uint8_t USER_SWITCH_B
User switch B (Out)
Definition: MCU.hpp:142
constexpr uint8_t FLIP
Flip (In/Out)
Definition: MCU.hpp:79
constexpr uint8_t SELECT_1
Select 1 (In/Out)
Definition: MCU.hpp:49
constexpr uint8_t SAVE
Save (In/Out)
Definition: MCU.hpp:114
constexpr uint8_t OPTION
Option (Out)
Definition: MCU.hpp:103
constexpr uint8_t V_POT_SELECT_1
V-Pot select 1 (In/Out)
Definition: MCU.hpp:58
constexpr uint8_t SOLO_3
Solo 3 (In/Out)
Definition: MCU.hpp:33
constexpr uint8_t PLAY
Play (In/Out)
Definition: MCU.hpp:130
constexpr uint8_t V_POT_SELECT_7
V-Pot select 7 (In/Out)
Definition: MCU.hpp:64
constexpr uint8_t NAME_VALUE
Name/Value (Out)
Definition: MCU.hpp:81
constexpr uint8_t ASSIGN_TRACK
Assign Track (In/Out)
Definition: MCU.hpp:67
constexpr uint8_t AUTOMATION_LATCH
Automation latch (In/Out)
Definition: MCU.hpp:111
constexpr uint8_t SMPTE_BEATS
SMPTE/Beats (Out)
Definition: MCU.hpp:82
constexpr uint8_t SELECT_3
Select 3 (In/Out)
Definition: MCU.hpp:51
constexpr uint8_t REWIND
Rewind (In/Out)
Definition: MCU.hpp:127
constexpr uint8_t VIEW_AUX
View auxiliary (Out)
Definition: MCU.hpp:97
constexpr uint8_t NUDGE
Nudge (In/Out)
Definition: MCU.hpp:120
constexpr uint8_t RUDE_SOLO
Rude solo light (In)
Definition: MCU.hpp:157
constexpr uint8_t FADER_TOUCH_MASTER
Fader touch master (Out)
Definition: MCU.hpp:152
constexpr uint8_t RELAY
Relay (In)
Definition: MCU.hpp:159
constexpr uint8_t V_POT_SELECT_3
V-Pot select 3 (In/Out)
Definition: MCU.hpp:60
constexpr uint8_t CONTROL
Control (Out)
Definition: MCU.hpp:104
constexpr uint8_t MUTE_2
Mute 2 (In/Out)
Definition: MCU.hpp:41
constexpr uint8_t MUTE_3
Mute 3 (In/Out)
Definition: MCU.hpp:42
constexpr uint8_t CMD_ALT
Command/Alt (Out)
Definition: MCU.hpp:105
constexpr uint8_t CHANNEL_RIGHT
Banks: Channel Right (Out)
Definition: MCU.hpp:77
constexpr uint8_t FADER_TOUCH_5
Fader touch 5 (Out)
Definition: MCU.hpp:148
constexpr uint8_t REC_RDY_7
Record/Ready 7 (In/Out)
Definition: MCU.hpp:28
constexpr uint8_t ENTER
Enter (Out)
Definition: MCU.hpp:117
constexpr uint8_t BEATS
Beats LED (In)
Definition: MCU.hpp:155
constexpr uint8_t REC_RDY_6
Record/Ready 6 (In/Out)
Definition: MCU.hpp:27
constexpr uint8_t UP
Cursor up (Out)
Definition: MCU.hpp:133
constexpr uint8_t USER_SWITCH_A
User switch A (Out)
Definition: MCU.hpp:141
constexpr uint8_t CYCLE
Cycle (In/Out)
Definition: MCU.hpp:121
constexpr uint8_t VIEW_OUTPUTS
View outputs (Out)
Definition: MCU.hpp:99
constexpr uint8_t GLOBAL_VIEW
Global View (In/Out)
Definition: MCU.hpp:80
constexpr Channel VOLUME_2
Volume fader 2 (In/Out)
Definition: MCU.hpp:185
constexpr Channel VOLUME_5
Volume fader 5 (In/Out)
Definition: MCU.hpp:188
constexpr Channel VOLUME_3
Volume fader 3 (In/Out)
Definition: MCU.hpp:186
constexpr Channel MASTER_VOLUME
Master volume (In/Out)
Definition: MCU.hpp:193
constexpr Channel VOLUME_1
Volume fader 1 (In/Out)
Definition: MCU.hpp:184
constexpr Channel VOLUME_6
Volume fader 6 (In/Out)
Definition: MCU.hpp:189
constexpr Channel VOLUME_8
Volume fader 8 (In/Out)
Definition: MCU.hpp:191
constexpr Channel VOLUME_4
Volume fader 4 (In/Out)
Definition: MCU.hpp:187
constexpr Channel VOLUME_7
Volume fader 7 (In/Out)
Definition: MCU.hpp:190