Skip to content

rtpMIDI

A year ago, I posted an article explaining the relatively new concept of the ‘USB host’. With so many modern MIDI controllers sporting a USB type B socket in place of a conventional 5-pin DIN socket (or sockets) for MIDI, the only way to address a lot of vintage equipment without having to switch on your computer, is through a USB host. Anyway, I'm now going a step further and here I'm going to tell you about my recent rtpMIDI adventures

Over the past twelve months, I’ve been working on my new premises (a lot of decorating, painting and stuff, which I hate) and a few weeks ago, I made the bold decision to move in my office and my studio. My lab went over a few months ago.

Well, of course it wasn’t that simple and several weeks were taken up with planning equipment placement, multi-cores, routings, etc. I’d already started building 19-inch rack enclosures, so I obviously had a rough idea of equipment placement and which rooms were going to be used for what.

My rtpMIDI network
This schematic clearly shows how my two iConnectivity mio XLs are at the heart of my new rtpMIDI network.

To be honest, the set up wasn’t going to be too different from my previous studio, just a bit scaled down, really. Hey, perhaps that’s not such a bad thing. Indeed, the biggest change was going to be how I get MIDI into my computers (yes, I have two).

Due to the fact that I had to have a separate keyboard room (a bit weird when you consider that I’m a guitarist), I took another look at the iConnectivity mio XL and rtpMIDI.

iConnectivity mio XL
My second iConenctivity mio XL links up everything in my keyboard room to the computers in the control room. Before you ask, the very old Behringer SNR208 8-channel denoiser was modified by me in 1989 and works as an 8-channel, -10dBm to +4dBm unbalanced to balanced converter. I actually have two of these.

Hey, you know what, this kind of seems fairly straight-forward. The iConnectivity mio XL can support twenty-two MIDI ports, comprising eight pairs of DIN inputs / outputs, two additional DIN outputs and ten USB hosted ports, with lots of insane configuration options. So if I buy a few class compliant single MIDI interfaces, I’d have more than enough connections to go around, right? Wow! This sounded great!

After a couple weeks, everything was in place. My Mac and my PC were ready to fire up. It took a couple of days to get comfortable with the computers as I had a new single (shared) desktop between the two computers and a new Asus 43-inch 3840 x 1200 curved monitor.

Anyway, things went relatively smoothly and it was time to look at my new rtpMIDI network. Suddenly I hit quicksand and everything slowed down….

Page 2 of the iConnectivity mio XL user manual, states that the minimum system requirement for OS X is 10.11 and above. Well, this wasn’t quite right, for a start. iConnectivity’s website states that Auracle-X, the software used to conveniently configure the mio XL (and others like the mio XM, for example), will only work on 10.12 up. Disappointed, I persevered and found another iConnectivity application called iConfig. Great! I’ll grab that instead. Err… NO!!!!! iConfig doesn’t support the XL series interfaces. Seriously?!?!!? So, you guys have got a bit a of a gap here. Hmm….

By now I was communicating with iConnectivity customer support and indeed the misinformation was acknowledged straight-away, with a huge apology. A couple of weeks later and the misinformation remains. Okaaay!!!!

I was lucky though. I’ve also got another computer alongside my Mac running Windows 11 Pro and I was able to address my two mio XLs via Auracle-X, using Windows. I could do this easily on my new rtpMIDI network, without having to squeeze behind racks or crawl under desks to change connections.

Auracle-X and rtpMIDI on Windows
Auracle-X and rtpMIDI running on Windows 11 Pro.

rtpMIDI needs Apple Bonjour. A standard background service in OS X, you'll need to install it if you're running Windows.

Bonjour basically allows devices on a netowrk to resolve names without the need for a Dynamic Name Server, or DNS. This makes setting up of things like rtpMIDI a breeze as you don't have to bother with configuring a DHCP server like on a router, for example or mess around with IP addresses. Plug in your rtpMIDI gear and Apple Bonjour makes sure that everything can see and talk with everything else. 🙂

