The EHX Freeze: What's the deal?

Started by parmalee, August 08, 2020, 01:19:14 AM

Previous topic - Next topic

parmalee

I posted this query in another thread, but I figured it was sufficiently tangential to warrant it's own thread.

I do not have an EHX Freeze, and my knowledge of such comes strictly from watching videos and reading the manual, but I am curious as to it's inner workings.  Does anyone know if it is primarily DSP and software based, or is it analog?

Also, from what I've gathered, it does not seem substantively different from what one can attain from the PT2395 delay chip with external DRAM chip, by momentarily disabling (disconnecting) the Write Enable of the DRAM and just grabbing what's in the memory buffer.  Throw in some attack and decay/release and a toggle/momentary option and, voila!

Quality-wise, the PT2395 method is comparable--I think?  Provided one has it set for the shortest delay time, at least.  However, the PT2395 also affords one the possibility for pitch-shifting, via delay time/rate.  I like the idea of the Freeze, and it certainly sounds good in the videos I've watched, I just can't figure out how it differs.  Anyone?

11-90-an

#1
There are some pictures of the insides on the internet:



These are modded... (And I don't own them!!)

They show that the Freeze is unfortunately, DSP

It would be nice if there is a way to configure a pt2399 to behave like a Freeze pedal
flip flop flip flop flip

Rob Strand

I'll admit I don't fully understand the pedal from a user perspective but from what I can see it's not a looper.   When you press the button it holds the signal that is present at that instant.  You can't do a trill and get it to repeat the trill like a looper.

To do that it would have to be continually tracking and modelling the signal then once you press the button the modelled signal continues.   In order to do that it would have some sort of signal estimation algorithm which is DSP territory.  The speed/decay stuff is just a simple slow envelope modulation.

The crudest analog version I can think of is the Boss DF-2 (Super Feedbacker & Distortion) where a PLL tracks a single note then it holds that note.
Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

parmalee

#3
Quote from: Rob Strand on August 08, 2020, 02:35:00 AM

The crudest analog version I can think of is the Boss DF-2 (Super Feedbacker & Distortion) where a PLL tracks a single note then it holds that note.

With the PT2395 delay chip--used in the Dan Electro Echo and PB&J--set to a very short delay time/high oscillator rate, if you cut pin 3 (Write Enable) of the external DRAM chip from pin 8 (Row Address Strobe Output) and attach to 5v (via resistor), whatever is in the memory chip buffer will play indefinitely.  A sufficiently short delay time--say ~30-40 msec--effectively yields a single note/chord/"moment."  (With a slightly longer delay, you can indefinitely sustain a trill.)

I don't quite understand why exactly it repeats indefinitely--and this is, of course, wholly irrespective of regen or repeats, as nothing is being fed back to the memory chip--but it does, and sound quality is surprisingly decent (500 Khz sampling rate).

Idea (haven't tried this yet, but shall tomorrow... or soon-ish):

Set delay time/oscillator at a precise, calculated value.  Cut WriteEnable on DRAM from delay chip's strobe output.  After very short delay--few msecs--move delay time/oscillator value to another precisely calculated higher or lower value in order to attain a (semi?) precise pitch shift?  Switching and such can likely be done with bilateral switches, and the short delay between actions (cutting off DRAM from delay chip and changing delay rate)

Rob Strand

#4
QuoteWith the PT2395 delay chip--used in the Dan Electro Echo and PB&J--set to a very short delay time/high oscillator rate, if you cut pin 3 (Write Enable) of the external DRAM chip from pin 8 (Row Address Strobe Output) and attach to 5v (via resistor), whatever is in the memory chip buffer will play indefinitely.  A sufficiently short delay time--say ~30-40 msec--effectively yields a single note/chord/"moment."  (With a slightly longer delay, you can indefinitely sustain a trill.)

I don't quite understand why exactly it repeats indefinitely--and this is, of course, wholly irrespective of regen or repeats, as nothing is being fed back to the memory chip--but it does, and sound quality is surprisingly decent (500 Khz sampling rate).
It works because the write is disabled.   The old stuff is left in the buffer and it doesn't matter what you do it won't change.  The "play" part still works because it only reads.

It would be interesting to see what quality that produces.   When the play buffer wraps back around there is a glitch between the end of the sample buffer and the start of the sample buffer.  The start and end don't join smoothly.  Typically that gives a buzz at the repeat rate (your 30ms to 40ms).   If it works good enough - it works!
Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

ElectricDruid

Quote from: Rob Strand on August 08, 2020, 05:21:18 AM
When the play buffer wraps back around there is a glitch between the end of the sample buffer and the start of the sample buffer.  The start and end don't join smoothly.  Typically that gives a buzz at the repeat rate (your 30ms to 40ms).   If it works good enough - it works!

This is why a DSP solution starts to make sense. You can do some niceties like smoothly crossfade the end of the buffer and the beginning. That involves reading both of them at once, and generating a fade-in/fade-out volume envelope.

The FV-1 would be a decent choice for something like this. It has more than enough delay RAM, and is well set up for crossfades with the ramp generators and so on.

parmalee

#6
Quote from: ElectricDruid on August 08, 2020, 10:18:37 AM
Quote from: Rob Strand on August 08, 2020, 05:21:18 AM
When the play buffer wraps back around there is a glitch between the end of the sample buffer and the start of the sample buffer.  The start and end don't join smoothly.  Typically that gives a buzz at the repeat rate (your 30ms to 40ms).   If it works good enough - it works!

This is why a DSP solution starts to make sense. You can do some niceties like smoothly crossfade the end of the buffer and the beginning. That involves reading both of them at once, and generating a fade-in/fade-out volume envelope.

The FV-1 would be a decent choice for something like this. It has more than enough delay RAM, and is well set up for crossfades with the ramp generators and so on.

Just out of curiosity, what sort of pre-requisites with respect to maths would one need before even attempting to tackle this with DSP?  Aligning mis-aligned waveforms (interpolation?  I have no idea--my knowledge/memory of mathematics seems to have faded into oblivion) isn't exactly the most straightforward sort of math problem, but what little reading I've done on DSP (and I've only read--no practical experience) seemed to imply that BASIC is actually a reasonably viable language for DSP programming.  I'm having difficulty reconciling that with, well, that.

POTL

You can do this on the FV-1.
The guys at Shift-Line did it a few years ago.