Date: 20/09/2019

I wanted a way to control my cinema amplifier, house sound system and dvd player and i didn't want to spend $50 on a broadlink rm mini I already have an IR system installed in my house with three seperate recievers in the walls, one in the garage, one in the living room and one in the media rooom which are connected with cat6 cable (just soldered on to three of the cores) to a hub block behind the stack of amps and dvd players this hub then uses ir emmitter dots to relay the message to the stack.

How to:



Note: this guide assumes you know how to use the arduino ide, esp8266, maybe solder, have home assistant, mqtt and how ir codes work



I got a Wemos D1 mini, ir leds, ir recivers that I ordered from aliexpress



the connecter block that I have is similar to this one on amazon while this one isn't cheaper than a broadlink rm if you can find one similar to this it should work



the arduino librarys that you will need are:

PubSubClient by Nick O'Leary

ArduinoJson by Benoit Blanchon

IRremote by shirriff

IRremoteESP8266 by David Conran

WifiManager by tzapu



change line 26 to #define MQTT_MAX_PACKET_SIZE 1024 in pubsubclient.h which can be found at Documents\Arduino\libraries\PubSubClient\src



once these are installed navigate to file>examples>IRremoteESP8266>IRMQTTServer



flash this to the esp8266 and power it up connect to the wifi network name that starts with esp and put your credentials and mqtt server



connect pins D2(gpio4) and Ground on the Wemos D1 Mini to Ground and signal on the block



power the wemos back up and check its web based interface from its ip that will have to be found from the router



this is an example config for home assistant which will change the volume on a yamaha amplifier



switch:

- platform: mqtt

name: "Amplifier Volume"

state_topic: "ir_server/sent"

command_topic: "ir_server/send"

payload_on: "3,5EA158A7, 32, 5"

payload_off: "3,5EA1D827, 32, 5"

retain: false

optimistic: true

icon: mdi:volume-high