It took a while (see later) but once the mio XLs were configured, setting up rtpMIDI in OS X was straight-forward enough.

After checking, double-checking and triple-checking, I switched on some gear to test the network.

Oh! What a disappointment. Lots of stuff just didn’t work! Items were showing up in the rtpMIDI configuration window and in Auracle-X but MIDI wasn't getting through to everything.

So let’s start with my Nektar Impact LX61+ MIDI controller keyboard.

Firstly, the LX61+ isn’t just a keyboard. Like many similar, modern keyboard controllers, it has a load of conveniently placed transport controls that interface with the DAW. These controls are usually on a separate virtual MIDI port which you need to assign appropriately in the mio XL and rtpMIDI and in the same way as if the keyboard was connected directly to your computer via USB. You have one physical connection but two virtual MIDI ports. This however, wasn’t the problem. The problem was that when I selected the rtpMIDI port assigned to the LX61+ transport controls in the remote section of Cubase, nothing happened.

The process of fault-finding led me to capture MIDI data generated from the transport controls on the LX61+, with a utility like SendSX. This proved that MIDI from the transport controls on my Nektar Impact,  was coming into my computer. It was just that my DAW wasn’t responding to it.

After a few days of waiting for a reply from Nektar, I was told that the LX61+ transport controls will only work with a direct USB connection to the computer. The actual explanation was a little more involved but I won’t bore you with that suffice to say that the Nektar Impact LX61+ seems to be a class compliant MIDI device that err... does its own thing. Yeah, right. I'm starting to see a lot of this recently.

I've checked out a couple of other MIDI keyboard controllers and of course, many  use standard protocols like HUI and / or Mackie, to interface with DAW transports. Some even use MIDI Machine Control (MMC), so I guess I'll be looking to change my Nektar Impact LX61+ to something a little more standard. Such a shame. 🙁

The next issue I had was that while at this moment in time, I wasn’t able to test any of my synth controllers like my Retroaktiv machines and my Roland MPG-80, addressing my synth modules from my LX61+ keyboard, through the mio XL just wasn’t working reliably. As previously mentioned, gear was showing up. It was just that MIDI wasn't getting through the system. Now this was a major problem.

You’ll recall me mentioning earlier that I bought a few class compliant MIDI interfaces. The device I settled on was the ESI MidiMate EX. Well, I used these to connect eight of the USB host ports on my first mio XL, to my synth modules and programmer / editors. On the second mio XL in my keyboard room, I only needed one of the USB host ports, connected to the PC (programming) port on my old Nord Micro Modular.

ESI MidiMate EX
I bought ten ESI MidiMate EX USB MIDI interfaces and although the mio XL and rtpMIDI saw them just fine, they didn't work with a lot of my gear.

The connections to my Korg EX-8000 and my Roland JV-1080, seemed to work okay but a lot of my gear didn't respond and was quite dead. That included machines like my Roland MKS-70, Roland MKS-80 and Roland D-550.

So I’m using class compliant interfaces which show up in iConnectivity Auracle-X. I can route them and assign them in rtpMIDI but… they're not talking to my gear. Grr…

Side stepping for a moment, I’m still amazed that after twenty-three years, the software editor for my Nord Micro, still works! Running under Windows 11, this app’ is brilliant but in my new set-up, the software just couldn’t lock on to the hardware. Every few minutes the Nord editor would acknowledge the Nord Micro hardware and then after a few seconds, it would lose the connection. You know what’s coming; GRR…

Nord Micro Editor
More than twenty years on and the Nord Micro and Micro Modular editor still runs perfectly well on Windows 11.

I went downstairs to the lab and pulled out an old M-Audio Uno and an Alesis USB-MIDI cable. I use these devices to back up memory on customers’ equipment, when it comes in for repair and they’ve been working for years. With the mio XL however, the M-Audio Uno didn’t work at all but the Alesis interface did.

