So ya wanna build a High Def Raspberry Pi based multi-effects unit?

Started by treefall, September 12, 2020, 01:39:04 AM

Previous topic - Next topic

treefall

Over a year ago I set out to do that.  I found modep which ports the opensource MOD (MOD Devices) pedalboard software to Raspberry Pi.  Wasn't too long before I had a prototype with 24-bit/96khz audio, 4-cores of CPU allowing a dozen or more of the 350+ LV2 plugins to run in a virtual pedalboard.  It sounded great and I could string together virtually any pedalboard imaginable.

I wanted a stage worthy device though, so I added an LCD along with assignable footswitches, knobs, expression, midi, even phone control (via osc)

I shared it with some friends who loved it and it soon became obvious, I should share the project with others.  After many prototypes and issues trying to get enclosures made, I'm making it available to other DIY pedal builders.  Two others have built it successfully so far.  Two more have ordered parts.  I'm looking for 7 more builders before I order another round of circuit boards.

You can check it out the details here: https://treefallsound.com



Here's what that pedalboad looks like through the MOD web UI (connected via wifi):



Marcvv

Wow, Rand, this looks amazing. What an investment you made in the project itself but also your website about the pedal. i might be interested in building one. The website shows the store but there is no price and shipping info?

Cheers, marc

potul

This is a very interesting project, very similar to an unfinished project I have myself in a drawer.

Although I will probably start tinkering with it, I'm not interested in the whole enchilada kit. I already have a bunch of parts I will reuse and I'm not yet interested in the enclosure (I already have a stage worthy HX Stomp, I want this just for the fun of DIY).
Any chance to get individual parts instead?

My first intention is to test the whole thing with parts I have laying around, and if I'm convinced I might go for the "ready to gig" version. I'm evaluating what parts I can reuse..... so I have a couple of questions:

-Will it work with a model B board instead of the model A+? (aside from the form factor)
-Are you using the touch buttons of the Pimoroni display for something, or can I use another I2C/SPI display instead?
-Any specific reason you are using the Audioinjector audio board? Any experience with other audio boards?
-Are the encoders connected directly to the GPIO pins of the Pi, or is there any interface in the middle?
-Is your custom sofware all programmed in python?




Quote from: Marcvv on September 12, 2020, 02:09:12 AM
The website shows the store but there is no price and shipping info?

Cheers, marc

If you click the banner you will go the the product details. 88$. No shipping info though


Marcvv





Quote from: Marcvv on September 12, 2020, 02:09:12 AM
The website shows the store but there is no price and shipping info?

Cheers, marc

If you click the banner you will go the the product details. 88$. No shipping info though
[/quote]

Ah, i missed that. Thanks

treefall

Thanks for your interest.  Below are some answers...

Quote from: Marcvv on September 12, 2020, 02:09:12 AM
The website shows the store but there is no price and shipping info?

Sorry I didn't make that more obvious.  I will.

There are two sets of parts you'll need to build a pi-Stomp.
1) Commodity parts from Mouser.com. The wiki includes a link to the BOM.  The current price for that is $106
2) The pi-Stomp custom parts (Circuit board and enclosure) and parts that Mouser doesn't carry (footswitches, audio card, LED halos, etc.)  My bundle on treefallsound.com is $88.  Shipping is USPS flat rate within the US and should be around $8.60

So bottom line.  Look to spend about $215 to $220 depending on shipping and taxes.


Quote from: potul on September 12, 2020, 04:27:22 AM
Any chance to get individual parts instead?

I'll likely offer that eventually, but understand it's not my mission to be a store.  I created a store to offer the custom circuit boards and enclosures but realized to save others from souring parts from 4+ locations and incurring shipping with each, I could stock those parts myself and allow builders to just make 2 orders (Mouser and Treefallsound).  I'm currently offering everything at cost to get people to build a pi-Stomp.  Everything on my store except for the circuit board and enclosure can be purchased from guitarpedalparts.com, smallbear-electronics or amazon.com

If there is demand for specific individual parts, I'll certainly try to offer that so lemme know what you'd like.


