- Before You Begin
- Install MODEP
- Check and Start MODEP Services
- Configure JACK for USB Audio Devices
- Optimize Performance
- Set Up a Wi-Fi Hotspot
- Add a Shutdown and Power Up Button
- Add an Activity LED (Optional)
- Download and install Pi-imager
- Select Raspbian Lite as the OS
- Configure your username/hostname in the settings
- Write the image to the SD card
- Insert the SD card into the Raspberry Pi and power it on
- Connect to the internet (Ethernet or Wi-Fi)
- Update the system:
sudo apt update && sudo apt upgrade -y
MODEP (MOD Emulation Pedalboard) turns your Raspberry Pi into a powerful multi-effects unit. Follow these steps to install it:
curl https://blokas.io/apt-setup.sh | sh
sudo apt update
sudo apt install modep -y
sudo apt install libfluidsynth3
libfluidsynth3is required for instruments from FluidPlug
sudo raspi-config- Navigate to System Options > Boot/Auto Login > Console Autologin
- Save and reboot:
sudo rebootVerify that MODEP services are running:
systemctl list-units --type=service | grep modepCritical services:
modep-mod-uimodep-mod-hostjack
If the UI is not accessible, restart the services:
sudo systemctl stop modep-mod-ui modep-mod-host jack
sudo systemctl start jack modep-mod-host modep-mod-uiCheck statuses:
sudo systemctl status jack
sudo systemctl status modep-mod-host
sudo systemctl status modep-mod-uiRun:
aplay -lLook for your USB audio device in the output. It may be listed as Headset, CODEC, or another name (e.g., hw:DeviceName,0).
Edit /etc/jackdrc:
sudo nano /etc/jackdrcReplace with:
exec /usr/bin/jackd -t 2000 -R -P 70 -d alsa -d hw:<DeviceName>,0 -r 48000 -p 256 -n 4 -X seq -s -S
Replace
<DeviceName>with the name identified in the previous step.
Save and exit (CTRL+X, then Y, then Enter).
Restart JACK:
sudo systemctl restart jackCheck logs:
sudo journalctl --unit=jack --no-pager | grep XRUNEdit /etc/security/limits.conf:
sudo nano /etc/security/limits.confAdd at the end:
@audio - rtprio 99
@audio - memlock unlimited
@audio - nice -20
<username> - rtprio 99
<username> - memlock unlimited
<username> - nice -20
Replace
<username>with your username
sudo nano /boot/cmdline.txtAdd this at the end of the existing line (don't start a new line):
usbcore.autosuspend=-1
Save and reboot:
sudo reboot
β οΈ Caution: Overclocking can improve performance but may increase heat and power consumption. It is only recommended if you experience audio glitches (xruns). Ensure proper cooling and power stability.
Edit the config file:
sudo nano /boot/firmware/config.txtAdd the following:
# Run as fast as firmware / board allows
arm_boost=1
kernel=zImage
arm_freq=1375
core_freq=525
gpu_freq=525
over_voltage=3
force_turbo=1
sdram_freq=625
sdram_schmoo=0x02000020
over_voltage_sdram_p=4
over_voltage_sdram_i=3
over_voltage_sdram_c=3
dtparam=sd_overclock=100Note:
force_turbo=1can be removed to avoid forcing max clock speed, which can reduce lifespan.sdram_freqcould be set lower, to a safer 500MHz.
Save and reboot:
sudo rebootnmcli deviceYou should see output similar to:
DEVICE TYPE STATE CONNECTION
wlan0 wifi disconnected --
eth0 ethernet connected Wired connection 1
lo loopback unmanaged --sudo nmcli device wifi hotspot ssid <hotspot-name> password <password> ifname wlan0List network connections:
nmcli connectionView connection details:
nmcli connection show <hotspot-UUID>Enable auto-connect:
sudo nmcli connection modify <hotspot-UUID> connection.autoconnect yes connection.autoconnect-priority 100Verify changes:
nmcli connection show <hotspot-UUID>- Connect one leg of the push button to GPIO 3 (pin 5)
- Connect the other leg to GND (pin 6)
Note: GPIO 3 is part of the Raspberry Pi's hardware and supports both shutdown (with software configuration) and power-up functionality natively.
Edit the Raspberry Pi's configuration file:
sudo nano /boot/config.txtAdd the following line at the end:
dtoverlay=gpio-shutdown,debounce=3000Note: The
debounce=3000parameter ensures the button must be held for at least 3 seconds to trigger a shutdown. Short presses will be ignored.
Save and exit:
- Press
CTRL+X, thenY, thenEnter.
Reboot your Pi to apply the changes:
sudo reboot- Press the button briefly while the Raspberry Pi is running.
- The system will safely shut down.
- Press the button again (post-shutdown) to power the Pi back on.
- No dependencies or Python scripts required: Configuration happens directly in
config.txt. - Built-in power-up support: GPIO 3 (pin 5) works for both shutdown and power-up.
- Efficient and lightweight: Uses system-level hardware features without running extra processes or services.
Show activity feedback for disk writes. You can connect an LED to monitor the system's disk activity.
- Connect the anode (long leg) of the LED to GPIO 14 (TX) (pin 8) through a 330Ξ© resistor.
- Connect the cathode (short leg) to GND (pin 6).
Edit the config.txt file:
sudo nano /boot/config.txtAdd the following lines:
enable_uart=1
dtoverlay=disable-bt #OptionalSave and exit:
- Press
CTRL+X, thenY, thenEnter.
Reboot your Pi:
sudo rebootOnce configured:
- The LED will blink on GPIO14 (TX pin) whenever the system sends serial data.
- This activity reflects disk I/O or other data being output from the Raspberry Pi.