I tried the Alesis USB-MIDI cable in-between my first mio XL and the synth modules that didn’t work with the ESI MidiMates and suddenly there was MIDI life! Oh wow, this is exciting. I then connected the PC ports on my Nord Micro Modular to the second mio XL using the Alesis USB-MIDI cable. YAY!!!! That all worked too. In fact, I don’t think I’ve ever known the Nord Micro editor to pick up the hardware so quickly.

Nord Micro Modular
A little vintage music tech, my Nord Micro Modular. Only a mono synth but such a great little thing, I just love it.

I immediately pulled all the ESI MidiMate EXs and although it would seem that I’ve wasted like 200 GBP on these things, it would also seem that I have at least found a potential solution.

After removing the ESI devices, I noticed something weird; everything seemed a little faster, a little snappier. Hey, perhaps it was just my imagination.

Before buying a load of these Alesis interfaces, I had a thought; somewhere in a cupboard, I had an old ESI M8U XL 8 x 8 MIDI interface which I used on my Windows box many years ago and if I remember correctly, it didn’t need any drivers. A quick look on-line and ESI indeed states that the M8U XL was class compliant. If I could plug this into one of the USB host ports on the mio XL, perhaps I could get eight MIDI inputs / outputs with just one USB connection.

ESI M8UXL
Although driverless and described as being class complaint, my old ESI M8U XL wasn't recognised at all by my new iConnectivity mio XLs. It would have been amazingly convenient if it was... I think. Perhaps I should try another 1U multi-port USB interface.

To cut a long story short, it didn’t work. In fact, the M8U XL didn’t even show up in Auracle-X. That was a big shame but the concept is worth considering for anyone else thinking about buying this MIDI monster. Plugging in a class compliant, multi-port USB MIDI interface into the mio XL, should allow you to reserve MIDI ports corresponding to those on the USB interface, to the USB host ports on the mio XL, a bit like the virtual ports on the LX61+ that I mentioned earlier. Well, that’s the theory, anyway.

So back to the humble Alesis USB-MIDI cable which I soon discovered has long since been obsolete. Indeed, many websites that came up in my search, showed ‘Out of stock’, ‘Discontinued’ or ‘End of life’, blah, blah, blah. That wasn’t surprising, really but then one popped up suggesting that this particular company did have stock. I called them and not only did they have stock but they had lots and were also prepared to give me a 10% discount when I told them that I wanted to buy ten! The company in question was The DJ Shop in Southampton (UK).

Alesis USB MIDI Cable
I found it hugely ironic that out of all the MIDI interfaces I have, the now obsolete Alesis USB-MIDI Cable was the only one I could get to work in between my music gear and one of the most powerful, modern MIDI interfaces.

The next day was a Saturday. The weather seemed like summer had finally arrived. I have friends and family in and around Bournmouth, Poole and Christchurch (a few miles to the west of Southampton), so Julie and I decided on a mini south-coast tour for the day, starting at The DJ Shop in Southampton!

Julie and I had an awesome day hanging out with my sis' and later on, with some lovely Brazilian friends of ours who we hadn't seen for several years. In fact, we didn't get back ‘till early Sunday morning.

Well, I couldn’t wait to get my rtpMIDI network up and running. While unpacking my Alesis USB MIDI cables and connecting them to my gear, it dawned on me how amazingly ironic it was, that I could only get one of the newest, most powerful and most radical MIDI interfaces to work properly, with some USB interfaces that had been discontinued many years ago. Of course, other than the ESI MidiMate EX, I hadn’t tried any newer brands. Perhaps it’s something I can do over the next few weeks.

A WORD ABOUT AURACLE-X

I have to say that my personal experience with the mio XL editor, Auracle-X was terrible. I’ve already made reference to the software editor for the Nord Micro which after more than a couple of decades, still works great under Windows 11, so what on earth is going on with the iConnectivity editor?

