NorthernMan54 / node-red-contrib-homebridge-automation

Homebridge and Node-RED Integration
Apache License 2.0
105 stars 18 forks source link

HB Status no longer receiving device info #82

Closed c-chaskel closed 3 years ago

c-chaskel commented 3 years ago

Hi,

Correction: HB Event not HB Update.

The "HB Event" node is no longer receiving updates when the device status changes. Debug window stays blank through all device controls.

This seems to have started a few days ago - so possibly related to one of the recent homebridge updates?

Regards

Clemens

NorthernMan54 commented 3 years ago

What have you recently changed ?

On Mar 18, 2021, at 4:35 PM, Clemens @.***> wrote:

 Hi,

The "HB Status" node is no longer receiving updates when the device status changes. Debug window stays blank through all device controls.

This seems to have started a few days ago - so possibly related to one of the recent homebridge updates?

Regards

Clemens

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.

NorthernMan54 commented 3 years ago

Am wondering if the binding between homebridge and node-red went out of wack with the upgrade.

I would suggest trying this

Update homebridge

Restart node-red, then in the broken ub-status select the device again. This will reset the pointers.

Restarting node-red flushes the pointer cache

On Mar 19, 2021, at 4:29 AM, cdc31 @.***> wrote:

 What have you recently changed ? …

Updated homebridge, otherwise nothing!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.

cdc31 commented 3 years ago

Am wondering if the binding between homebridge and node-red went out of wack with the upgrade. I would suggest trying this Update homebridge Restart node-red, then in the broken ub-status select the device again. This will reset the pointers. Restarting node-red flushes the pointer cache

