kiwi-cam / homebridge-broadlink-rm

[This fork supports TV accessories] Broadlink RM Mini and Pro plugin for homebridge: https://github.com/nfarina/homebridge
Apache License 2.0
302 stars 96 forks source link

Latest update broke RM4 Pro comms ? #724

Open tablatronix opened 1 month ago

tablatronix commented 1 month ago

installed v4.4.18 Cannot use RM4p

Rolledback to .17 and can use it again.

8/9/2024, 8:32:59 PM] [BroadlinkRM] Led Arc Lamp setSwitchState: true
[8/9/2024, 8:32:59 PM] [BroadlinkRM] [ERROR] Led Arc Lamp sendData (no device found, ensure the device is not locked)
[8/9/2024, 8:33:06 PM] [BroadlinkRM] Led Arc Lamp setSwitchState: false
[8/9/2024, 8:33:06 PM] [BroadlinkRM] [ERROR] Led Arc Lamp sendData (no device found, ensure the device is not locked)

Broadlink manager shows it just fine. Screenshot 2024-08-09 at 8 32 32 PM

What info you need me to check/log/post?

JasonGoldenDDT commented 4 weeks ago

IDK if this is related, but I'm having issues with my RM4 reporting Temperature to HomeKit. There have been a few updates to both HomePods, this plugin and Node... It's hard, as an end user of these tools to track down what could be the cause. You're told to install updates as they come through, but then you end up with a situation with multiple changes making it hard to tell what broke what.

My AC control automation, which worked 90% of the time now doesn't work at all. I ran the AC, just to troubleshoot this issue, and found the temperature wasn't getting updated on my Mac Home app. Restarting HomePods, turning off extra HomePods, refreshing app, restarting Homebridge multiple times... Nada.

HomeKit   Broadlink Temp Data
tablatronix commented 4 weeks ago

I do know there is only one broadlink firmware that still works with this, you cannot flash the RM4 or it stops working

JasonGoldenDDT commented 3 weeks ago

LMK if I should create a separate issue for this, I've been working over the last several weeks to resolve a new glitch in my HomeKit Automation using this plugin.

Given the multiple systems and their recent updates and changes it's nearly impossible as a novice user to track down the cause... so I'll try to outline my setup and share my experience.

I rent an old apartment and have a window AC that I have modified to divert air to a separate room with a Broadlink RM4 temperature sensor.

I've created two HomeKit automations to maintain a set temperature in this room over night.

Screenshot 2024-08-22 at 11 27 07 AM

For several weeks prior to updates to this plugin and iOS update 17.6, and now iOS 18 public beta 5, I had nearly 90% success rate with this automation and it's saves me nearly 50 bucks a month when it works. So I'm invested in getting it back online.

Screenshot 2024-08-21 at 10 01 11 AM

I've spent the last several weeks troubleshooting possible causes for this loss in stability. From tuning my wifi network, verify voltage stability to my homebpods and Apple TVs. and ensuring my config.json file is correct.

Since iOS 17.6 and 4.4.18 of this plug in I am no longer able to maintain a temperature with my automation. I've gone through updating to iOS 18 Public Beta on all devices in hopes it resolves.

I've completed factory resets, set "Preferred Hubs" and completely rebuilt my automations, taking hours to do.

This is from last night:

Screenshot 2024-08-22 at 11 31 41 AM

I have completed a factory reset of all HomePods, ensured each is on a stable APC battery backup, and attached them to the strong AP via specific SSID with a channel tuned using inSSIDer. I've also purchased another Apple TV 4K and set it as headless preferred hub via wired connection. I've done what is within my power to create a stable network for these devices and for the most part it's improved the system by 2-3 points, with motion trigger automation firing quicker than before.

However, this temperature trigger remains unstable. I find I have to wake my phone for it to fire which suggests, that for some reason it's not running on the Apple TV 4K preferred hub as it should.

I've confirmed all devices are on the same Apple ID and I've gone through the hassle of deleting and rebuilding ALL of my auditions using iOS 18 home shortcuts.

I really don't want to nuke the entire system and rebuilt it from scratch.

I am using Homebridge 1.8.4 and just updated Node to 20.17.0

I've tried reducing logging, extending refreshed to 1 minute vs 300 ms or 600 ms. and I'm currently testing differences between mDNS Advertisers, last night I used Ciao. I've found the node update seems to use more resources than before, and I notice resource demand differences with Ciao vs Bonjour, at least in the past 24 hours. Prior my system would idle around 3% and now it's hovering around 21%.

I'm using an iMac M4 running the public beta of Sequoia 15.0. I've made the jump in hopes the new updates address these issues.

