Boosts welcome! I'm trying to use a rpi as a usb midi host. Has anyone experience with this? I've tried using blokas "patch os" and midi routing with modep. Unfortunately I had noticable delays (irregular hihat pattern)... I also tried routing directly with jack. And using a rpi 4 instead of a rpi 3. My goal is to control (and power) different hw synths with a squarp pyramid (also usb midi).

@openmastering i'm also open for alternatives :) I heard the bomebox is one such alternative. It's a bit pricey though and does a lot more than what i need.

@jokke Sorry, I don't have a solution, but am looking for a reliable MIDI host myself.

While I assume it should be possible to get fairly stable MIDI timing out of a pi4 running a Debian derivative (I think) such as Patch OS, if all you need is the MIDI host and patching functionality the better route might be to go "bare metal" to avoid all the background stuff messing things up.

Have you come across Circle, a bare metal C++ environment for the pi yet?


@axwax i haven't but that looks pretty promising! I also think running bare metal would minimize any scheduling issues. Thanks for the hint!

@jokke Specifically their mini organ example looks like it might have most of the ingredients, ie Serial and USB MIDI, including MIDI host functionality.

I haven't played with it myself, but it's high on my list of things to try.

@diyelectromusic has a number of blog posts on it:

Personally, I've only played with using a Teensy 3.6 as MIDI host, which managed to power a beatstep ok, but failed with my SQ1.
You can get a glimpse of it here:

@axwax @diyelectromusic I gave it a try but couldn't get it to work... :/ Ended up with patch os, disabling jack, tiny bash script and udevrule. (See post in chain below)

@jokke I would try an external hat of some kind and / or low latency kernel
I know it's possible because norns does it, but it runs bare metal I believe

@y0x3y yeah my pi sound hat should be arriving soon :) I also suspect that maybe - even though the usb midi devices aren't connected to the sound card - some global latency settings apply and using a low-latency sound card might help with that.

@jokke I use the little script mentioned here:
Works flawlessly for me, I have six midi devices connected and never noticed any problems. The script will just automatically connect every midi device, so you only have to set the channels on your external gear and you're done.

@dr_laemmerbein nice! i'll give that a go! It seems it's using alsa directly (not jack)

@jokke Yep, I don't use my RPi for anything else, so I don't really care :D

@jokke @dr_laemmerbein Thanks for sharing, that does sound very promising indeed!

@jokke I've not tried it yet, but over the next couple of weeks I'm hoping to build a USB -> DIN converter using a Teensy. It has a host-capable USB header, and includes MIDI capability: I'm using the 3.6, but it looks like the 4.0 can do the same and is in stock.

@Floppy @jokke Just a heads up: You may be better off with a Teensy 4.1.


The 4.1 certainly makes things a lot more convenient than the 4.0. (And for the record I used a 3.6 myself as well)

@jokke @Floppy They are pretty simple to use and very well documented.

Btw, Deftaudio does some very affordable and feature-rich MIDI boards (some inc host capability) based on the Teensy:

I've been tempted numerous times, but always got put off by the high shipping costs to Spain ($28 shipping for a $14 PCB), and then thought I'll just DIY it fully instead.

I had a chat with a happy customer not long ago here:

@axwax wow those are so nice!! 🤩 Would be awesome if they had a reseller in europe.

@axwax @jokke yeah, I only linked the 4.0 docs as that seems to be the only one in stock; I think, if you can get hold of one, any of 3.6, 4.0 and 4.1 will do it.

@Floppy @jokke

Pimoroni still got stock of 4.1's:

I actually had my finger hover over the "add to cart" button last night, but resisted my gas - for now! 🙃

Sign in to participate in the conversation

Happy banthas grazing on tatooine.