Setup

Where’s the Noise?

ShakeMidi doesn’t make sound all by itself. It makes MIDI notes and sends them wirelessly to other devices which turn the notes into sound:

Wireless MIDI controller overview

The Potential

Picture this: your laptop is running your favorite music software, it’s plugged into a really, really loud sound system and ShakeMidi is in your back pocket. You’re dancing and thanks to ShakeMidi, your body motion is translating into a live beat!

Quick Tutorial

Grab an iPhone and an iPad and verify they are both connected to the same wireless network. Launch the GarageBand app on the iPad and choose the smart guitar instrument. Launch ShakeMidi on the iPhone and start shaking. That’s it!

Connection Overview

The device running ShakeMidi and the device you want making sound need to be connected to the same Wi-Fi network. This can be a hotspot, an ad-hoc network or another type of wireless network.

Once you are connected to the same Wi-Fi network, the devices can talk to each other automatically via Core MIDI or manually via DS Midi Wifi.

Connecting via Wi-Fi

On the device running ShakeMidi, go to the device’s Settings. Tap Wi-Fi and make sure it is on. Next, connect to a Wi-Fi hotspot:

Enabling WiFi on iOS

For best results playing ShakeMidi, tap the blueish arrow icon next to the name of the network and make sure Auto-Join is on:

WiFi Auto-join iOS

Now connect your computer (or other device) to the same Wi-Fi hotspot:

Enabling WiFi on Mac OS X

That’s it!

Creating a Network

Alternatively, you can create your own ad-hoc network from your computer. Just click Create Network… from the above pictured drop-down and configure your network:

Creating an ad-hoc wireless network on Mac OS X

Then make sure your device with ShakeMidi is connected to that network and auto-join is on.

To achieve the lowest latency, make sure there is nothing bogging down your wireless network like a big download or an online backup.

Now that you have the devices talking via Wi-Fi, we must also connect the MIDI.

Core MIDI

Core MIDI is great way for your devices to send MIDI messages. Perhaps the biggest benefit to using Core MIDI is that ShakeMidi will auto-connect to nearby devices and computers.

Core MIDI network auto-connect

It also sends time stamps with all the MIDI packets, so you can achieve zero millisecond latency when you are using the Quantize feature and the MIDI clock is running on your receiving device.

Zero latency

Please note that Core MIDI requires iOS 4.2 or greater and the auto-connect feature requires iOS 4.3 or greater.

To start using Core MIDI, tap ShakeMidi’s Settings icon and make sure your Connection Type is set to Core MIDI. By the way, this is the default connection type when you first launch the app.

Core MIDI connection type

Device to Device

Sending MIDI from iOS device to iOS device is quite an easy setup. Just launch a Core MIDI enabled app on your receiving device like GarageBand and choose an instrument that receives MIDI like the smart guitar.

GarageBand iOS

Your device running ShakeMidi will automatically recognize the device and auto-connect Core MIDI for you. Then you can shake or tap out notes in ShakeMidi and you will hear the sound from the other device.

Core MIDI network auto-connect to iPad

Choosing Core MIDI Connections

It is possible to connect to multiple devices and have ShakeMidi sending MIDI to all of them. However, you might want to connect to just a single device. To customize which device to send MIDI to, just tap ShakeMidi’s Settings icon and scroll down to the Core MIDI Connections group:

Core MIDI connections

Turn the switch off to disable sending Core MIDI messages to that device. Switch it back on and Core MIDI communication will resume. This is a good way to debug a faulty connection. Just disconnect and then reconnect.

More About Auto-Connect

ShakeMidi remembers your connection choices. If you disable a connection, it won’t auto-connect again in the future. If you enable a connection, ShakeMidi will remember that it is okay to auto-connect to that device in the future.

At most, ShakeMidi will auto-connect to a single device at a time. So if you have multiple Core MIDI enabled devices or computers on a single network, you will probably want to get in here and specify your connection preferences.

Device to Mac Computer

Setting up Core MIDI on a Mac is easy and thanks to ShakeMidi’s auto-connect feature it only has to be done once. First, launch the Audio MIDI Setup utility. It is in the Utilities subfolder of Applications:

Audio MIDI Setup Utility

After launching Audio MIDI Setup you’ll see the MIDI Studio window. If you don’t see this window, please click the Show MIDI Window option from the Window menu.

Audio MIDI Setup utility, network icon

Double click the Network icon to bring up the MIDI Network Setup window:

Creating a network session with Audio MIDI Setup utility

Click the plus sign (+) icon beneath My Sessions to create a MIDI network session. Check the box next to your new session to enable it. Last, choose the Anyone option from the Who may connect to me drop-down. Your window will now look something like this:

Audio MIDI Setup network session

Because ShakeMidi is already running on your device it will recognize that your Mac computer is on the network and auto-connect. This will add the name of your device to the Participants list. If you are having any challenges auto-connecting your device, just choose the name of your device from the Directory list and click Connect.

Connecting Again Tomorrow

In the future, all you have to do is launch the Audio MIDI Setup utility when you want to enable Core MIDI on your Mac computer. Because you have already setup a MIDI network session and thanks again to auto-connect, you won’t have to worry about clicking anything in the utility. Just launch it and you’re good.

To make it easy to launch in the future, add the Audio MIDI Setup utility to your dock. Just drag the icon up into your list of apps in your dock. It will stick there even when you close the utility.

Device to Windows Computer

Windows users: you can enable Core MIDI support with the rtpMIDI app. For more info and a detailed tutorial, check out the rtpMIDI website.

DS Midi Wifi

If you have an iOS device prior to version 4.2 then Core MIDI is not an option. You will need to manually connect MIDI with DS Midi Wifi (also called “DSMI”).

DS Midi Wifi

Please note that DS Midi Wifi only allows you to connect your device to Mac, Windows and Linux computers, not other iOS devices. Also, it does not feature time stamps, so ShakeMidi’s quantize feature will be disabled.

Download and install the appropriate DSMI Server app for your computer’s operating system. You can download from: code.google.com/p/dsmi/downloads/list. After you have installed, just launch the app:

DSMI wireless connected

And choose the DS Midi Wifi connection type from ShakeMidi’s settings:

DS Midi Wifi connection type

That’s all you need to do to connect up with DS Midi Wifi.

Next Step

Now that you have your devices connected and sending MIDI messages, it’s time to learn more about how to make sound with your receiving device. We will cover that in the next lesson: