Broadlink IR/RF remotes integration (RM3 Mini, RM Pro, RM4 Mini/Pro)

I have been working on getting the Broadlink up and running for months. I've read everything I can find on the subject. I have a Electric Fireplace I want to turn on and off. After loading Tomw files I now have the Fireplace turning on/off when I test the driver. So now I need to configure a switch to toggle the event. I can't seem to get figured out. Thanks in advance for any help you can provide.

There are probably other ways to do it too, but I created a virtual button (or switch, depending on need) for each Broadlink command I wanted to use.

You can then set up what that button/switch does by building rules for it using setup logic in the manner tomw describes a few posts above.

Then you can use the virtual button/switch like any other device in whatever other things (rules, dashboards etc).

1 Like

@tomw, I’ve just purchased an RM4 Mini and when trying to connect to it, I get “send failed” and the following in the logs:

In the Broadlink app, I disabled “Lock device” and I can confirm that the IP address I’m entering is accurate. I wonder what I’m missing - any ideas?

1 Like

Hey @Sebastien, that is a curious failure. I'll have to add some more logging to see exactly where it is breaking down.

Will you please PM me the device page attributes and states, plus anything else that precedes this in the logs if you hit Initialize again? That will give some clues on where to start with debugging.


what does this mean activity : device is locked in Broadlink app is my hub Compatible with the driver

Go to the BL app -- tap on your BL device to open its page in the app.

Not sure about Android, but in iOS, there's a three-dot ( . . . ) icon in the upper right corner -- click that, and select "Property" in that menu.

Near the bottom of that Properties page, there's a "Lock device" option -- make sure that option is DEselected (i.e., off / not locked).


Yes, your RM4 Pro is the very same one that I use.

@hydro311 already answered correctly how to unlock the device in the Broadlink app. :slight_smile:

got it thanks

Correct me if I'm wrong but with this driver am I able to control the commands that are saved inside the BL App?

No, the commands from the Broadlink app aren't accessible.

You will have to re-learn them or import them from some other source, such as a pronto codes repository.

1 Like

I'm a newcomer. I want to ask how to sendSavedCode with this virtual device. What I should I insert in the push section?

Are you talking about in dashboard or in Button Controller/Rule Machine?

1 Like

You can use either command sendSavedCode or push. In both cases, you just pass the name of the saved code as the parameter to the command.

If you use sendSavedCode for an IR code, you can pass a second parameter to indicate how many times the code should be sent.

1 Like

Hi everybody.

I have an issue with learning RF.
Every time I try to learn RF, a few seconds after I click button on my remote control, I'm receiving error in Hubitat:

javax.crypto.IllegalBlockSizeException: Input length not multiple of 16 bytes on line 1033 (method readbackResponse)
parseRF resp = 1B00000000000000000000000000
sweep successful: freq = 433910
parseRF resp = 1A00000001F69E06000000000000

I saw another user had the same issue, but I do not know how he fixed it.
Could you please help me to figure out what is wrong?

Thank you !

I have not been able to reproduce that error, but another user proposed a code fix to address it.

I will send you a private message with the modified code so that you can test to see whether it fixes your issue.

I really appreciate being able to bring Broadlink into my HA setup.

Can a flag be placed in the code so that the logs indicate the alias instead of the code sent to the device?

If no longer being updated, I will change my own to do this, but I don't want to fork another branch.

So far I am controlling a remote controlled lamp and two Mini Splits.

Sure, I can add this. Just making sure I understand - you want the sendSavedCode command to emit a debug log of the name of the code that is being sent?

I just posted version 0.9.8, which has a fix for the IllegalBlockSizeException reported here.

Hopefully this fixes the issues that @user2764, @user996, and possibly others were seeing.

(@user3200 still has an issue with their RF device that I'm hoping we can debug and get working.)


The updated version has been working like a charm for me. Spent the bulk of yesterday programming some automations to work with the device my RM4 Pro controls now that @tomw's driver got it functional with my Hub.

1 Like

@Tomw 11/29/22 9:47pm cst Error Occurred During Installation

An error occurred while installing the package: Failed to install app Please notify the package developer..

Please note this was shortly after the Platform Version update tonight, I can download it directly however.