bostrt / homebridge-bali-blinds

Bali Motorized Blinds Plugin for Homebridge
Apache License 2.0
4 stars 1 forks source link

Research ways to overcome missed position update from API #3

Open bostrt opened 1 year ago

bostrt commented 1 year ago

There appears to be bug in the Bali Motorization API where the final position updates are not transmitted and then blind missing updates becomes unreachable.

Investigate a workaround for this and make extra sure the issue isn't within the plugin code.

Reproducer: try moving a blind from 100% -> 95% and then back to 100%. Sometimes the blind actually moves to 100% but the position updates received via websocket only go to 99% leaving the blind in an "Opening..." state.

bostrt commented 1 year ago

It seems like at least one shade per day becomes unreachable. The Bali API is reporting its unreachable which suggests to me the issue could be my Gateway (ZWave transmitter), the blinds, or the Bali API. Nothing really suggesting there's a bug in the homebridge plugin code.

I have found that if I "poke" the blind after its reported as unreachable it typically comes back. For example, after raising all blinds, if one becomes unresponsive, I just set that one blind to 100% again.

For reference, here's the ui_broadcast received when a shade becomes unreachable.

{
  id: 'ui_broadcast',
  msg_subclass: 'hub.device.updated',
  msg_id: 2766236233,
  result: {
    deviceArmed: false,
    _id: 'ZCAEA8A46',
    reachable: false,
    serviceNotification: false,
    syncNotification: false
  }
}