No luck. I set up another Pi with NodeRed but it has the same issue. All works except for HB Event. :(

so I assume the error is on the homebridge side?

NorthernMan54 commented 3 years ago

Hummm

could you extract an accessory dump from the homebridge instance with the wacky device?

details are here

https://github.com/NorthernMan54/homebridge-alexa#homebridge-accessory-dump

cdc31 commented 3 years ago

Sure! Right now it's running as a child bridge, but I also tried other devices that were not in child bridges with the same result.

`pi@homebridge:~ $ curl -X PUT http://127.0.0.1:51742/accessories --header "Content-Type:Application/json" --header "authorization: 835-20-343"

{"accessories":[{"aid":1,"services":[{"type":"3E","iid":1,"characteristics":[{"type":"14","iid":2,"perms":["pw"],"description":"Identify","format":"bool"},{"type":"20","iid":3,"value":"homebridge.io","perms":["pr"],"description":"Manufacturer","format":"string","maxLen":64},{"type":"21","iid":4,"value":"homebridge","perms":["pr"],"description":"Model","format":"string","maxLen":64},{"type":"23","iid":5,"value":"Security System F9CB","perms":["pr"],"description":"Name","format":"string","maxLen":64},{"type":"30","iid":6,"value":"0E:58:AD:64:04:EA","perms":["pr"],"description":"Serial Number","format":"string","maxLen":64},{"type":"52","iid":7,"value":"1.3.4","perms":["pr"],"description":"Firmware Revision","format":"string"}]},{"type":"A2","iid":2000000008,"characteristics":[{"type":"37","iid":9,"value":"1.1.0","perms":["pr"],"description":"Version","format":"string","maxLen":64}]}]},{"aid":2,"services":[{"type":"3E","iid":1,"characteristics":[{"type":"14","iid":2,"perms":["pw"],"description":"Identify","format":"bool"},{"type":"20","iid":3,"value":"MiguelRipoll23","perms":["pr"],"description":"Manufacturer","format":"string","maxLen":64},{"type":"21","iid":4,"value":"DIY","perms":["pr"],"description":"Model","format":"string","maxLen":64},{"type":"23","iid":5,"value":"Security System","perms":["pr"],"description":"Name","format":"string","maxLen":64},{"type":"30","iid":6,"value":"S3CUR1TYSYST3M","perms":["pr"],"description":"Serial Number","format":"string","maxLen":64},{"type":"52","iid":7,"value":"3.9.0","perms":["pr"],"description":"Firmware Revision","format":"string"}]},{"type":"7E","iid":8,"characteristics":[{"type":"23","iid":9,"value":"Security System","perms":["pr"],"description":"Name","format":"string","maxLen":64},{"type":"66","iid":10,"value":0,"perms":["ev","pr"],"description":"Security System Current State","format":"uint8","minValue":0,"maxValue":4,"minStep":1,"valid-values":[0,1,2,3,4]},{"type":"67","iid":11,"value":0,"perms":["ev","pr","pw"],"description":"Security System Target State","format":"uint8","minValue":0,"maxValue":3,"minStep":1,"valid-values":[0,1,2,3]},{"type":"00003005-0000-1000-8000-135D67EC4377","iid":12,"value":0,"perms":["pr","ev"],"description":"Security System Arming","format":"bool"},{"type":"00003006-0000-1000-8000-135D67EC4377","iid":13,"value":0,"perms":["pr","pw","ev"],"description":"Security System Siren","format":"bool"}]},{"type":"85","iid":14,"characteristics":[{"type":"23","iid":15,"value":"Siren Triggered","perms":["pr"],"description":"Name","format":"string","maxLen":64},{"type":"22","iid":16,"value":0,"perms":["ev","pr"],"description":"Motion Detected","format":"bool"}]}]}]}

Thanks!

NorthernMan54 commented 3 years ago

This is the internal representation of your devices

[
    {
        "homebridge": "parseTest",
        "host": "127.0.0.1",
        "port": 51826,
        "id": "CC:22:3D:E3:CE:30",
        "manufacturer": "MiguelRipoll23",
        "aid": 2,
        "type": "0000007E",
        "name": "Security System",
        "service": "Security System",
        "fullName": "Security System - Security System",
        "sortName": "Security System:Security System",
        "uniqueId": "parseTestCC:22:3D:E3:CE:30MiguelRipoll23Security System0000007E",
        "descriptions": "SecuritySystemCurrentState, SecuritySystemTargetState, SecuritySystemArming, SecuritySystemSiren",
        "characteristics": {
            "2.10": {
                "characteristic": "SecuritySystemCurrentState",
                "iid": 10
            },
            "2.11": {
                "characteristic": "SecuritySystemTargetState",
                "iid": 11
            },
            "2.12": {
                "characteristic": "SecuritySystemArming",
                "iid": 12
            },
            "2.13": {
                "characteristic": "SecuritySystemSiren",
                "iid": 13
            }
        },
        "getCharacteristics": "2.10,2.11,2.12,2.13",
        "eventRegisters": [
            {
                "aid": 2,
                "iid": 10,
                "ev": true
            },
            {
                "aid": 2,
                "iid": 11,
                "ev": true
            },
            {
                "aid": 2,
                "iid": 12,
                "ev": true
            },
            {
                "aid": 2,
                "iid": 13,
                "ev": true
            }
        ]
    },
    {
        "homebridge": "parseTest",
        "host": "127.0.0.1",
        "port": 51826,
        "id": "CC:22:3D:E3:CE:30",
        "manufacturer": "MiguelRipoll23",
        "aid": 2,
        "type": "00000085",
        "name": "Siren Triggered",
        "service": "Motion Sensor",
        "fullName": "Siren Triggered - Motion Sensor",
        "sortName": "Siren Triggered:Motion Sensor",
        "uniqueId": "parseTestCC:22:3D:E3:CE:30MiguelRipoll23Siren Triggered00000085",
        "descriptions": "MotionDetected",
        "characteristics": {
            "2.16": {
                "characteristic": "MotionDetected",
                "iid": 16
            }
        },
        "getCharacteristics": "2.16",
        "eventRegisters": [
            {
                "aid": 2,
                "iid": 16,
                "ev": true
            }
        ]
    }
]
NorthernMan54 commented 3 years ago

My initial suspicion is that the 'uniqueId' was not generating as unique with your setup, but that is working ok

Can you share a log from the start of node-red and recreate the issue?

It should look like this

./node-red 
23 Mar 13:55:40 - [info] 

Welcome to Node-RED
===================

23 Mar 13:55:40 - [info] Node-RED version: v1.2.9
23 Mar 13:55:40 - [info] Node.js  version: v14.16.0
23 Mar 13:55:40 - [info] Darwin 18.7.0 x64 LE
23 Mar 13:55:41 - [info] Loading palette nodes
23 Mar 13:55:43 - [info] Dashboard version 2.28.0 started at /ui
23 Mar 13:55:43 - [info] Server now running at http://127.0.0.1:1880/
23 Mar 13:55:43 - [warn] 

---------------------------------------------------------------------
Your flow credentials file is encrypted using a system-generated key.

If the system-generated key is lost for any reason, your credentials
file will not be recoverable, you will have to delete it and re-enter
your credentials.

You should set your own key using the 'credentialSecret' option in
your settings file. Node-RED will then re-encrypt your credentials
file using your chosen key the next time you deploy a change.
---------------------------------------------------------------------

23 Mar 13:55:43 - [info] Starting flows
  hapNodeJSClient Starting Homebridge instance discovery +0ms
  hapNodeRed hbConf.register Fan Two - Fan +0ms
  hapNodeRed Register hb-control -> Fan Two - Fan +0ms
  hapNodeRed hbConf.register Master fan - Fan +1ms
  hapNodeRed Register hb-control -> Master fan - Fan +0ms
  hapNodeRed hbConf.register Living Room - Thermostat +30ms
  hapNodeRed Register hb-control -> Living Room - Thermostat +0ms
  hapNodeRed hbConf.register Bunkie - Thermostat +6ms
  hapNodeRed Register hb-control -> Bunkie - Thermostat +0ms
  hapNodeRed hbConf.register Shower - Thermostat +4ms
  hapNodeRed Register hb-control -> Shower - Thermostat +0ms
  hapNodeRed hbConf.register Bathroom - Thermostat +0ms
  hapNodeRed Register hb-control -> Bathroom - Thermostat +0ms
23 Mar 13:55:43 - [info] Started flows
  hapNodeJSClient HAP Device discovered Family Room TV CBC5 +252ms
  hapNodeJSClient HAP Device discovered Leonard DD97 +6ms
  hapNodeJSClient HAP Device discovered HoneywellHome 73CE +1ms
  hapNodeJSClient HAP Device discovered Front Porch 6EAB +2ms
  hapNodeJSClient HAP Device discovered Front F9B7 +1ms
  hapNodeJSClient HAP Device discovered Driveway DDE6 +1ms
  hapNodeJSClient HAP Device discovered Sheldon-Camera DAFC +0ms
  hapNodeJSClient HAP Device discovered Leonard-Amazon 035D +1ms
  hapNodeJSClient HAP Device discovered Leonard-Dev E1BD +1ms
  hapNodeJSClient HAP Device discovered Howard-Hue 6E78 +0ms
  hapNodeJSClient HAP Device discovered Howard-old 595E +1ms
  hapNodeJSClient HAP Device discovered Apple TV Platform 28C4 +0ms
  hapNodeJSClient HAP Device discovered WarmUP 57D8 +1ms
  hapNodeJSClient HAP Device discovered homebridge-hampton-bay 05D0 +0ms
  hapNodeJSClient Homebridge instance discovered homebridge with 2 accessories +36ms
  hapNodeJSClient Homebridge instance discovered Leonard-Amazon with 8 accessories +3ms
  hapNodeJSClient Homebridge instance discovered homebridge with 2 accessories +1ms
  hapNodeJSClient Homebridge instance discovered homebridge with 2 accessories +1ms
  hapNodeJSClient Homebridge instance discovered Wyze Cam V2 Doorbell with 1 accessories +1ms
  hapNodeJSClient Homebridge instance discovered homebridge with 4 accessories +2ms
  hapNodeJSClient Homebridge instance discovered Howard-old with 4 accessories +1ms
  hapNodeJSClient Homebridge instance discovered Wyze Cam V2 with 1 accessories +10ms
  hapNodeJSClient Homebridge instance discovered Wyze Cam V2 with 1 accessories +1ms
  hapNodeJSClient Homebridge instance discovered Sheldon-Camera with 1 accessories +0ms
  hapNodeJSClient Homebridge instance discovered Howard-Hue with 12 accessories +2ms
  hapNodeJSClient Homebridge instance discovered homebridge with 1 accessories +25ms
  hapNodeJSClient Homebridge instance discovered Unknown with 1 accessories +8ms
  hapNodeJSClient Homebridge instance discovered Leonard-Dev with 36 accessories +2ms
  hapNodeJSClient HAP Device discovered Alexa 0A57 +196ms
  hapNodeJSClient HAP Device discovered Basement EF36 +2ms
  hapNodeJSClient Homebridge instance discovered homebridge with 2 accessories +19ms
  hapNodeJSClient Homebridge instance discovered homebridge with 2 accessories +1ms
23 Mar 13:55:44 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:44 - [error] [hb-control:Master fan] Homebridge not initialized
  hapNodeJSClient HAP Device discovered Leonard-NodeRed-1C5E +593ms
  hapNodeJSClient Homebridge instance discovered Leonard-NodeRed with 8 accessories +34ms
23 Mar 13:55:45 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:45 - [error] [hb-control:Master fan] Homebridge not initialized
  hapNodeJSClient HAP Device discovered Sheldon-NodeRed-1033 +1s
  hapNodeJSClient Homebridge instance discovered Sheldon-NodeRed with 4 accessories +35ms
23 Mar 13:55:46 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:46 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:47 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:47 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:48 - [info] [mqtt-broker:mqtt.local] Connected to broker: mqtt://mqtt.local:1883
23 Mar 13:55:48 - [error] [mqtt in:9e69d80c.bf69a] Failed to parse JSON string
23 Mar 13:55:48 - [error] [mqtt in:9e69d80c.bf69a] Failed to parse JSON string
23 Mar 13:55:48 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:48 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:48 - [info] [mqtt-broker:b0baab98.b714a] Connected to broker: mqtt://mqtt.local:1883
23 Mar 13:55:48 - [info] [function:39f62029.b0f4c] SyntaxError: Unexpected token r in JSON at position 1
23 Mar 13:55:49 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:49 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:50 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:50 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:51 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:51 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:52 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:52 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:53 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:53 - [error] [hb-control:Master fan] Homebridge not initialized
23 Mar 13:55:54 - [error] [hb-control:Fan Two] Homebridge not initialized
23 Mar 13:55:54 - [error] [hb-control:Master fan] Homebridge not initialized
  hapNodeJSClient Ready +18s
  hapNodeRed Discovered 158 new evDevices +20s
WARNING: Duplicate device name YouTube 3 - Input Source
WARNING: Duplicate device name YouTube 3 - Input Source
ERROR: Parsing failed, duplicate uniqueID. YouTube 3 - Input Source
ERROR: Parsing failed, duplicate uniqueID. YouTube 3 - Input Source
  hapNodeRed Discovered 104 new ctDevices +5ms
  hapNodeRed _register homebridgeCC:22:3D:E3:CF:47hampton-bayFan Two00000040 +24ms
  hapNodeRed _register homebridgeBC:22:3D:E3:CF:32rf-fan-remoteMaster fan00000040 +5ms
  hapNodeRed _register homebridgeCC:22:3D:E3:CF:39connexLiving Room0000004A +1ms
  hapNodeRed _register homebridgeCC:22:3D:E3:CF:39connexBunkie0000004A +2ms
  hapNodeRed _register homebridgeCC:22:3D:E3:CF:39connexShower0000004A +6ms
  hapNodeRed _register homebridgeCC:22:3D:E3:CF:39connexBathroom0000004A +4ms
cdc31 commented 3 years ago

Huh - without changing anything, it suddenly started working again.

I guess we don't need to dig deeper! Thank you!

NorthernMan54 commented 3 years ago

Glad to hear