grover / homebridge-ranger

A HomeKit range extender for Bluetooth Low Energy (BLE) accessories.
MIT License
73 stars 15 forks source link

UnhandledPromiseRejectionWarning: Error: HAP-BLE request failed with status 4 #9

Closed samgeorge closed 5 years ago

samgeorge commented 5 years ago

[2018-11-11 10:12:24] [Ranger] Discovered GATT services and characteristics of Eve Thermo 0514 [2018-11-11 10:12:24] [Ranger] Connected to Eve Thermo 0514 (node:1732) UnhandledPromiseRejectionWarning: Error: HAP-BLE request failed with status 4 at HapExecutor._getResponsePayload (/usr/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:135:13) at HapExecutor._executeCommand (/usr/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:64:34) at (node:1732) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:1732) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. [2018-11-11 10:12:45] [Ranger] Reported reachability for Eve Thermo 0514: true

ScrewedDK commented 5 years ago

I do also get this error code and hopes that someone soon has a fix. Unfortunately I’m not a developer so I’m sorry that I can’t help but I hope that it’s going to be fixed. 🙂

hansvangent commented 5 years ago

@ScrewedDK which device are you seeing this with? And with which software version?

ScrewedDK commented 5 years ago

I haven’t downgraded as suggested, so the versions from the Homebridge-Ranger install instructions. I’m seeing it with Eve Aqua. Haven’t tried my Eve Degree yet, because first of all I need it to work with the aqua..

hansvangent commented 5 years ago

@ScrewedDK even though you want it to work with your Eve Aqua, can you check what the messages are on your Eve Degree in the logfile as well and paste both of them here?

ScrewedDK commented 5 years ago

I’ll try that when I got some time.. In advance thanks for your attention. 🙂Having a one-yeared old child doesn’t bring much time for projects. 😅 I

hansvangent commented 5 years ago

@palasinio any luck now that the Christmas tree is gone? Are you getting the same issue with your Eve Energy?

palasinio commented 5 years ago

@jcvangent : Pls give me two more days :) I‘m sure, we get it work.

hansvangent commented 5 years ago

@palasinio no worries my man, just eager to have it up and running soon. And still no word from @grover :-/

palasinio commented 5 years ago

Dear @jcvangent , ranger I just added my Energy as you can see in the screenshot.

What I suggest to you is to start from scratch:

hansvangent commented 5 years ago

Just a small question @palasinio , with both of them, are you on the latest firmware of the devices?

As suggested somewhere else, I'm running Node version v9.10.0 and npm version 4.6.1 indeed.

Will go through all the steps and start from scratch with node 9.3.0 hopefully that makes a change. But it would be interesting to know if you've updated both the Thermo and the Energy to its latest firmware. Mine are running them and there is no way to downgrade :-/

palasinio commented 5 years ago

Damn, you are fast ;) Both devices are on the latest Firmware: Thermo (1.2.7, 1132), Energy (1.3.1, 466).

palasinio commented 5 years ago

PS: Maybe you want to pair Energy first (not both together).

hansvangent commented 5 years ago

:-) But I think those are different firmwares then me. I can't access mine at the moment since I'm remote (I can only see my Raspberry Pi), but I think my Thermo in this house runs the same firmware which is 2.0.1 (522), but not having an Energy running in this house here.

Will check over the weekend. But I think the potential older firmware has something to do with it as. Oh and my Thermo is the V1 model, maybe that is why it has a different firmware.

hansvangent commented 5 years ago

Okay will keep that in mind as well, will come back probably over the weekend when I'm at that house and I can properly reset them etc. thanks for the update on your side!

palasinio commented 5 years ago

My Thermo is second Gen (2017). Yours is tested here: https://github.com/grover/homebridge-ranger/blob/master/docs/pairing/accessories.md

hansvangent commented 5 years ago

Yeah but that was the old firmware version, they updated the firmware a month or two months ago. (before I even started testing HomeBridge and HomeBridge-Ranger) so I'm pretty sure that firmware update made things a bit tighter and since then it is not properly supported anymore.

I reached out to @grover on Twitter as well, but no response up until now.

But let's see over the weekend, when I'm close to the devices again and can reset them, run a bit more up-to-date Node etc. see if that changes stuff.

Will let you know!

hansvangent commented 5 years ago

@palasinio so that is weird, before I started playing with HomeBridge I had a firmware update on my Energy putting it at 1.2.6 (1128) which sounds completely different than yours.

Tried removing it with the "remove": true option, but that is resulting in:

