IoT HDMI switch – An ESP32-C3-powered 2-source HDMI switch automated with Home Assistant

Designed by Guimpt in Spain, the IoT HDMI Switch is an ESP32-C3-based open-source HDMI switch that integrates with Home Assistant and ESPHome to automate up to two HDMI inputs for TVs, monitors, or projectors. It targets smart home setups that need seamless source switching without manually handling cables.

It includes a 3D-printed enclosure for a compact install behind media equipment. The device also offers open hardware and firmware for easy upgrade, and it lets users switch inputs via phone, voice assistant, or a button. It also supports automations such as automatically selecting a game console or media player. It works with common HDMI devices like Chromecast, Raspberry Pi, PCs, and consoles, making it ideal for smart home enthusiasts, DIY tinkerers, and anyone who wants a hands-free media setup.

IoT HDMI Switch

IoT HDMI Switch specifications:

  • SoC – Espressif Systems ESP32-C3FH4
    • Single-core 32-bit RISC-V microcontroller @ up to 160 MHz
    • Memory – 400 KB SRAM
    • Storage – 4MB flash
    • Wireless 2.4 GHz Wi-Fi 4 & Bluetooth 5.0
  • USB – USB Type-C port for power and programming
  • HDMI – 1x HDMI output (sink) and 2x HDMI inputs (sources)
  • Automation support – Input switching via Home Assistant automations
  • Power – 5V via USB-C port
  • Dimensions –  50 x 40 mm
  • Enclosure – 3D-printed case

The IoT HDMI Switch supports ESPHome out of the box, so you can configure, control, and automate it directly through Home Assistant via phone/voice control, and physical buttons without custom code. All device parameters, including input selection, button actions, and status reporting, are exposed as ESPHome entities, and the firmware can be modified or extended since both the hardware and software are fully open-source and available on GitHub.

IoT HDMI Switch with case
IoT HDMI Switch with case
2-source 1-sink ESP32-C3 HDMI switch
IoT HDMI switch connected to two sources and one sink/display

Back in 2013, we wrote about the YS-189 HDMI Switcher, a basic “dumb” 3-port HDMI switch that uses a simple IR remote and has no Wi-Fi, IoT, or Home Assistant integration capabilities. There are also projects like Pi-Cast and PiKVM, which are not your standard switch, but they can capture HDMI input and allow for remote control (KVM over IP). It is open-source and can be integrated with Home Assistant, but it is primarily a remote management tool rather than a consumer media source switcher. There are also development boards like the Numato Opsis, which can theoretically do the same if configured correctly.

The IoT HDMI switch is available on Tindie for $65.00. The company mentions that only a limited number of units are available, and each purchase includes the fully assembled switch along with the 3D printed enclosure.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Orion O6 Armv9 mini-ITX motherboard

7 Replies to “IoT HDMI switch – An ESP32-C3-powered 2-source HDMI switch automated with Home Assistant”

  1. Before I spend $99.49 (item plus shipping to my country), I’d rather buy a switch with IR remote, and add an ESP32 + IR LED, that emulates the remote control.
    This is trivial, using a universal firmware like ESPEasy or ESPHome.
    Or program it myself using Annex RDS, which is also very easy.

    I’ve done this with LED ceiling lamps, that came with IR remote controls.
    Just add an ESP32 or ESP8266 with IR LED inside it, and you have full control of the lamp with whatever home automation system you like.

    1. I’ve started doing this, too, with a receiver board, and a prototype transmitter board. I picked up some specialty IR LEDs specifically to do this a month or two (haven’t gotten around to building it yet). Have you found any particular LEDs which work very well, or are you just using “whatever comes in the 20-pack”? I’m also not sure what’s common outside NEC clones as far as signaling; there are some devices like my fireplace receiver I’m not sure how to communicate with — I have a fireplace guy coming out soon to replace thermopile, tho, so will have him double-check me on running some brown thermostat wire to an ESP32-based wireless relay outside the fireplace, which I intend to wirelessly tie to my thermostat so we prevent the air conditioning from kicking on during and for 4 hours after the fireplace was last run.

      1. You don’t even need the ir diode. The common ir receiver has three pins, ground, data and 3.3v. that can usually power an esp directly, and with the data pin in open drain mode the esp can coexist with the ir receiver in parallel, so that both will work, no ir emitter blocking the sensor. If you can fit the esp inside the enclosure, it’ll look completely stock.

  2. It’s not clear on the photos, but I don’t see information about which ports are inputs and which one is the output, either on the board or on the enclosure. Since HDMI ports are the same on both ends, this would seem like essential information, hope the info is there.

  3. Nearly all TVs and Monitors already have multiple HDMI inputs already. If the point is to control the switch over the web, a simpler solution would be to have a minimal IOT device that just sends the switch message to the TV’s RS-232 port. All my LG TVs have RS-232, and a simple command script. Not sure about others. Let the TV do the work, and this way, you can control everything about the TV, including even more HDMI inputs.

Leave a Reply

Your email address will not be published. Required fields are marked *

Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC
Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC