Switch between two HDMI signals for television via raspberry PI

Hello everyone!
I need little help with a project…

Question: how can I switch between two HDMI signals that go out to television with a help of raspberry pi?

Background (why i need this):
I’am really glad I found your project:
“Put friends and loved ones on the big screen with this instant video call project”

It was a long long wish of mine to implement such thing for my grandma. She spends most of her time in bed before TV… It would mean a world to her to be able to call me up or other people for a video chat.

I need help figuring out two things to make it work for her:
1. how to switch between two hdmi signals with a raspberry pi (to signal where the video chat will be shown, and back to her regular TV signal when the video chat is over)
2. how to initiate this call via Alexa (hey alexa, make a call to bob) (i ask this in a different post trigger video call on raspberry pi via alexa/google nest)


Nice idea, but it might require some hardware hacking. Perhaps mod a HDMI switch like this https://www.amazon.co.uk/HDMI-Switch-Bidirectional-Splitter-Supports/dp/B076VJ7XZV/ref=sr_1_3?dchild=1&keywords=2+port+hdmi+switch&qid=1609934469&s=electronics&sr=1-3 and have a GPIO trigger the button. It’s a bit of a hack, but I suspect it should be simple enough.

Then you would want a service in your balena service stack to control the switch state, and then call that from your calling service etc.


The project has a feature which allows it to control the tv to which the pi is connected. this is done via cec-utils. You can enable it by setting the CONTROL_TV environment variable to 1 in your application.

However, the behaviour really depends on the tv and if they conform to the cec protocol and standards. we have seem varied behaviour with different tv brands.

You should also find a way to revert back to the previously playing program via the cec util. here is the current implementation. You might want to customise it.

Hope this is helpful