How do I use RTP-MIDI over an Ethernet or Wi-fi Network?

When most people think of MIDI they think of these things: DIN jacks. Each pair of DIN-MIDI sockets like these is one MIDI port and each port can carry up to 16 MIDI channels. Of course you can stack up more ports easily - for example the iConnectivity mio4 has 4 sets of DIN-MIDI ports, each with its own set of 16 channels.

But the great thing about MIDI is you can run its signals over almost anything, so it’s pretty trivial to run it over USB as well. And USB has much higher bandwidth than traditional DIN-MIDI, so one USB jack has the ability to emulate up to 16 virtual MIDI ports. That’s a lot more efficient (and cheaper) than having to build 16 pairs of DIN jacks! The only issue with USB is that the cables have to be relatively short, which is a huge problem when you are playing on a stage or in a large studio. If only we had another standard that allows multiple MIDI ports, is easily available, and allows long reliable cable runs...

Turns out we do - Ethernet. If you look at the iConnectivity mio4, mio10, MIDI4+, or even the PlayAUDIO 12, you will see each of them has an Ethernet jack on board (that’s the square jack with the <•••> logo above it). That’s because these iConnectivity devices aren’t just USB interfaces, they are Ethernet MIDI interfaces too!

Enter RTP-MIDI

iConnectivity Ethernet interfaces use a system called RTP-MIDI (Real Time Protocol MIDI). This is a method of running MIDI over standard networks, like Ethernet or even Wi-fi! RTP-MIDI is also built into all MacBooks and iOS devices and can be easily added to Windows computers with the special iConnectivity RTP-MIDI Windows driver, so you probably already have a system at home capable of running it.

Ethernet is a very fast transmission system, so like USB it can carry multiple virtual MIDI ports. Each current iConnectivity Ethernet interface is capable of transmitting and receiving over 4 virtual MIDI ports, each with 16 channels; and if you need more you can just add another interface to your network to give you 4 more virtual MIDI ports each time. RTP-MIDI also has built-in latency compensation, so timing is super tight, no matter how many MIDI devices you are running.

Wiring it up

RTP-MIDI runs over the Internet router in your home or any standard Ethernet switch, using any normal Ethernet cable. You can connect an iConnectivity Ethernet interface directly to your computer’s Ethernet jack, but it’s usually better to plug in via an Ethernet switch for maximum flexibility. It you want to connect your computer to more than one interface then you must use an Ethernet switch. A good quality Netgear switch like the one shown below only costs around 25 bucks, so it’s definitely worth making the purchase.

RTP-MIDI will also run over HomePlug adaptors - these are amazing things that enable you to run Ethernet through the walls of your building using just your already existing electrical power system. You plug these directly into your power sockets, plug an Ethernet cable into each one and you instantly have Ethernet MIDI running throughout the whole studio without laying a single cable. Well worth investing in to get messy cables off the floor! Some HomePlug adapters have 2 or 3 ports on them, they are well worth getting even if they cost a little more, because that means they have Ethernet switches already built-in.

 

Setting up your MIDI Network

Now that you have physically cabled everything, time to get your network humming. You need to tell all of your networked MIDI interfaces “Hey, wake up, we are going to be using Ethernet today.” In RTP-MIDI language this is known as Session Initiation. The first time you do this it will seem complicated and take up a few minutes, but if you follow the instructions below it should be relatively painless.

In this example I am using an iConnectivity mio4, connected via Ethernet cable to a basic Netgear Ethernet switch. If you have a slightly different iConnectivity setup don’t worry, it should work exactly the same way.

Important note: please ensure that your iConnectivity interfaces all have the latest firmware installed before proceeding any further! Your interface must be running version 2.0.1 firmware or higher for this to work correctly!

Opening the MIDI Network Setup window

First let’s get the RTP-MIDI Session Initiation screen up:

Mac OS

Start by opening Audio Midi Setup

 

Click on the menu Window -> Show MIDI Studio

 

In the MIDI Studio window, double-click the Network icon

 

This will bring up the MIDI Network Setup window.

Windows

After installing the iConnectivity RTP-MIDI Driver, simply open the rtpMIDI application.

