Skip to content

LED control

paradajz edited this page Aug 21, 2018 · 69 revisions

This section explains how the LEDs are controlled on OpenDeck boards. LEDs can be controlled using received MIDI messages or via connected components on board (local control).

Control parameters

See this page for details.

Control modes

There are several modes which can be used to control the LEDs on OpenDeck boards:

  • MIDI In: Note + CC - In this mode, notes are used to control LED state/color and CC messages to control blink state.
  • MIDI In: CC + note - In this mode, CC messages are used to control LED state/color and notes to control blink state.
  • MIDI In: Note / S+B - In this mode, notes are used to control both LED state/color and blinking.
  • MIDI In: CC / S+B - In this mode, CC messages are used to control both LED state/color and blinking.
  • MIDI In: Program change - In this mode, program change messages are used to control LED state/color. On RGB LEDs, color depends on MIDI program value. In this mode, LED activation value is ignored. Blink state setting isn't possible in this mode.
  • Local control: Note - In this mode, buttons and FSR sensors connected to the board which are configured to send Note messages are used to control LED state/color only (no blinking).
  • Local control: CC - In this mode, buttons and FSR sensors connected to the board which are configured to send CC messages are used to control LED state/color only (no blinking).
  • Local control: Note / S+B - Same as MIDI In: Note / S+B, only components on board (buttons/FSRs) are controlling the LEDs.
  • Local control: CC / S+B - Same as MIDI In: CC/ S+B, only components on board (buttons/FSRs) are controlling the LEDs.
  • Local control: Program change - Same as MIDI In: Program change, only components on board (buttons/FSRs) are controlling the LEDs.

Control values

LED state/color

Table below shows values to control LED state/color and it's valid for following control modes:

  • MIDI In: Note + CC
  • MIDI In: CC + note
  • MIDI In: Program change
  • Local control: Note
  • Local control: CC
  • Local control: Program change
Velocity/control value/program range Color
0-15 Off
16-31 Red
32-47 Green
48-63 Yellow
64-79 Blue
80-95 Magenta
96-111 Cyan
112-127 White

When single color LEDs are used, color is ignored (when not off) so any value which doesn't turn the LED off will turn the LED on.

LED blinking

Table below shows values to control LED blinking and it's valid for following control modes:

  • MIDI In: Note + CC
  • MIDI In: CC + note

To control the blinking, a CC or note message (depending on configuration) with same ID as LED activation ID must be sent to the board. Table below shows correlation with CC value/velocity and blink state/speed.

CC/velocity value Blink speed
0-9 0/disabled
10-19 100ms
20-29 200ms
30-39 300ms
40-49 400ms
50-59 500ms
60-69 600ms
70-79 700ms
80-89 800ms
90-99 900ms
100-127 1000ms

When "Blinking via MIDI clock" option is enabled, blink speed depends on MIDI clock rate, and depending on received MIDI value, clock divider is used. Table below shows the corresponding values:

CC/velocity value MIDI clock pulses Blink rate (musical notation)
0-9 N/A No blinking
10-19 2 1/16 triplet
20-29 3 1/16 note
30-39 4 1/8 triplet note
40-49 6 1/8 note
50-59 9 1/8 dotted note
60-69 12 1/4 note
70-79 18 1/4 dotted note
80-89 24 1/2 note
90-99 36 1/2 dotted note
100-127 48 Whole note

LED state/color and LED blinking (combined)

Table below shows values to control both LED state/color and LED blinking and it's valid for following control modes:

  • MIDI In: Note / S+B
  • MIDI In: CC / S+B
  • Local control: Note / S+B
  • Local control: CC / S+B
