[WITHDRAWN - Use the new Broadlink integration by @tomw] NATIVE Broadlink RM/RM Pro/RM Mini/SP driver

Yeah I couldn't get it working either.

Tried the RM Bridge - Code Learning function, thinking it may do a better rendition with my cable box IR code. Used the manual method to add my RM3, then attempted "Learn". However, it always fails with message " Error sending code: rm2 check data failed".

Anyone have the secret recipe for making this work with an RM3?

I have all,sorts of network firewalls and an,RM Pro which I don't think is compatible. I'm happy with using IFTTT for now

Anyone tried simw of these alternate methods for extracting codes?

When I setup my broadlink in node red I used a rooted android device and basically copied the files over.

Using two file explorers, I'm unable to locate the IR Code files in the IHC app's data on my non-rooted Android device, and much of what I looked at appeared to be encrypted.

I do believe the root was required. The file needed is located in a directory root was needed to access.

Apologies just throwing stuff out there to see if it sticks. I've been rooting for you!

1 Like

According to documentation for the Broadlink integration for Node Red, you have to use the Broadlink e-control app to be able to find the codes on your phone. The author says that using the new app won't work because codes are in cloud if I am reading correctly. I can't confirm accuracy of this.

Answering my own question.

I got it the RM Bridge working by doing everything on my phone device, previously used my Win 10 computer for the browser bridge page. To use an RM3 device, manually enter the device Mac address and name it an RM2 when learning.

As a control I first tried the TV power command and it worked. Then it successfully learned the Cable Box's power on/off code, but the cable box failed to respond during testing. Same issue I have doing this with the Broadlink app. Has to be something odd with the IR code, or perhaps it uses multiple IR commands and learn stops at the end of the first command.

tag: @Rxich

Updated the MiniSplit app, now version V0.0.8. with many improvements and changes.

The most comfortable cooling setting so far is:

  1. Thermostat Hysteresis: 0.1

  2. Set the MiniSplit app's "extended cooling logic" setting ON, maintaining the temperature within a few tenths of a degree +- of the cool setting, using Off, Fan, Dry, then Cool as needed.

  3. YMMV

For those not wanting to see their device locked into cloud-only mode, this may be worthy of consideration. Don't know if it's been mentioned already but putting it out there just in case:
https://sourceforge.net/projects/broadlink-manager/files/Windows%207/Version%201.0.0.1/

The great thing is that it doesn't require you to install the permission invasive Broadlink apps (eControl or IHC) !!

Just reset your device via the reset pin until the blue light flashes quickly.
Then perform the same action again until the blue light flashes more slowly, you will now see a Wifi hotspot pop up named "BroadlinkProv"
Then connect a windows machine where you can run the Broadlink Manager app on to connect with the "BroadlinkProv" access point that has been initiated by your device.
You are now able to connect via direct-Wifi to your Broadlink device and use the Windows app provided via the link to set up the SSID for your device and run it truly local.

My RM2 Pro was cloud-locked (even though I had initially used IHC to set it up) and resetting it and re-initialising it this way did the trick for me.
Don't know if it works with RM4 though...

1 Like

The E-Control and IHC apps do not cloud lock, however the newer Broadlink Universal app will cloud lock. I speak from experience. Using the Broadlink Universal app during my IR learning confusion phase, I cloud locked an RM3 mini that would not reset. It became a paperweight, much too small to brick, and was returned.

I do know that the device will not show the "BroadlinkProv" wifi hotspot after initialization, however that is different than being cloud locked by the Broadlink app when the device cannot be also be locally accessed.

That is very cool. I'll share my experience with a brand new, out of box RM Mini3
I was able to discover it with the app you linked, the device got an IP address. I went into my router and set a static IP. The broadlink manager app could see the device, but on HE the discovery app could never find it. I tried adding the rmmini3 as a virtual device, but it would never initialize, even though I used the device's correct IP address.

Logs below

dev:546
2020-07-08 02:45:27.695 pm warnError occured with UDP message: SocketTimeoutException: Receive timed out

dev:5462020-07-08 02:45:21.572 pm warnError occured with UDP message: SocketTimeoutException: Receive timed out

dev:5462020-07-08 02:45:17.652 pm errorBlack Bean - (initialize) ERROR - Device has not been configured

dev:5462020-07-08 02:45:11.530 pm errorBlack Bean - (initialize) ERROR - Device has not been configured

dev:5462020-07-08 02:45:10.310 pm warnError occured with UDP message: SocketTimeoutException: Receive timed out

dev:5462020-07-08 02:45:00.250 pm errorBlack Bean - (initialize) ERROR - Device has not been configured

