Reducing Sanyo C55 preamp distortion by 15db

This was a fun and easy mod. You don't have to drill much and there's plenty of space to add the few new components.

I only modded the flat amp, I didn't touch the tone amp or the phono amp.

The factory flat amp simulates at a -105db distortion floor. With mods it simulates at a -120db distortion floor. Both sims used a worse-case source impedance of 25k.

The mod works like this:
- Replace the FET input stage with degenerated bipolars.
- Modify the input network to be AC-coupled to work with the bipolar's nonzero base current.
- Remove the Miller compensation cap, use lag compensation instead.
- Add a capacitor to the factory cascode to strengthen it. This allows for good distortion performance with high source impedance. Without it, the Early-effect nonlinear base current in series with the source impedance will introduce an error that cannot be NFB'd away. This cap must be large enough to work at LF.
- Adjust a few other component values (C706, C707, R715.)

Why the compensation change? The R-C pair at the tail of the input stage interacts less with the lag cap than the miller cap. This lets us give the overall loopgain plot a deeper phase dip and allow more NFB in band.

I modded one channel first and kept the other stock to compare. The mod sounds better to me and it certainly sounds different. It sounds louder than the stock circuit even when carefully level matched. I've often found the stock circuit to sound a little "soft", with just a subtle "fuzz" to its sound. It was a mellow sound from the factory, and this mod wakes it up some.

It's amazing how two amps or preamps, both with excellent accuracy (distortion below -100db) can sound different. The "before" and "after" of this mod being a great example. It's a subtle difference but I don't think I'm imagining it.


  • c55_flat_amp_mod.png
    97.4 KB · Views: 480
Last edited:
A possible criticism of this mod is that the output stage transistors don't carry balanced currents anymore. Maybe it could be further improved by bringing them into balance.

From the factory, you were supposed to adjust a pot (which the mod removes) to get the output DC offset to zero. I don't really understand the need to zero the offset when the output is AC coupled anyway, it seems like an odd design choice from the factory. Maybe it was supposed to be DC coupled originally and then the design changed.

With the mod, there's always a DC offset at the flat amp output of about -3V. The AC coupling cap, which is a bipolar electro from the factory, could be replaced with a polar cap (or just go for film.)
Honestly, I would have left the FET input. Now you have a lot of input current noise to contend with. Going by output DC offset, input bias current appears to be the better part of 13 µA, that's 2 pA/√(Hz) in terms of shot noise alone. This is not a power amp, where such matters would be secondary and/or you could rely on lowish source impedance.

What transistors did you use for Q703a/b, the 2SC1815 indicated? Beta comes out to under 300, you really want a type with some more. 2/KSC945, 1845.

You're lucky that the cascode bootstrapping worked as-is - I generally had to add a few hundred ohms in series for things to remain stable in sim.

It may have been a good idea to take some measurements in "one channel modified" state at realistic levels. Anything audible should definitely show up there.

Since the input stage is not exactly drowning in current sources / mirrors, the power supplies may be worth investigating (e.g. potential shared ground returns between audio and bypass caps). I would also assume any small electrolytics that are not low leakage types (e.g. the orange Elnas) to be in need of replacement.
@sgrossklass: Good call, thanks for pointing out the noise increase. Spice predicts the original circuit makes about 135nV/√(Hz), the revised circuit is near 220nV/√(Hz) with worst-case 25k source impedance.

I used 2n4401's on one channel and 1815s on the other channel. This was done out of the spare parts bin...

A possible avenue would be to swap the FETs back in to reduce noise floor, remove the degeneration on the input stage, and add a cascode below VAS transistor Q705. The cascode decouples the lag cap's effect from the effect of C706 and approaches the ideal 12db/octave loopgain roll-off. Then with a couple component values adjusted the circuit can make >75db of loopgain in band, for -130db distortion performance (wow!)

The trick will be finding space on the board for that cascode, it looks pretty tight. There's always room to do better, until there's literally no room :)
Just a couple updates, in case anyone is considering this mod. All concern the subsonic filter which I shouldn't have ignored on the first go.

1) This mod changes the input impedance of the amplifier, which throws off the subsonic filter frequencies. They are too high after the mod. I don't use the feature and so haven't fixed it. Just a word of warning to vinyl junkies who need to cancel rumble. (It could be fixed by adjusting the cap values in the filter.)

2) There's a pretty bad layout mistake from the factory. The negative input node (between R719 and R720) isn't physically small like it should be. Instead it's connected to a lengthy cable that brings this node over to the subsonic filter switch. There's a 220k resistor in series, but it's at the far end of the cable, and by then the damage is done. The cable is a parasitic capacitor, probably on the order of 10pF, big enough to cause trouble at this critical node.

I discovered (2) after doing a few changes recently -- added a filter to the supply rails, upsized the output cap to 22uF, replaced input pair with 2n5089s, did a few compensation changes to improve simulated stability, added an RF filter at the preamp's output. Somewhere in there the flat amp developed an oscillation at about 1.5Mhz.

The fix is easy: the negative feedback node traverses a jumper at the near end of the cable. You can replace that jumper with a resistor to fix it. I used a 20k.

3) You can't actually delete R701 to replace it with the RF-filter cap. You need a stiff resistor there to ensure 0V DC at the input node when the subsonic switch is engaged, otherwise you get a big pop when disengaging the switch. Yipe! So keep R701 and also add a 150p or so in parallel for RF filtering.

Latest schematic is attached.


  • c55.png
    76 KB · Views: 157
Last edited:
Whoops: this pre has trouble with LF distortion, both from the factory, and as posted above. When playing 190Hz + 200Hz tones, it produced a 10Hz distortion product at about -80dB.

Switching to a current source for the LTP tail fixes it, so I built one from a JFET and a resistor. Had to drill to add it. Using 3mA CRDs would have worked too with no drilling.

The trouble is that the bias current through the 2nd stage is a function of the input level -- and the (resistive) bias spreader doesn't produce a reliable bias voltage as the current through it fluctuates. At LF, this causes the output transistors not to share current symmetrically. The bias spreader works better at HF thanks to its 47nF cap.

Adding the current source makes 1st and 2nd stage currents nearly constant and independent of the input level. That makes the bias spreader good enough, and brings distortion to near -110dB at both LF and HF.

Here's the latest schematic. There are a few diffs here from the last one; at some point I adjusted the compensation for broader stability margins too, and added a current source in the LTP tail for the 2nd (tone control) stage as well, to improve its PSRR.

This project turned into a Frankenstein somewhere along the way; this C55 needed more changes than average to get it performing at par. Quite a contrast to the Onkyo A-5 preamp whose TA7136 opamp -- a part known for noise and radio pickup -- was possible to tame with a few compensation changes and no drilling.


  • c55_2023.png
    298.6 KB · Views: 56