Velocity/control value Color Blink speed
0-15 Off 0/disabled
16 Red 100ms
17 Red 200ms
18 Red 300ms
19 Red 400ms
20 Red 500ms
21 Red 600ms
22 Red 700ms
23 Red 800ms
24 Red 900ms
25 Red 1000ms
26-31 Red 0/disabled
32 Green 100ms
33 Green 200ms
34 Green 300ms
35 Green 400ms
36 Green 500ms
37 Green 600ms
38 Green 700ms
39 Green 800ms
40 Green 900ms
41 Green 1000ms
42-47 Green 0/disabled
48 Yellow 100ms
49 Yellow 200ms
50 Yellow 300ms
51 Yellow 400ms
52 Yellow 500ms
53 Yellow 600ms
54 Yellow 700ms
55 Yellow 800ms
56 Yellow 900ms
57 Yellow 1000ms
58-63 Yellow 0/disabled
64 Blue 100ms
65 Blue 200ms
66 Blue 300ms
67 Blue 400ms
68 Blue 500ms
69 Blue 600ms
70 Blue 700ms
71 Blue 800ms
72 Blue 900ms
73 Blue 1000ms
74-79 Blue 0/disabled
80 Magenta 100ms
81 Magenta 200ms
82 Magenta 300ms
83 Magenta 400ms
84 Magenta 500ms
85 Magenta 600ms
86 Magenta 700ms
87 Magenta 800ms
88 Magenta 900ms
89 Magenta 1000ms
90-95 Magenta 0/disabled
96 Cyan 100ms
97 Cyan 200ms
98 Cyan 300ms
99 Cyan 400ms
100 Cyan 500ms
101 Cyan 600ms
102 Cyan 700ms
103 Cyan 800ms
104 Cyan 900ms
105 Cyan 1000ms
106-111 Cyan 0/disabled
112 White 100ms
113 White 200ms
114 White 300ms
115 White 400ms
116 White 500ms
117 White 600ms
118 White 700ms
119 White 800ms
120 White 900ms
121 White 1000ms
122-127 White 0/disabled

When "Blinking via MIDI clock" option is enabled, blink speed depends on MIDI clock rate, and depending on received MIDI value, clock divider is used. Table below shows the corresponding values:

Velocity/control value Color MIDI clock pulses Blink rate (musical notation)
0-15 Off N/A
16 Red 100ms
17 Red 200ms
18 Red 300ms
19 Red 400ms
20 Red 500ms
21 Red 600ms
22 Red 700ms
23 Red 800ms
24 Red 900ms
25 Red 1000ms
26-31 Red N/A
32 Green 100ms
33 Green 200ms
34 Green 300ms
35 Green 400ms
36 Green 500ms
37 Green 600ms
38 Green 700ms
39 Green 800ms
40 Green 900ms
41 Green 1000ms
42-47 Green N/A
48 Yellow 100ms
49 Yellow 200ms
50 Yellow 300ms
51 Yellow 400ms
52 Yellow 500ms
53 Yellow 600ms
54 Yellow 700ms
55 Yellow 800ms
56 Yellow 900ms
57 Yellow 1000ms
58-63 Yellow N/A
64 Blue 100ms
65 Blue 200ms
66 Blue 300ms
67 Blue 400ms
68 Blue 500ms
69 Blue 600ms
70 Blue 700ms
71 Blue 800ms
72 Blue 900ms
73 Blue 1000ms
74-79 Blue N/A
80 Magenta 100ms
81 Magenta 200ms
82 Magenta 300ms
83 Magenta 400ms
84 Magenta 500ms
85 Magenta 600ms
86 Magenta 700ms
87 Magenta 800ms
88 Magenta 900ms
89 Magenta 1000ms
90-95 Magenta N/A
96 Cyan 100ms
97 Cyan 200ms
98 Cyan 300ms
99 Cyan 400ms
100 Cyan 500ms
101 Cyan 600ms
102 Cyan 700ms
103 Cyan 800ms
104 Cyan 900ms
105 Cyan 1000ms
106-111 Cyan N/A
112 White 100ms
113 White 200ms
114 White 300ms
115 White 400ms
116 White 500ms
117 White 600ms
118 White 700ms
119 White 800ms
120 White 900ms
121 White 1000ms
122-127 White 0/disabled
Clone this wiki locally