Skip to content

Configurable features

Igor edited this page Jan 24, 2018 · 159 revisions

This section lists all possible configurable features on OpenDeck boards. All features on OpenDeck boards are grouped into several blocks. Each block has one or more sections. For more details on how to actually configure those features, see SysEx configuration.

MIDI block

MIDI block has two sections: channels and features. This block allows configuration of various settings related to MIDI protocol itself.

Note: DIN MIDI is available only on official OpenDeck board and Arduino Mega2560.

Channel section

Various components on OpenDeck boards have different types of MIDI messages they can send. Each message type has its own channel, which can be configured using this section. Input channel is used to receive data from PC or other MIDI device. Below is a list of all possible configurable channels. Each MIDI channel can be set to any value between 1-16.

  • Note
  • Program change
  • Control change
  • Pitch bend
  • MIDI input (channel on which OpenDeck listens for incoming MIDI traffic)

Features section

This section allows configuration of several features related to sending and receiving of MIDI messages. All features are disabled by default.

  • Standard note off - When enabled, standard MIDI note off will be sent. If disabled, note off is sent as note on event with velocity 0.
  • Running status (DIN MIDI only) - When enabled, MIDI traffic can be reduced. See here for more info.
  • DIN MIDI in to USB MIDI out converter - When enabled, all traffic coming through input MIDI DIN port will be sent to USB MIDI.

Button block

Button block is used to configure buttons connected to OpenDeck boards.

Type section

Buttons can be configured as momentary or latching. When momentary type is set, different MIDI messages are sent when button is pressed or released. For example, if note message type is used, on press, note on will be sent with configured velocity, and that same message will be sent with velocity 0 on release. When latching type is set, MIDI note on is sent when button is pressed, and note off is sent when button is pressed again. Same applies for CC with 0 reset type. Default type is momentary.

Message type section

Buttons can send following messages:

  • Notes (default setting)
  • Program change
  • CC (sent on press only - button type is ignored)
  • CC with 0 reset (on release CC with controller value 0 will be sent - depends on button type)
  • MMC Play (sent on press only - button type is ignored)
  • MMC Stop (sent on press only - button type is ignored)
  • MMC Pause (sent on press only - button type is ignored)
  • MMC Record (recording will be started on first press and stopped on second - button type is ignored)
  • Real Time Clock (sent on press only - button type is ignored)
  • Real Time Start (sent on press only - button type is ignored)
  • Real Time Continue (sent on press only - button type is ignored)
  • Real Time Stop (sent on press only - button type is ignored)
  • Real Time Active Sensing (sent on press only - button type is ignored)
  • Real Time System Reset (sent on press only - button type is ignored)

MIDI ID

Each button can have assigned any MIDI ID between 0-127. By default, button has same MIDI ID as its index (button 0 has ID 0, button 1 has ID 1 etc.). This ID represents different value depending on message type:

  • Notes: ID is MIDI note numner
  • Program change: ID is MIDI program number
  • CC: ID is MIDI CC number
  • CC with 0 reset: ID is MIDI CC number
  • MMC Play: ID is MMC channel number
  • MMC Stop: ID is MMC channel number
  • MMC Pause: ID is MMC channel number
  • MMC Record: ID is MMC channel number

MIDI velocity/control value

Each button can have assigned any MIDI velocity (for notes) or control value (for CC messages) between 0-127 for press (release velocity is always 0 and it isn't configurable).

Encoder block

This block is used to configure encoders connected to digital inputs on OpenDeck boards.

Enable/disable section

Enables or disables encoder. All encoders are disabled by default, since enabling single encoder disables two buttons.

Invert section

Encoders send different values when rotating in different directions. Those values can be inverted using this option. Disabled by default.

Encoding type section

Encoders can have two encoding types: 7Fh01h and 3Fh41h. 7Fh01h encoding sends MIDI CC event with value 1 in one direction, and value 127 in other direction. 3Fh41h encoding sends CC event with value 63 in one direction, and value 65 in other direction.

CC number section

All encoders send CC events. Each encoder can have any CC number between 0-127. By default, encoder has same CC number as its index (encoder 0 sends CC 0, encoder 1 sends CC 1 etc.)

Analog block

Analog block is used to configure components connected to analog section on OpenDeck boards.

Enable/disable section

All analog inputs are disabled by default. Before using any component connected to analog input, input must be enabled first.

Invert section

Potentiometers connected to OpenDeck boards send CC values 0-127, depending on their position. This setting can invert that range for any analog input. Disabled by default.

Type section

Analog input can be configured as following type:

  • Potentiometer: Sends CC values 0-127 depending on applied voltage, that is, potentiometer position. This is default option.
  • FSR: Used for FSR sensors. This type sends MIDI note on event with velocity being applied pressure on FSR.
  • Button: Acts like normal button. When analog input is set to this type, further configuration is done in button block with button index being last button index + analog input index, ie. if maximum number of buttons is 64, and analog input 0 is configured as button, that button is configured in button block with button index 65.

CC number section

All analog inputs can have any CC number between 0-127. When FSR type is used, this number is used as MIDI note value. By default, analog input has same CC number as its index (analog input 0 sends CC 0, analog input 1 sends CC 1 etc.)

Lower CC limit section

Default lower CC limit is 0. When any other lower limit is used, default CC range 0-127 gets scaled.

Upper CC limit section

Default upper CC limit is 127. When any other upper limit is used, default CC range 0-127 gets scaled.

LED block

This block is used to configure LEDs connected to OpenDeck boards.

Hardware parameters section

This section is used to configure various global settings related to LEDs. Those settings are:

  • Total LED number: This must be set only if start-up animation is used. Default value is 0.
  • Blink time - Sets speed at which LEDs blink. Value can range from 2 to 15. Blink time is specified value multiplied by 100. Default value is 2 (200ms).
  • Start-up animation - Enables or disables start-up animation. If enabled, all LEDs will slowly fade in, stay on for 2 seconds, and then slowly fade out when board is powered on. This option is disabled by default.
  • Fade time - Sets LED fading time. Value can range from 0 to 10. Fade time is specified value multiplied by 10. This value is set to 0 by default, which means that fading is disabled.

Activation ID section

Sets activation ID (MIDI note or CC number) which will control the LED.

RGB LED enable/disable section

Enables or disables RGB LED. Enabling RGB LED disables 3 single-color LEDs. All RGB LEDs are disabled by default.

Local control section

When enabled, any button or FSR which sends note or CC set for certain LED will control that LED. If disabled, activation note received from MIDI input channel will control the LED instead. This option is disabled by default for all LEDs.

Activation velocity section

Note velocity or CC value which will turn on single-color LED. By default this value is set to 127 for all LEDs. When RGB LEDs are used, velocity table is used instead.

Clone this wiki locally