Skip to content

Lutron Caseta integration sometimes doesn't catch button presses #135937

Description

@ghTravis

The problem

Hi. I recently installed a bunch of Lutron Caseta devices in my home and have begun experimenting with the Lutron integration. I have 17 devices paired to my Lutron bridge which is in the garage. All the devices appear to have good signal. Max range of the furthest device is maybe 20 ft from the bridge spanning 2 floors. I've noticed that button presses with my Pico remotes don't always register in homeassistant.

I have the non pro bridge with a bunch of 4 button Lutron Casetas hardwired, and about 6 or so pico remotes that all work flawlessly with other lutron devices and haven't had any issues controlling lights. I have 1 pico that is hooked up to an automation in my homeassistant to toggle Phillips Hue light bulbs on and off, and another pico to toggle a Sonoff flashed with Tasmota (connected via wifi).

Image

In the screenshot of the logbook above, it shows 6 minutes in between the most recent press (which is only registering the release event by the way, should also have the press event) but I pressed buttons on the pico remote probably 15 times within those 6 minutes. I'm probably about 10ft from the bridge at maximum for this test. This is happening on both picos that I want to control other-than-lutron devices.

What version of Home Assistant Core has the issue?

core-2024.12.5

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

Lutron

Link to integration documentation on our website

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

Diagnostics information

config_entry-lutron_caseta-01JF23BTQCNQK5WX3G87V6H0R9(2).json

Example YAML snippet

Anything in the logs that might be useful for us?

2025-01-18 11:33:12.673 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}})
2025-01-18 11:33:12.911 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}}}
2025-01-18 11:33:12.911 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}})
2025-01-18 11:33:14.146 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}}}
2025-01-18 11:33:14.146 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}})
2025-01-18 11:33:14.299 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}}}
2025-01-18 11:33:14.299 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}})
2025-01-18 11:33:15.614 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}}}
2025-01-18 11:33:15.614 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}})
2025-01-18 11:33:15.768 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}}}
2025-01-18 11:33:15.768 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}})
2025-01-18 11:33:33.744 DEBUG (MainThread) [pylutron_caseta.leap] sending b'{"CommuniqueType": "ReadRequest", "Header": {"ClientTag": "0dc48fce-7707-4a2a-b0bd-6189f9278eed", "Url": "/server/1/status/ping"}}'
2025-01-18 11:33:33.749 DEBUG (MainThread) [pylutron_caseta.leap] received: {'CommuniqueType': 'ReadResponse', 'Header': {'MessageBodyType': 'OnePingResponse', 'StatusCode': '200 OK', 'Url': '/server/1/status/ping'}, 'Body': {'PingResponse': {'LEAPVersion': 1.122}}}
2025-01-18 11:35:04.472 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}}}
2025-01-18 11:35:04.472 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}})
2025-01-18 11:35:05.227 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}}}
2025-01-18 11:35:05.227 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}})
2025-01-18 11:35:07.528 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}}}
2025-01-18 11:35:07.528 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Press'}}})
2025-01-18 11:35:07.602 DEBUG (MainThread) [pylutron_caseta.leap] received for subscription 00b67902-7398-4326-98c1-589a26c6632e: {'CommuniqueType': 'UpdateResponse', 'Header': {'MessageBodyType': 'OneButtonStatusEvent', 'StatusCode': '200 OK', 'Url': '/button/143/status/event'}, 'Body': {'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}}}
2025-01-18 11:35:07.602 DEBUG (MainThread) [pylutron_caseta.smartbridge] Handling button status: Response(Header=ResponseHeader(StatusCode=ResponseStatus(200, 'OK'), Url='/button/143/status/event', MessageBodyType='OneButtonStatusEvent', Paging=None), CommuniqueType='UpdateResponse', Body={'ButtonStatus': {'Button': {'href': '/button/143'}, 'ButtonEvent': {'EventType': 'Release'}}})

Additional information

I did a packet dump on homeassistant with a src of the lutron bridge device and I can see that when I press the button, it will register as a packet incoming but when it doesn't register I dont see any packets.

Image

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions