Assigning internal and external hardware controls adds a whole new dimension of control and musicality to patches, and it's really easy to do. The MIDI Tab is where all controller assignments can be viewed and tweaked. First we'll show how to assign an external hardware controller to a Chroma control, then we'll go over all parameters in the MIDI Tab.
Basic External Hardware Control Assignment
This is the quick, "I just want to assign a hardware control right now!," section. We recommend reading this entire section to best take advantage of Chroma's MIDI control assignments.
In this example, we’ll assign a hardware slider control to FILTER section CUTOFF control.
Begin by right-clicking anywhere on the CUTOFF control in the FILTER section and selecting MIDI Learn. A transparent purple overlay appears over the control indicating that it's in learn mode. Now move the desired hardware control device. The purple overlay disappears and the hardware control will move the onscreen control. If you change your mind (or accidentally select the wrong control), learn mode can be cancelled by right-clicking and selecting Stop Learning.
This is the basic procedure for assigning hardware controllers to any Chroma control.
Once a MIDI controller has been assigned, in addition to real-time control of a Chroma parameter, you’ll also be able to record and play back controller data from a DAW.
The MIDI Tab
This is command central for all MIDI controller assignments. Here you’ll be able to see information about all currently assigned controllers and adjust control ranges.
To view or hide the MIDI Tab, click the MIDI button in the top toolbar.
MIDI Learn button- This is almost exactly the same as enabling MIDI learn mode by right-clicking a control. Click the MIDI Learn button to enter learn mode (all controls turn purple). Unlike right-clicking on specific controls, where Chroma automatically exits controller assignment mode, clicking the MIDI Learn knob "stays on" to enable assignment of multiple hardware controls. This is handy for quickly assigning a bunch of hardware knobs, sliders, or the buttons of a grid-style controller.
When in MIDI learn mode, any previously assigned controller numbers will show in squares. These indicate the MIDI continuous controller number of the assigned hardware control (these are also displayed in the MIDI library tab at left).
To assign multiple controls, click MIDI Learn, click an on-screen control, move the desired hardware knob or slider, continue clicking and assigning on-screen controllers until all desired controls are assigned, then click Stop Learning to exit learn mode.
Remember that a single hardware knob/slider/button isn't limited to controlling just one parameter - a single hardware controller can simultaneously operate as many controls as you'd like. Combined with the MIDI Tab's controller range and inversion controls explained below, this can be a very powerful and customizable way to control parameters.
New Mapping Type- This popup menu selects whether newly assigned MIDI mappings will be global (affects all sounds and doesn't change when different presets are selected) or saved with individual presets.
MIDI Tab Columns
Name- Displays the name of the parameter being controlled.
Type- There are five possible types of Chroma controller automation:
Note- Notes played on a MIDI keyboard controller, expressed as C-1 to G9
CC (MIDI Continuous Controller)- The standard 128 MIDI controller numbers as defined in the MIDI spec. More specifically, these are the controllers transmitted by hardware knob and slider controls. MIDI CC’s can be used to control parameters in real-time or recorded and played back within DAW software.
MMC (MIDI Machine Control)- The MIDI control protocol for tape machine-style transport controls. Back in the dark ages, this was used to control wonky old Tascam and Fostex reel-to-reel monsters, but it's useful if your MIDI controller has tape-style transport control buttons.
Pressure- Most modern keyboard controllers transmit controller data when keys are pressed and released as they're held down. The vast majority of keyboard controllers with aftertouch transmit "mono" aftertouch only; in other words, aftertouch data is the sum of all keys to one single data stream.
Key- This allows keys of the computer QWERTY keyboard to at as button controls for Chroma's onscreen controls.
Value- Displays the specific automation controller. In the case of a Note this would show a MIDI note number (C-1 to G9, for a MIDI CC, this would be the MIDI CC controller number, etc. Clicking on the value opens a pop-up menu where all values are displayed and can be selected.
Preset- This slider works in conjunction with the New Mapping Type popup control. In the left position (gray background), the MIDI mapping is global (affects all sounds and doesn't change when different presets are selected), in the right position (lavender background), the MIDI mapping is saved with, and only affects the current sound preset.
The Preset switch is super nifty, because it means that MIDI mappings can easily be changed to global or per-preset status at any time.
Min- Sets a limit on the lowest value any automation control can set a mapped controller to. This actually recalibrates the range of the automation controller to the remaining parameter range.
Max- Sets a limit on the highest value any automation control can set a mapped controller to. This actually recalibrates the range of the automation controller to the remaining parameter range.
Curve- These allow the customization of how incoming MIDI CC controls affect the movement of Chroma's onscreen controls, ranging from exponential to linear to logarithmic curves.
Super Cool Min-Max Tricks- Not only can parameter ranges be limited via the Min and Max knobs, mapped control destinations can be completely inverted by setting the Min knob all the way up and the Max knob all the way down (or anywhere in between).
Limiting and inverting parameter ranges with the Min/Max controls is particularly useful when multiplexing a single hardware control to operate multiple parameters. Because Min/Max, range inversion and Curve settings can be separately set for each onscreen control, the customization options are super flexible.
MIDI Tab Column Configuration Right-Click Menu
Right-clicking anywhere in the top row (Name, Type, Value, etc.) displays the column configuration menu. Checking/unchecking these allows hiding and display of each column. This has no effect on assignments.
MIDI Tab Parameters Right-Click
Right-clicking on an assigned parameter opens the menu above.
MIDI Learn- This is used to change the controller assigned to a particular parameter.
Unlearn- Deletes the selected automation parameter.
Unlearn All- Deletes all controller assignments for the patch. Chroma will display a warning dialog prior to deletion in order to thwart potential unlearn-related disasters.