keymaster
keymaster copied to clipboard
ISSUE: Child Locks don't stay in sync
Attempted to add a new lock as a child lock; the names / codes don't sync at all until you make a change to the "parent" lock. And if you make a change to a "child" lock, the change is not reflected in the parent lock. (This might be expected behavior? But really shouldn't be allowed; the fields on child locks should be "read only" unless the "override parent lock" option is enabled).
Additionally (and this could be unrelated, but happened at the same time I set up my new lock), code slots seem to be stuck "Deleting" or "Adding", and "blank" code slots (the default and what you get when you reset a slot) actually attempt to sync to the locks and break things:
synchronize_codeslot_garage_door_1: Choose at step 1: choice 1: Error executing script. Unexpected error for call_service at pos 1: User code must be at least 4 digits
Error calling zwave_js.set_lock_usercode service call: User code must be at least 4 digits
Parent Lock:

Child Lock:

the fields on child locks should be "read only" unless the "override parent lock" option is enabled
There isn't a way in HA to change the lovelace fields like that on the fly sadly.
if you make a change to a "child" lock, the change is not reflected in the parent lock.
This is by design, it's a one way sync.
the fields on child locks should be "read only" unless the "override parent lock" option is enabled
There isn't a way in HA to change the lovelace fields like that on the fly sadly.
I see two potential ways you could accomplish this: https://www.home-assistant.io/lovelace/conditional/ https://www.home-assistant.io/lovelace/entity-filter/
Good: Just don't display the fields for Name, PIN, and Enabled unless the Override slider is set.
Better: Make "read only" entities for the name, Pin, and Enabled that show instead of the editable fields if the override slider is not set.
Best: Make (optional) read only views for any lock in the system that just show current state and do not allow any changes (Eg, show the currently configured pin and if it's currently enabled for a given slot; should track even if this is set out of band; Eg, using zwavejs2mqtt)
In any case, can make a new issue for that enhancement/feature request. Will use this one to track the two bugs:
- That the fields are set to "Empty Values" with a new lock or when you "Reset code slot", and that keymaster tries to set an empty pin instead of just clearing the slot (if enabled):

- That the some slots seem to hang (indefinitely) in the adding/deleting state and do not accurately reflect the actual state of the lock.
Not sure how to best troubleshoot 2), but let me know if any logs/tests would help?