[RELEASE] Generic TV Remote Device Handler using Broadlink RM Pro and Mini with Alexa Support

@zimguy - do you mind trying this test
in Firefox or Safari go to this url

http://192.168.0.1:7474/?cmd={"api_id":1000,"command":"registered_devices"}

replace http://192.168.0.1:7474/ with whatever url shows up on RM Bridge

This should show you RM devices on you network
If you don’t see any device run this command a couple times

http://192.168.0.1:7474/?cmd={"api_id":1001,"command":"probe_devices"}

Then run the registered devices command -
If you see your RM bridge fine if not go to the learning page again and add the device manually put RM in the Type

then run the registered_devices command again,

if you see the device in the list, share the value of the type field for example the type field for RM2 is “10026” and for Mini 3 is RMMini

Once you do that I can make a change to the offline files and give them to you to try

Also take a look at these messages https://github.com/lprhodes/homebridge-broadlink-rm/issues/147 and https://github.com/lprhodes/broadlinkjs-rm/issues/3
both seem to indicate that people have found a way to make this work with homebridge - I can try to throw together a backend for ST using the homebridge code. I don’t like running mystery code home bride or tasker plugin anyway, had to do it when I thought there was no other option now that @snobordir has pointed out that there is open source code, I would rather use that

I tried those commands on my end (thanks for showing me how to send those, I was trying the other day but couldn’t figure out the syntax), and the registered_devices command just shows me the devices I did manage to get RM Bridge to accept and the type that I myself put in; it didn’t somehow identify the type for me:

{“msg”:“Execute success”,“list”:[{“type”:“RM1”,“key”:“5b2eef0592a16575c814dc64ff875254”,“password”:“987677558”,“mac”:"_______",“name”:“RMProHub”,“lock”:0,“subdevice”:0,“id”:1},{“type”:“RM2”,“key”:“5b2eef0592a16575c814dc64ff875254”,“password”:“987677558”,“mac”:"_____",“name”:“RM3Mini”,“lock”:0,“subdevice”:0,“id”:1}],“code”:0}

This was when I experimented with trying to register my RM pro as an RM1 (still gave me the “not an rm2” error).

Thanks - I will give it a go as soon as I get a chance.

I got a response from the developer of RM Bridge:

sorry I cannot support new RM Pro devices, because BroadLink does no longer provide (at least to me) their SDK for free.
BroadLink's last statement was:
"We support SDK to customers, The license charges USD3000, but can refund back if once order more than USD150,000."

Sorry about that.
Bye
Jochen

I also emailed Broadlink to ask whether they can provide an API or assistance with developing an integration of their products into SmartThings and received this response:

Dear Customer,
Thanks for your interesting of BroadLink products!
Pls kindly note the device of RM pro+ can work with S1 and the A1 on interaction function, thanks!
Best Regards,
International Customer Service Center
Hangzhou Gubei Electronics Technology Co., Ltd.

Whilst it doesn’t answer the question, it says a lot about their attitude to 3rd party integration and lack of interest in what the customers would like. They appear to be only intent on their own closed integrations with their own products.

You are right after some more experimentation, its just shows you what you put in.
The way I got the type originally for mini3 was using the tasker plugin it shows you the type.

@snobordir if getting mini3 working is what you after, try this - this is close to what I had done to get it working after discovering the type from tasker plugin - make sure you are using the latest app dont remember if the one on their website is newer than the store or not, but I am using the one from their website instead of the store. - hope this helps, With ebay stuff who know what you get, may be they sent me mini 2s and they sold them to me as mini 3s ( I got mine 3 weeks or so ago) - however the packaging seem to match what I have read about mini 3 - I had English instructions, 2s only came with instructions in Chinese

  1. Turn off the RM Bridge server, Go to the Android settings find the app, close it and delete all of its data, it will delete the data for RMBridge which at this point should only be those bad registrations

  2. Download and unzip the offline version of the app. Go in js folder and edit learn.js. Change line 80 and add type == “RMMini” || – should look like this after your change.

