This is a work in progress.
You probably want to read Toward a Linux Softsynth Performance Setup before reading this. It covers many topics that are common to both.
Setting up a Rasperry Pi as a dedicated softsyth thing for live performances is basically the same as doing it on a standard Linux laptop, except you might run into some packages not being available for the Pi. In particular, I don't know how actively maintained the KXStudio repositories for ARM are, so using Carla may lead to some brittleness. This means we may need to use something else to control JACK and to host plugins.
We aren't going to use the Pi's built-in audio. We're just not. This means we are going to use either an external USB soundcard or a hat with an I2S DAC. A popular option for the latter is a PCM5102-based board like this one but available from an infinity of vendors. Try searching for “PCM5102 Raspberry Pi” or “GY-PCM5102” on Amazon, eBay, and AliExpress (schematic). I have a couple Focusrite Scarlet 2i2s, so they will function as my test case for the former.
I'll use a setup with a conventional monitor with keyboard and mouse to get things rolling and then see if it makes sense to move to an official 7" touchscreen or even go headless.
And after that, I'll think about what kind of power supply to use to minimize the chances of the SD card getting corrupted. I might also think about moving everything to an SSD.
The first thing we need to do is get Rasberry Pi OS installed and get the desired audio solution working.
Use your favorite method from here to install the 64-bit version of Raspberry Pi OS with desktop. I used a manual download and an RPi 4 with ??? RAM.
Once it's up and running, use raspi-config to configure your network access, change the user password, set the correct location and localization, expand the file system, and make any other configuration changes that make sense. Don't try to configure audio though. We'll do that next.
Then, update everything: sudo apt-update
and sudo apt-upgrade
.
Finally, take it for a drive to make sure things are working as expected.
Next, let's get audio working.
TBD
Our cheap audio board doesn't have the EEPROM that “official” I2S audio boards have that tells the OS about themselves. So, we need to manually configure things via the /boot/config.txt
and /etc/asound.conf
files.
Make a backup copy of both of these files so you can get back home if you get lost.
sudo mkdir -p /opt/backup-files sudo cp /boot/config.txt /opt/backup-files sudo cp /etc/asound.conf /opt/backup-files
I'm putting these into a directory under /opt
because I don't know whether having extra cruft in /boot
will bork things. If /boot doesn't care, then this should also work:
sudo cp /boot/config.txt /boot/config.txt.BAK sudo cp /etc/asound.conf /etc/asound.conf.BAK
The rest of this is from:
TBD
TBD
To control JACK, QjackCtl seems the most promising. It's the de facto default JACK GUI. Enough said.
Needs research
Needs research – is there Dexed for ARM?
Let's install the software we came here to use.
Installation, configuration, and test are TBD
TBD
TBD