Skip to content

steelcuts/ir2mqtt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IR2MQTT

License Home Assistant Docker Hackaday

The Ultimate IR Gateway for Smart Homes & MQTT.

IR2MQTT Demo

IR2MQTT bridges the gap between physical Infrared devices and your smart home. It replaces tedious YAML configuration with a modern, reactive Web UI to manage devices, learn IR codes, and create powerful automations — entirely local, no cloud, no account, no subscriptions.


Live Demo

Try out the Web UI directly in your browser without installing anything: ir2mqtt.steelcuts.net

(The demo environment supports up to 20 concurrent, fully isolated sessions. Each session provides its own virtual backend, MQTT broker, and simulated IR bridge.)


Documentation

Full documentation — hardware setup, wiring, ESPHome bridge component, MQTT reference, automations, and more — is available at:

steelcuts.github.io/ir2mqtt


Quick Start

You'll also need an IR bridge. Flash your ESP32 with the ir2mqtt_bridge firmware — it handles IR send/receive and communicates with this app over MQTT. Full wiring and setup instructions are in the documentation.

Option 1: Home Assistant Add-on

Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.

  1. Click the button above to add the repository, or go to Settings → Add-ons → Add-on Store → ⋮ → Repositories and add https://github.com/steelcuts/ir2mqtt-ha-app.
  2. Find IR2MQTT in the store and click Install.
  3. Enter your MQTT broker details in the Configuration tab.
  4. Click Start and open the Web UI.

Option 2: Docker

services:
  ir2mqtt:
    image: ghcr.io/steelcuts/ir2mqtt:latest
    container_name: ir2mqtt
    restart: unless-stopped
    ports:
      - "${APP_PORT:-8099}:${APP_PORT:-8099}"
    environment:
      - MQTT_BROKER=192.168.1.100
      - MQTT_USER=mqtt_user
      - MQTT_PASS=mqtt_password
      - APP_MODE=standalone   # or 'home_assistant'
      - APP_PORT=8099         # change port here and in 'ports' above
    volumes:
      - ./data:/data
    devices:
      - /dev/ttyUSB0:/dev/ttyUSB0  # optional: serial bridge
docker-compose up -d
# Web UI: http://<your-ip>:8099  (or your chosen APP_PORT)

License

MIT — see LICENSE for details.

Credits

  • Flipper-IRDB & Probono IRDB — IR code databases
  • Material Design Icons — UI icons
  • Vue.js, Vite, Tailwind CSS — frontend stack
  • FastAPI, SQLAlchemy, paho-mqtt — backend stack
  • ESPHome — bridge firmware framework (ir2mqtt_bridge)

About

Cloud-free IR gateway for smart homes. ESP32-based IR bridges, MQTT integration, Web UI, IR learning, automations, IR databases, and Home Assistant auto-discovery.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors