I want to use a multiplex to controll my circuit. I just want something that can be a switch between an input and output. I thought to create this circuit:


simulate this circuit – Schematic created using CircuitLab

Because I will use video signal, it can be very sensitive to noise. I want to imagine that this circuit will be the same than have a cable connected direct from one camera to one transmitter.

I just imagined it start from 0000. So, every transmitter will NOT have the any video signal. If I send one clock, I will have 0001 and "Camera1" connect with "transmitter 1". More clocks and I will have 1111 and every camera X is connected with the transmitter X.

What is the multiplexer am I looking? Anyone know what I need to buy?



You did not describe a "multiplexor" in your comments. If you want the "straight-across" configuration you described, you are looking for a "Video Switch" with one of the following architectures:

  • 4x1
  • 4x1:1
  • 4SPST (4x single-pole, single-throw)
  • 4 Channel

If you want an any-to-any configuration, you are looking for a "cross-bar" switch.

If you want a one-to-many configuration you are looking for a "multiplexor".


The exact switches you need depend entirely on the type of "video" signal you are switching, but for cell-phone type camera modules (LVDS) here are some IC's to look at.

| improve this answer | |
  • \$\begingroup\$ Lol, really thanks for answer. I don't know exactly the name of things I am looking for. About the video, I am using some micro-cameras. So I just connect it in a protoboard. This is one type of transmitter: dhgate.com/store/product/… and this is an camera misumi.com.tw/pdf/2013/MO-B5609.pdf I just need to plug the cables \$\endgroup\$ – Rodrigo Mar 23 '15 at 1:49
  • \$\begingroup\$ Yeah... This is any-to-any but the camera1 will NOT connect with tranmiter 2. Only camera 1 connect with transmitter 1. I just want to plug the cables and controll what will work with my arduino. So, any more ideas DrFriedParts? \$\endgroup\$ – Rodrigo Mar 23 '15 at 1:51
  • \$\begingroup\$ @Rodrigo, this is not any-to-any by your description. Any-to-any means that camera1 can connect to transmitter4, camera2 to transmitter 3, et. al... why do you want to control it this way? It's a bit strange. Why not just control the power to the cameras or transmitters? It seems like you have a fixed relationship between cameras and transmitters and are just turning them on or off with the microcontroller (Arduino). \$\endgroup\$ – DrFriedParts Mar 23 '15 at 4:40

I actually work at Maxim... besides the LVDS digital video switches DrFriedParts mentioned, we also have crosspoint switches and multiplexers for NTSC/PAL standard definition analog video signals: http://www.maximintegrated.com/en/products/analog/video-products/crosspoint-switches-and-multiplexers.html

A crossbar or crosspoint ("any-to-any") means input1 can be connected to output1, or output2, or output3, or output4. And at the same time, input2 can be connected to output1, or output2, or output3 or output4. And so on. These are more expensive and more complicated to command than a simple multiplexer, because each output needs to know "on or off" but also "which input", so at least three bits x 4 channels = 12 control bits, maybe more. Example: Maxim Integrated MAX4359 http://www.maximintegrated.com/en/products/analog/analog-switches-multiplexers/MAX4359.html (this is an active buffer). This one uses 7 pins: A2,A1,A0 select one of the channels, and D3,D2,D1,D0 determine how to configure that selected channel. (From your comment to @DrFriedParts I think this probably is not what you need.)

A multiplexer or MUX chooses one output between two or more inputs. A 2:1 mux selects from 2 possible inputs to drive 1 output. Example: Maxim Integrated MAX4025 http://www.maximintegrated.com/en/products/analog/video-products/MAX4025.html (this is an active buffer). These are less expensive and simpler to control than a full crossbar, because each output only needs 2 bits: A/B selects between "input A" and "input B" for that output, and EN enables the output driver. So OUT1 is driven from either IN1A or IN1B, and OUT2 is driven from either IN2A or IN2B. You could externally connect IN1A and IN2A to the same signal source, or not.

A SPST switch (single-pole, double-throw) is just one on-or-off switch. So input1 can connect only to output1 through one switch, and input2 can connect only to output2 through another switch. These are less expensive and easier to control, because each switch just needs to know "on or off", one bit for each switch.

For any of these, you will need a custom PCB (printed-circuit board) layout -- video signals are high bandwidth (between 200MHz and 600MHz depending on format), this type of signal will not work very reliably on a solderless breadboard. Video signals also require correct output termination and controlled-impedance traces, to avoid distortion.

If you really want to try prototyping this on solderless breadboard using old-fashioned DIP parts, your best bet is the old 74HC4066 quad SPST analog switch. I'm not sure whether or not this device has enough bandwidth to pass an NTSC/PAL video signal -- typical bandwidth is only about 100MHz, and standard-definition video really wants several times more bandwidth. The capacitance of the solderless breadboard will also reduce this bandwidth further, maybe as low as 10-20MHz.

This question really seems to be more about video switching not specific to arduino, it might be better to remove the arduino tag to avoid being migrated to the arduino stackexchange.

| improve this answer | |
  • \$\begingroup\$ NTSC/PAL baseband signal bandwidth is about 5MHz, less for a lower quality source, like a VHS tape. \$\endgroup\$ – Pentium100 Mar 23 '15 at 8:57

All you need are four SPST NO reed relays with coils that can be driven by the Arduino and a diode across each coil to kill the high voltage transient that'll appear when the relay is turned OFF.

Connect one end of each relay coil to a separate Arduino I/O, connect the other ends to ground, and connect a diode across each coil with the cathode end of the diode connected to the Arduino I/O and all the anodes connected to ground.

Then connect the cameras and the transmitters to the relays - one set per relay - and activate them by sending a "1" to the I/O corresponding to the pair you want to turn on.

| improve this answer | |
  • \$\begingroup\$ I don't think mechanical relays are a good way to switch high bandwidth signals like video due to the large impedance discontinuity introduced. No? \$\endgroup\$ – DrFriedParts Mar 24 '15 at 18:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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