Like many of you I have experimented with MIDI over wifi on the iPad. Mainly so that I can use a proper keyboard to play some of the splendid virtual instruments available on iOS. However, connecting to the iPad this way requires a computer on the same network, or instantiating an ad hoc network for the MIDI I/O. Secondly, although it can be stable it is usually slower and suffers from wireless network traffic congestion, hence more latency than a wired connection.
So what are the options? Over at CDM there’s a really great article from Nicolas Bougaïeff, the creative director at Liine (makers of the Lemur app and LiveControl) that explores a wide range of possibilities. Here my intent is to share what I have found works for me with a minimal investment in iOS specific hardware. Specifically, the Camera Connection Kit (CCK). The CCK essentially provides USB I/O for the iPad allowing class compliant MIDI devices to be connected and used. This works great, if you have such a device and all you want to do is use a hardware controller with the iPad.
The problem with the CCK is three fold – integration into more complex MIDI setups, class compliance, and power restrictions. Most USB MIDI devices only have a single USB port, so you can’t have a computer connected to the same controller to record the MIDI, or otherwise interface with iPad apps. As a result, two MIDI interfaces are required – one for the iPad and another for the computer for wired communications between them to be possible.
Secondly, many iOS hardware solutions are costly and impractical especially if you’d rather make use of equipment that most experienced producers have already invested in. Hardware that could work perfectly if only there were drivers available for iOS (I can dream, right?). One of my MIDI keyboard controllers, for example, is not class compliant over USB (an admittedly crappy CME UF7).
Third, beyond Apple’s sandboxing of iOS, even if your device is class compliant, they have set a very low limit on the power draw (10-100mA) often causing an annoying error to come up stating “The connected device requires too much power.” Fortunately there’s a hack/workaround for this problem. Simply attaching an unpowered USB hub between the CCK and your MIDI controller prevents the error from popping up and allows you to use your class compliant hardware. As an added benefit, the USB hub allows you to use multiple devices with your iOS device as long as they are either powered on their own, or they can draw enough power from the iPad/iPod Touch/iPhone. Side note: this works on iOS 6, but I do not know if it works on iOS 7 since I’m still waiting to do the update, so I’d love to hear from someone who has tried this.
Lately I have been researching potential solutions, and digging through my old MIDI hardware to see what kind of setup will work the best for me take to advantage of my favorite iOS music apps. Recently the thought occurred to me that perhaps I could use the Bitstream 3X MIDI controller (BS3X) with the iPad. I bought the BS3X back in the Spring of 2011 specifically to use as a controller for my Roland Super Jupiter MKS-80 analog synth, and therefore it is consistently available in my studio setup.
The BS3X is one of the most flexible and programmable MIDI controllers ever designed. It has traditional MIDI I/O including an in, two outs, and a thru jack. It’s even got a pre-MIDI Sync-24 jack. More importantly to this conversation is that is has class compliant USB MIDI I/O. The BS3X is designed to be an interface and controller in one and works perfectly to bridge my old hardware, iPad, and MacBook Pro together. Since everything is wired there’s little to no noticeable latency when playing a synth app with any MIDI keyboard plugged into the BS3X. Also, thanks to the plethora of I/O options on the BS3X, I can use the iPad and a collection hardware controllers (including my non-class compliant devices) with or without a computer in the chain. Furthermore integrating the iPad into this setup does not interfere with BS3X controlling the Roland MKS-80 because those controls send system exclusive messages (sysex) to the channel I have dedicated to the MKS-80.
In the video I have focused on illustrating how one might use two iPad synthesizer apps and a hardware synthesizer together including Cassini, Sunrizer, and the MKS-80. The BS3X is used as both the iPad interface and MKS-80 controller. No computer is required, but a simple change of cable allows for a computer to be integrated into this setup because the MOTU UltraLite interface and standalone mixer has MIDI I/O. In other words two MIDI interfaces are still necessary with a computer, but prior to this experiment I was only using the BS3X as a controller for the MKS-80 and bypassing the class compliant USB MIDI interface functionality. Since the USB hub was required I also added the QuNexus to the setup. This was dedicated to feeding notes into the arpeggiator in Cassini. The keyboard controller was split so that in the low end I could play the MKS-80 effect then tweak it with the BS3X knobs and sliders as it decayed. In the upper end of the same keyboard I played a lead sound programmed in Sunrizer.