Creating ones' own analog multiplexer

Hi all,

I have a requirement to use an analog multiplexer - however, all of the high-end existing solutions seem to have on resistance values of around 0.8ohms.

I need the multiplexer to have an on resistance of only a few milliohms - so, assuming my logic is correct - given one has enough MCU pins available, there's nothing to stop you putting together an array of MOSFETs to build an analog multiplexer is there?

Afterall, isn't that all a multiplexer is - albiet with some added control circuitry to allow you to interface via SPI or similar? I guess the only concerns are things like ensuring you having a high enough voltage to drive the gate above the source if using NMOS?

Thanks!

EDIT - Just realised, this may belong in the multiplexing forum...

"Interface via SPI or similar?"

" I guess the only concerns are things like ensuring you having a high enough voltage to drive the gate above the source if using NMOS?"

Yes you can make a custom multiplexor. The details of "break before make" can be designed with boolean logic. You can use NMOS and PMOS for best results, then the gate drive does not need to be above the signal voltage.

Level shifters can be customized for your needs. Maybe you want 3.3 volts signals from Arduino to switch 16 volt analog signals through the analog mux. Your own design has advantages and no problems. This is simple.

Why does the resistance need to be so low - what is the application? How much current does the multiplexer need to pass, and how much voltage does it need to block?

I previously designed a wideband oxygen sensor controller - and am just looking at multiplexing multiple sensors into the same controller, hence the low resistance equal to a metre or so of the same guage wiring used.

The high current 12V heater is seperate for each sensor, so not part of this discussion - so 5v peak to peak and only a few mA are the requirements.

hence the low resistance equal to a metre or so of the same guage wiring used.

Why is that important?
It is only an issue if there is sufficient current flowing to drop a voltage across it that could interfere with your measurements. No evidence so far that this is the case.

jtw11:
EDIT - Just realised, this may belong in the multiplexing forum...

This is "definitely" an electronics problem. And as everyone else says, there's not enough info given to even guess at what to do with this. I hope you're not trying to run 1-Amp through an analog multiplexer channel.

oric_dan:
I hope you're not trying to run 1-Amp through an analog multiplexer channel.

Nope - fear not.

so 5v peak to peak and only a few mA are the requirements.

It is only an issue if there is sufficient current flowing to drop a voltage across it that could interfere with your measurements.

The Bosch sensors use a precision laser trimmed resistor that account for manufacturing variations in each sensor - adding an ohm or so to this resistor would throw the sensor way out of cal.

The monitoring cell in a wideband sensor is maintained at 450mV by the pump cell, so adding an ohm or so there would offset the result into the controller - this however would be a known, and I could account for this in software. Unfortunately that's not the case with the calibration resistor.

jtw11:
The monitoring cell in a wideband sensor is maintained at 450mV by the pump cell, so adding an ohm or so there would offset the result into the controller - this however would be a known, and I could account for this in software. Unfortunately that's not the case with the calibration resistor.

Rethink this. Adding an ohm or so in series with the analog input, impedance of around 100 megaohms, won't make much difference.

If you expect to connect your analog mux some way other than in series with an analog input, I'd like to know what you're planning.

adding an ohm or so to this resistor would throw the sensor way out of cal.

I too think this is wrong.

Even mechanical relays have a fraction of an ohm resistance. Connnectors too... I assume you'll need to add a pair of additional connectors in-line...

If you are measuring voltage, a small series resistance should't be an issue. If you are measuring resistance (or current) you may need to add a buffer circuit of some kind before the multiplexer. If that's not practical, the whole concept may not be practical. :frowning:

jtw11:
Hi all,

I have a requirement to use an analog multiplexer - however, all of the high-end existing solutions seem to have on resistance values of around 0.8ohms.

I need the multiplexer to have an on resistance of only a few milliohms - so, assuming my logic is correct - given one has enough MCU pins available, there's nothing to stop you putting together an array of MOSFETs to build an analog multiplexer is there?

Afterall, isn't that all a multiplexer is - albiet with some added control circuitry to allow you to interface via SPI or similar? I guess the only concerns are things like ensuring you having a high enough voltage to drive the gate above the source if using NMOS?

Thanks!

EDIT - Just realised, this may belong in the multiplexing forum...

No, you misunderstand transmission gates used in analog switches - these are not power MOSFETs with vertical
current flow, they have channels isolated from the substrate. This is essential to allow more than one device per
chip.

The kind of MOSFET you put together in pairs to make a transmission gate have horizontal
current flow, no built-in source-drain diode and much higher Rds(on) values than power MOSFETs (which are
always vertical current flow, have integral source-drain diode. 0.8ohms is close to the limit of the technology.

Power MOSFETs cannot share a die (unless they also have a common drain terminal) since the current flows from
source at the top to drain on the underside. The built-in diodes are intrinsic to the design, and the vertical current
flow is why you can get sub-milliohm on resistances at all.

However I'm not saying you can't use power MOSFETs to solve your problem, but it won't be as simple as a
transmission gate.

Note that your 0.8ohm device may have a surprisingly good spec for the difference in resistance between
channels, which may be all you need to care about.

If you provide a schematic of how you would connect a single sensor to the Arduino, then we can suggest ways of connecting multiple sensors without needing a multiplexer with very low resistance.