[sdiy] Cheapest good sounding digital reverb?

Mike Bryant mbryant at futurehorizons.com
Sun Mar 21 22:20:22 CET 2021

I imagine the cheapest way is as follows.

Firstly you need to keep the main signal in analogue and add in the reverb signal using an op-amp to keep some vestiges of audio quality.

The reverb signal would be generated using a simple ADPCM A-D convertor using a comparator fed into a processor and fed with a reference using a simple integrator from the processor.

The signal is then delayed using whatever memory is available, and output using a software ADPCM to PWM convertor fed into an RC network.  
Typical circuit here : https://hackaday.com/2018/07/13/behind-the-pin-how-the-raspberry-pi-gets-its-audio/

16 channels just requires a processor with 32 I/O pins (16 in, 16 out), 4 quad comparators and 4 quad op-amps for the integrators, plus some Rs and Cs.   The outputs would be just Rs and Cs from the link above feeding into the adder to add it into the main signal which goes nowhere near the processor.

Quality - not very.  But cheap as chips.

-----Original Message-----
From: Synth-diy [mailto:synth-diy-bounces at synth-diy.org] On Behalf Of cheater cheater
Sent: 21 March 2021 20:46
To: Tom Wiltshire
Cc: synth-diy
Subject: Re: [sdiy] Cheapest good sounding digital reverb?

Right, but what can be done regarding reverb in a small inexpensive microcontroller? Remember, we're not talking about decays of several seconds here.

On Sun, Mar 21, 2021 at 6:13 PM Tom Wiltshire <tom at electricdruid.net> wrote:
> There isn’t much at the low-end of the DSP market, so your options are limited.
> There’s the FXCore, which can deal with 4 ins/4 outs, but needs 
> external codecs (but that lets you choose for best quality or lowest 
> price)
> http://www.experimentalnoize.com/product_FXCore.php
> Otherwise, you might be best moving to a bigger, faster chip and then expecting the one device to process 16 channels of audio for you. You’d still need a multi-channel codec, and the hardware is going to be all throughly modern and SMD-tiny!
> On 21 Mar 2021, at 14:34, cheater cheater <cheater00social at gmail.com> wrote:
> It's 2-4x too expensive, but I'll check the youtube demos anyways - 
> thanks a lot.
> On Sun, Mar 21, 2021 at 3:23 PM Tom Wiltshire <tom at electricdruid.net> wrote:
> I don’t know that it fits your definition of cheap in small volumes, but the Spin FV-1 chip is about your best option, I’d say. It’s a simple-to-use almost all-in-one option and there are loads of good reverb algorithms for it freely available.
> The standard application uses a cheap watch crystal (so 32KHz sampling) but you can run the chip faster if you need a little bit more hi-fi. Honestly, I doubt this is necessary for reverb. The high end is absorbed most quickly and hardly appears in any reverb signal. But it’s easy to do if required. I think the chip is specced up to 50KHz or so, and people have overclocked them faster than that - Spin left themselves a good safety margin.
> The algorithms are stored on an external EEPROM, but there are also 8 internal programs, including several reverbs, so if you use those you can do without the external EEPROM, at which point it really is a one-chip solution.
> Check out a few FV-1 effects pedals on Youtube and see what you think.
> HTH,
> Tom
> On 21 Mar 2021, at 13:19, cheater cheater <cheater00social at gmail.com> wrote:
> I have been thinking recently about whether it would be feasible to 
> have a simple reverb of some sort per voice, and so I wonder if anyone 
> had any suggestions on a cheap algorithm that could be executed on 
> inexpensive chips.
> what I need from the reverb: exponential decay of ~0.5 second, flat 
> frequency spectrum @ 22 Hz...22 kHz
> instrument: 16-voice
> architecture: vcos -> filters -> vca1 -> possibly vca2 (all stages 
> analog)
> I'd like to be able to insert reverb after the filter but before the last vca:
> vcos -> filters -> vca1 -> rev -> vca2
> or possibly after the vco:
> vcos -> rev -> filters -> vca
> or after the filter:
> vcos -> filters -> rev -> vca
> or even:
> vcos -> rev1 -> filters -> rev2 -> vca -> rev3 -> vca2 -> rev4
> The reverb is meant to only "sweeten up" the sound by giving filter 
> sweeps, transients, and vco sweeps some more substance in the time 
> domain. I think this sort of thing could easily add a unique sound to 
> the synthesizer. I know some of you will mention the DSI Evolver, but 
> honestly I did not think that the digital part in that synth was of 
> high enough quality. So what I'm looking for is an inexpensive "hi fi"
> reverb.
> The considerations are either:
> A) a single chip per voice/stage which only processes one stage in one 
> voice. this chip would have to have high audio quality AD/DA, work 
> without a lot of additional circuitry, just enough processing power to 
> perform the reverb, and be relatively inexpensive (up to ~5 per chip 
> at low volumes)
> B) one global chip with a bunch of AD/DA. this chip would need to be 
> able to read from 64 AD and write to 64 DA, each at 16 bit.
> personally I prefer A because 1. it does not carry a bunch of digital 
> stuff around an otherwise analog board which can be a royal pain and 
> 2. drifting clocks (or ones shifted on purpose) will add variety to 
> the sound. So those two kind of kill B for me.
> What sort of chip would you all suggest for version A?
> What algorithm would you suggest to run on it?
> Thanks.
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at synth-diy.org
> http://synth-diy.org/mailman/listinfo/synth-diy
> Selling or trading? Use marketplace at synth-diy.org

Synth-diy mailing list
Synth-diy at synth-diy.org
Selling or trading? Use marketplace at synth-diy.org

More information about the Synth-diy mailing list