I am testing a communication scheme whereby an arduino communicates with 12 others through a network of multiplexers. By cycling through the demultiplexers much faster than the multiplexers, I hope to establish communication between connected nodes by putting one channel on HIGH on the multiplexer, then reading this out on the connected demultiplexer.
(The reason why I am doing this, as opposed to using a shift register, is that these pins can then double as TX and RX for serial communication between the arduinos. If you have any advice for performing serial communication over a shift register, I would be incredibly happy.)
To test this scheme, I have two arduinos connected through the Multiplexer/Demultiplexer pair (broken out in this way https://www.sparkfun.com/products/9056
). The multiplexer's com is connected to Digital Pin 10 which is high and routed so that four of the pins look like this.
On the other side, the demultiplexer is connected to Pin 11 and set as an input pin. It then cycles through each of the inputs on the demux, and reads the value. However, it seems like once the input pin is pulled to high, it stays high. Thus for the given input configuration, the output configuration is:
Any idea why this happens and/or how to fix this?