HS4 and Broadlink (RM Pro+) - using Node-RED - Local control
I just got my RM Pro+ from Broadlink working locally with HS4 and it is awesome. This gives me IR and RF control (without cloud/internet). It is more setup work then just using the broadlink apps, but it is super reliable now. The combination of instructions is already spread out online, but I've combined it here for HS4 people
The main node red components are
https://flows.nodered.org/node/node-...ntrib-homeseer
https://flows.nodered.org/node/node-...adlink-control
Step 1
Install Node Red and Setup with HS4
https://forums.homeseer.com/forum/ho...pported-by-hs4
https://docs.homeseer.com/display/HS...r+use+with+HS4
Step 2
If you are using the new broadlink apps already (Broadlink app, or IHC app) you are going to want to delete any association to the RM pro. Those apps use cloud, not local.
Log into the app and delete all remotes, all devices etc.
If you are using an older broadlink device and the e-control app, there are ways to keep IR and RF codes from the app (I didn't do this)
Do everything mentioned on this website starting from "Factory reset Broadlink RM4 pro". Skip everything directly related to Home Assistant, we are using HS4.You can stop reading when it says "Note about RF Codes" (Because I have RF working)
https://peyanski.com/broadlink-rm4-p...-and-node-red/
You should have the e-control broadlink app at this point on your android/iOS
**To get RF codes working (with RM Pro+ anyways) you need to initiate the RF sweep in the e-control app first (don't do/start RF sweep in nodered)
In node red just pretend the RF code is an IR code (after you initiate RF sweep in the econtrol broadlink app try to learn the RF button press like it was an IR. Don't attempt to learn button in android/ios app)
you only need one learn sequence in node red, reuse it to learn buttons. Create multiple send sequences for each button learned once you capture the data value to put in the msg.payload (using debug window in node red)
Step 3
Create a virtual device in Homeseer
Step 4 (attached image)
Set Node red to trigger based on the Virtual device status. Using the node red send button examples created in step 2, follow these steps...
1) add a node for your homeseer virtual device
2) add a "switch" node to determine what send button to run based on what the homeseer button value is
3) connect the virtual device output to the "switch" input
4) edit the "switch" to have one output for every button msg.payload.value (settings in attached image)
5) connect each switch output to the associated function node
Now when you click the homeseer button, it will trigger the node-red to broadlink button send
Step 5 (only if you want google home integration)
a) If you have a simple on/off, you can just use the virtual device in google home
b) If not a simple on/off (example: tv remote), you can create a manual event for every button. The event will press the button on the virtual device. You can call these events from google home. Best way is to create a routine so when you say "ok google, play satellite" it will run the homeseer event
With this setup the only functionality I lost is the easy ability to tell google "ok google play channel YYYY on satellite". Only way I can think to do this is create an event/routine for every channel. But that is pretty simple for me since I don't have many favorite channels
I just got my RM Pro+ from Broadlink working locally with HS4 and it is awesome. This gives me IR and RF control (without cloud/internet). It is more setup work then just using the broadlink apps, but it is super reliable now. The combination of instructions is already spread out online, but I've combined it here for HS4 people
The main node red components are
https://flows.nodered.org/node/node-...ntrib-homeseer
https://flows.nodered.org/node/node-...adlink-control
Step 1
Install Node Red and Setup with HS4
https://forums.homeseer.com/forum/ho...pported-by-hs4
https://docs.homeseer.com/display/HS...r+use+with+HS4
Step 2
If you are using the new broadlink apps already (Broadlink app, or IHC app) you are going to want to delete any association to the RM pro. Those apps use cloud, not local.
Log into the app and delete all remotes, all devices etc.
If you are using an older broadlink device and the e-control app, there are ways to keep IR and RF codes from the app (I didn't do this)
Do everything mentioned on this website starting from "Factory reset Broadlink RM4 pro". Skip everything directly related to Home Assistant, we are using HS4.You can stop reading when it says "Note about RF Codes" (Because I have RF working)
https://peyanski.com/broadlink-rm4-p...-and-node-red/
You should have the e-control broadlink app at this point on your android/iOS
**To get RF codes working (with RM Pro+ anyways) you need to initiate the RF sweep in the e-control app first (don't do/start RF sweep in nodered)
In node red just pretend the RF code is an IR code (after you initiate RF sweep in the econtrol broadlink app try to learn the RF button press like it was an IR. Don't attempt to learn button in android/ios app)
you only need one learn sequence in node red, reuse it to learn buttons. Create multiple send sequences for each button learned once you capture the data value to put in the msg.payload (using debug window in node red)
Step 3
Create a virtual device in Homeseer
- If you are controlling an on/off device (and you can retrieve status) then use a simple on/off virtual device
- If you are controlling a Tv remote, create a virtual device with many buttons. Using Edit status/control on hs4 device page
By default a virtual device has off (0) and on (100). You can change, or add to these values.
add new buttons associated to a number for all the buttons on your remote Example: play (1), stop (2), pause (3), rewind (4) ... etc (I also made an "Idle" button. I have an event which always returns the status to idle after a button push) - If you are controlling something that dims up and down, create a virtual device with 4 buttons off (0), on(100), up (5), down (10) or something similar
Step 4 (attached image)
Set Node red to trigger based on the Virtual device status. Using the node red send button examples created in step 2, follow these steps...
1) add a node for your homeseer virtual device
2) add a "switch" node to determine what send button to run based on what the homeseer button value is
3) connect the virtual device output to the "switch" input
4) edit the "switch" to have one output for every button msg.payload.value (settings in attached image)
5) connect each switch output to the associated function node
Now when you click the homeseer button, it will trigger the node-red to broadlink button send
Step 5 (only if you want google home integration)
a) If you have a simple on/off, you can just use the virtual device in google home
b) If not a simple on/off (example: tv remote), you can create a manual event for every button. The event will press the button on the virtual device. You can call these events from google home. Best way is to create a routine so when you say "ok google, play satellite" it will run the homeseer event
With this setup the only functionality I lost is the easy ability to tell google "ok google play channel YYYY on satellite". Only way I can think to do this is create an event/routine for every channel. But that is pretty simple for me since I don't have many favorite channels
Comment