dxdc/homebridge-blinds

[FEATURE] Eve App 4.2 Issue with homebridge-blinds

Closed this issue · 6 comments

The latest Eve for HomeKit App v4.2 is causing issues with several Homebridge Plugins.
They changed something so that the serial number of a device is linked somehow in the background. This was not with previous Eve versions.
Problems causing now like described here.
homebridge/homebridge#2503
So all devices/switches from homebridge-blinds can't be sorted anymore and can't get an icon for each device separately.

Do you see a solution to fix this "Eve" Issue, by changing something in your plugin?

Other plugin developers like @nicoduj homebridge-harmony already fixed the Eve Issue #249.
@pponce with homebridge-script2 did a fix #25 by adding "unique_serial": which also was a great and working solution.

homebridge-blinds Plugin is indispensable for me and I would not want to miss it.

Thanks again for your work and the time you are investing generally.

dxdc commented

@Zer0x00 this sounds like a widespread problem with Eve. It sounds like there were a lot of breaking features in this version, so it's probably something they should fix on their end instead of trying to fix 100's of plugins.

I added a fix for this cfb6370. However, I need to confirm that it won't delete existing accessories when making these changes.

At a minimum, my concern is that it will cause problems for Node-RED users who may also be using this plugin in conjunction with node-red-contrib-homebridge-automation.

For testing purposes:

This is the error I get.

I think this.id in line 648 is undefined.

[27.4.2020, 13:15:31] TypeError: Cannot read property 'toString' of undefined at BlindsHTTPAccessory.getServices (C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge-blinds\index.js:648:119) at Server.createHAPAccessory (C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge\src\server.ts:411:41) at C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge\src\server.ts:337:30 at Array.forEach (<anonymous>) at Server._loadAccessories (C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge\src\server.ts:307:29) at Server.start (C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge\src\server.ts:154:12) at cli (C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge\src\cli.ts:74:10) at Object.<anonymous> (C:\Users\0x00\AppData\Roaming\npm\node_modules\homebridge\bin\homebridge:17:22) at Module._compile (internal/modules/cjs/loader.js:1123:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1143:10)

dxdc commented

@dxdc Agree. Added another commit, please try again.

Looks like 4.2.1 of eve may have fixed what was causing this issue. They call it out in the release notes.

dxdc commented

Thanks @pponce. I may revert these commits... I don't want to disturb anyone's existing set up.

dxdc commented

@Zer0x00 @pponce I've just pushed a new release. If you'd like to use unique serial numbers (on an ongoing basis), please set unique_serial to true. See the config/README.