Tuya ZG-103Z
Model | ZG-103Z |
Vendor | Tuya |
Description | Vibration sensor |
Exposes | vibration, tilt, x, y, z, battery, sensitivity, linkquality |
Picture |
Notes
Battery
Uses a CR2450 battery
Pairing
Press the reset button for about 3 seconds. The LED lights flash.
NOTE: When you fail to pair a device, try replacing the battery, this could solve the problem.
Frequency of vibration
actions
The subtopic /action
with payload vibration
and associated status JSON blobs are emitted about one second after onset, but not more frequently than 5 second regardless of whether vibrations are continuous or intermittent within that 5 second.
Troubleshooting: device stops sending messages/disconnects from network
Since devices do not fully comply to the Zigbee standard, it sometimes happens that they disconnect from the network. Most of the times this happens because of the following reasons:
- Device has a weak signal, you can see the signal quality in the published messages as
linkquality
. A linkquality < 20 is considered weak. - Low battery voltage, this can even happen when the battery still appears full. Try a different battery.
- The device is connected through a router which cannot deal with Xiaomi devices. This is known to happen devices from: Centralite, General Electric, Iris, Ledvance, Legrand, OSRAM, Sylvania, SmartThings, Securifi. A possible solution is to connect the device directly to the central coordinator by pushing the reset button while being physically close to it.
More detailed information about this can be found here.
Sensitivity
The sensitivity can be changed by publishing to zigbee2mqtt/FRIENDLY_NAME/set
{"sensitivity": "SENSITIVITY"}
where SENSITIVITY
is one of the following values: low
, medium
, high
.
After setting the sensitivity you immediately have to start pressing the reset button with an interval of 1 second until you see Zigbee2MQTT publishing the new sensitivity to MQTT.
Calibration
In order to improve the factory calibration or lack thereof, you can get a better result with a 2 step offset calibration:
- Ensure the x, y and z offset are set to 0 in the device specific settings
- Put the device on a level surface, face up.
- A few seconds after the tilt action, the angles and accelerometer values (
x_axis
,y_axis
,z_axis
) are updated x_axis
andy_axis
should be small,z_axis
around 255- Set the offset for x and y to the opposite values of
x_axis
andy_axis
to compensate.
- A few seconds after the tilt action, the angles and accelerometer values (
- Put the device on a side
- After a few seconds, te values update, and
z_axis
should be small, as well as one of thex_axis
ory_axis
, the other being around ±1000 - Set the offset for z to the opposite of
z_axis
You can fine tune the values of the offset by trying other sides and picking values that match best. Remember that the device sends accelerometer values a few seconds after the actual tilt event.
- After a few seconds, te values update, and
Exposes
Vibration (binary)
Indicates whether the device detected vibration. Value can be found in the published state on the vibration
property. It's not possible to read (/get
) or write (/set
) this value. If value equals true
vibration is ON, if false
OFF.
Tilt (binary)
Indicates whether the device detected tilt. Value can be found in the published state on the tilt
property. It's not possible to read (/get
) or write (/set
) this value. If value equals true
tilt is ON, if false
OFF.
X (numeric)
X coordinate. Value can be found in the published state on the x
property. It's not possible to read (/get
) or write (/set
) this value. The minimal value is 0
and the maximum value is 256
.
Y (numeric)
Y coordinate. Value can be found in the published state on the y
property. It's not possible to read (/get
) or write (/set
) this value. The minimal value is 0
and the maximum value is 256
.
Z (numeric)
Z coordinate. Value can be found in the published state on the z
property. It's not possible to read (/get
) or write (/set
) this value. The minimal value is 0
and the maximum value is 256
.
Battery (numeric)
Remaining battery in %, can take up to 24 hours before reported. Value can be found in the published state on the battery
property. It's not possible to read (/get
) or write (/set
) this value. The minimal value is 0
and the maximum value is 100
. The unit of this value is %
.
Sensitivity (enum)
Vibration detection sensitivity. Value can be found in the published state on the sensitivity
property. It's not possible to read (/get
) this value. To write (/set
) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set
with payload {"sensitivity": NEW_VALUE}
. The possible values are: low
, middle
, high
.
Linkquality (numeric)
Link quality (signal strength). Value can be found in the published state on the linkquality
property. It's not possible to read (/get
) or write (/set
) this value. The minimal value is 0
and the maximum value is 255
. The unit of this value is lqi
.