Do you use a Midi controller when you DJ? Do you notice lag when moving sliders or working with jog wheels? Have you wondered why when using the mouse or keyboard to control these same controls there is no lag? If so, the difference may be between HID and MIDI control. HID is what’s commonly used to read your mouse and keyboard movements. Read on and I’ll try to explain the differences between HID and MIDI the best I can here:
MIDI stands for Music Instrument Digital Interface. It was adopted in the 1980’s by instrument makers to let hardware synthesizers, drum machines, and sequencers communicate with each other regardless of their manufacturer. MIDI works by pushing a series of messages to a the device receiving them like note number, note on, note off, note velocity, and values for slider and knobs known as continuous controller messages. With this digital interface already in place, when computer sequencing and synthesis entered the scene it embraced MIDI as a means of interfacing with keyboards and controllers already out there. The signals coming in from a MIDI instrument can be adapted for different purposes. Note number and on/off messages can control the transport features of your DJ software for instance, but you’re going to be limited by the speed at which your computer is able to break down those midi messages and translate them to your DJ software. This can vary based on your processor and USB port speed. Most software is now optimized to work with MIDI controllers and respond great for pushing buttons. The detailed and expressive continuous controller messages needed for jog wheel and faders may not be as responsive from MIDI devices and you may notice more lag time between your controller movements and computer response due to latency in the midi signal. Even small amounts of latency are noticeable when you’re trying to play your controller as intended while being expressive and in time with the music. For these functions HID may be a more responsive solution.
HID stands for Human Interface Device, which is a protocol used by USB devices like a mice, keyboards, and game controllers. The state of your HID device is constantly being monitored by your computer, and button pushes or mouse clicks are seen as changes in it’s state which are read right away. Rather then wait for a message to arrive from a MIDI controller to process in real time, HID protocol lets your DJ software keep constant tabs on your controller and see movements of a fader or a jog wheel the way your OS can see movements of the mouse.
Controllers using HID first came to my attention in the description I read of the Traktor Kontrol S4 and how it’s jog wheels would be more responsive because of it. Come to find out that there are a few controllers taking advantage of HID, but this may be where companies are finding new ways to make these controllers software specific. The VCI-300 for instance, sends MIDI that can be mapped to any software, but sends HID control specifically for it’s accompanying software Serato ITCH. I imagine the afore mentioned Kontrol S4’s HID features will only work with Traktor.
It seems about time we move on from MIDI. Being used to old school MIDI cables and interfaces, I remember plugging in the first USB controller I got and thinking “Why send MIDI through a USB cable, shouldn’t there be a more efficient way?” HID may present that way, but because the protocol is more sophisticated and largely device specific, it may be a while before we see it used as a middle man for user assignable control interfaces. For now though Serato and Traktor users can look to these devices for better feel and response from a controller.
Check below to see some of the controllers we carry featuring HID control of their specified software!