Hardware Overview: Akai MPD226 Pad Controller
Many of us that obsess over instrument design look to Akai drum machines as a pinnacle of achievement. The early MPC units (the MPC 60 series) set the stage for how a generation of sample-based musicians practiced their craft, and subsequent versions built upon this foundation for more than 20 years. While some focused on the sample engine’s capabilities for exploration, others found the unique performance and sequencing system to be the important function of these instruments.
Alas, we’ve seen changes in the music instrument industry that has all but put drum machines to rest, but the 16-pad performance/sequencing engine remains popular with a lot of musicians and producers. However, now most pad-based devices are controllers paired up with software running on a computer. And to a Max programmer, that can look like the perfect platform for some personal software development!
Picking the right pad interface might be difficult, but Akai has tried to make a compelling case for itself. Some of us Max programmers wouldn’t mind a box that already contains some of the nature of the MPC drum machines. That is where you will find the Akai MPD226, which combines the 16-pad layout of the MPC, additional controller functions, and built-in functionality that can relieve some of the grunt work of making our own drum machine.
The MPD226 is a common combination of parts: a bunch of pads, button, sliders and knobs packaged into a box with a USB Midi connection. It also has several presets that allow you to control other software directly. But what makes it unique are the drum machine functions that are provided, and the focus on percussion performance.
The 16 drum pads are combined with a bank switching system that gives you a total of 64 MIDI notes for playback. Each pad/note combination can have a unique output channel, interface routing and even pad color (through the built-in LED lighting). The pads are paired up with four sliders and four knobs – which also use a bank system to provide three banks of control. As you can see, in a modest amount of space, you have access to a lot of control! Extending the basic control are the built-in MPC-like functions. First is the “Full Level” button, which causes every pad to output full velocity for every hit – great for simulating old school drum machines that weren’t exactly super-dynamic. Next is the “16 Level” button, which remaps the entire grid to support a single note at 16 velocity levels. This allows you to be very focused on dynamics during note entry, and allows you to create feeling without having to be precise with your playing.
But perhaps the most interesting function is the built-in tempo and Note Repeat system. People that are MPC fans know that the Note Repeat function is one of the most playable parts of those machines, and doing on-the-fly repeats is key to an effective performance. However, Note Repeat generally isn’t useful with a MIDI controller, because it a controller doesn’t have a sense of time – and therefore, no sense of when it should repeat.
With the MPD226, you can take advantage of Note Repeat by providing the controller with a timing source. You can use its built-in timing system, where you manually enter a tempo and use that as clock for Note Repeats. Or, you can use an external clock and have the MPD226 generate Note Repeats based off the incoming time data.
These MPC-based functions are at the heart of what makes the MPD226 interesting for Max programmers: if we can take advantage of the 226’s built-in functions, it can greatly reduce the amount of (and complexity of) the Max patch we have to create.
It might be easiest to start with the MPD’s built-in timing, and just build a playback engine for live performance. It probably doesn’t get much easier than this – we can even use the standard DLS synthesizers built into our computers, so our patch would be nothing more than routing the MIDI from the MPD226 to a midiout object. But you would probably prefer to extend this by creating a sample playback system, perhaps by using a poly~ based audio engine and a multi-sampling function, maybe using the polybuffer~ object.
The only downside of using the MPD’s built-in clock – and it’s a big one – is that you can’t really record or sequence your performance. So a better bet might be to generate a clock inside of Max that the MPD226 can receive, and use that to also control a recorder/sequencer in Max as well. Luckily, MIDI beat clock makes it pretty easy to communicate time to the MPD; we can do it using a simple patch like this:
Obviously, there are a million directions to go from here. You can add sequencing objects, timing changes or fly off into generative systems – that is one of the joys of working with Max. And, if I may make a slight reveal, we’ve got some tutorials coming up that may help you get a jump on achieving sequencing successes.
In any case, working with the MPD226 is a load of fun, and can open the door to making your personal, idiosyncratic version of the drum machine you’ve always wanted. And with those extra sliders and knobs, you can even give it some voicing functions that you will never see on the drum machines in Guitar Center. If you are up for a challenge, and percussion is part of your vision, the MPD226 turns out to be a pretty good canvas to work upon.
by Darwin Grosse on May 2, 2017