I have a circuit that will simulate a device.

The device in question normally communicates by adding/removing resistance from a generated signal, the source of the signal will then measure the voltage difference and interpret that as a message.

In order to simulate it, I need to be able to route the incoming analog signal (1kHz square wave, V1 in below schematic) to different points in the circuit or make it NC. I tried looking for multiplexers, but those I found weren't able to pass the analog signal through. I couldn't find any single-pole triple-throw relays anywhere.

What type of component can I use in place of U1 below to achieve this behavior?


simulate this circuit – Schematic created using CircuitLab

V1 is a PWM signal with a +/- 12V amplitude. It's a control signal which won't be carrying a lot of current (maximum 5nA). I would like to be able to control U1 with a 5V control signal (an arduino or something to that effect)

This is what the "mechanical" counterpart would be:

enter image description here

  • \$\begingroup\$ those I found weren't able to pass the analog signal through - that sounds unusual so maybe you can explain why this can't work? \$\endgroup\$
    – Andy aka
    Mar 29, 2021 at 12:41
  • \$\begingroup\$ "... to different points in the circuit or make it NC." I think you mean to "make it closed". "Normally open" and "normally closed" generally describe a contact or switches state when off. Your question is missing details on voltages and currents being switched and what logic is controlling the switches. \$\endgroup\$
    – Transistor
    Mar 29, 2021 at 12:48
  • \$\begingroup\$ @Transistor NC as in not connected but I'll add the rest of the information \$\endgroup\$ Mar 29, 2021 at 12:50

4 Answers 4


There are many 4:1 analog mux parts that will meet your requirement, in both the CD4xxx series and DGxxx series. Analog Devices, Vishay, TI, etc.

There are two addressing options:

The CD4066 has multiple, independent switches, and any of them can be on/off in any combination because there is one enable input per switch with no internal decoding. Three possible output states require three address lines.

The CD4052 has an address decoder and two sections, each with 4 switches. The switches are mutually exclusive - only one can be on at a time (per 4:1 section). Three output states require two address lines .

  • \$\begingroup\$ 4:1 is the wrong way around for this situation though. Or am I missing the fact that you can just reverse the signal's direction? \$\endgroup\$ Mar 29, 2021 at 13:20
  • 2
    \$\begingroup\$ Correct, you are missing. The big el-grando primary huge difference between analog and digital mux's is bi-directionality. The design of a digital logic gate prevents a signal from going "backwards" through it. An analog mux part is basically a series variable resistor, with equal conductivity in both directions when on. Note that a common characteristic of CMOS mux's is that the resistance is not constant; it varies some with signal voltage amplitude. \$\endgroup\$
    – AnalogKid
    Mar 29, 2021 at 14:33

You used maybe a digital multiplexer? If the switch resistance isn't excessively critical you could use an analog multiplexer, like the classic 4052 or some discrete analog switch like the 4066.

If switch resistance is critical there are more refined analog multiplexers, manufacturer specific (like the ADGs or the TMUxs). In alternative, given the topology you could use MOSFETs to shunt part of the resistor cascade to ground, it's quite simple.

However the missing part is the voltage range of the signal and the currents involved. Analog switches are only good up to the supply voltage and up to about 10mA (details differs depending on the actual part). Shunt MOSFETs have no such issues, just use a MOSFET beefy enough.

In alternative just use a relay array and drive one relay at a time depending on the need. In absolute the most versatile even if somewhat expensive. Sometime however a relay can cost less than a MOSFET and associated circuitry and solve the problem.


As the others have mentioned an analog 3 pole switch is easy to implement from low ohms to 300 Ohms (4016) but this may be too high for your spec (TBD).

It seems you are wanting to measure the source impedance with a 3 window comparator to test for the source impedance change by adding a near-matched resistance above and below the required assumptions with defined loads.

Where the matched resistance has Vout=Voc/2 into some defined load R of equal value with Rs added to the source *

Another method

Apply a source or current sink load to reach this condition * above and measure the current at the threshold using some ramp much greater than the slew rate.

For all switched drivers and analog signals which these are, whether they are CE, CC or Complementary CMOS, or an Op Amp with negative feedback, there exists a Vol/Iol=Rol and similar for Roh and analog voltages in the linear range.

For old CMOS Logic in the 4000 series, RdsOn was typically 300 Ohms @ 12V, 74HC series 50 Ohms and 74ALC series (3.6V logic) are 25 ohms each with 50 to 35% tolerance depending on the vintage of series and supplier, yet these families are standardized by design.

There are many ways to measure this including impedance spectrometry with a Spectrum Analyzer or a Network Analyzer or an RLC analyzer. For RF ingress, they use a test called Transfer Impedance testing on coax which is not the same as the characteristic impedance but a measure of the braid efficacy for shielding.

What works best for you depends on your TBD specs and tools available to you.


It looks like I was thinking about it in the wrong way.

I can achieve the result of the 3-pole switch by using a programmable resistor (digital potentiometer) and possibly a relay for the Not-connect state.

  • 1
    \$\begingroup\$ There is almost always about 3 ways to do the same thing in electronics. \$\endgroup\$
    – Aaron
    Mar 29, 2021 at 21:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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