MIDI Controllers
Up, down, roundabout
Introduction
What Is MIDI?
The Musical Instrument Digital Interface (MIDI) is a protocol and set of commands for storing and transmitting information about music. MIDI output devices interpret this information and use it to synthesise music. [ link ]
What Is A Controller?
A MIDI Controller or MIDI Control Surface is a digital device that transmits MIDI data to other devices capable of receiving it. The most common use of a MIDI Controller is to control software instruments used on a computer. [ link]
There are various types of MIDI controllers, the most common used with SDR software is a DJ controller. DJ Controllers have one or two large rotary dials, ideal for tuning the receiver frequency. Other controls are used for mode, volume etc.
In the above picture you see the Behringer CMD PL-1 DJ Controller, typically available for approximately $99.
Implementation
SDR software implements MIDI support with the MIDI functions, part of the Windows multimedia API.
Behringer CMD PL-1 DJ Controller
This solidly built controller is a good option for SDR software, offering:
- 8 rotatory dials
- 8 numbered push buttons
- A large 10 cm (4") speed-sensitive platter
- A slider (ideal for volume levels)
- Other chunky push buttons
It also has four sets of values, selected by the Deck button.
Notes
When you touch the platter it sends value 127, when released it sends 0. These values are ignored in the tuning support.
Availability
The Behringer CMD PL-1 DJ Controller typically retails for approximately $99.
Console Support
The console has a simple interface where you assign controls (buttons, sliders etc.) on the controller to options in the console:
- Receiver selection,
- Audio level,
- Tuning,
- Filter width.
Single Options
When you configure an option of type Single the value used is that generated when the button is selected (pressed down).
Range Options
When you configure an option of type Range (Audio level, Tuning) there are two values: minimum and maximum. As you slide or rotate the control the range is displayed.
Modifiers
Some MIDI controllers send a modifier code when pressed, any modifier code is shown in the Modifiers field. The actual code is specific to the controller.
Frequency Tuning
You typically assign a large rotary controller (aka platter) to the frequency tuning. Some controllers send a fixed value which indicates the direction, others send a value which indicates the direction and speed of rotation.
You can manually enter the recommended range of values, for example:
- Tune up: 65 to 127
- Tune down: 0 to 63

Frequency Tuning Down
Examples of range values:
Controller | Down | Up | Comment |
---|---|---|---|
Behringer CMD PL-1 | 0 to 63 | 65 to 127 | Value indicates speed of rotation |
Hercules DJ | 0 to 63 | 65 to 127 | Value indicates speed of rotation |
Steinberg AI | 65 | 1 | (Discontinued) Sends a fixed value |
EKS XP Series | 63 | 65 | Also sends 64 (off) after each change. You must edit |
the range value to show 63 - 63 (down) or 65 - 65 (up). |
Future Additions
It is possible to write to some controllers, for example to set LED colour and intensity. At present this is not supported.