diff --git a/homeassistant/components/zha/binary_sensor.py b/homeassistant/components/zha/binary_sensor.py index af7ce6b5bf7..dc5a5eebbaa 100644 --- a/homeassistant/components/zha/binary_sensor.py +++ b/homeassistant/components/zha/binary_sensor.py @@ -203,3 +203,13 @@ class AqaraPetFeederErrorDetected(BinarySensor, id_suffix="error_detected"): SENSOR_ATTR = "error_detected" _attr_device_class: BinarySensorDeviceClass = BinarySensorDeviceClass.PROBLEM _attr_name: str = "Error detected" + + +@MULTI_MATCH( + channel_names="opple_cluster", models={"lumi.plug.mmeu01", "lumi.plug.maeu01"} +) +class XiaomiPlugConsumerConnected(BinarySensor, id_suffix="consumer_connected"): + """ZHA Xiaomi plug consumer connected binary sensor.""" + + SENSOR_ATTR = "consumer_connected" + _attr_name: str = "Consumer connected" diff --git a/homeassistant/components/zha/core/channels/manufacturerspecific.py b/homeassistant/components/zha/core/channels/manufacturerspecific.py index e6b88a6c9ad..85a478b0d4d 100644 --- a/homeassistant/components/zha/core/channels/manufacturerspecific.py +++ b/homeassistant/components/zha/core/channels/manufacturerspecific.py @@ -125,6 +125,7 @@ class OppleRemote(ZigbeeChannel): elif self.cluster.endpoint.model in ("lumi.plug.mmeu01", "lumi.plug.maeu01"): self.ZCL_INIT_ATTRS = { "power_outage_memory": True, + "consumer_connected": True, } elif self.cluster.endpoint.model == "aqara.feeder.acn001": self.ZCL_INIT_ATTRS = {