No updates in a while, I’ve been lazy. Here is a guide to setting up a Zoom G2.1u guitar pedal with JACK under Linux.
First thing you want to do is compile usb_snd_audio support in your kernel. I have already discussed how to do this, as it’s the same module you maybe have used to run a USB MIDI keyboard. Here is a post showing you how to do this: Gentoo and MIDI keyboard
Next, plug your guitar pedal in. Now to check everything is working as expected you need to cat /proc/asound/cards
$ cat /proc/asound/cards 0 [Intel ]: HDA-Intel - HDA Intel HDA Intel at 0xd2000000 irq 16 1 [default ]: USB-Audio - USB Audio CODEC Burr-Brown from TI USB Audio CODEC at usb-0000:00:1d.3-2, full s 2 [K88 ]: USB-Audio - Keystation Pro 88 Evolution Electronics Ltd. Keystation Pro 88 at usb-0000:00:1d.1-1, full speed
Here we can see my Intel sound card (0), Zoom G2.1u pedal (1) and M-Audio Keystation Pro 88 (3). If yours is similar to this, you’re on the right track!
Now we need to start alsa_in. Basically, your guitar pedal is acting a sound card with only an input. We want to take this input, and redirect it straight to our main sound card (the one with the speakers connected!). In the this example, 1 is the Zoom G2.1u and 0 is my main sound card (as seen above). We start alsa_in like this:
$ alsa_in -j zoom -d hw:1 -c 1 -q 1
In this example, I have called the port zoom, using device 1, with one channel (since guitars are monotone anyway) and set the sample rate quality to 1. You can fiddle with these arguments, they work well for me.
Finally all we have to do is connect alsa_in to our output device. For this, we use jack_lsp to list all our JACK ports.
$ jack_lsp system:capture_1 system:capture_2 system:playback_1 system:playback_2 zoom:capture_1
We want to connect zoom:capture_1 to system:playback_1 and system:playback_2. For this we use jack_connect.
$ jack_connect zoom:capture_1 system:playback_1 $ jack_connect zoom:capture_1 system:playback_2
And with any luck, now when you play your guitar sound comes out your speakers!