Initiating your first MIDI Network Session

If this is your first time setting up a network MIDI connection you will be greeted with a screen like this:

 

In the Directory area on the left side you should see all of your Ethernet-capable iConnectivity interfaces listed. The name format is:

Interface name - Last 3 digits of serial number - RTP-MIDI port

This means that if you have 2 interfaces of the same model they will still have unique entries. Just check the last 3 digits of their serial numbers and you will know which one is which.

Each current iConnectivity interface has 4 virtual RTP-MIDI ports, and you should see 4 listed for each interface in the Directory (numbers ending in -01 to -04).

In the screenshot above you can see ports listed for the PlayAUDIO 12 and the mio4.

If any of your interfaces are not listed here, check that your Ethernet cables are correctly connected.

Now you need to connect your computer to each one of these virtual MIDI ports you want to use. Each individual Network MIDI connection is referred to as a Session.

Click the + button under My Sessions to create a new network MIDI connection.

 

It will have the default name Session 1. Tick the box to the left of the name to make it active. Now click on the Session 1 name to select it and you will see information about this connection appear on the right side of the window.

On the top right you will see the base network Port number for this connection. Each Session requires two unique sequential port numbers - the defaults are 5004 and 5005 for Session 1 (you don’t see 5005 mentioned, but it’s used in the background). You should just leave these at the default setting.

Next you will the default Session name, in this case Session 1. You can change this to something more fitting later if you wish.

Below that is the Bonjour name of your computer; this is used by the automatic network discovery system. Normally you don’t need to change this.

Underneath that should be an empty Participants section. This will contain the names of any virtual ports connected in this session. Let’s add one now.

Click on a virtual port of your MIDI interface listed in your Directory on the left side, then click on Connect (I’m going to pick mio4-204-01 as an example)

 

 

You will see the mio4’s virtual port 01 appear in the Participants list on the right side, along with a latency adjustment value (this should normally be 0 ms).

Now if you open your Digital Audio Workstation program you will see that you have a new MIDI port listed called Session 1. This will allow you to send and receive MIDI via the mio4’s Ethernet jack, just like you would via a USB connection.

 

Initiating more Sessions

The procedure for setting up your next 3 connections is pretty much the same. Click the + box under My Sessions to create a second Session, and then click on the next free port in your Directory, and press Connect. This second Session should be automatically assigned to Ports 5006 & 5007, so you shouldn’t have to worry about that. It will also appear in your DAW’s list of MIDI ports.

 

Do the same for the next 2 connections, so that you end up with 4 Sessions in total.

Now you have 4 full virtual MIDI ports, each with 16 MIDI channels, running over your Ethernet network. These virtual ports are automatically connected to the hardware DIN-MIDI and USB-MIDI ports on your your iConnectivity interface. RTP-MIDI Sessions 1-4 are automatically connected to DIN-MIDI ports 1-4 and to USB-MIDI ports 1-4 and 5-8.

Using Wi-fi

If you have a wi-fi router you can also send and receive MIDI over wi-fi! Any MacBook or iOS device is capable of transmitting MIDI over wi-fi directly to your router, and then from the router via Ethernet cable to your iConnectivity interfaces. You can set this up just the same way as you set up an Ethernet network - as far as the MIDI Network Setup is concerned it’s the same thing.

Note that in order to initiate RTP-MIDI Sessions via iOS you will need to install our NetMIDI app, available free from the Apple App store. Otherwise you should initiate your RTP-MIDI Session from your computer.

Other Stuff

On the bottom left of the MIDI Network Setup windows you will see a popup called Who may connect to me: This popup can be used to restrict connections to only certain devices. If you are only using one computer you will probably want to set this to No one, but if you want to add more computers to your system you may want to set this to Only computers in my Directory or to Anyone.

On the bottom left are two popups for Live routings - do not assign anything to these, leave them blank as in the screenshot above.

Let’s play!

You now have a fully networked MIDI system available to you, with no limit on cable lengths! You can set up MIDI modules anywhere in your studio, or anywhere on the stage, without fear of losing signal. This gives you huge flexibility over using standard DIN-MIDI or USB-MIDI connections - enjoy!