User Tools

Site Tools


pi-stomp_core

pi-Stomp Core

Highly Customizable DIY Multi-effects for Guitar, Bass & Keys

pi-Stomp is an open source high definition multi-effects stompbox platform for guitar, bass and keyboards. The base install contains over 350 plugins - effects, modeled amps & cabinets, loopers and sound generators (synths).

It sports 24-bit, 48 to 96kHz stereo audio and a Raspberry Pi 64-bit quad core processor running at 1.4 GHz

Numerous virtual pedalboards containing up to dozen (or so) plugins, can be constructed via MOD, a super powerful yet easy to use drag-n-drop web user interface. Each pedalboard can be saved with multiple “presets”, each being a snapshot of all the parameters for a given sound.

Once your pedalboards are saved, only the pi Stomp is needed on-stage, at home or in the studio.

An LCD shows an overview of the current pedalboard. Navigation is done via rotary encoder and allows quick changes of the pedalboard, preset, plugin bypass, deep plugin editing and global settings.

The original pi-Stomp was the first DIY HD Multi-FX platform available in kit form. Over 40 pi-Stomp pedals have been built in 11 different countries!

A common request was the ability to further customize the hardware. The idea behind pi-Stomp Core is to provide the core functionality but allow the builder to decide the types of controls & how many, whether to include DIN MIDI, etc. Even the audio card and LCD can be exchanged for other models.

pi-Stomp Core is thus, smaller, cheaper, easier to build and incorporate into your dream audio processing project. This is possible by providing interface headers for all of the peripheral functions. The same default pi-Stomp software is used, leveraging the original pi-Stomp history and userbase.

pi-Stomp Core also adds a nifty color TFT LCD display and some usability features allowed by the increased resolution.

Demo and Overview

This wiki is admittedly quite text dense. Visual learners might get more from watching this 11 minute overview

Plugins/Effects included (default installation)

358 Total plugins

  • 57 Overdrive, Distortion and Fuzz
  • 36 Dynamic (Compressor, Limiter, DeEsser)
  • 35 Filter (EQ, Filters, Wah, etc.)
  • 46 Generator (Synth, Sampler, Drumkit, General Midi modules, etc.)
  • 31 Modulation (Chorus, Flanger, Phaser, Ring Modulation, Rotary, Tremolo, Vibrato, etc.)
  • 15 Reverb
  • 24 Delay
  • 16 Simulator (Preamps, Amps, Cabinets)
  • 8 Spacial (Stereo panning and imaging)
  • 20 Spectral (Pitch Shifting, Doubler, Harmonizer, Vocoder)
  • 22 Utility (Midi, Noisegate, Gain, Phrase Looper, Sequencer, Switching, Tuner, etc.)
  • 48 Miscellaneous (unspecified category)

All of these plugins are included: https://github.com/brummer10/GxPlugins.lv2

Most of the plugins listed here are included: https://pedalboards.moddevices.com/plugins

It's mainly the newer ones, or the plugins MODDevices charges for which are not

Pedalboard Sound Samples

See a variety of actual pedalboards and listen to Recorded Samples

Features

