I am connecting three demuxs and one mux to an arduino to be able to communicate with multiple ADCs. As there are many signals that need to go from the arduino to these 6 ADCs, I was thinking of using multiplexers and demultiplexers to get the work done but I wanted to know if setting the same digital outputs (D4,D5,D6 as per the image) of the arduino to be set as the selector inputs (S0,S1,S2) for all the mux/demuxes would be OK.

The arrangement would look like this: Possible arrangement

Consider START/RESET/CS/DRDY all as digital IO pins of the arduino. It seems like in theory this should work but I just wanted to confirm.

  • \$\begingroup\$ What are the models for the muxes and demuxes? What are the models of the ADC? I'm asking because that would help to put the question into the broader context. \$\endgroup\$ Aug 29, 2016 at 3:53
  • \$\begingroup\$ When reading this, I somehow get the feeling that you think that the word "multiplexer" means something extremely more specific than it actually does. It is not obvious what you're trying to solve here without more details. \$\endgroup\$
    – pipe
    Aug 29, 2016 at 5:06
  • 1
    \$\begingroup\$ Are you using external Analog digital converters hooked to SPI or i2c? Or are you looking to multiplex multiple analog signal sources to a single analog input on your Arduino? Once we have that answer, we can better assist you. \$\endgroup\$
    – Mister Tea
    Aug 29, 2016 at 16:08

1 Answer 1


Yeah, that should work, but I don't think you actually need that many multiplexers. One thing to consider is there may be some signals that can be connected to all of the ADCs in parallel. You may be able to get away with just a couple of multiplexers instead of one for each signal. Case in point: it looks like you have a chip select signal in there. The whole point of a chip select signal is so you can share the rest of the wires and then just assert the chip select signal on the one chip you actually want to talk to at the moment, then cycle through all of the connected chips. My guess is you can probably connect the start signal and probably the reset signal as well to all of the chips in parallel. You'll probably want to use a multiplexer or decoder to drive the chip select line, though, to save on I/O pins.

Specifically which ADC are you using?

  • \$\begingroup\$ Thank you so much for your reply. Interestingly, this was the exact same epiphany I had yesterday and have started designing my circuit accordingly. I am using the ADS1248 and in order to communicate with the the ADC, I need to keep both START and RESET HIGH. I was thinking of keeping them both HIGH and connecting them to all the ADCs and then just demultiplex the CS LOW with an inverting demultiplexer like the 74138. \$\endgroup\$ Aug 30, 2016 at 13:11

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.