Quote from: potul on September 12, 2020, 04:27:22 AM
-Will it work with a model B board instead of the model A+? (aside from the form factor)
-Are you using the touch buttons of the Pimoroni display for something, or can I use another I2C/SPI display instead?
-Any specific reason you are using the Audioinjector audio board? Any experience with other audio boards?
-Are the encoders connected directly to the GPIO pins of the Pi, or is there any interface in the middle?
-Is your custom sofware all programmed in python?

I appreciate you wanting to build your own hardware.  All of the pi-Stomp specific software/firmware is python and designed with the idea that the hardware platform might be different.  All major components (footswitches, encoders, pots, LCD, etc.) have classes which can be instantiated (or not) or subclassed (https://github.com/TreeFallSound/pi-stomp/tree/master/pistomp).  Theoretically, you should be able to create your own python module for Your hardware in place of 'pistomp', and replace the 4 corresponding import references in https://github.com/TreeFallSound/pi-stomp/blob/master/modalapi/mod.py

Yes, pi-Stomp works great with a model 3 B board.  The A+ was chosen to fit inside a smaller enclosure.  It'll even work with a Pi Zero, though in my experience, with a single core and slower clock speed, it'll start to choke with more than 3 or 4 effects in a pedalboard.  Still, pretty cool and compact.

The touch buttons on the Pimoroni LCD are not used.  You can use other SPI displays and you'll notice in the github repo, I have basic driver subclasses for 4 other displays that I tried.  The pi-Stomp circuit board includes pads for a 10 pin header for connecting an alternate LCD.

I chose the Audioinjector Zero for two main reasons.  Form factor and because there really aren't many cards available with audio in (ADC).  The other two I found at the time both worked fine:
1) AudioInjector Stereo (larger, more expensive, no real advantage other than it comes with a stackable header and volume controls (oddly mounted perpendicular to each other)
2) HiFiBerry DAC+ ADC.  It worked just fine, but at nearly 3-times the cost and twice the size...
Note that the AudioInjector from treefallsound.com has a 2x20 header pre-installed.  If you buy from amazon, etc. you'll have to get and install your own.

The encoders incorporate two switches (the rotary switch and the push switch).  The rotary switches are connected directly to GPIO pins.  The push switches are go thru the Control ADC which is used to interface with the analog pots ("Tweak knob" and Expression pedal).  I did this because I found I could mitigate switch bounce issues better going thru the ADC versus direct to GPIO (and I was running low on GPIO pins but had 6 spare ADC channels ;-)



MetalGuy

Hi,

Very interesting project. On the second picture I see "SIMULATOR". I assume IRs or else?

treefall

Quote from: MetalGuy on September 12, 2020, 02:49:31 PM
Hi,

Very interesting project. On the second picture I see "SIMULATOR". I assume IRs or else?

Thanks.  So the base set of 358 plugins that the pi-Stomp setup script pulls includes 16 "Simulator" plugins.  I don't believe any are Impulse Response.  But, if you google: LV2 "impluse response" you'll find that they do exist and likely they might work.  It's on my ToDo list to try one or more.

The 16 Simulator plugins that the setup script pulls are mostly from the modep module:
https://pedalboards.moddevices.com/plugins?text=simulator&random=772f25ebdb964a549300befddc8ad8b0

Including:

CAPS: AmpVTS, CabinetIII, CabinetIV, Tonestack

Guitarix: GxAlembic, GxAmplifierX (mono & stereo), GxStudioPreamp (mono & stereo),  GxCabinet, GxSVT, GxUltraCab

MDA: Combo amp, Leslie

setBfree: Whirl

TAP: Tubewarmth

Marcvv

Thanks for the extra info. Would you be willing to ship to europe and how much would that be?

Firesledge

Interesting. What is the typical round-trip latency achievable with a moderately-loaded patch? How about the (measured) SNR?
Pédale Vite, multi-FX pedalboard

pruttelherrie

Nice project!

Quote from: treefall on September 12, 2020, 11:47:43 AM
Thanks for your interest.  Below are some answers...
If there is demand for specific individual parts, I'll certainly try to offer that so lemme know what you'd like.
The main pi-Stomp board :)

Does it work with a Pi 4?

Also interested in the latency...

treefall

Some more answers...

Quote from: pruttelherrie on September 13, 2020, 01:54:07 PM
Nice project!

Quote from: treefall on September 12, 2020, 11:47:43 AM
Thanks for your interest.  Below are some answers...
If there is demand for specific individual parts, I'll certainly try to offer that so lemme know what you'd like.
The main pi-Stomp board :)

