Troubleshooting pi-Stomp v3.x
| Issue | Possible Cause | Try | ||
|---|---|---|---|---|
| Cannot connect via WiFi | pi-Stomp is in Hotspot mode (WiFi icon is Orange) | Either connect computer to the Hotspot or switch mode: Click WiFi icon > Switch to WiFi | ||
| Cannot connect via WiFi | pi-Stomp is out of range | Move pi-Stomp closer to WiFi router, or computer if in Hotspot mode. Reboot by cycling the power. | ||
| Cannot connect via WiFi | wifi config not correct | Click WiFi icon > Configure WiFi - set SSID and Passwd | ||
| Cannot ssh to pi-Stomp from computer | Error message: “The ECDSA host key for pistomp.local has changed” | From computer: ssh-keygen -R pistomp.local | ||
| LCD is lit but all white or stuck on pi-Stomp logo | Error encountered by mod-ala-pi-stomp service | ssh to the pi-Stomp. Run sudo journalctl -fu mod-ala-pi-stomp to see the log for the service and hopefully discover the error. If nothing is obvious, check the other dependent services: sudo journalctl -fu mod-ui, sudo journalctl -fu mod-host, sudo journalctl -fu jack | ||
| No audio passing when pi-Stomp is processing is enabled | Incorrect routing | Check cabling (eg. instrument > In1, Out1 > amp) and assure it's consistent with the routing of the current pedalboard shown in MOD webui. Make sure the path thru plugins from input to output isn't broken. Better yet, connect a purple virtual cable straight from In1 (Hardware Capture 1) to Out1 (Hardware Playback 1). Check to see if the other (eg. In2/Out2) works. | ||
| … still no audio passing | Volume is down | Turn Volume knob up. Make sure input gain is not too low - From the System menu, select/click Input gain, set value to 0 or greater. | ||
| … still no audio passing | Multiple causes, so see if you can at least get audio output | From the MOD Web UI, add a plugin named “Square” (use search bar). Connect it's output to the one you're testing. If the plugin is enabled and you can't hear anything, the problem is likely not just on the input side of things but a problem with your audio card (see next possible solutions) | ||
| … still no audio passing | Audiocard Configuration | ssh to the pi-Stomp. Run alsactl -f ~/pi-stomp/setup/audio/iqaudiocodec.state restore | ||
| … still no audio passing | Audio services in bad state | Restart the audio (Navigate to the System menu, select/click Restart sound engine). If the LCD isn't displaying anything, you can restart the jack service via ssh: sudo systemctl restart jack | ||
| … still no audio passing | Hardware | Add a plugin named “TinyGain” (use search bar) to the current pedalboard and connect its input to the capture input. When your instrument is creating a signal, does the readout on the TinyGain change? If so, you're likely getting some signal in, if stuck on a low value (-30dB or lower like -inf) then the problem is likely audiocard configuration or hardware | ||
| Audio passing but either too quiet or distorted | Input gain not matched to input source | Adjust the “Input Gain” to match input source. Click the blue “Audio Menu” at the top of the screen to get to the “Input Gain” setting. | ||
| No or low volume audio from headphone jack | Volume down or low headphone impedance | Turn up output volume (Tweak3) or use higher impedance headphones (> 50 ohms). Many earbuds are quite low impedance. | ||
| Audio Glitching | Overworked CPU | In the Web UI, see if the CPU meter is going above 75% or many XRUNS are logged (more than 100). If so, try switching to 256 Frames (click on control next to XRUNS), or removing plugins from your pedalboard. CPU intensive plugins like generators, simulators, pitch shift and some distortions are the usual hogs. | ||
| … still glitching | Unnecessary processes/services running | If you've installed additional software, those processes might be hogging the CPU. Try shutting them down, see tips below. | ||
| … still glitching | Throttling due to Overheating | To determine if throttling is happening, run vcgencmd get_throttled. 0x0 = No throttling, 50000 = has throttled since boot, 50005 = is currently throttling. If throttling is happening, run the following to see the CPU temp: vcgencmd measure_temp. The range of operation for a Raspberry Pi is -40 degrees C to +85 degrees C. 45 to 60 degrees is typical. At 80 degrees, it will start to throttle. If yours is running over 65 or so, you should probably add additional heat management. Extra heat sinking, enclosure venting, etc. | ||
| … still glitching | Throttling due to low power supply voltage | If your pi is throttling (see previous), run: dmesg and look for errors/warnings about low voltage. As long as the pi is receiving 4.7v or so, the low voltage is not a big concern. To disable throttling run: echo avoid_warnings=2 | sudo tee -a /boot/config.txt, then reboot | ||
| Expression pedal not working | Not configured in default_config.yml | See the Configuration File Guide |
General Hardware Troubleshooting
The dmesg command shows kernel logs which may contain useful information when debugging hardware failures.
dmesg | less
enter ‘q’ to exit.
General Software Debugging
Services
Most all of the software important for pi-Stomp to run correctly are linux services. Some of the most relevant services:
amidiauto.service - the automatic MIDI interconnection service.
jack.service - the Jack backend service. If it has failed or its logs are indicating errors, you will not hear any audio.
modep-mod-host.service - the LV2 plugin host which uses jack to process audio
modep-mod-ui.service - the service which serves the MOD webui for configuring pedalboards
mod-ala-pi-stomp.service - pi-stomp software/firmware which monitors all input devices, drives the LCD and interacts with modep-mod-host and modep-mod-ui.
touchosc2midi.service - the TouchOSC2MIDI bridge service. If it is not running, TouchOSC Apps will not work.
systemctl & journalctl
The systemctl command is used to control services. The journalctl command is used to view the log output of services. Below are some common uses.
Command usage
systemctl --help journalctl --help
Status listing of all services
sudo systemctl status
List services which failed to run:
sudo systemctl list-units --failed
Restart a service
sudo systemctl restart <SERVICE-NAME>
Stop a service
sudo systemctl stop <SERVICE-NAME>
Show a running log of all services
sudo journalctl -f
Show a running log of a specific service
sudo journalctl -f -u <SERVICE-NAME>
Search the log for errors
sudo journalctl | grep 'error'