Auracle-X was intermittently clunky. Sometimes it would slow right down. Initiating a command via a mouse click for example, often resulted in a painful wait of several seconds before anything happened on the screen. This behaviour would last for a whole session and rebooting the mio XL or quitting and relaunching the editor didn’t fix the problem. Don't get me wrong, sometimes Auracle-X fired up and worked just fine... but not all the time.

Auracle-X was unreliable. The option to reserve MIDI devices against USB host ports is a great feature… if it worked properly. Selecting a device wouldn’t always select that device! When I was configuring the Alesis USB MIDI cables for example, I’d often get a device reserved, the name of which was a weird mixture between the Alesis device and the now completely disconnected ESI devices. Sometimes it was an abbreviated version of what actually appeared in the dropdown selection and sometimes it would get it right! It was as if some cache somewhere, was having issues.

Auracle-X would intermittently not connect to the hardware. Yes, that’s right. I had a couple of occasions when my mio XLs didn’t even show up in Auracle-X. I new the mio XLs were there, as all the ports were visible in rtpMIDI and random tests showed that many were working in my DAW. Oh boy… This was seriously testing my patience.

Auracle-X No connection with hardware... again
rtpMIDI sees both of my mio XLs but once in a while, Auracle-X doesn't. I've tried logging out / logging back into Windows, rebooting both mio XLs and even restarting my computer. Oh and every time I launch Auracle-X, it opens it opens fuuuuuuuuuuuuuull size!

One minor GUI issue with Auracle-X, is that the program doesn't remember the window  size when it was last closed. I have a 3840 x 1200 monitor and as you can see from the image above, Auracle-X opens up with a BIIIIIG window.... every time. Come on iConenctivity. That's an easy fix, guys.

I've already mentioned that the ability to 'reserve' specific USB MIDI devices against USB host ports on the mio XL, is just great. A problem arises however, when several of the same USB MIDI device are used. Trying to select specific USB MIDI devices becomes difficult as you just have a list of the same device in the reserve drop-down menu. This caused me lots of problems.

Multiple USB MIDI interfaces of the same make and manufacturer makes USB host port reservation difficult on the mio XL
Multiple USB MIDI interfaces from the same manufacturer and of the same model, makes USB host port reservation difficult.

While I kind of get why this is (like the name is embedded in the USB MIDI interface), surely there must be a way of 'bluffing' the system. Perhaps iConnectivity could consider another window which allows USB MIDI interfaces to be 'renamed', just for the user and in Auracle-X. Just an idea.

So, I really didn’t like this software, well not on Windows anyway and I couldn't run it under my version of OS X. 🙁 Luckily however, you only really need Auracle-X to initially configure your mio XL and if you wish, back up / load mio XL pre-sets to / from your computer or write / recall pre-sets to / from memory locations within the mio XL. I have to admit that I didn’t have any issues saving and loading pre-sets.

The good news is that once everything’s set up on the mio XL, rtpMIDI runs in the background on your computer and you don’t have to cross paths with Auracle-X ever again.

I tried to research rtpMIDI and the components I intended to buy, to make my rtpMIDI network, as best as I could but there was so little information out there. That's why I decided to write this post; a small attempt to potentially help anyone who’s considering going down the same path.

I guess that before you decide going rtpMIDI, you should ask yourself why. What are the advantages of rtpMIDI and is it worth it?

In my situation, the layout of the studio at the new premises, meant that my previous USB MIDI patch bays would potentially be some distance from my computers. rtpMIDI offered a solution. As it turned out, the distance between interfaces and computers wasn’t as much as I thought it would be. By the time I realised that however, I was already committed.

Alternatives to the iConnectivity series of rtpMIDI MIDI interfaces, are very thin on the ground. In fact, at the time of writing, I could only find the Bombe BombeBox, the MIDI2TR and CM-MIDI2 by KissBox and the Cinara MidiGateway. All these products are frightfully expensive and simply don’t have the port count of the iConnectivity mio XM, let alone the mio XL.

