_Automatic_ buffer sensing circuit for Fuzz Face type circuits... possible?

Started by earthtonesaudio, September 05, 2011, 09:27:50 PM

Previous topic - Next topic

earthtonesaudio

I want to build a circuit to go in front of a fuzz face (or similar low-input-Z effect) which can sense when the input device is a passive guitar versus a buffered or active circuit.  When it's a passive guitar, the guitar is connected directly to the fuzz.  When it's something else, a series resistor (or pickup sim, if you want to get fancy) is inserted to automatically reduce the gain of the fuzz. 

This way, you could have a well-behaved fuzz when used after other effects... but still be able to load a passive guitar and have that interaction when the guitar is going direct into the fuzz.  No fiddling with switches, just automated.


The trouble is, this is a really difficult task.  How do you distinguish between a quasi-current-source like a pickup versus a small signal coming from a voltage source?  This is something that no-compromise fuzz users (myself included) would appreciate, but is about 3 orders of magnitude more difficult than simply tweaking a fuzz to sonic perfection... so I don't think it's been done.

Anyone want to help me with this?

R.G.

Hmmm.

OK, I can come up with a few ways to go about this. All of them make assumptions on what "passive guitar" is narrowly defined as, and involve having a fast, programmable circuit (in fact, a microcontroller) do things to the input to figure out if the incoming source meets the definition of "passive" or not. All that can be done, including figuring out when and how to do the test and muting the output so the testing signals are not heard on the output.

But it really puts a premium on defining **exactly** what you'll accept as a 'passive guitar'. The only ways to do this with an electronic circuit involve having the guitar/wiring tell the circuit "I'm really, no fooling, a passive guitar", perhaps with a special cable or something, or defining exactly what series of tests you'll accept as proof of passivity; kind of a reverse Turing test for guitars. I'm guessing special wiring is out, as it negates what you were trying to do.

I can come up with a string of things which could be tested that would all add up to measuring the audio impedance of the guitar over the low end of the audio band. However, there are problems with both false positives and false negatives, and what the user who gets those errors thinks of your widget.

F'rinstance; you can't really just test for DC resistance to ground, because some guitar may have a series capacitor in the output. Otherwise, you could look for 4K to 20K to ground. And that gets spoiled by the volume control and tone control settings. The controls settings likewise interfere with sensing the pickup inductance, or you could put a voltage back on the guitar, release it, and look for a flyback pulse. No buffer or active whatever will do an inductor flyback, and every pickup will. But not through a capacitor and not through high value tone/volume pots.

It's no trouble having a microcontroller look for a low signal spot, a few  milliseconds of quiet, and mute the guitar for a millisecond while it runs a test on the incoming impedance. What to test is the problem; it has to work for all or the vast majority of guitars at all settings of switches and controls.
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

earthtonesaudio

So... "3 orders of magnitude more difficult than a fuzz" may be a bit optimistic, eh?  :)

[edit after RG's second reply]
Actually, one method of solving this that I was thinking of would stretch the definition of "automatic" somewhat.  You could have a special mode of operation for the fuzz pedal where you hook it to your guitar and say "this is my guitar" and it remembers that guitar.  Maybe you could have memory for 3 different guitars.

Then after that you can hook up whatever inputs and it treats them as non-guitars until it sees YOUR guitar (or something close enough to YOUR guitar that we can be reasonably certain it is indeed a guitar).
[/edit]

R.G.

Don't know. I'm working on a code segment to make a microcontroller psychic.

I'm guessing that the functional testing may take some time.  :icon_eek:

Otherwise, it would be writing itself.  :icon_lol:
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

R.G.

I should add: there is a maxim in programming that "almost always is almost always as good as always".

The translation is that if you can assume something that lets you get it right in the overwhelming majority of cases, you can usually get done what you need to do with some cleanup/exception handling for the odd cases and still look good to the boss. Um, I mean, still have a workable system that meets its objectives.  :icon_biggrin:

So if you could come up with some electrical conditions that would unambiguously identify 90% of all guitars as passive, you'd still have something. Could be tricky to define that, though.
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

R.G.

Quote from: earthtonesaudio on September 05, 2011, 10:03:40 PM
So... "3 orders of magnitude more difficult than a fuzz" may be a bit optimistic, eh?  :)