pi-Stomp Core Hardware Specs:

  • Raspberry Pi 1.4 Ghz 64-bit quad-core processor
  • Dual ins/outs, 24-bit, 48 to 96kHz stereo audio (AudioInjector Zero, HiFiBerry, etc.)
  • Latency: 2.67ms (128 frames/96kHz). 5.33ms if CPU load is reduced by changing sample rate to 48kHz or frames to 256.
  • Buffered Input Impedance: 1 Meg Ohm
  • True bypass on In1/Out1 via latching relay
  • Stereo output Volume control
  • Encoder for navigation and control
  • Header to support most SPI based LCD/LED displays
  • ADC with header for adding up to 8 Analog controls (pots, faders, expression pedal, switches, etc.)
  • Debounce with header for up to 5 momentary switches (footswitches, pushbutton, etc.)
  • USB MIDI support via Raspberry pi USB port
  • UART header for serial communication or DIN MIDI In/Out (optional $10 module)
  • Header for 3 uncommitted GPIO pins for whatever (ins/outs, sensors, LED's, etc.)
  • Small footprint! A System with color TFT LCD, three footswitches, and two assignable tweak knobs fits in a Hammond 1590J enclosure: 145mm x 95 x 45 (5.7in x 3.7 x 1.9)
  • Low cost: Board + components + raspberry pi + audio card + color TFT LCD + power supply, should cost about $160. Add a few footswitches, knobs, a an enclosure, etc. and you're likely still to be spending less than $200.

Architecture and Interfacing


Example Configuration

Here we have pi-Stomp Core configured to offer all the functionality as the original pi-Stomp including:

  • An assignable analog Tweak knob. 7 additional analog inputs (pots, switches, expression pedal, etc.) could also be added
  • DIN MIDI Input and Output using 3rd party breakout board.
  • Three assignable footswitches with LED halos. Two additional can be added or up to 13 if you tap into the 8 available analog inputs.

Here's a later build into a 1590J enclosure with 2 assignable analog tweak knobs and undermount LCD

FAQ

Why pi-Stomp? Can I do XYZ and other Frequently Asked Questions: pi-Stomp Core FAQ

Enclosure Considerations

Because some build choices are dependent on the enclosure you plan to use, we recommend that you read this before building: Enclosure Consideration Guide

Full Build Instructions

Go here for the build guide: pi-Stomp Core Build Instructions

Hardware Customization

Once you have your core system built, you'll likely still want to add switches, controls (knobs, expression pedal, etc.), MIDI in/out, etc.

This guide presents some options: Customization Guide

Software Installation and Updates

Troubleshooting

If you run into any hardware or software problems, first, consult the troubleshooting guide

Other Software running on pi-Stomp hardware

pi-Stomp is intended to be a platform. MOD is the current recommended software for audio processing and configuration, but other Linux audio software, especially if it uses Jack for audio routing, might “just work”.

Here, we'll explore some possibilities: Other Software running on pi-Stomp hardware

pi-Stomp Tutorials and Videos

Task specific Tutorials and Videos

pi-Stomp Core Usage


Hardware Connections

You may not have noticed that the input and output jacks are “stereo” TRS jacks. This allows 3 general types of connection:

  1. Mono - Like a typical stompbox, plug a mono cable (TS - typical “guitar cable”) in, and a mono cable out. Configure your pedalboards to use “Hardware Capture 1” and “Hardware Playback 1”
  2. Mono In, Dual or Stereo Out - Great for recording, stereo or dual amp setups. Use stereo or parallel signal chains, one for direct, one for reverb/delay tails, etc. Plug a mono cable in, and a stereo (TRS) cable out. If your destination is a stereo input, the cable can be TRS to TRS. If you need to split to two mono (TS) inputs, just get an insert cable (aka “TRS/TS Y-cable”). Configure your pedalboards to use “Hardware Capture 1” and both “Hardware playback” outputs.
  3. Dual/Stereo In, Dual/Stereo Out Great for synth setups, stereo guitar, or anytime your pi-Stomp will receive a dual input. Use a stereo TRS or “Insert Cable” (see #2 above) for both input and output. Configure your pedalboards to use both “Hardware Capture” inputs and both “Hardware playback” outputs. Each I/O pair can be completely independent or use stereo effects with dual in's and out's. You can even use a plugin like “Stereo X-Fade x42” to crossfeed one channel into the other. Cool!

The LCD

Main screen Elements

  1. Current Pedalboard
  2. Current Pedalboard Preset (shown here as the selected item)
  3. Toolbar including:
    1. WiFi Status: Gray=Not connected, Silver=Connected via router, Orange=Connected via Hotspot
    2. In1/Out1 Bypass/Processing Status: Gray=Bypassed, Green=Processing (select and click to toggle). For In2/Out2 processing is always enabled.
    3. Global Settings. Select and click to enter Settings menu
  4. Mapped Analog Control(s). Up to 8. Color indicates plugin category.
  5. Set of Pedalboard Plugins. Outline=Bypassed, Filled=Enabled (select and click to toggle, long-press to edit parameters)
  6. Mapped Footswitch(es). Up to 5. Colored ring indicates bypass status.

Plugin Colors

The rendered color for a plugin is determined by its assigned Category (as seen in the MOD webui). The category colors can be changed in pi-stomp/pistomp/lcdcolor.py. Defaults are:

  • 'Delay' : “MediumVioletRed”,
  • 'Distortion': “Lime”,
  • 'Dynamics' : “OrangeRed”,
  • 'Filter' : Tan-ish
  • 'Generator' : “Indigo”,
  • 'Midiutility' : “Gray”,
  • 'Modulator' : Blue-ish Indigo,
  • 'Reverb' : Blue-ish,
  • 'Simulator' : “SaddleBrown”,
  • 'Spacial' : “Gray”,
  • 'Spectral' : “Red”,
  • 'Utility' : “Gray”

Unless overridden by a *color* property in the default_config.yml file, any assigned (aka “midi learned”) footswitches or analog controls will be also be colored using the plugin category. For example, a footswitch assigned to the enable of an distortion plugin will show Lime green when enabled, gray when disabled. A potentiometer assigned to the distortion gain will display with a Lime green knob icon, a reverb control will display blue.

General navigation

  • Turning the encoder, scrolls thru the elements on the screen (current Pedalboard, current Preset, plugins, menu selections, etc.)
  • Clicking the encoder takes action on the selected element
    • When the Pedalboard is highlighted, clicking enters pedalboard selection mode. Scroll now to select a new pedalboard, click again to load it
    • When the Preset is highlighted, clicking enters preset selection mode. Scroll now to select a new preset, click again to load it
    • When a Plugin (or footswitch) is highlighted, clicking toggles the enabling of the plugin
    • When the bypass/processing tool is highlighted, clicking toggles the state
    • When the System tool (wrench icon) is highlighted, clicking switches to the System Menu
  • Long Press goes deeper or exits current mode
    • From the main screen, long press will bring up the System Menu which includes various utilities for managing your system
    • When a Plugin is highlighted, long press enters “Deep Edit” mode for changing the parameter settings of that plugin

System Menu

The System Menu includes a number of utilities for managing the system. Access the menu by scrolling to the wrench tool and click. Scroll to the desired action and click to execute.

  1. System shutdown: It's generally acceptable to just switch off power, but a disk corruption can occur if a file was being written. To avoid any possibility, use this action
  2. System reboot: Reboot the system.
  3. System info: Display the software version and networking info. This page also includes the toggle between routed WiFi and connection via Hotspot.
  4. Save current pedalboard: Save any changes made to the current pedalboard to disk
  5. Reload pedalboards: Reload all pedalboards. This should be done after saving a pedalboard via the MOD web UI. This restarts the mod-ala-pi-stomp service.
  6. Restart sound engine: Restarts the jack audio host which in turn restarts modep-mod-host, modep-mod-ui and mod-ala-pi-stomp services
  7. Input Gain: sSet the input gain for best matching your input source. The setting is persisted without need to save. More on that here
  8. Headphone Volume: Set the level for the headphone output on the audio card. This setting is persisted without need to save.

MOD Web UI for Pedalboard Editing

Pedalboards are created and edited using a web browser via the MOD web UI. You connect to the pi Stomp over Wi-Fi. Just point a browser on your computer to patchbox.local/

If you cannot connect...

You can check the wifi mode and IP address from the System menu:

  1. Long Press the encoder until the System menu displays
  2. Scroll to System info
  3. Click

hotspot_active indicates whether pi-Stomp is available via hotspot or via router

  • “1” indicates the hotspot is active and available as Patchbox. To use it, switch your computer to that wifi network.
  • “0” indicates the hotspot is deactivated. In that case, pi-Stomp will try to connect to your router

The IP address to point your browser to is also displayed. For hotspot mode, this will likely be “172.241.1.1”. For router mode, it'll be the address space assigned by your router (eg. “192.168.1.150”)

The wifi mode can be toggled between hotspot and router modes by selecting Enable Hotspot or Disable Hotspot then clicking. It may take a few seconds to complete the connection.

Hotspot mode is generally preferred because it makes it more portable. Software download/updates require an internet connection and thus won't work in hotspot mode.

Once Connected...

You should see something like the following showing your currently active pedalboard:

For detailed usage, see the MOD User Guide: https://wiki.moddevices.com/wiki/MOD_Web_GUI_User_Guide

Saving your pedalboards writes them to the pi Stomp SD Micro drive. No computer is required from that point while accessing your pedalboard(s) from the pi Stomp. Once you save a pedalboard via the MOD UI, you can sync the hardware: Long-press the encoder until the System Menu shows. Then select “Reload pedalboards”.

Please note that while you are editing pedalboards, it's best to use the MOD web UI for switching pedalboards, not the knob on the pi-Stomp. If you use the knob, it's likely that the web UI will not track correctly and any saves could end up overwriting a previous pedalboard. This is a known issue with the MOD web UI when controlled via REST. Hopefully, it can be resolved in a future update.

Shutting Down

Although you can just pull the plug, there's a very small chance that the file system could become corrupt. It's best to shut down services cleanly before powering off a Raspberry Pi. That's typically done by a connected keyboard/monitor or connected computer, but we don't have that option. Instead, the best practice is to use the System shutdown action under the System Menu.

  1. Scroll to the “wrench” toolbar or Long Press the encoder until the System menu displays
  2. Scroll to System shutdown
  3. Click
  4. Wait for the LCD to go completely white
  5. Remove power (unplug, etc.)

The “pi Stomp” splash screen text will appear red when shutting down and green when booting to indicate what it's doing.

If having a switch would simplify power on/off, these in-line switches work well. They're sometimes available as an add-on via the treefallsound.com parts store. If you find a similar model, make sure it has 5.5mm x 2.5mm connectors, not 2.1mm.

Resources and Links


Github sources for main software used

  • mod-host plugin host software (Created by the great folks at Mod Devices)
  • mod-ui web ui (Created by Mod Devices)
  • patchbox The base OS (Created by the great folks at Blokaslabs)
  • modep The patchbox module port of Mod for Raspberry Pi (Created by Blokaslabs)

Creating LV2 Plugins

pi-Stomp in Social Media and Forums

About Tree Fall Sound


Tree Fall Sound exists to bring multi-effects projects to DIY musicians. So far, we're a company of one, but with an ever growing community of users and contributors.

My name is Randall Reichenbach.

My “day jobs” have been in Electrical and Software Engineering, but my main passion has always been music. I’ve been building effects pedals and other musical gadgets since the 1980’s (read “experienced”, not “old”). I’ve always been obsessed with tone, usability and clever features. I love my (mostly analog) pedalboard, but like many musicians, I’ve long desired the ability to store awesome presets, recall them in real time, and control the effects in unique ways. As a programmer/tinkerer, I've also always wanted to be able to code (not just tweak) my own effects.

How cool would it be to create a do-everything open expandable platform, easily modifyable by anyone not too afraid of Linux, Python, etc. ? That's the idea that got me rolling on this project. Raspberry Pi and high def sound cards along with some open source software like LV2 (plugin format) and MOD/MODEP, have finally made such an endeavor possible.

I created this project because I know there are others like me that would be waaay more excited playing with a piece of gear they built and can modify by getting under the hood of the hardware and software. I spend well over 20 hours on it every week and will continue to as long as there is new functionality and features to explore. I’m hoping others will join me in this endeavor and take this platform (or their own) to places I’ve not even considered.

Some of my music can be heard at: https://soundcloud.com/user-368371534

An extensive interview and more pi-Stomp background on Blokas Reads

The Environment

I love the Earth. I hope you do too. Electronics are inherently not good for our planet. My hope is that by building something yourself that can be upgraded, you'll be able to make use of it longer than you would have a commercial product, and that you might be able to reuse or recycle many of the components when its life is truly over.

  • All pi-Stomp PCB's are Lead Free HASL RoHS compliant.
  • Any presoldered parts were soldered with Lead Free RoHS solder.
  • All board components are RoHS compliant.

The only non-RoHS compliant components in the current design are:

  • The TFT Color LCD
  • The AudioInjector audio card

When you are done with your pi-Stomp, please consider using the Raspberry Pi, LCD, etc. for other projects or donating them to your local Makerspace.

If you eventually dispose of your pi-Stomp components, please do so according to your local guidelines. Removing the non-RoHS parts shown above to deal with them appropriately is encouraged. Thanks!

The Internet is a huge polluter of the environment.

treefallsound.com is hosted by GreenGeeks

The carbon footprint is reduced (not offset) by matching every amp they pull from the grid with 3 times that in the form of renewable energy via Bonneville Environmental Foundation. They also plant one tree for every hosting account they provision.

pi-stomp_core.txt · Last modified: 2022/08/08 16:32 by admin