Does it work with a Pi 4?

I will definitely sell the main pi-Stomp board individually on treefallsound.com.  Right now, I just have 6 remaining and I'd like to have a few more completed builds reported before I order a new batch.

I have not tried it with a pi-4.  I don't see why it wouldn't work (it works with all pi-3's and Zero), but suffice to say, a pi-4 won't fit in the enclosure.

Quote from: Firesledge on September 13, 2020, 05:12:48 AM
Interesting. What is the typical round-trip latency achievable with a moderately-loaded patch? How about the (measured) SNR?

Latency depends on the sound card settings (buffer-frames, sample-rate and periods).  I find I can run smaller pedalboards (say 7 or fewer effects) with the following (frames / rate) * periods:
( 128 / 96000 ) * 2 = 2.67 ms
( 128 / 96000 ) * 3 = 4.0 ms

For larger pedalboards or ones that use a lot of CPU intensive effects (modelers, etc.) I'll switch the frames to 256 from the MOD UI:
( 256 / 96000 ) * 2 = 5.33 ms

or bump down to 48kHz
( 128 / 48000 ) * 2 = 5.33 ms

This week, I'll try to get some actual measured latency numbers.  Some of the less-well coded effects do have noticeable latency.  Most, I'm fairly impressed with.

Regarding Signal to Noise Ratio... My scope died a couple of months ago (got a replacement pico-scope arriving in two days;-). but here is what I measured using a soundcard.  Each channel is running through 12+ feet of cable and a patchbay so I'm sure the real SNR is better (I'll re-measure with my new scope this week).

You can see at the bottom of the screen capture, S/R~=86 dB going thru the audio card:



When true-bypassed, S/R~=90 dB:



So it's probably safe to conclude the S/R thru the audio card is about 4dB worse than when bypassed.





micahvdm

Hey Rand, such an awesome job!! Quick question, any chance you'll be willing to share the schematics? Only reason I ask is that I have most of the parts on hand and I'd like to give a free wired version a go to test everything out.

treefall

I'm totally willing to share portions of the design to get someone going on their own.  If there is a certain part of the system you're interested in, send a personal request (support@treefallsound.com) and I'll try to help.

One thing I do plan to make available soon is the GPIO pinout for the raspberry pi.  That should enable others to know which pins to use when using the pi-Stomp software.  In the meantime, you can probably figure most of that out from this piece of code: https://github.com/TreeFallSound/pi-stomp/blob/master/pistomp/pistomp.py

As you may have seen in the pi-Stomp FAQ, it has always been my intention to encourage Full DIY, and I do plan to open source the full hardware design eventually.  In the short term though, there are a number of reasons I feel the need to keep the full schematic and layout to myself:

  • I believe the hardware design needs to stabilize before it "forks".  I'm on my 7th iteration, with the last 2 iterations having multiple successful builds by others.  It seems that the latest iteration, to be made available this coming week, might finally be "there".  Still, I'd prefer a few more builds to be logged, and make sure that hardware bugs aren't lurking before others start making their own spinoffs.
  • For better or worse (ok, worse), I chose Fritzing to do the schematic/PCB design.  Fritzing appears to no longer be supported, and I'm maxing out it's capabilities.  Before open sourcing the hardware, I'd prefer to migrate the design to another tool (likely KiCad, but open to suggestions).  That will require some time to migrate.
  • In addition to all my time, I've invested about $3000 in enclosures, PCBs, and parts for the bundles I'm selling.  My margin is almost nil, but I need to recoup at least most of that investment before I enable someone else to steal my thunder.


treefall

For those interested, pi-Stomp bundles are back in stock.

There have been more community builds. I got some good feedback (no pun intended) which I've used to make the new boards somewhat easier to build (IC sockets and less soldering).

The main page is here: https://treefallsound.com

To direct link to the parts bundles is here: https://treefallsound.com/opencart/index.php?route=product/product&path=57&product_id=55