Jan 11 21:35:55 unifipi homebridge[20676]: [2019-1-11 21:35:55] [Ranger] Remove pairing failed: {} TypeError: Cannot read property 'rangerPairingID' of undefined Jan 11 21:35:55 unifipi homebridge[20676]: at RemovePairing.getRequest (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/pairing/RemovePairing.js:38:75) Jan 11 21:35:55 unifipi homebridge[20676]: at HapExecutor._executeCommand (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:44:27) Jan 11 21:35:55 unifipi homebridge[20676]: at _queue.push (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:36:33) Jan 11 21:35:55 unifipi homebridge[20676]: at Jan 11 21:35:55 unifipi homebridge[20676]: at process._tickCallback (internal/process/next_tick.js:118:7) Jan 11 21:35:55 unifipi homebridge[20676]: [2019-1-11 21:35:55] [Ranger] Failed remove pairing attempt #1, waiting 1s and trying again. Jan 11 21:35:56 unifipi homebridge[20676]: [2019-1-11 21:35:56] [Ranger] Returning remove pairing request Jan 11 21:35:56 unifipi homebridge[20676]: [2019-1-11 21:35:56] [Ranger] Remove pairing failed: {} TypeError: Cannot read property 'rangerPairingID' of undefined Jan 11 21:35:56 unifipi homebridge[20676]: at RemovePairing.getRequest (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/pairing/RemovePairing.js:38:75) Jan 11 21:35:56 unifipi homebridge[20676]: at HapExecutor._executeCommand (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:44:27) Jan 11 21:35:56 unifipi homebridge[20676]: at _queue.push (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:36:33) Jan 11 21:35:56 unifipi homebridge[20676]: at Jan 11 21:35:56 unifipi homebridge[20676]: [2019-1-11 21:35:56] [Ranger] Failed remove pairing attempt #2, waiting 1s and trying again. Jan 11 21:35:57 unifipi homebridge[20676]: [2019-1-11 21:35:57] [Ranger] Returning remove pairing request Jan 11 21:35:57 unifipi homebridge[20676]: [2019-1-11 21:35:57] [Ranger] Remove pairing failed: {} TypeError: Cannot read property 'rangerPairingID' of undefined Jan 11 21:35:57 unifipi homebridge[20676]: at RemovePairing.getRequest (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/pairing/RemovePairing.js:38:75) Jan 11 21:35:57 unifipi homebridge[20676]: at HapExecutor._executeCommand (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:44:27) Jan 11 21:35:57 unifipi homebridge[20676]: at _queue.push (/opt/node-v9.10.0-linux-armv7l/lib/node_modules/homebridge-ranger/src/hap/HapExecutor.js:36:33) Jan 11 21:35:57 unifipi homebridge[20676]: at Jan 11 21:35:57 unifipi homebridge[20676]: [2019-1-11 21:35:57] [Ranger] Failed remove pairing attempt #3, waiting 1s and trying again. Jan 11 21:35:58 unifipi homebridge[20676]: [2019-1-11 21:35:58] [Ranger] Failed to remove pairing with device Eve Energy Fridge Kitchen after third attempt. Aborting.

Will try the other options now and upgrade my node to 9.3 etc. and will report back!

palasinio commented 5 years ago

1.2.6 sounds like Thermo firmware - there was an other update to 1.2.7 a few days later.

hansvangent commented 5 years ago

No it is definitely my Energy:

image

The Energy is working now by the way (had to edit the AccessoryDatabase.js in the end still though), after upgrading to Node 9.3.0 with npm 4.6.1. (so it seemed to be a problem with my Node version)

The moment I add the Thermo in the config though it seems to stop working so some more debugging around that tomorrow or on Sunday, for now it is time to get some rest :-)

Thanks for the help up until now. Will report back later, if I find more with my Thermo!

hansvangent commented 5 years ago

The moment I add my Thermo the Energy stops working. Had to delete my setup again to make my Energy work. For now, I don't need my Thermo that much so I left it out of my config. But could still be interesting to figure out why it doesn't handle both of them.

palasinio commented 5 years ago

@jcvangent , is your Thermo working without Ranger? Do you have saved the log from trying to connect it? In my case it took a while - or did homebridge exit with an error?

hansvangent commented 5 years ago

Homebridge said it was working, but it was not reachable in my home app anymore. And the Eve app reported a connection issue as well. In the log file of Homebridge it looked like everything was okay though.

palasinio commented 5 years ago

Maybe you need some patience. Is it working in config-ui?

grover commented 5 years ago

Hey guys,

I've just pushed version 0.3.3 - I hope this does fix the problem you're hunting here. Let me know, I've got a bit of time to work on this the next few days.

Thanks, Michael

hansvangent commented 5 years ago

@grover I see that the workaround you made looks a bit different than the changes we manually made right now here.

What would be the best way to test and install the changes you made?

Just a "npm install -g -unsafe-perm homebridge-ranger@latest -g"

Maybe I should first create a backup of the current directory with all the files?

Oh and by the way happy to hear the project is not "dead" and you're at it again!

grover commented 5 years ago

Given that you‘ve had issues previously:

Please note that I‘m still hunting an issue where ranger sort of locks up, e.g. devices appear to work, but do not update and do not respond to scenes or manual changes in a HomeKit app. I‘ve resorted to restarting my Raspberry Pi Zero W, where this occurs, nightly.

I started rewriting the bluetooth and HAP code to a better design that I‘ve used in my flower-power plugin, but that‘ll take a bit longer to publish.

hansvangent commented 5 years ago

WOuld it make sense when you start to rewrite the currrent code base for me to still test this update? The current solution is working for me with the workaround others found in this thread here and I'm currently not on site for a at least another week (so if someone goes wrong I can't reset my Eve Connect)

grover commented 5 years ago

Ultimately that’s your decision.

The rewrite is rather large and I do not expect to be done with that before end of summer given other things I’m involved in.

hansvangent commented 5 years ago

Okay no worries will try to test it in the upcoming weeks then and good luck!

palasinio commented 5 years ago

I just updated yesterday via config-ui-x and it works :). If seems to be much faster? (Didn‘t Test any pairing /w the .33 version)

grover commented 5 years ago

Good to hear, closing the issue.

Also nice that it feels faster, even though I haven’t changed anything in regards to that. 🙂

samgeorge commented 5 years ago

Thanks @grover - works with the v0.3.4

Mar 17 10:49:53 raspberrypi homebridge[24379]: [2019-3-17 10:49:53] [Ranger] Connecting to Eve Thermo XXX

Fresh install of pi, with homebridge

node v8.15.1 ranger v0.3.4 Homebridge : Version 0.4.46