April 18Apr 18 Finished the right channel today. Feedback as suggested by Justin. Bias servo as suggested by Kevin. Red smoke – Super Symmetrical mode. Green smoke – Zero Feedback mode.
April 23Apr 23 i habe some current mirror amplifier ss/zf version 1.21 here that i like to use for the amp build. may i ask about two points on the underside of the board (orange marked) look liks place for a jumper on the front siede the are between the two 82ohm resistors. are they for jumper and/or what are they used for. thx
May 13May 13 finished my cfa3 this week, thanks kevin gilmore for the desing and the support from the forum members. running on +-30v with moderat bias, changed the gain resistors to 3.2k for lower gain. needed some 3d printed parts so that all fit fine, a cfa3 in a quad 405 chase. no pot this time, i use a dac with volume control or a preamp. after all amps i build i think the best solution for a 1 case build ist mounting the trafos outside in vertical position, absolut no magnetic hum inducted. i also added grain oriented metal band around the trafos inside the trafo cases.
May 20May 20 Nice! So the trafo is in this box not in an outer case. Would be nice a picture from the front too.
May 20May 20 3 hours ago, judo said: Nice! So the trafo is in this box not in an outer case. Would be nice a picture from the front too. The first picture he posted was from the front. Quad 405 cases have the sink on the front 🙂
Yesterday at 03:08 AM1 day I am working on a CFA3 build where the original THAT340 input devices have been changed to a JFET input pair.For a rough simulation I used these models:.model 2SJ103 PJF VTO=-1.5 BETA=10m LAMBDA=0.01 RD=20 RS=20 CGS=50p CGD=45p IS=10p.model 2SK246 NJF(Beta=2.5m Vto=-1.5 Is=1e-14 Cgd=4p Cgs=5p)This is only intended as an input-impedance / loading check, not a final device-accurate distortion simulation.With the current SS input/feedback network:R24/R26 = 5kR44/R49 = 50kC9/C10 = 20pI get approximately:SS mode input impedance: ~11.7k ohm per phase at 1 kHzZF mode input impedance: ~50k ohm per phase at 1 kHzSo even though the input devices are JFETs, the SS mode input impedance is still relatively low because of the surrounding SS input/feedback network.The practical concern is that I changed the volume control from 10k to 50k. With a 50k attenuator, the source impedance around mid attenuation can be much higher than with a 10k control. That seems like it can load/interact with the ~11.7k SS-mode input impedance, while ZF mode is much less affected.I am considering scaling the SS input/feedback network values upward while keeping the same approximate ratio and compensation time constant.Current:R24/R26 = 5kR44/R49 = 50kC9/C10 = 20pConservative option:R24/R26 = 10kR44/R49 = 100kC9/C10 = 10pSimulation:SS input impedance rises to ~20.2k per phaseSS gain changes from about 15.0 dB to 14.7 dBMore aggressive option:R24/R26 = 15kR44/R49 = 150kC9/C10 = 6.8pSimulation:SS input impedance rises to ~26.6k per phaseSS gain changes to about 14.5 dBThe idea is to reduce the current drawn from the volume control and raise the effective SS-mode input impedance, without changing the low-frequency feedback/input ratio too much.Has anyone tried this on a JFET-input CFA3, especially with a 50k volume control?Does scaling R24/R26 and R44/R49 like this seem reasonable, or is there a known preferred value set for JFET-input builds?
1 hour ago1 hr Here are some photos of the SS/ZF switch board I have been using in my CFA3 build.The original SS/ZF switch board, designed by ang728 & vwvwbg, uses a ULN2003 as a relay driver. The mode-control input drives several ULN2003 inputs in parallel. When the control line is high, the corresponding Darlington outputs sink current through the relay coils, so the relays energize. When the control line is low, the ULN2003 outputs turn off and the relays release. The relay coils are tied to +5V, and the ULN2003 provides the low-side switching path to ground. Its COM pin is tied to +5V so the internal clamp diodes handle the relay flyback.I have been using this SS/ZF switch board for about a year and a half without any reliability issues. The only thing I noticed is that switching modes produces a small pop. Even with headphones on it has been acceptable, but recently I started wondering whether this could be improved..So I added a small Arduino Nano interlock board in front of the existing SS/ZF control input. The Arduino reads the front-panel SS/ZF switch and outputs the required mode-control voltage to the existing ULN2003 relay board.The sequencing is:1. Detect SS/ZF switch change.2. Assert mute.3. Wait briefly.4. Change the SS/ZF relay control output.5. Wait for the circuit to settle.6. Release mute.The mute control is done through a PC817 optocoupler. On the Arduino side, one digital output drives the PC817 LED. On the protector-board side, the PC817 transistor pulls the existing protector MOSFET gate node toward the protector board’s -12V rail. This mimics a fault condition and forces the headphone output protection relay to open during the SS/ZF transition.So the Arduino does not touch the audio signal path. It only sequences the existing relay-control line and temporarily forces the existing KG protector circuit into mute during mode switching.In the installed photo:The top connector goes to the front-panel switch. The switch controls whether Arduino D2 is grounded or left open.The middle-right connector outputs the mode-control signal to my SS/ZF switch PCB. This is the 0V / control / +5V connection.The lower-left connector goes to the KG protector board: one wire to the 2N7000 gate node, and one wire to the -12V output of the 7912 regulator.The lower-right connector is the 5V / 0V power input for the Arduino interlock board.Arduino code attached below:const int SWITCH_PIN = 2; const int MUTE_PIN = 8; const int MODE_PIN = 9; const bool MODE_INVERT = true; // if SS/ZF mode inverted const unsigned long MUTE_BEFORE_SWITCH_MS = 250; const unsigned long SETTLE_AFTER_SWITCH_MS = 700; const unsigned long POWER_ON_MUTE_MS = 1500; const unsigned long DEBOUNCE_MS = 50; bool currentMode; bool readMode() { bool sw = digitalRead(SWITCH_PIN); // HIGH = open, LOW = grounded bool mode = sw; if (MODE_INVERT) mode = !mode; return mode; } void forceMute(bool on) { digitalWrite(MUTE_PIN, on ? HIGH : LOW); } void setMode(bool mode) { digitalWrite(MODE_PIN, mode ? HIGH : LOW); } void setup() { pinMode(SWITCH_PIN, INPUT_PULLUP); pinMode(MUTE_PIN, OUTPUT); pinMode(MODE_PIN, OUTPUT); forceMute(true); delay(100); currentMode = readMode(); setMode(currentMode); delay(POWER_ON_MUTE_MS); forceMute(false); } void loop() { bool newMode = readMode(); if (newMode != currentMode) { delay(DEBOUNCE_MS); newMode = readMode(); if (newMode != currentMode) { forceMute(true); delay(MUTE_BEFORE_SWITCH_MS); setMode(newMode); currentMode = newMode; delay(SETTLE_AFTER_SWITCH_MS); forceMute(false); } } }Some pics:
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now