One last comment about the iConnectivity mio XM and mio XL is that they can both be connected to your computer, via USB. In fact, firmware updates can ONLY be done via the USB connection. Unfortunately, the USB B socket on both machines, is on the front panel. Guys, I get it, like you’ve got a lot of stuff going on ‘round the back, so not much space but it’s really inconvenient!

Be warned however, if using the USB to computer connection, then the MIDI port count is reduced simply due to the bandwidth of USB 2.0. For me, I was specifically looking for a rtpMIDI solution so a USB connection was irrelevant.

So to conclude, here are some point s to consider, if you’re looking at rtpMIDI:

  1. Do you need it? Think carefully. MIDI is a simple, serial data protocol. Due you really want to potentially complicate things?
  1. I installed separate network cards in my computers and used a separate switch for my rtpMIDI network but retrospectively, that really wasn't necessary.
  1. If you’re going to take advantage of USB host ports on something like the iConenctivity mio XM or mio XL, then make sure that your USB / MIDI interfaces are PROPERLY, ACTUALLY, DEFINATELY class compliant. Borrow, beg or steel and test them with your MIDI gear, if you can!!!
  1. Keep things simple and don’t even consider elaborate USB MIDI interfaces. Some modern interfaces auto-configure input and output by detecting the direction of the MIDI data stream on each connection, for example. While class compliant, the ‘MIDI’ (DIN) end of some interfaces, won’t work with a lot of equipment. I have a feeling that this is why the ESI MidiMate EX didn’t work. I'm also aware that some USB MIDI interfaces don't even comply with the MIDI hardware standard by omitting the opto-isolator on the MIDI IN port. Hang on a second; if the ports on a MIDI interface are auto-configuring, then there can't be an opto-isolator on the input circuit... because either DIN connector can be MIDI IN. So again, just make sure you do a little research and if you can, try before you buy!
  1. rtpMIDI is part of OS X but you’ll need to download it for Windows here.
  1. I learnt the hard way but although you can have one device like a keyboard, connected to the ‘IN’ port of a pair of DIN MIDI ports and another device connected to the ‘OUT’ port of the same pair of ports, at the moment, rtpMIDI doesn’t allow you to name them separately. rtpMIDI only allows you to assign one name per pair of DIN ports.rtpMIDI - Separate devices, same portTake a close look at DIN ports 4 and 6 on my mio XL #2, in the diagram above. I have a Studio Logic SL-990 88-note keyboard going into the input of DIN 4 and a Kurzweil Micro Piano connected to the output of DIN 4. Similarly, I have an Evolution MK-149 49-note keyboard connected to the input port of DIN 6 and a Roland SH-101 connected (via a Kenton Solo) to the output port of DIN 6. I have had to name DIN 4 ‘SL-990 / Piano’ and DIN 6, ‘MK-149 / SH-101’. Yeah, I know, not too much of a big deal but annoying, non-the-less. Everything works just fine of course but it would have been tidy to be able to separate the input and output devices.

One really handy feature of the iConnectivity mio XL specifically, is the easy-to-use pre-sets. So why on earth would you need pre-sets in a MIDI patch bay / interface?

As an example and on my system specifically, I have one pre-set when using my DAW and another when I need to play devices from keyboards without switching on computers. You remember? For a bit of fun!

iConnectivity mio XL pre-sets
Pre-sets; a handy feature and easy to use on the iConnectivity mio XL.

Back in 1996, my very first MIDI computer interface was an Opcode 2-port box which seamlessly connected to my Apple Power Mac 9500, via the serial port. Several years prior (back in the eighties), I had boxes like the Roland A-880 but that was a MIDI patch-bay and not a computer interface.

