core icon indicating copy to clipboard operation
core copied to clipboard

Missing repeated hue_event for Philips Hue Tap Dial switch

Open Mincka opened this issue 3 years ago • 5 comments

The problem

Hi, Repeated start events in the same direction seem to be ignored by the integration and they do not generate events in HA. I am monitoring this by following hue_event.

This happens when I gently rotate the button, about every second. If I wait even more (10 seconds), and do a single rotation (without leading to the generation of repeat event, it won't generate a start altogether.

If the event type is the same start but the subtype is different clock_wise vs counter_clock_wise, it will create a new event. If I rotate the button a little faster, it will generate a repeat event. However, it is harder to simulate, if I manage to keep the same rotation rythm (exact same steps), it looks it the repeated repeat event is also ignored.

That's why I am thinking this is some kind of ignored repeated events with the same data.

I checked in the diagnostic logs of the integration and the start events are all here, every second. Logs below.

It looks like there are filtered by the integration because it's the same event type. I had a quick look at the code, but I am not sure what could give this result, maybe the event_filter here and/or this long press button workaround in aiohue because the code is not checked against device.product_data.model_id not in BTN_WORKAROUND_NEEDED like the next condition?

I tried to update the code for both ideas but no difference. 😞

I don't think this is related to the "1 second polling" limitation mentioned in #75082, since the aiohue lib is able to catch them all.

What version of Home Assistant Core has the issue?

2022.9.4

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Philips Hue

Link to integration documentation on our website

https://www.home-assistant.io/integrations/hue/

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

{
        "creationtime": "2022-09-14T08:16:58Z",
        "data": [
          {
            "id": "a137c264-df43-4a4e-b345-9979df489529",
            "id_v1": "/sensors/113",
            "owner": {
              "rid": "0926fa94-9f22-4ca7-9e9c-ac15c3ba57b1",
              "rtype": "device"
            },
            "relative_rotary": {
              "last_event": {
                "action": "start",
                "rotation": {
                  "direction": "clock_wise",
                  "duration": 400,
                  "steps": 15
                }
              }
            },
            "type": "relative_rotary"
          }
        ],
        "id": "redacted-b2c31948-cd22-4d1a-8f50-d4eca0e21f85",
        "type": "update"
      },
      {
        "creationtime": "2022-09-14T08:16:59Z",
        "data": [
          {
            "id": "a137c264-df43-4a4e-b345-9979df489529",
            "id_v1": "/sensors/113",
            "owner": {
              "rid": "0926fa94-9f22-4ca7-9e9c-ac15c3ba57b1",
              "rtype": "device"
            },
            "relative_rotary": {
              "last_event": {
                "action": "start",
                "rotation": {
                  "direction": "clock_wise",
                  "duration": 400,
                  "steps": 15
                }
              }
            },
            "type": "relative_rotary"
          }
        ],
        "id": "redacted-6949e275-1bc1-4237-96ab-625f9090b3a8",
        "type": "update"
      },
      {
        "creationtime": "2022-09-14T08:17:00Z",
        "data": [
          {
            "id": "a137c264-df43-4a4e-b345-9979df489529",
            "id_v1": "/sensors/113",
            "owner": {
              "rid": "0926fa94-9f22-4ca7-9e9c-ac15c3ba57b1",
              "rtype": "device"
            },
            "relative_rotary": {
              "last_event": {
                "action": "start",
                "rotation": {
                  "direction": "clock_wise",
                  "duration": 400,
                  "steps": 15
                }
              }
            },
            "type": "relative_rotary"
          }
        ],
        "id": "redacted-cc4022da-f9e8-475d-8531-efb38c8e363a",
        "type": "update"
      },
      {
        "creationtime": "2022-09-14T08:17:01Z",
        "data": [
          {
            "id": "a137c264-df43-4a4e-b345-9979df489529",
            "id_v1": "/sensors/113",
            "owner": {
              "rid": "0926fa94-9f22-4ca7-9e9c-ac15c3ba57b1",
              "rtype": "device"
            },
            "relative_rotary": {
              "last_event": {
                "action": "start",
                "rotation": {
                  "direction": "clock_wise",
                  "duration": 400,
                  "steps": 15
                }
              }
            },
            "type": "relative_rotary"
          }
        ],
        "id": "redacted-9af36863-8b45-4055-9b6b-fcc47ddf5470",
        "type": "update"
      }


### Additional information

_No response_

Mincka avatar Sep 17 '22 06:09 Mincka

hue documentation hue source (message by IssueLinks)

Hey there @balloob, @marcelveldt, mind taking a look at this issue as it has been labeled with an integration (hue) you are listed as a code owner for? Thanks! (message by CodeOwnersMention)

Don't close this little bot, we are still there looking for a fix!

Mincka avatar Oct 24 '22 12:10 Mincka

@marcelveldt Can you reopen this issue please? I missed the stale label being added last week. Thanks.

Mincka avatar Oct 24 '22 12:10 Mincka

There is a duplicate event filter in the code between aiohue and the hue integration and I think that is the one causing this. I will try to find some time this week to fix it.

marcelveldt avatar Oct 27 '22 07:10 marcelveldt

There is a duplicate event filter in the code between aiohue and the hue integration and I think that is the one causing this. I will try to find some time this week to fix it.

Is there possibly any news on this issue? I've just got the Hue Tap Dial Switch and so far it works quite well in HA. However it indeed does filter out dublicate events, so I have to fire a different event first te retrigger the previous event.

The Tap Dial is so much faster than the Ikea Symfonisk for volume control (near instant).

iamelec avatar Nov 12 '22 10:11 iamelec

For anyone interested, the rotation support will be supported in Deconz in Home Assistant 2012.12. https://github.com/Kane610/deconz/issues/359 I tested it in beta and it works really great, by rotating it slow or very fast. Since I only use the Hue Integration for devices that are not yet fully supported in Deconz, I don't need personally need this issue to be fixed anymore, but since there is interest from other people, I leave it open.

Mincka avatar Nov 30 '22 20:11 Mincka

I'm currently using zigbee2mqtt which supports the tap dimmer really well!

iamelec avatar Nov 30 '22 21:11 iamelec