Midimutant
This repo currently contains a circuit based on this design posted on Silicon Stuff for using the Raspberry Pi built in uart as a midi output.
Setting up midi on the Raspberry Pi
The files in boot need to go in /boot (probably good idea to compare with existing rather than copying them over). The relevant part of config.txt is:
lcd_rotate=2
dtoverlay=pi3-miniuart-bt
init_uart_clock=39062500
init_uart_baud=38400
dtparam=uart0_clkrate=48000000
Build and install ttymidi - this is adapted to allow sysex messages to pass through correctly.
$ cd pi/ttymidi
$ make
$ sudo make install
Autostarting Midimutant on Raspberry Pi
Based on LXDE window manager
- Copy midimutant.desktop to /home/pi/Desktop
This tells the window manager how to start the application.
- Create a local startup for the pi user by copying contents of dot-config to .config in /home/pi
This autostarts the application and a terminal in the background so you can still plug in a keyboard and alt-tab to it to escape the fullscreen app.
- Copy midimutant.sh to /home/pi
This is the shell script that starts ttymidi, connects it to the output alsa midi device and starts midimutant.
To make the application fullscreen with no window decoration, add this to /home/pi/.config/openbox/lxde-pi-rc.xml in the section:
<application name="midimutant">
<decor>no</decor>
<shade>no</shade>
<focus>yes</focus>
<fullscreen>yes</fullscreen>
<maximized>true</maximized>
</application>
- Turn off the mouse pointer
Doing the properly for touchscreen was tricky to figure out (unclutter etc show the mouse when it moves). Edit /etc/lightdm/lightdm.conf search for the xserver-command option and uncomment it to be this:
xserver-command=X -nocursor