Anyway, eventually, I saved up enough to buy the huge (at the time) Mark of the Unicorn Midi Time Piece A/V USB. By then, my DAW hardware had changed to an Apple G4 and I recall having big problems with using MIDI over USB. The intermittent connection between the computer and the MTP A/V resulted in Apple giving me another computer. That didn't help of course and in the end, I connected my MYP A/V via serial by installed a G-Spot serial interface in place of the modem port in my G4. It wasn't until I bought a G5, that USB MIDI started to work properly. Indeed, my recent rtpMIDI adventures have reminded me very much, of those early USB MIDI days.

How things have moved on... 😀

I'm quite aware that this post might appear to be rather critical of the mio XL but in my opinion, if you can accept the minor failings as I've mentioned here in this post and which I like to think that iConnectivity will address, this is one of the best MIDI interfaces out there (at the time of writing). Also note that this post is about rtpMIDI and most of my observations concern rtpMIDI itself and NOT the mio XL. I've also highlighted the apparent lack of compliance to the MIDI standard by many manufacturers, like what does class compliant mean and how can self-configuring ports adhere to the MIDI hardware standard?

CONCLUSION: In my humble opinion, the iConnectivity mio XL proves that rtpMIDI works sufficiently well to pull a reasonably large MIDI studio together. HOWEVER....

With silly omissions and mistakes and what seems like less than stringent adherence to standards, people may be forgiven to think that the iConnectivity mio feels like it's been designed by kids and built to last a fashion-trend. iConenctivity however, has started something with it's series of rtpIMIDI interfaces and I very much hope that other manufacturers will follow suite. If that happens, hopefully rtpMIDI will evolve to iron out its niggling issues.

For larger studios, rtpMIDI is the way to go and for the time-being, I'll be keeping my iConnectivity mio XLs.


UPDATE - 27th October 2022

Near the beginning of this post, I mentioned the issues I was having with my Nektar Impact LX61+ with regards rtpMIDI and how I was surprised that this otherwise quite well equiped MIDI keyboard controller did not have a class compliant interface. Well, after a little hunting around (okay, a lot of hunting around) for something that would suit my needs and actually work, I ended up replacing my Nektar Impact LX61+ for a Novation Impulse 61.

My new Novation Impulse 61 with class compliant USB MIDI
My new Novation Impulse 61. A very cost-effective, class compliant keyboard MIDI controller. It's exceedingly intuitive. The keyboard feels great, unlike the budget knobs and sliders

Wow, what a great decision! Subjectively, the Novation Impulse is wholly intuitive making it much easier to use and delivering for me anyway, a faster workflow than the Nektar.

You don't get any bundled software with this machine unless you register and then you can download a couple of Novation's plug-in synths. Hold on a minute... they're free, anyway!

No drivers, no fancy software is included. Oh, that's because the Novation Impulse 61 is CLASS COMPLIANT!

Hooking up the Impulse 61 was a breeze. My iConnectivity mio saw it straight-away. A little editing of names in Auracle and rtpMIDI and I was good to go.

DAW control can easily be done using either MIDI Machine Control (MMC) or MIDI continuous controllers (CC). Then I discovered that Novation had a version of firmware that included Mackie HUI compatibility so I downloaded it, hooked up the Impulse directly to my Windows box, followed the bootloader procedure, ran the update and then reconnected the Impulse to my rtpMIDI network.

The Impulse is physically connected to the mio XL's first USB port. Normal MIDI functions from the Impulse can be assigned by selecting 'Port 1' on the mio XL's port reservation page.

After upgrading the Impulse's firmware, a new port (Port 3) appeared in the drop-down menu on the mio XL's port reservation page and by assigning 'Port 3' to USB port 2 (which isn't physically connected to anything), Mackie HUI commands can be sent to my DAWs.

I then set up a new (Mackie HUI) remote control in Cubase, assigned the appropriate rtpMIDI ports and BANG... I had transport control from my new keyboard. The whole set up took a few minutes and everything worked just flawlessly.

Leaving Windows, I switched on my Mac and did the same on Cubase under OS X.

Now that's more like it! 🙂