From my observations thus far, devices are remaining connected, but they're not updating in HomeKit with Broadlink RM Temperature sensor, showing 85.64 and HomeKit showing 86. I'm working on capturing more details on timing here.

I'm also noticing, as I mentioned above that the temp triggers don't seem to be running from the Apple TV 4K I have wired as the preferred hub, set to not sleep with all other functions disabled. It should just be thinking about Homekit stuff... but it's not triggering temp based automation, waking my iPhone fires them off.

{ "name": "Broadlink Temperature", "type": "temperatureSensor", "disabled": false, "host": "xx", "temperatureUpdateFrequency": 60000, "logLevel": "warning" },

let me know what else I can share or steps I can try to verify the cause of this issue.

JasonGoldenDDT commented 2 weeks ago

I continue to monitor this, as the issue with temperature triggers has not resolved with iOS 18. Using the latest non-beta version of Homebridage and 4.4.18 of this plugin, with Homebridge mDNS Advertiser set to "Bonjour HAP" I'm seeing this message:

Screenshot 2024-08-23 at 12 37 42 PM

{ "name": "Broadlink Temperature", "type": "temperatureSensor", "disabled": false, "host": "e8:16:56:06:df:eb", "temperatureUpdateFrequency": 60000, "logLevel": "warning" },

IDK if the "characteristic" referenced in the message overlaps with the changes made in 4.4.18, or affecting how HomeKit is updated.

I monitored temperature updates to HomeKit yesterday and found it more responsive. However, I suspect Apple TV is not running temp trigger automations as it should, I've created feedback assistant tickets for apple. Fingers crossed it finds someone who cares.

tablatronix commented 2 weeks ago

Well this is specifically the IR emitter never used any other devices. I would make this a new issue

jim-liu commented 1 week ago

Updated to 4.4.18 from 4.4.17 and started having the same issue on the RM4 Pro as well. Error message is the same: no device found, ensure the device is not locked. Reverting back to 4.4.17 also resolves the issue.

JasonGoldenDDT commented 1 week ago

I rolled back to 4.4.17 last night before bed. Saw some improvement. Given all of the changes in my environment with iOS Public Beta and Homebridge it's nearly impossible to track down the cause.

I suspect the other half of the problem were changes made in iOS 17.6, can't be sure... guess I'll have to start logging software updates for a more accurate timeline.

Prior to all of this I was getting 90% accuracy on sustaining the climate in our bedroom at night. If this falls off it cost money so I'm hoping to get it back in the zone.

Screenshot 2024-09-01 at 7 20 29 AM

For context I'm renting, the apartment comes with a LG window AC with Wifi but their app and servers are not responsive enough to rely on, when this works it cycles every 5-10 minutes over night to sustain a temp around 73-74 in our small bedroom over night. The only time we use the AC. This setup can save us a minimum of 50 bucks a month.

It would be awesome if two plugins could work together to complete the feedback loop. I found last night the AC was cycling near perfectly but occasionally it would remain on after the broadlink thought it was off.

A useful feature would be a localized feedback loop that allowed this plug in to "listen" for the wifi AC singles to confirm it's actually off. I've tried using the LG Thinq Plugin to accomplish this but it sends the message to the LG server then back and sometimes that server responds slowly or not at all. LMK if this is something this community wants to explore I can provide more detail.

My last efforts used the LG Wifi functionality here https://github.com/nVuln/homebridge-lg-thinq#readme

I'm now researching energy sensing smart plugs I could use to trigger HomeKit automations to close the feedback loop and ensure the AC actually turns off. Open to suggestions here, it's hard to tell if an existing product can actually trigger HomeKit automation based on energy consumption status.

JasonGoldenDDT commented 1 week ago

Rolling back to 4.4.17 and changing Homebridge back to Bonjour Hap appear to improve things. LMK if I can provide any additional context to assist in resolution. Tonight I'm going to try Ciao again and report results.

Screenshot 2024-09-04 at 8 28 41 AM
tablatronix commented 1 week ago

I am still unsure what your issue has to do with the RM4 ? image

JasonGoldenDDT commented 1 week ago

This issue is also affecting RM Mini 4. Since the update automation has been affected. Rolling back resolved it. Can open a separate issue if that helps, seems related.

tablatronix commented 1 week ago

Might want to reduce it down to a simple test, I opened this because I cannot even talk to the device, so something in the core communications broke. Cant find the device at all.

JasonGoldenDDT commented 1 week ago

Got it.  I’ll create a new issue.  Assumed it was related to the same change in .18Sent from my iPhoneOn Sep 4, 2024, at 4:38 PM, Shawn A @.***> wrote: Might want to reduce it down to a simple test, I opened this because I cannot even talk to the device, so something in the core communications broke. Cant find the device at all.

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>