Broadlink RM Mini 3: Failed to connect to device

Hi Everyone,

I’m trying to set up my Broadlink RM Mini 3 and have run into an issue. Here’s my config:

switch:
  - platform: broadlink
    host: 10.0.2.140
    mac: 'C8:F7:42:83:7D:70'
    type: rm_mini
    timeout: 15

The IP address and MAC are definitely correct, but when I call the broadlink.learn service with the data {"host": "10.0.2.140"} nothing happens except for the following message being printed in the log:

2019-07-30 22:18:54 ERROR (MainThread) [homeassistant.components.broadlink] Failed to connect to device

Looking at the source code of the component, this message is printed when the auth call fails, but I have no idea why this would be.

I’ve already tried changing the type and timeout variables in the config, but nothing seems to make any difference. The device works fine via the IHC app (in so far as that app works fine for anything!).

Anyone got any idea what’s going on?

I’m not a professional, but I would write the order like this …

{
"host": "10.0.2.140"
}


Does your rm mini have a static IP address?

I have given your JSON a try, but I get the same behavior. JSON is not whitespace sensitive (unlike YAML), so it should work with either and both are valid according to the built in validation in HASS.

Yes, the RM mini has a static DHCP lease assigned by my firewall/router.

I have the same problem after updating to 0.96.5 yesterday. On 0.94.x broadlink was working fine and today I noticed that it doesn’t work at all. Sending commands via IHC works fine though.

It seems not to be working with the upstream python-broadlink library either via the broadlink_cli tool (learning times out with no data received).

There have been some updates to the library in 0.95:


So I’m guessing one of these broke it.

OK, so I’ve checked out the previous version of the python-broadlink library (0.10) and the CLI tools work there for both learning and sending commands, which wasn’t happening on version 0.11.1.

So this definitely looks like a bug in the new version. I’ll post a bug report and keep investigating further.

EDIT: Bug report at: https://github.com/mjg59/python-broadlink/issues/274

1 Like

How does the process work in regards to this fix making its way into hass.io?

It looks like my fix doesn’t work in HASS for some reason, I’ve posted a bug on HASS since I’m stumped for now:

In the meantime, I’ve implemented a workaround for this until it get’s fixed in HASS, which I’ve written up on my blog:

https://webworxshop.com/automating-my-dumb-audio-system/

I’ll update further when there is further progress on fixing the HASS issue.

1 Like

Hello,

Im currently on 0.97.1 and have had no recent issues with my Broadlink. Im currently only using the rm_pro, but my code is so;

switch:
  - platform: broadlink
    host: 192.168.1.xxx
    mac: '34:EA:34:43:34:xx'
    type: rm2_pro_plus
    switches:
###### Master Bedroom Blind Remote ######    
     master_bedroom_broadlink_blind:
        friendly_name: "Blinds"
        command_on: 'sgY0ADAPESwRLBEsMQ8xDxEsMQ4RLREsESwxDzEPMQ8xDxEsESwSLREtES0wDxIsESwRLBEAAcsAAAAA'
        command_off: 'sgo0ABEtEQAByzAPES0RLREtMA8wDxEtLxARLREsESwwDzAQMA8wDxAtEC0RLREtES0QLTAPEC0AAAAA'

Everything looks exactly the same but for the fact I have a switch set up and am not using the timeout field. Have you tried taking this field out and putting in a dummy switch??

I have just tried calling the broadlink.learn service, with the exact syntax as listed by @VolkerKa and I got a notification of a new switch as I should do

Hi Craig,

That’s interesting, I just updated my config to look like yours and tried it again. I get the exact same problem.

Is your broadlink device the same as mine (the RM Mini 3)? If so, I’m wondering if this is an issue with newer firmware on the device.

Thanks for your reply.

Hi Rob,

That config was for my RM Pro Plus. However, I have plugged my RM Mini 3 in this morning and will try it out this evening to see what happens with that. Will update you later.

Cheers

I have the same problem. It works on the commandline with

# ./broadlink_cli --device "0x2737 192.168.3.50 15ce31a7fd98" --learn

But I can’t seem to translate that to settings that work in Home Assistant. I can use broadlink.send in my scripts, so I’m not overly worried, but broadlink.learn` still eludes.