MichaelMeissner:
That's the point of using an opto-isolator. That way there is no electrical connection between the arduino and hdmi switch (opto-isolator is a chip with a LED and a photo-sensor inside, the arduino turns on the LED, and then the photo-sensor closes the circuit on the other side when it senses light). If it is high voltage, or A/C, you probably want to use a relay instead of opto-isolator.
Otherwise if you connect an Arduino directly to the switch, you need to make sure the grounds are connected, and the voltages are safe, etc.
Sorry, I didn't notice the part about the opto-isolator in your initial reply. Even so, while the optio-isolator will protect the Arduino there's still no guarentee that 0 to 5 VDC is the proper voltage level for the logic inside the swticher box. It could easily be higher or lower, so one would want to know this ahead of time so they could setup the opto-isolator circuit on the "recieving side" correctly.
red_car:
One thing I did notice about these switches was that they not only switch based on the button, but also if there is only one live input. Presumably they sense the signal somehow. Unfortunately this isn't desirable in my case... As this would bypass my Arduino logic.
I might still get one and crack it open... Could still be an option if I can disable the auto switching function.
This isn't an insurmountable problem, if you need to bypass the automatic switching logic most likely it could be done simply by cutting the trace(s). There are also ways to incorporate it into your Arduino control circuit.
red_car:
Re the transistor option... I don't quite understand how this would work. I can see that it provides a switch but don't quite see how I could use this to pass the signal down the cable.
Basically it's the same as putting physical toggle switches, and two attached HDMI connectors, between two HDMI cables. If the transistor is off, open circuit on all the wires in the cables. If the transistor is on, it's a conduction path much like a trace or wire. The only difference is you are using signals from Arduino to control the transistors instead of physically flipping all the those switches.
red_car:
Another option I thought of was using a digital switch.. such as this ... http://www.ebay.com/itm/400312722729?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649#ht_1950wt_1095
That would function similarly to using individual MOSFET transistors. The CMOS implementation allows it to work with some analog signals a single MOSFET couldn't, but that's not important when you are just using digital logic. The main difference would be that less space to implement your logic, because there are four switches packaged together (versus using separately packaged transistors and resistors, although there are ICs that are just multiple FETs or opto-isolators together and resistor arrays and networks).
red_car:
I could use it to interrupt the data transmission in the cable (seems there are 3 separate data channels in HDMI).
IMHO, I would just switch all the contacts/pins on then HDMI cable at the same time, even if it means a number of opto-isolator or transistors need to be used. If you just have the data channels turned off the other channels that can cause strange behavior. For example, the clock used by the data channels will be separate, so if you only switch off the data channels the clock signal will still continue to the cable's ultimate destination. If you have an extra clock signal coming into your TV (or whatever) it shouldn't cause permentant damage, but it may result in your TV displaying an error message or acting weird.