dev:5462020-07-08 02:44:39.318 pm errorgroovy.lang.MissingMethodException: No signature of method: java.util.ArrayList.and() is applicable for argument types: (java.lang.Integer) values: [255] Possible solutions: any(), add(java.lang.Object), add(java.lang.Object), add(int, java.lang.Object), add(java.lang.Object), add(int, java.lang.Object) on line 461 (getStatus)

dev:5462020-07-08 02:42:52.533 pm warnError occured with UDP message: SocketTimeoutException: Receive timed out

dev:5462020-07-08 02:42:42.481 pm errorBlack Bean - (initialize) ERROR - Device has not been configured

dev:5462020-07-08 02:42:38.758 pm warnError occured with UDP message: SocketTimeoutException: Receive timed out

dev:5462020-07-08 02:42:28.710 pm errorBlack Bean - (initialize) ERROR - Device has not been configured

So I decided to add the mini3 via the econtrol app, after resetting the mini3. The econtrol app configured the mini(even tho it listed it as unknown device), and then I was able to use the HE app to discover the device.
So it appears there is some activation happening in the econtrol app, that is required for the HE app to properly discover the device.

Another interesting piece of info. The HE app reports my other RMPro2(very old, like 4 years old) is "cloud locked" however in works perfect in HE with the HE Broadlink app

It's working as expected. As you discovered the Broadlink IR device must be found and initialized by Broadlink's E-Control or IHC apps prior to connecting with the HE Broadlink app. However, you should be able to access it directly, without Broadlink app setup using the phone app posted by @Silvermane

Regarding the RMPro2 working while being cloud locked: don't mess with success!

Hey Arn, I was thinking about your issue with the minisplit commands. Please do try the app silermane linked. It runs under windows and fully exposes the codes as captured by the broadlink and may help you.
Below are the codes from my wall AC unit for the "power" command

Appreciate your suggestion, however it was the Cable Box refusing to respond to the IR command.

It's now working 100% by moving the RM Mini3 a few inches closer to the edge of the table it sits on. The Cable box is across the room, and physically lower than the IR emitting top of the RM Mini3. The table top blocked the light signal. :crazy_face: :stuck_out_tongue_winking_eye:

Also moved all my IR processing off RM into two personal Groovy apps, one for the TV, Cable and Sound System, the other for the five Mini-Splits. So much easier to maintain, and test.

1 Like

Yes, I noticed that comment above. My rmmini3 is also very weak, has to be real close to work, but for 12.00 USD I can't really complain.

1 Like

I now have 5 RM Mini3s on my system, and the only target device that seems to have an issue is my Cable Box, which can also be a bit picky about responding to its factory remote.

The TV Audio, and Cable Box use simple power toggle commands, but the Power On commands for my Fujitsu Mini splits carry a lot of information, including: Power On, Mode, Temperature, Fan Speed, Louver Swing, and perhaps more. So I have a number of commands for "Cool" with increasing temperatures, Fan, Dry, Heat with various temperatures, and Off, for use with my personal Mini-Split app that works with an average temperature Hubitat virtual thermostat. To learn a mini-split Off command, press Start/Stop while the remote shows it's On.

Currently, my only IR issue is an occasional UDP error message, causing an IR command failure. It's occurred on all the Mini's no matter how close or far from the router. Anyone know how to fix or diagnose this?
warn Error occured with UDP message: SocketTimeoutException: Receive timed out

Here's a guess. Someone made a google home helper app, that keeps the connection more stable with the Google minis. Possibly we need an app to keep the rmmini up & listening.
How to do that, is way beyond my skill level

Here's my guess:

Are you sending multiple commands in quick succession? Try adding a short delay between them, if that is feasible. A total shot in the dark is that the Broadlink device is dropping commands if they come in too fast. No action and no reply to the request looks like an issue on the Broadlink side to me.

The error generally occurs sending a single command to the Mini-Splits, where the same command is issued to 5 IR devices using

	if (irCode != state?.priorIrCode)
		{
		globalIrBlasters.SendStoredCode(irCode)

rarely if ever occurs with the TV commands

		if (evt.value == 'on')
			{
			globalIrBlaster.SendStoredCode('Cable On')
			globalIrBlaster.SendStoredCode('tvPower')
			pauseExecution(1000)						//Wait for Tv to get partially on, avoiding audio pop sound
			globalIrBlaster.SendStoredCode('Audio power')
			}
		else
			{
			globalIrBlaster.SendStoredCode('Audio power')
			globalIrBlaster.SendStoredCode('tvPower')
			globalIrBlaster.SendStoredCode('Cable On')
			}