New releases – Raspberry Pi 4 and Ubuntu 19

Along with the recent release of McLaren Labs rtpmidi version 0.5.0, we have new ports to Raspberry Pi 4 Raspbian OS “Buster” and also Ubuntu 19.10 “Eoan Ermine”.

We are especially excited to release the port to Raspbian “Buster!” The Raspberry Pi 4 has more computing power and higher bandwidth connectivity. This makes the Raspberry Pi 4 even more exciting for music and media creation. And now, with McLaren Labs rtpmidi you can send MIDI messages over Ethernet and WiFi to a Raspberry Pi 4.

See https://mclarenlabs.com/rtpmidi

McLaren Labs rtpmidi Version 0.5.0

This month McLaren Labs releases rtpmidi version 0.5.0 for Ubuntu and Raspberry Pi. This release brings some great new features, and also provides a few performance and installation improvements.

More MIDI message types … including SysEx

McLaren Labs rtpmidi has always supported the following message types with full Journal capability for sending and receiving. (Note: The Journal is part of the error correction mechanism that recovers lost messages that occur when sent over a network.)

  • Note On, Note Off
  • Control Change
  • Program Change
  • Pitchwheel
  • System Reset

With this release, we also add the following to provide a complete set of MIDI message types including System Exclusive.

Continue reading “McLaren Labs rtpmidi Version 0.5.0”

The State of Network MIDI (2019)

Network MIDI was invented sometime around 2004 to send MIDI messages over an IP network. To handle network loss, a protocol known as RTP-MIDI was created and documented as RFC-4695. Network MIDI is built into OSX computers and iOS devices. Apple music creators think nothing of connecting MIDI equipment using Ethernet and WiFi, instead of MIDI cables.

Sometime around 2009, Network MIDI was built into iPads and iPhones. This made building touch-based control surface Apps easy, and ensured they integrated with MIDI Workstations over WiFi. While this capability created many cool demos, the unpredictable latency and jitter of WiFi made MIDI-over-WiFi not attractive where timing is important. MIDI-over-Bluetooth became a standard in the last few years, and seems to be the preferred method for sending MIDI over wireless links.

But Network MIDI persists, and new implementations of the protocol as software pop up, as do new hardware products implementing the protocol. This article is a round-up of some of the implementations available in 2019.

Continue reading “The State of Network MIDI (2019)”

Why McLaren Labs uses Objective-C

McLaren Labs was started with the idea that music and media creation on Linux should be as easy and fluid as Mac OSX. We had been inspired by AVFoundation and the modular way its pieces fit together. We loved being able to build media pipelines with sources and sinks that cleaned up after themselves when you were done with them them.

Many of the facets of the OSX components we liked were provided by ObjC features enabled by the Clang compiler and LLVM tool suite. LLVM has revolutionized language development by paving the way for Swift and Rust. Back at the time we were getting started, Swift on Linux was gaining traction and we considered adopting it. However, after some initial explorations with Swift and libdispatch, we discovered that libdispatch just wasn’t ready with Swift on Linux. That was in 2015 – Swift on Linux is much more mature. The equation might be different today … but it might not too.

Continue reading “Why McLaren Labs uses Objective-C”

Yamaha MD-BT01 Bluetooth MIDI adapter to Raspberry Pi

The Yamaha MD-BT01 is a nifty little MIDI 5-pin DIN to Bluetooth adapter.  It plugs into the MIDI In/Out ports of MIDI controllers to connect wirelessly to a computer with Bluetooth.  A typical use for this adapter is to connect legacy MIDI keyboards to a computer without using a 5-pin MIDI to USB adapter on the computer.  Since most computers have Bluetooth built in these days, this makes for a tidy work-area since it eliminates at least one of the cables in your MIDI studio.


The MD-BT01 has a very smart appearance – it consists of just two large plugs connected by a single wire.  It runs off of the current already provided by the 5-pin MIDI signal.  Just plug it in, and it advertises itself as a Bluetooth MIDI connection point.    Since it uses the Bluetooth MIDI standard, it can connect to many different devices.  We tested it with Raspberry Pi and it works fine with Raspbian Stretch.  If you have followed the steps in our previous article (https://mclarenlabs.com/blog/2019/01/15/korg-microkey-air-37-bluetooth-midi-keyboard-with-raspberry-pi/) then your Pi is ready to go.
Continue reading “Yamaha MD-BT01 Bluetooth MIDI adapter to Raspberry Pi”