Sian-Lee-SA / Home-Assistant-Switch-Manager

Switch manager is a centralised component to handle button pushes for your wireless switches. This includes anything passed through the event bus. The component relies on switch blueprints which is easily made to allow GUI configuration of your switches and their button pushes. This helps remove clutter from the automations.
Other
206 stars 79 forks source link

IKEA Rodret (E2201) Button Hold Release not being handled #214

Closed aryxton closed 4 months ago

aryxton commented 5 months ago

Rodret firmware: 1.0.47 Zigbee2mqtt: 1.35.3 commit: fe0742a

While trying to implement a dimming function with this remote I noticed that the messages being sent over to MQTT appear to have changed at some point as they don't align to what you have in the blueprint. I don't think it is a firmware change as this is the only firmware version ever released for the device (that I can tell) so it seems that zigbee2mqtt may have changed?

For initiating a hold, either button still sends their respective _brightness_move_up and brightness_move_down, but when you release either button the message sent is simply brightness_stop_ and it doesn't differentiate between up and down.

The blueprint for this device expects _brightness_stop_up and brightness_stop_down_ which are never sent.

I am new to your Switch Manager, but I didn't see a way to easily handle this in a blueprint. I was thinking maybe define a third button as Hold Release and handle it that way, but I am not sure if that is the best way.

an example from the log from zigbee2mqtt:

info 2024-02-23 18:40:14MQTT publish: topic 'zigbee2mqtt/Theater Remote', payload '{"action":"brightness_move_up","action_rate":83,"battery":90,"linkquality":66,"update":{"installed_version":16777287,"latest_version":16777287,"state":"idle"},"update_available":null}'
info 2024-02-23 18:40:14MQTT publish: topic 'zigbee2mqtt/Theater Remote', payload '{"action":"","battery":90,"linkquality":66,"update":{"installed_version":16777287,"latest_version":16777287,"state":"idle"},"update_available":null}'
info 2024-02-23 18:40:14MQTT publish: topic 'zigbee2mqtt/Theater Remote/action', payload 'brightness_move_up'
info 2024-02-23 18:40:15MQTT publish: topic 'zigbee2mqtt/Theater Remote', payload '{"action":"brightness_stop","battery":90,"linkquality":66,"update":{"installed_version":16777287,"latest_version":16777287,"state":"idle"},"update_available":null}'
info 2024-02-23 18:40:15MQTT publish: topic 'zigbee2mqtt/Theater Remote', payload '{"action":"","battery":90,"linkquality":66,"update":{"installed_version":16777287,"latest_version":16777287,"state":"idle"},"update_available":null}'
info 2024-02-23 18:40:15MQTT publish: topic 'zigbee2mqtt/Theater Remote/action', payload 'brightness_stop'

In addition, thank you for your work on this. It is excellently designed and well implemented.

Let me know if you want me to test anything with this device as I am unsure if you have access to one.

Sian-Lee-SA commented 5 months ago

@jmtorres As you're the author, you may want to check on this.

fgibaux commented 4 months ago

I'm getting the same issue with Ikea Styrbar E2002 (Firmware version 1.0.024) on Zigbee2MQTT version 1.36.0

switch manager debug log shows it's getting the following payloads:

the Zigbee2MQTT device documentation mentions the same: https://www.zigbee2mqtt.io/devices/E2001_E2002.html

Sian-Lee-SA commented 4 months ago

As this is a Device FW or Zigbee2MQTT issue I am closing this. Please report to Zigbee2MQTT Devs