Just remember you also need to buy the Mouser BoM parts (link is on that last page). Everything is currently in stock (which hasn't always been the case in the last few months). The total cost works out to $198 plus tax and shipping.

treefall

Another update...

A recent change to the pi-Stomp firmware allows other Linux audio software to run on pi-Stomp!  You're not limited to MOD.

Two free audio hosts have been successfully tried.  They both support MIDI-mapping, so you can map the pi-Stomp controls & footswitches (and/or externally connected MIDI controls) to control effect parameters within the host.

Rakarrack (http://rakarrack.sourceforge.net/) - Very cool virtual pedalboard with many built in effects and presets




Carla (https://kx.studio/Applications:Carla) - A full featured modular audio host with support for many plugin formats including LV2, VST, VST3, AU, SF2 and SFZ.



And yeah, you can install them all and switch between them.

Learn more here: https://www.treefallsound.com/2021/01/16/other-audio-software-works-on-pi-stomp/

"Partial parts bundles" are in stock and available via: https://treefallsound.com/opencart OR https://www.tindie.com/products/treefallsound/pi-stomp-diy-multi-effects-partial-parts-bundle/



nikStomp

Hi!
definitely interested in this!

1) in the picture i see the rgb led around the switches are they included in the kit?
2) I would like to buy the kit, but my plan is to port it to the up-board (I already have two with a hifiberry hat)
it would be possible to get from you only the board with the relay/analog parts and the enclosure (and the midi connector) and skip the rpi, sd card, codec, etc?

(in any case I'm starting already to do the porting to see how it is -> the relay would be great though!)

Thanks,
Nick

treefall

Hey Nick, pi-Stomp has evolved a bit since then.  v2 (aka pi-Stomp Core) now has a color display, is smaller and more configurable.

https://treefallsound.com

Raspberry pi's have been basically sold out world wide since the beginning of the year.  I sold my last ones in March and thus my kits are showing as Sold Out.  Not exactly sure when I'll have them back in stock but probably by late May.  I do offer options to subtract the pi, audio card and ADC and could possibly construct a custom kit, but generally don't recommend using the pi-Stomp PCB with boards other than the pi 3A+ unless the person really understands the physical quirks that they'll encounter with a different form factor (https://www.treefallsound.com/wiki/doku.php?id=customization_guide#swapping_out_the_raspberry_pi)

As far as porting to another OS, I appreciate the idea.  pi-Stomp hardware can used as a general audio platform (as discussed earlier in this thread).  I suppose you could use much of the hardware driver code (pistomp directory of https://github.com/TreeFallSound/pi-stomp) for the navigation encoder, control ADC, relay, etc.  and just ignore the modalapi code which was designed to work with MOD as the audio host.  Some of the LCD code could maybe be adapted to your application(s) of choice but again, was designed to be a hardware UI for MOD.

Regarding the LED footswitch halos, I do sell those with enclosure kits, but you can also buy them here:
https://smallbear-electronics.mybigcommerce.com/led-washers/


Ice-9

Much nicer looking colour touch screen display, are you using the touch screen ?
www.stanleyfx.co.uk

Sanity: doing the same thing over and over again and expecting the same result. Mick Taylor

Please at least have 1 forum post before sending me a PM demanding something.

treefall

pi-Stomp Core was designed around a 2.2″ 240×320 color TFT LCD which does not support Touch.  And the software doesn't yet support a touch screen.  Navigation is done via a rotary encoder.  The software is open source and could likely be modified to support an LCD with touch as long as the LCD part is driven via 4-wire SPI and the touch part can interface with just 3 GPIO's (eg. CLK, DIN, CS).  This one perhaps.

http://www.lcdwiki.com/2.8inch_SPI_Module_ILI9341_SKU:MSP2807

Ice-9

Quote from: treefall on May 05, 2022, 05:57:09 PM
pi-Stomp Core was designed around a 2.2″ 240×320 color TFT LCD which does not support Touch.  And the software doesn't yet support a touch screen.  Navigation is done via a rotary encoder.  The software is open source and could likely be modified to support an LCD with touch as long as the LCD part is driven via 4-wire SPI and the touch part can interface with just 3 GPIO's (eg. CLK, DIN, CS).  This one perhaps.

http://www.lcdwiki.com/2.8inch_SPI_Module_ILI9341_SKU:MSP2807

Thanks, Those are the same ILI9341 SPI touch screens I have used before.
www.stanleyfx.co.uk

Sanity: doing the same thing over and over again and expecting the same result. Mick Taylor

Please at least have 1 forum post before sending me a PM demanding something.