[edit after RG's second reply]
Actually, one method of solving this that I was thinking of would stretch the definition of "automatic" somewhat.  You could have a special mode of operation for the fuzz pedal where you hook it to your guitar and say "this is my guitar" and it remembers that guitar.  Maybe you could have memory for 3 different guitars.

Then after that you can hook up whatever inputs and it treats them as non-guitars until it sees YOUR guitar (or something close enough to YOUR guitar that we can be reasonably certain it is indeed a guitar).
[/edit]
There are good ways to do that. How about we RFID tag the guitar and RFID enable the pedal. It periodically (and outside the audio path) asks any guitars within range to identify themselves, and then checks against its internal nonvolatile list of "my guitars that I know and love" and sets itself to passive or active accordingly.
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

earthtonesaudio

Nah, RFID wouldn't work because it doesn't work when you insert a true-bypass pedal between the guitar and the fuzz.   :icon_redface:

I think the inductive kickback test would pass the "almost always" test though... and perhaps simpler than my idea of a "getting to know you" mode.

R.G.

Quote from: earthtonesaudio on September 05, 2011, 10:17:59 PM
Nah, RFID wouldn't work because it doesn't work when you insert a true-bypass pedal between the guitar and the fuzz.   :icon_redface:
Hmmm. RFID all the pedals? So the pedals can say "Hey- guys? Who's here? Anybody there?"  :icon_lol:

OK. I did tell you that a good test was hard to find.  :icon_biggrin:

QuoteI think the inductive kickback test would pass the "almost always" test though... and perhaps simpler than my idea of a "getting to know you" mode.
Yeah. The problem is you have to know what position the volume and tone controls are in to be able to send and sense kickback.
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

earthtonesaudio

You know how to get extra credit on the Turing test?  Convince the examiner that HE's the computer.

PRR

Be a lot cheaper to just buffer the one guitar-cable, then adapt your FF for always-buffered sources.
  • SUPPORTER

Earthscum

Quote from: PRR on September 06, 2011, 08:38:53 PM
Be a lot cheaper to just buffer the one guitar-cable, then adapt your FF for always-buffered sources.

Or, buffer and make sure your FF always sees a "pickup" of sorts... http://www.muzique.com/lab/pickups.htm

Then you just tune your FF to sound great with that, you're set. It seemed to work ok for me screwing around with it. With my DS-1 in bypass, I could still roll back the volume and it seemed to interact similarly. I've never boxed one, and I haven't heard from my buddy on the one I made him, so not sure 100% how well it is working out in normal abuse.
Give a man Fuzz, and he'll jam for a day... teach a man how to make a Fuzz and he'll never jam again!

http://www.facebook.com/Earthscum

earthtonesaudio

Quote from: Earthscum on September 06, 2011, 09:22:15 PM
Quote from: PRR on September 06, 2011, 08:38:53 PM
Be a lot cheaper to just buffer the one guitar-cable, then adapt your FF for always-buffered sources.

Or, buffer and make sure your FF always sees a "pickup" of sorts... http://www.muzique.com/lab/pickups.htm

Then you just tune your FF to sound great with that, you're set. It seemed to work ok for me screwing around with it. With my DS-1 in bypass, I could still roll back the volume and it seemed to interact similarly. I've never boxed one, and I haven't heard from my buddy on the one I made him, so not sure 100% how well it is working out in normal abuse.

...And this is the heart of the problem.  I will remain stubborn about this point: For completely clean tones I like to preserve the full spectrum of my guitar.  A high impedance buffer is a good way to achieve that.  For volume-rolled-down FF tones I want my guitar to sound thin and "jangly", and for volume-up-full FF tones I want the guitar to be darker and fatter.  The approach I use to achieve that is to load the guitar with a low impedance.  That's the problem.  When the FF is on I want a low impedance load on the guitar; otherwise a high impedance load.



Now that I think about it that way, this issue could possibly be solved completely by adding an effects loop to the input of the FF.  D'oh.

slacker

The easy way would be buffer and FF in the same box, Stomp switch selects buffer or FF.

EDIT: ignore me that doesn't help with the pickup sim part.

Processaurus

What about testing the impedance of the input, guitar or otherwise, with a thing that is like DSL on the same phone line as voice, there is a wave far above the frequency of audio injected into the input through a voltage divider and a very small cap, and you read the RMS value of the hi freq wave at the voltage divider with a rectifier, smoothing cap, and comparator.  If it is higher than a certain threshold it means the source is high impedance, likely a guitar, or if it is lower, it is a buffered/low impedance source. 

The comparator feeds either an analog switch or relay to switch the fuzz face input to the box's input or the pickup simulator circuit.

teemuk

It's a different approach but how about measuring the average signal voltage and controlling an AGC or a similar device/circuit with that signal. Hotter signal = less gain and vice versa. If you don't like the gain "pumping" I reckon you could just detect the peak amplitude with somekind of a peak holder circuit, which would then hold a certain gain level according to highest detected signal level.

earthtonesaudio




This doesn't automatically sense anything, but I think the end result is the same.  S1 and S2 are footswitches.  S1 is for the effects loop; S2 is for the fuzz.  When both effects loop AND fuzz are on, another switch opens so that R is added in series between the effects loop and the fuzz.  R could optionally be a "pickup simulator" circuit.

Two DPDT switches for true bypass, Millenniums on both for LEDs and to drive the logic to perform the NAND function on S3, which could be a reed relay.

R.G.

Quote from: Processaurus on September 07, 2011, 08:17:39 AM
What about testing the impedance of the input, guitar or otherwise, with a thing that is like DSL on the same phone line as voice, there is a wave far above the frequency of audio injected into the input through a voltage divider and a very small cap, and you read the RMS value of the hi freq wave at the voltage divider with a rectifier, smoothing cap, and comparator.  If it is higher than a certain threshold it means the source is high impedance, likely a guitar, or if it is lower, it is a buffered/low impedance source. 
Quote from: teemuk on September 07, 2011, 08:35:39 AM
... how about measuring the average signal voltage and controlling an AGC or a similar device/circuit with that signal. Hotter signal = less gain and vice versa.
Both of these get back to the issue of the problem being what to test.

There may be a simple test, but I could not come up with one. Testing impedance is good - except that "guitar" is one thing to humans who compartmentalize and think in symbols, and another thing to Mother Nature, who is a literalist in the truest sense. A guitar pickup is an inductor, with some DC resistance and a big inductance, from about one to four henries of inductance; several of these may be switched in various series/parallel combinations, and this is followed by a tone control pot and cap and at least one volume control, all of which change in real time at the guitarist's hands. You can't use DC resistance, you can't use AC impedance in the audio band. Maybe by carefully studying a lot of guitar wiring examples you could come up with a test for "there's a big inductor there" with high frequency AC, but it's tough. My thought was that identifying a big inductance would set apart a magnetic pickup from anything else.

I think the chances of using a high frequency test for the inductance are dim, not least because the self-capacitance of the pickup causes a sharply diminishing impedance above about 6k-7kHz. Add to that the fact that the upper portion of the volume control is in series with the pickup, and may be anything from zero up to maybe half a meg, and it gets harder. Maybe phase angle of the impedance at 5kHz or something.

I can come up with other possibilities if we have the guitarist cooperate in setting the controls, but that violates the idea that it's automatic. May as well have the guitarist flip a switch to say "not buffered now".
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

Earthscum

Reading above, it almost sounds like you should just have a FF that switches between a buffer instead of true bypass.
Give a man Fuzz, and he'll jam for a day... teach a man how to make a Fuzz and he'll never jam again!

http://www.facebook.com/Earthscum