Skip to content

Handle MIDI in (using gomidi) to control digital audio mixing consoles (mute groups & tap delay)

License

Notifications You must be signed in to change notification settings

MRechtien-zz/mixgo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MixGo PoC

This project handles MIDI CC messages from a given MIDI interface to control (digital) audio mixing consoles.

Main goal is to control the mute groups and tap delay from a Raspberry PI via MIDI foot controller.

Current implementation supports Allen & Heath QU 24 and Behringer X Air 18. While Allen & Heath uses NRPN MIDI messages the Behringer requires OSC messages for which go-osc is used.

Raspberry Pi setup

The hardware layout of my setup looks like:

MIDI FootController => USB-Midi Interface => Raspberry PI => WIFI => Digital Mixing Console

Install PortMidi (Ubuntu/Debian based)

sudo apt install libportmidi-dev libportmidi0

The Raspberry PI and portmidi should work with most class compliant USB-MIDI interfaces.

Install (recent) GO runtime

export GOLANG="$(curl -s https://go.dev/dl/ | awk -F[\>\<] '/linux-armv6l/ && !/beta/ {print $5;exit}')"
wget https://golang.org/dl/$GOLANG
sudo tar -C /usr/local -xzf $GOLANG
rm $GOLANG
unset GOLANG

Update .profile/.bashrc

GOPATH=$HOME/go
PATH=$PATH:$GOPATH:/usr/local/go/bin

Setting up mixgo service

The contained configuration files assume the app is installed in /opt/mixgo and has been build running go build.

resource/mixgo.service can be installed as (user-level) systemd service - see file for more instructions. This unit definition references the start-up script/start-mixgo.sh. The startup-script greps the current IP/network of interface "wlan0" in order to determine the matching configuration for that setup and launches the mixgo executable.

A wpa_supplicant configuration template can be found in resources/wpa_supplicant.conf to indicate howto setup multiple WIFI configurations.

Hints

About

Handle MIDI in (using gomidi) to control digital audio mixing consoles (mute groups & tap delay)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published