if (type == “RM1” || type == “RM2” || type == “RMMini” ||

  1. Save the file - reload the the learning page again and let it discover.

@zimguy based on the message from RM Bridge guy - homebridge code may be your only hope. Don’t think running those commands would much use to you. homebridge seems to be a pretty active community and iprhodes made those changes only a couple of weeks ago, it was both adding a new type and a slight protocol change – Seems like the RM Bridge guy was able to get the specs and wrote to them, and the js guys seem to be taking the reverse engineering path.

I did that and got the following response back:

{"code":0,"list":[{"id":1,"key":"5b2eef0592a16575c814dc64ff875254","lock":0,"mac":"34:EA:34:42:D5:6F","name":"RMPROPLUS-42-D5-6F","password":"987677558","subdevice":0,"type":"10026"}],"msg":"Execute success"}

The Homebridge details do look hopeful. If you are planning on porting the homebridge code for an integration to ST - that would be brilliant. I think that the Broadlink RM Pro + RM33 model I ended up with is the only available one now, unless suppliers have old stock.

I just experimented with the usual method late last night, and was able to get my mini working through RM Bridge just fine. So it’s definitely an issue with the RM Pro. Though I don’t even know which version of RM pro I have, haha.

I’d say the only possibility of RM Bridge not moving a legacy direction is if the protocols haven’t changed as much as we think and we can simply override RM Bridge’s requirement about the device type. I mean, my RM pro worked with Homebridge before the maker of the plugin was even aware new models were giving people trouble.

At any rate, yes I think we can look at the methods used for the homebridge plugin to get things working more reliably for a SmartThings integration.

Geez. Broadlink missing out on a big opportunity. Guys, let’s just start a business and make our own hub – hardware and open support for all wifi, bluetooth, zigbee, z-wave, IR, RF (300MHz, 315MHz, 390MHz, 433MHz) devices. And X10 and all that legacy stuff. We’ll be rich. And loved.

Yes they are - it’s moronic for them to go from a semi-open platform to a closed one. By the time you put it all together you can’t sell if for cheap unless you are a Chinese company based there. People love Zmote, open platform good US based support etc etc. I need 4 and I need be damned if I drop $200 for it. OTH one RM+ and 2 minis thats $40.00.

Hi @enis… Any idea if there’s a similar DTH but for air conditioners? or perhaps you’re working on one? :slight_smile:

@Hiato - you could probably use the same one for an A/C and teach it different keys. But will depend on the type of air conditioner. Window rattlers usually use simple commands. mini-spilts use much more complex encoding so you can’t just use up and down buttons for them to control temperature or discrete buttons for modes etc. I intend to work on one for a mini-split for the summer, but have been busy and haven’t gotten round to it.

Anybody having problems with this in the last couple of days? I had a device setup and working with my Broadlink RM mini 3 and a couple of days ago I started getting no response from the Smart Things Device. I went into RM Bridge and tested my codes in there and they all triggered as expected so it seems like there is some sort of disconnect between smartthings and the RM Bridge. I have tried rebooting the mini 3, the RM Bridge, and my Smartthings hub. Any thoughts on what might be happening?

About the only thing I can think of is that IP address may have changed on the RM Bridge- its pretty stupid as far as DHs go all it does is fire off the URL

I’m considering buying either RM Pro(+) or mini 3.
Am I correct in understanding that the only way to get either of these working with ST is to install the RM Bridge app on an android phone?
What if I use iphones?
Is there a way to get it to work with iphones?

Any helpful info would be appreciated.

well the story is that the latest RM Pro+ doesn’t work with RM Bridge, see earlier messages in the thread. RM Mini3 does - unless you want to do RF Bean is good enough. you do need an android device - I have it running on an amazon firestick, but iPhone is not an option.

There another path which is using the homebrigde, it is not ST compatible but gives you an entry point for automation https://github.com/lprhodes/homebridge-broadlink-rm

The homebridge guy has the latest pro+ working now. I have been thinking about porting the js code to make it work with ST but that has been on the backburner.

So, the “Black Bean” will work with RM Bridge?

I am using 2 of them - RM mini 3. You need to download and run the web code locally and make a minor tweak in one of js files. just read the thread

Hi there
I was wondering if anyone managed to use “rm bridge server”. As I don’t have an android phone I was hoping I can use this with docker on my NAS.
I found the container to DL, but no help/instructions at all.
Thanks a lot
Greg

I have RM mini 3 and I will try your steps
Thanks

Please, I want this file

Go to their website and download it