Open uncle-fed opened 7 months ago
I've had exactly the same issue, i've got aqara d1's that work as intended. And now i've got 2 new aqara h1's with no response. So when actuating from z2m itself it reports back in mqtt, but physical interaction doesn't result in any z2m logs or mqtt events at all...
Here's the state info for my 2 switch H1 in the z2m state dump:
"0x54ef441000ae0a95": {
"date_code": "11-10-2021",
"definition": {
"description": "Smart wall switch H1 EU (with neutral, double rocker)",
"exposes": [
{
"endpoint": "left",
"features": [
{
"access": 7,
"description": "On/off state of the switch",
"endpoint": "left",
"label": "State",
"name": "state",
"property": "state_left",
"type": "binary",
"value_off": "OFF",
"value_on": "ON",
"value_toggle": "TOGGLE"
}
],
"type": "switch"
},
{
"endpoint": "right",
"features": [
{
"access": 7,
"description": "On/off state of the switch",
"endpoint": "right",
"label": "State",
"name": "state",
"property": "state_right",
"type": "binary",
"value_off": "OFF",
"value_on": "ON",
"value_toggle": "TOGGLE"
}
],
"type": "switch"
},
{
"access": 5,
"category": "diagnostic",
"description": "Instantaneous measured power",
"label": "Power",
"name": "power",
"property": "power",
"type": "numeric",
"unit": "W"
},
{
"access": 1,
"description": "Sum of consumed energy",
"label": "Energy",
"name": "energy",
"property": "energy",
"type": "numeric",
"unit": "kWh"
},
{
"access": 7,
"description": "Decoupled mode for left button",
"endpoint": "left",
"label": "Operation mode",
"name": "operation_mode",
"property": "operation_mode_left",
"type": "enum",
"values": [
"control_relay",
"decoupled"
]
},
{
"access": 7,
"description": "Decoupled mode for right button",
"endpoint": "right",
"label": "Operation mode",
"name": "operation_mode",
"property": "operation_mode_right",
"type": "enum",
"values": [
"control_relay",
"decoupled"
]
},
{
"access": 1,
"description": "Triggered action (e.g. a button click)",
"label": "Action",
"name": "action",
"property": "action",
"type": "enum",
"values": [
"single_left",
"double_left",
"single_right",
"double_right",
"single_both",
"double_both"
]
},
{
"access": 1,
"category": "diagnostic",
"description": "Temperature of the device",
"label": "Device temperature",
"name": "device_temperature",
"property": "device_temperature",
"type": "numeric",
"unit": "°C"
},
{
"access": 7,
"category": "config",
"description": "Enable/disable the power outage memory, this recovers the on/off mode after power failure",
"label": "Power outage memory",
"name": "power_outage_memory",
"property": "power_outage_memory",
"type": "binary",
"value_off": false,
"value_on": true
},
{
"access": 7,
"category": "config",
"description": "After turn on, the indicator light turns on while switch is off, and vice versa",
"label": "Flip indicator light",
"name": "flip_indicator_light",
"property": "flip_indicator_light",
"type": "binary",
"value_off": "OFF",
"value_on": "ON"
},
{
"access": 7,
"category": "config",
"description": "Enable/disable the LED at night",
"label": "LED disabled night",
"name": "led_disabled_night",
"property": "led_disabled_night",
"type": "binary",
"value_off": false,
"value_on": true
},
{
"access": 1,
"category": "diagnostic",
"description": "Number of power outages (since last pairing)",
"label": "Power outage count",
"name": "power_outage_count",
"property": "power_outage_count",
"type": "numeric"
},
{
"access": 1,
"category": "diagnostic",
"description": "Link quality (signal strength)",
"label": "Linkquality",
"name": "linkquality",
"property": "linkquality",
"type": "numeric",
"unit": "lqi",
"value_max": 255,
"value_min": 0
}
],
"model": "WS-EUK04",
"options": [
{
"access": 2,
"description": "Calibrates the power value (percentual offset), takes into effect on next report of device.",
"label": "Power calibration",
"name": "power_calibration",
"property": "power_calibration",
"type": "numeric"
},
{
"access": 2,
"description": "Number of digits after decimal point for power, takes into effect on next report of device. This option can only decrease the precision, not increase it.",
"label": "Power precision",
"name": "power_precision",
"property": "power_precision",
"type": "numeric",
"value_max": 3,
"value_min": 0
},
{
"access": 2,
"description": "Calibrates the energy value (percentual offset), takes into effect on next report of device.",
"label": "Energy calibration",
"name": "energy_calibration",
"property": "energy_calibration",
"type": "numeric"
},
{
"access": 2,
"description": "Number of digits after decimal point for energy, takes into effect on next report of device. This option can only decrease the precision, not increase it.",
"label": "Energy precision",
"name": "energy_precision",
"property": "energy_precision",
"type": "numeric",
"value_max": 3,
"value_min": 0
},
{
"access": 2,
"description": "Calibrates the device_temperature value (absolute offset), takes into effect on next report of device.",
"label": "Device temperature calibration",
"name": "device_temperature_calibration",
"property": "device_temperature_calibration",
"type": "numeric"
},
{
"access": 2,
"description": "State actions will also be published as 'action' when true (default false).",
"label": "State action",
"name": "state_action",
"property": "state_action",
"type": "binary",
"value_off": false,
"value_on": true
}
],
"supports_ota": false,
"vendor": "Aqara"
},
"disabled": false,
"endpoints": {
"1": {
"bindings": [],
"clusters": {
"input": [
"genBasic",
"genDeviceTempCfg",
"genIdentify",
"genGroups",
"genScenes",
"genOnOff",
"genAlarms",
"seMetering",
"haElectricalMeasurement"
],
"output": [
"genTime",
"genOta"
]
},
"configured_reportings": [],
"scenes": []
},
"2": {
"bindings": [],
"clusters": {
"input": [
"genBasic",
"genIdentify",
"genGroups",
"genScenes",
"genOnOff"
],
"output": []
},
"configured_reportings": [],
"scenes": []
},
"242": {
"bindings": [],
"clusters": {
"input": [],
"output": [
"greenPower"
]
},
"configured_reportings": [],
"scenes": []
}
},
"friendly_name": "Switch_Achterdeur",
"ieee_address": "0x54ef441000ae0a95",
"interview_completed": true,
"interviewing": false,
"manufacturer": "LUMI",
"model_id": "lumi.switch.n2aeu1",
"network_address": 57883,
"power_source": "Mains (single phase)",
"supported": true,
"type": "Router"
}
I've managed to half-bind this device! lol. I can get it bound to a light bulb to control the bulb via on/off the down side is the dimmer only turns it on or off with a double click making it totally alien to use in real life for guests.
Has anyone else had any more luck binding the dimmer to a light for On/Off using a single click? Anyone got dimming working over binding?
What happened?
This is not about messages which are being generated when the switch is interacted with (pressed / rotated). I deliberately did not want to add to the currently open issue that deals with
action
-related properties. The issues described below are about report messages that get generated automatically by the switch, roughly every 55 minutes (without touching it).What did you expect to happen?
I would be reasonable to expect that zigbee2mqtt messages do NOT contain the following attributes that are automatically reported every 55 minutes:
state
device_temperature
power_outage_count
state
is most definitely the attribute that should never be reported in theevent
mode (not sure about thecommand
mode). The thestate
never appears in payload when interacting with the button. It only gets reported together with the below two attributes every 55 minutes and is always reported as 'OFF'.Those attributes are not documented as being valid. So either the docs need to be updated or the behaviour changed. While I have no real knowledge about the
device_temperature
it seems to be most likely bogus because it always transmit the value of25
which just cannot be right in my home conditions (and in two vastly different rooms in terms of temperature). Then again, I can see, as I have other Aqara devices (contact sensor, presence sensor, buttons etc. that they all seem to report bogus device temperatures. So I guess it is a more general thing for Aqara devices. At least it should be documented and probably with the statement that it should not be relied upon.The
power_outage_count
may be somehow valid, but it makes me doubt it as well. I purchased two switches together and they came in as new/sealed. One reports the value of38
, the other one5668
. I just find it very hard to believe that somebody disconnected the batteries over 5 thousand times on that new switch. Still, the value does seem to increase if batteries are replaced. There are two CR2032 batteries in this device and the counter seems to increase even only one of them is removed (while device keeps functioning).See the debug log below that shows the moment when the report message comes in (without pressing any button).
How to reproduce it (minimal and precise)
No response
Zigbee2MQTT version
1.35.1 commit: 3c962042
Adapter firmware version
20221226
Adapter
Sonoff Zigbee 3.0 USB Dongle Plus-P
Setup
Plain Z2M on Pi 4
Debug log