Home Automation
Using Home Assistant and Broadlink RM Pro+ to automate and control the window shades.
Using Home Assistant and Broadlink RM Pro+ to automate and control the window shades.
Repetitive tasks can be a drag - so why not automate them. Here we'll look at a way to automate a motorized window covers that came with a 'dumb' remote control.
😎
If you enjoy seeing older appliances and devices coming up in the world - read on to see how I upgraded my basic motorized window shades to be automatically opened and closed based on daylight.
💡
Here we're going to take a look at a system I built to open and close the blinds in my home based on daylight. Specifically, we'll see how I was able to automate a manually remote controlled motorized roller blind.
The remote control that the blinds came with uses Radio Frequency (RF) technology to send a command to the blinds to open or close. If you don't mind remembering to open and close the blinds twice a day, this is not a problem. For my purposes, that wasn't good enough. I wanted the blinds to open and close on their own whether I'm in the room or remember to do it or not.
I already had the blinds installed and functioning properly - next I needed to capture the remote control signal for the up and down commands so that I could control it automatically through Home Assistant.
If you are curious how I did this, continue reading to follow my journey.
Here I'm using a device that is meant to replace your remote controls. It operates on radio frequency (RF) at 433mHz which is exactly what we need to replace the remote that came with our blinds.
As an added bonus, it is also capable of sending infra-red (IR) signals which is what many TVs used before they became smart. Also some heat pumps are controllable through IR. We're not going to use the IR capability in this case but its nice to know we could if we wanted to.
This device is meant to be used with a companion app that Broadlink provides but we're only going to use the app to perform the initial connection. Once the device is on our network, we'll be using Home Assistant (HA) instead of the Broadlink app.
I was lucky I had all the necessary materials on hand from previous projects:
Home Assistant running on the local network
Home Assistant companion app running on iOS or Android
Broadlink RM Pro+
Remote Controlled Roller Blinds
USB cable
To start with, I have Home Assistant (HA) already set up on the local network. Next I proceeded through the process to add the Broadlink integration to HA and then I added the RM Pro+ to the local network using the Broadlink app. I also reserved the IP address for the RM Pro+ through my router admin console and noted the MAC address while I was in there.
We don't need the Broadlink app from here on - everything is going to be controlled through HA!
🥳
The remote controlled roller blinds I'm using come with a remote control that sends a 433mhz radio frequency (RF) signal when the user presses a button on the remote. This signal is easy to capture with a software defined radio or in this case our Broadlink RM Pro+ which will allow us to record the signal that the remote is sending.
I found a helpful video showing the process of capturing and using a remote control signal with a similar Broadlink device.
Once I had the RF codes saved in /homeassistant/switch.yaml, I was then able to create a template cover.
You may be asking - why create a template cover?
Great Question! It's so that HA recognizes this entity as a window cover entity instead of a general entity type. That will be useful later when we start to integrate covers of different types into groups. It will also give us some useful controls like open / close / stop that are built into HA - we'll get to that later.
Here's what the template cover in my configuration.yaml entry looks like:
cover:
- platform: template
covers:
rollease_cover:
device_class: shade
friendly_name: 'Blinds'
open_cover:
service: switch.turn_on
entity_id: switch.blinds_activate
close_cover:
service: switch.turn_off
entity_id: switch.blinds_activate
stop_cover:
service: switch.turn_on
entity_id: switch.blinds_stop
Now that I had the blinds set up, the next step is to set up an automation in Home Assistant (HA) to make the blinds automatically open and close based on the daylight.
Navigate to the Automations menu in HA and click the button to Create an automation / Create new Automation.
In the New automation menu click on Add trigger and in the text box Search triggers type Sun.
Continue through the process of creating an automation for sunrise. Save.
📽️🍿
Since my blinds are in the same room as the entertainment system, I noticed it was a bit of a disruption if anyone is watching a show while the blinds operate. To help improve the user experience for anyone watching a show, I politely pause the media device before starting the blinds. Then after sufficient time has passed and the blinds are done (45 seconds in this case) the media player automatically starts to play again.
Make a duplicate of the first automation - only this time be sure to set the when criteria to sunset.
To load the new automations - navigate to the Developer Tools menu and click the option to reload Automations.
Optionally, we can create a control on the HA dashboard so that we can manually operate the blinds if needed. This way we can put the remote in storage and just use HA to control things going forward.
🎉
We just added a modern feature to a trusty home appliance and extended it's useful life!
This project was inspired by the amazing members of the Seattle DIY IoT Meetup - which was a meetup I co-founded in 2018. Shout out to all who helped make that happen!
👏
Using Home Assistant with ZigBee to automate and control window shades.