I am trying to produce a circuit that produces crossover clipping distortion for musical purposes (to sound like a crappy old transistor radio). The problem I am running into (among a few, but to limit the scope) is that to observe clipping distortion, the circuit draws a ton of current to drive the BJTs and load. My intention for the circuit is to run it in a guitar pedal off a 9 V battery (though boosted to 18 V for op-amp headroom), but this seems implausible with the current design.

Is there an efficient way to emulate crossover distortion?


The current circuit used is a simplistic Class-B amplifier. As R4 increase the bias improves, moving it towards Class-AB and reducing the distortion. This will be parameterised with a potentiometer so that musicians can dial in the amount.


simulate this circuit – Schematic created using CircuitLab

Here is an example output: enter image description here

Design constraints

The three design constraints I am dealing with are:

  1. Keeping resistances relatively high so that the highpass filters formed with C1 and C2 keep a low cutoff frequency, allowing wide-band signals to pass through. Ideally the cutoffs should be beneath 20 Hz.

  2. R3 and R2 can be left equal for simplicity.

  3. The ratio between R3/R2 and R4 is one factor that determines the amount of crossover clipping

  4. The second clipping factor is the load, R1, as it decreases the distortion increases.


Overall the circuit draws nearly 10 mA of current. For comparison, I have two Sallen-Key op-amp filters before it which each draw less than 1 mA each (ideal LTspice simulation, mostly quiescent). Do I just have to suck it up and suggest that users keep a draw full of batteries to use? (Or more likely a wall wart).

  • \$\begingroup\$ Running the simulation on your circuit and putting a current measurement on the collector of Q1 I'm getting 650 uA peak. Where are you seeing 10 mA? \$\endgroup\$ – Transistor Jun 2 '19 at 21:34
  • \$\begingroup\$ I get larger currents when I increase the resistor between transistor bases, which I use to reduce the clipping distortion. \$\endgroup\$ – loudnoises Jun 2 '19 at 21:48
  • \$\begingroup\$ @loudnoises What exactly is this supposed to drive? What's the range on the load? How much power (worst case) must be delivered to the load? \$\endgroup\$ – jonk Jun 2 '19 at 21:54
  • 2
    \$\begingroup\$ Do you actually need the current gain? What happens if you disconnect both collectors and just use the transistor BE junctions as diodes? \$\endgroup\$ – Dave Tweed Jun 2 '19 at 21:56
  • \$\begingroup\$ Do you just want a deadzone? \$\endgroup\$ – analogsystemsrf Jun 2 '19 at 22:38

Following @DaveTweed 's comment, a low-power cross clipper has become obvious to me. There are different issues with the circuit now: cross-clipping is heavily dependent upon input amplitude, so if the signal is loud the relative distortion is low, a low-amplitude signal will be dominated by the distortion, if it passes at all. It would be nice to figure out a way of tracking the distortion based on input amplitude...


Removing the collector connections of the NPN and PNP BJTs, the circuit becomes:


simulate this circuit – Schematic created using CircuitLab

Values for R1 - R4 have been adjusted to provide an optimal range of clipping distortion. By increasing R1, capacitors C1 and C2 can be dropped, meaning I can probably use nicer cap dialectrics like film instead of electrolytics.


Changing the value of R4 from 10 Ω to 100 kΩ (as it might be with a potentiometer) wit 10 kΩ steps yields the following behaviour:

enter image description here

With current draw:

enter image description here

So a max current draw of less than 50 µA for a 1 Vpp signal, I'm quite happy with it! I still probably don't understand Class-B / AB amplifier design very well, but this accomplishes my design goals. Thank you to everyone for their helpful comments, and @DaveTweed if you want to submit an answer I will mark it as correct, since this answer simply follows on from your direction.

| improve this answer | |
  • 1
    \$\begingroup\$ Sounds like you have a plan. I was thinking along the lines of a circuit that could drive anything from, say, 32 Ohms up to many k Ohms, and provide consistent cross-over distortion since the circuit actually measured it and used feedback to control for it under any load situation. In the process, I'd have had to discuss class-AB in lots of detail. The circuit was way more complex than this, though. So I'm actually glad to see this works for you. \$\endgroup\$ – jonk Jun 3 '19 at 15:49
  • \$\begingroup\$ @jonk you've got me intrigued now how you would measure cross-over distortion in a real-time feedback scenario now. I think I'll have to go get up to speed on Class AB designs! Thanks for the thought. \$\endgroup\$ – loudnoises Jun 3 '19 at 16:04
  • 1
    \$\begingroup\$ The technique is to observe a part in the circuit (a grounded resistor, for example.) The voltage across it stays fairly flat and elevated vs signal input if there's no cross-over. Integrating that with a filter yields a maximum value when there's no cross-over. With cross-over, the area diminishes. Here's a picture. The top plot shows the amount of cross-over with a sine wave. The bottom plot shows the measurement point I'm discussing. The green line is for the no cross-over case. Red is "moderate" and gray is "deep." I like puzzles as you presented! \$\endgroup\$ – jonk Jun 3 '19 at 16:13
  • \$\begingroup\$ I should have said "red" is when it just starts to move into the early stages of cross-over. \$\endgroup\$ – jonk Jun 3 '19 at 16:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.