Uncategorized

LXD/rtpmidi – running McLaren Labs rtpmidi in a container

  • by

Container technology can be used for many things. They can be used for isolation, security, portability or resource management. One popular use of containers is to run a binary for one operating system on another operating system. We wondered if Linux lxc/lxd container technology would allow us to run the binary of rtpmidi for Ubuntu 22.04 on a Debian 12 system. We succeeded eventually.

This post outlines how we reached success. It is not necessarily a recommendation to follow this path. There are a lot of steps, and they can be confusing. But we are going to write down what we learned anyway.

Read More »LXD/rtpmidi – running McLaren Labs rtpmidi in a container

Update: Korg Microkey Air 37 Bluetooth MIDI Keyboard with Raspberry Pi4 and Buster

Last year, in https://mclarenlabs.com/blog/2019/01/15/korg-microkey-air-37-bluetooth-midi-keyboard-with-raspberry-pi/, I described how to compile a Bluetooth update for your Pi and how to connect a Korg Bluetooth keyboard to your Pi wirelessly. Raspbian “Buster” includes bluez-5.50. The code for version 5.50 includes support for Bluetooth MIDI, but it is not enabled in the “Buster” distribution. This article describes what I discovered in compiling bluez-5.50 for “Buster” and how I installed it to get Bluetooth MIDI working on my Raspberry Pi4.

Read More »Update: Korg Microkey Air 37 Bluetooth MIDI Keyboard with Raspberry Pi4 and Buster

Run rtpmidi as a service on Raspberry Pi

A service is a program that the operating system automatically starts when it boots. On the Raspberry Pi “buster” operating system, the daemon that starts and stops services is called “systemd.” You can read about creating services here:

https://www.raspberrypi.org/documentation/linux/usage/systemd.md

McLaren Labs rtpmidi can be run as a service so that whenever you start your Raspberry Pi rtpmidi can be ready to go. This is especially useful in a headless system where you want rtpmidi to route incoming RTP MIDI sessions to a specific MIDI destination.

One of our customers wanted to know how to do this, so we wrote up this HOWTO guide. Here we will show how to create a service that

  • listens for incoming RTP-MIDI connections
  • connects to MIDI Alsa port 128
  • announces itslef on UDP Port 5006
  • logs its output to Syslog
Read More »Run rtpmidi as a service on Raspberry Pi

Towards the Tactile Internet of Musical Things

  • by

You may have heard a new term recently: “The Tactile Internet” [1]. The Tactile Internet is the next evolution in the Internet of Things, where humans and machines can interact in real time, and with a very low latency. Low latency capabilities will enable new applications. The Tactile Internet will allow people to interact with remote environments and in real-time.

The enabling technology is 5G. The 5G standard defines a new class of service called “Ultra-Reliable Low Latency Communication” (URLLC). URLLC not only increases uplink speed, but also eliminates some of the handshakes necessary for an endpoint to send some data up to the network [2]. The end result is that applications can inject data into the network at a much reduced latency.
Read More »Towards the Tactile Internet of Musical Things

Linux MIDI Command Line Cheatsheet

USB MIDI controllers and keyboards have come way down in price the last few years.  We really like the Akai MPK Mini mkII, and we’ve really enjoyed using the Numark Orbit because it has an accelerometer in it for sensing tilt and motion, and it is easy to send MIDI messages for changing its colors.

Use the command line to control the MIDI system


If you’re experimenting with a Raspberry Pi using USB MIDI input devices, you’ll probably get to the point where you are wondering if it is working correctly and if the MIDI information is getting into your Raspberry Pi.  This article lists some of the command line tools you can use to examine the information coming from these devices.
Read More »Linux MIDI Command Line Cheatsheet