Replies: 4 comments 15 replies
-
Answering my own question - the data is there! With a caveat. There are four values that can be turned into sensors -
BUT it gets overwritten practically instantly. The MQTT message with a valid
The Does anyone have a better solution? |
Beta Was this translation helpful? Give feedback.
-
Have you found a solution I too am used to being able to extract all the messages seems strange that in the documented exposed values it only lists lock state, battery, linkquality |
Beta Was this translation helpful? Give feedback.
-
A year later and I'm still using the same solution. It looks like this, for one of my locks. First, the sensors: - platform: mqtt
availability:
- topic: zigbee2mqtt/bridge/state
device:
identifiers:
- zigbee2mqtt_0x002446xxxxxxxxxx
manufacturer: Weiser
model: SmartCode 10 (9GED18000-009)
name: '0x002446xxxxxxxxxx'
name: Front Door Lock Action
state_topic: zigbee2mqtt/0x002446xxxxxxxxxx
unique_id: 0x002446xxxxxxxxxx_action_zigbee2mqtt
value_template: '{{ value_json.action }}'
- platform: mqtt
availability:
- topic: zigbee2mqtt/bridge/state
device:
identifiers:
- zigbee2mqtt_0x002446xxxxxxxxxx
manufacturer: Weiser
model: SmartCode 10 (9GED18000-009)
name: '0x002446xxxxxxxxxx'
name: Front Door Lock Action Source Name
state_topic: zigbee2mqtt/0x002446xxxxxxxxxx
unique_id: 0x002446xxxxxxxxxx_action_source_name_zigbee2mqtt
value_template: '{{ value_json.action_source_name }}'
- platform: mqtt
availability:
- topic: zigbee2mqtt/bridge/state
device:
identifiers:
- zigbee2mqtt_0x002446xxxxxxxxxx
manufacturer: Weiser
model: SmartCode 10 (9GED18000-009)
name: '0x002446xxxxxxxxxx'
name: Front Door Lock Action User
state_topic: zigbee2mqtt/0x002446xxxxxxxxxx
unique_id: 0x002446xxxxxxxxxx_action_user_zigbee2mqtt
value_template: '{{ value_json.action_user }}' Then the corresponding automations to set input_text values: - alias: Front Door Action Update
initial_state: on
trigger:
platform: state
entity_id: sensor.front_door_lock_action
condition: "{{ trigger.to_state.state != '' }}"
action:
- service: input_text.set_value
data:
entity_id: input_text.front_door_action
value: "{{ trigger.to_state.state }}"
- alias: Front Door Source Update
initial_state: on
trigger:
platform: state
entity_id: sensor.front_door_lock_action_source_name
condition: "{{ trigger.to_state.state != '' }}"
action:
- service: input_text.set_value
data:
entity_id: input_text.front_door_action_source_name
value: "{{ trigger.to_state.state }}"
- alias: Front Door User Update
initial_state: on
trigger:
platform: state
entity_id: sensor.front_door_lock_action_user
condition: "{{ trigger.to_state.state != '' }}"
action:
- service: input_text.set_value
data:
entity_id: input_text.front_door_action_user
value: "{{ trigger.to_state.state }}" The automations take those transient MQTT values (which get wiped out immediately) and turn them into something persistent that can be used for display in Lovelace or for subsequent automation conditions, that kind of thing. This all still works great - very reliable, and I'm entirely happy with how it works compared to my old Z-wave setup. |
Beta Was this translation helpful? Give feedback.
-
Is the dev branch Linux only? I run windows 10. Thx |
Beta Was this translation helpful? Give feedback.
-
I have a Kwikset 914 SmartCode deadbolt - it's a Z-Wave Plus unit that works - usually - pretty well with the Home Assistant built-in OZW integration. It can be locked or unlocked, it shows status, and it provides information about HOW it was locked (manually/key, or remotely, or via keypad), or unlocked (manually/key, or remotely, or which "user code" was entered into the keypad).
While the Z-Wave integration has these capabilities, the reliability leaves much to be desired.
This is a supported lock in Z2M, so I gave it a brain transplant - swapped out the Z-Wave board and installed the compatible Zigbee board. This works fine - it joined easily, and it shows up as a Weiser SmartCode 10, which I gather is basically the same lock. Lock and Unlock operations work great - quickly and reliably, and the status appears accurate.
But unfortunately I lose the ancillary attributes: specifically, the reason for a lock/unlock doesn't seem to be available. I can't tell which user code was used, or whether it was locked/unlocked manually. This would be nice to have!
Is there any prospect to get this data? I don't see any lock in Z2M that publishes it.
Beta Was this translation helpful? Give feedback.
All reactions