ZHA - IKEA Tradfri Shortcut button

hmmm, what happens when you listen to zha_event?

FWIW when using a Conbee II stick, I see events listening to deconz_event

Sorry for the delay, been away!

Here’s what I’m getting in logs:

Error while executing automation automation.ensuite_tradfri_shower_button: UndefinedError: 'dict object' has no attribute 'event'
23:15:08 – (ERROR) Automation
Ensuite - Tradfri Shower Button: Error executing script. Error rendering template for variables at pos 1: UndefinedError: 'dict object' has no attribute 'event'
23:15:08 – (ERROR) Automation

Listening didnt produce anything (could be me!)

1 Like

Im getting the same on a new shortcut button with ZHA.

Error executing script. Error rendering template for variables at pos 1: UndefinedError: 'dict object' has no attribute 'event'

I’m getting the same error with a TRÅDFRI shortcut button. The same button bought about two years ago works well in the bathroom.

I bought today a new button for the office. It pairs successfully with Home Assistant.

When I go to Developer Tools and listen to zha_event, I see the presses from the older bathroom button. I do not see the button presses from the newer button in the office.

Can it be that IKEA changed the firmware for the TRÅDFRI shortcut button, and this new firmware is not supported by ZHA?

1 Like

I updated to the latest version of Home Assistant 2022.10.4 and turned on debug logging for ZHA. I filtered logs by the old working button in bathroom (0xdc61) and the new not-working button in the office (0xfd66).

old working button in bathroom (0xdc61):

2022-10-18 11:33:25.791 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0000] Attribute id: 4 value: IKEA of Sweden
2022-10-18 11:33:25.791 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0000] Attribute id: 5 value: TRADFRI SHORTCUT Button
2022-10-18 11:33:25.984 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0000] Attribute id: 4 value: IKEA of Sweden
2022-10-18 11:33:26.002 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0000] Attribute id: 5 value: TRADFRI SHORTCUT Button
2022-10-18 11:33:26.002 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0001] Attribute id: 49 value: 10
2022-10-18 11:33:26.002 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0001] Attribute id: 51 value: 1
2022-10-18 11:33:26.005 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0001] Attribute id: 33 value: 22
2022-10-18 11:33:26.028 DEBUG (MainThread) [zigpy.appdb] [0xdc61:1:0x0001] Attribute id: 32 value: 23
2022-10-18 11:33:27.072 DEBUG (MainThread) [homeassistant.components.zha.core.gateway] [0xDC61](IKEA of Sweden TRADFRI SHORTCUT Button) restored as 'available', last seen: 0:18:33 ago, consider_unavailable_time: 21600 seconds
2022-10-18 11:33:27.095 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): started initialization
2022-10-18 11:33:27.095 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:ZDO](TRADFRI SHORTCUT Button): 'async_initialize' stage succeeded
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0003]: initializing channel: from_cache: True
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0003]: finished channel initialization
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0000]: initializing channel: from_cache: True
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0000]: finished channel initialization
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: initializing channel: from_cache: True
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: initializing uncached channel attributes: ['battery_voltage', 'battery_percentage_remaining'] - from cache[True]
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: Reading attributes in chunks: ['battery_voltage', 'battery_percentage_remaining']
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: Performing channel specific initialization: ['battery_voltage', 'battery_percentage_remaining']
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: Reading attributes in chunks: ['battery_size', 'battery_quantity']
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: finished channel initialization
2022-10-18 11:33:27.165 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x1000]: initializing channel: from_cache: True
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x1000]: finished channel initialization
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0020]: initializing channel: from_cache: True
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0020]: finished channel initialization
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0102]: initializing channel: from_cache: True
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0102]: finished channel initialization
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0008]: initializing channel: from_cache: True
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0008]: finished channel initialization
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0006]: initializing channel: from_cache: True
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0006]: finished channel initialization
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0019]: initializing channel: from_cache: True
2022-10-18 11:33:27.166 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0019]: finished channel initialization
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0003]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0000]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0001]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x1000]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0020]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0102]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0008]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0006]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.218 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xDC61:1:0x0019]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.229 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): power source: Battery or Unknown
2022-10-18 11:33:27.229 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): completed initialization
2022-10-18 11:34:28.070 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:34:28.071 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:35:29.071 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:35:29.071 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:36:30.072 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:36:30.072 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:37:31.072 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:37:31.073 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:38:32.073 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:38:32.073 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:39:33.074 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:39:33.074 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xDC61](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:39:47.990 DEBUG (MainThread) [zigpy_deconz.api] Received command aps_data_indication[35, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=AddressMode.NWK address=0xfffd>, 0, <DeconzAddress address_mode=AddressMode.NWK address=0xdc61>, 0, 0, 19, b'\x82a\xdc\x1f\xe4\xae\xfe\xff\x14C\x0c\x80', 0, 175, 255, 171, 198, 195, 0, -49]
2022-10-18 11:39:47.991 DEBUG (MainThread) [zigpy_deconz.api] APS data indication response: [35, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=AddressMode.NWK address=0xfffd>, 0, <DeconzAddress address_mode=AddressMode.NWK address=0xdc61>, 0, 0, 19, b'\x82a\xdc\x1f\xe4\xae\xfe\xff\x14C\x0c\x80', 0, 175, 255, 171, 198, 195, 0, -49]
2022-10-18 11:39:47.991 DEBUG (MainThread) [zigpy.application] Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0xDC61), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.Broadcast: 15>, address=<BroadcastAddress.RX_ON_WHEN_IDLE: 65533>), dst_ep=0, source_route=None, extended_timeout=False, tsn=None, profile_id=0, cluster_id=19, data=Serialized[b'\x82a\xdc\x1f\xe4\xae\xfe\xff\x14C\x0c\x80'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=255, rssi=-49)
2022-10-18 11:39:47.992 INFO (MainThread) [zigpy.application] Device 0xdc61 (0c:43:14:ff:fe:ae:e4:1f) joined the network
2022-10-18 11:39:47.993 DEBUG (MainThread) [zigpy.zdo] [0xdc61:zdo] ZDO request ZDOCmd.Device_annce: [0xDC61, 0c:43:14:ff:fe:ae:e4:1f, 128]
2022-10-18 11:39:47.994 DEBUG (MainThread) [zigpy_deconz.api] 'aps_data_indication' response from <DeconzAddress address_mode=AddressMode.NWK address=0xdc61>, ep: 0, profile: 0x0000, cluster_id: 0x0013, data: b'8261dc1fe4aefeff14430c80'
2022-10-18 11:40:17.471 DEBUG (MainThread) [zigpy_deconz.api] Received command aps_data_indication[35, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=AddressMode.NWK address=0xfffd>, 0, <DeconzAddress address_mode=AddressMode.NWK address=0xdc61>, 0, 0, 19, b'\x82a\xdc\x1f\xe4\xae\xfe\xff\x14C\x0c\x80', 0, 175, 255, 182, 198, 195, 0, -52]
2022-10-18 11:40:17.471 DEBUG (MainThread) [zigpy_deconz.api] APS data indication response: [35, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=AddressMode.NWK address=0xfffd>, 0, <DeconzAddress address_mode=AddressMode.NWK address=0xdc61>, 0, 0, 19, b'\x82a\xdc\x1f\xe4\xae\xfe\xff\x14C\x0c\x80', 0, 175, 255, 182, 198, 195, 0, -52]
2022-10-18 11:40:17.472 DEBUG (MainThread) [zigpy.application] Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0xDC61), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.Broadcast: 15>, address=<BroadcastAddress.RX_ON_WHEN_IDLE: 65533>), dst_ep=0, source_route=None, extended_timeout=False, tsn=None, profile_id=0, cluster_id=19, data=Serialized[b'\x82a\xdc\x1f\xe4\xae\xfe\xff\x14C\x0c\x80'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=255, rssi=-52)
2022-10-18 11:40:17.472 INFO (MainThread) [zigpy.application] Device 0xdc61 (0c:43:14:ff:fe:ae:e4:1f) joined the network
2022-10-18 11:40:17.473 DEBUG (MainThread) [zigpy.zdo] [0xdc61:zdo] ZDO request ZDOCmd.Device_annce: [0xDC61, 0c:43:14:ff:fe:ae:e4:1f, 128]
2022-10-18 11:40:17.474 DEBUG (MainThread) [zigpy_deconz.api] 'aps_data_indication' response from <DeconzAddress address_mode=AddressMode.NWK address=0xdc61>, ep: 0, profile: 0x0000, cluster_id: 0x0013, data: b'8261dc1fe4aefeff14430c80'

new not-working button in the office (0xfd66):

2022-10-18 11:33:25.797 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0000] Attribute id: 4 value: IKEA of Sweden
2022-10-18 11:33:25.797 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0000] Attribute id: 5 value: TRADFRI SHORTCUT Button
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0000] Attribute id: 4 value: IKEA of Sweden
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0000] Attribute id: 5 value: TRADFRI SHORTCUT Button
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0020] Attribute id: 0 value: 13200
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0001] Attribute id: 32 value: 0
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0001] Attribute id: 33 value: 200
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0001] Attribute id: 49 value: 10
2022-10-18 11:33:26.040 DEBUG (MainThread) [zigpy.appdb] [0xfd66:1:0x0001] Attribute id: 51 value: 1
2022-10-18 11:33:27.083 DEBUG (MainThread) [homeassistant.components.zha.core.gateway] [0xFD66](IKEA of Sweden TRADFRI SHORTCUT Button) restored as 'available', last seen: 0:28:10 ago, consider_unavailable_time: 21600 seconds
2022-10-18 11:33:27.096 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): started initialization
2022-10-18 11:33:27.096 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:ZDO](TRADFRI SHORTCUT Button): 'async_initialize' stage succeeded
2022-10-18 11:33:27.170 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: initializing channel: from_cache: True
2022-10-18 11:33:27.170 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: initializing uncached channel attributes: ['battery_voltage', 'battery_percentage_remaining'] - from cache[True]
2022-10-18 11:33:27.170 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: Reading attributes in chunks: ['battery_voltage', 'battery_percentage_remaining']
2022-10-18 11:33:27.170 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: Performing channel specific initialization: ['battery_voltage', 'battery_percentage_remaining']
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: Reading attributes in chunks: ['battery_size', 'battery_quantity']
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0003]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0003]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0000]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0000]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x1000]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x1000]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0020]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0020]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0102]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0102]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0008]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0008]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0006]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0006]: finished channel initialization
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0019]: initializing channel: from_cache: True
2022-10-18 11:33:27.171 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0019]: finished channel initialization
2022-10-18 11:33:27.219 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0001]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.219 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0003]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.219 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0000]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.220 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x1000]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.220 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0020]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.220 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0102]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.220 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0008]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.220 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0006]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.220 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xFD66:1:0x0019]: 'async_initialize' stage succeeded
2022-10-18 11:33:27.230 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): power source: Battery or Unknown
2022-10-18 11:33:27.230 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): completed initialization
2022-10-18 11:34:54.082 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:34:54.082 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:36:21.082 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:36:21.083 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:37:48.083 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:37:48.083 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:39:15.084 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:39:15.084 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:40:42.085 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:40:42.085 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False
2022-10-18 11:42:09.086 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Device seen - marking the device available and resetting counter
2022-10-18 11:42:09.087 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0xFD66](TRADFRI SHORTCUT Button): Update device availability - device available: True - new availability: True - changed: False

I can’t even make an automation with this blueprint at all .

Every time it produces an error like this in the logs:


Logger: homeassistant.components.automation
Source: components/automation/__init__.py:285 
Integration: Automatisierung (documentation, issues) 
First occurred: 19:40:00 (174 occurrences) 
Last logged: 20:36:50

Blueprint ZHA - IKEA Tradfri Shortcut button generated invalid automation with inputs OrderedDict([('shortcut_button', 'e7838efe7f4b41a8e01ce2147563e549'), ('button_short', [OrderedDict([('service', 'notify.notify'), ('data', OrderedDict([('message', 'Klingel'), ('title', 'Klingel')]))])])]): expected a dictionary for dictionary value @ data['action'][0]['variables']. Got None extra keys not allowed @ data['action'][0]['args']. Got None extra keys not allowed @ data['action'][0]['cluster_id']. Got None extra keys not allowed @ data['action'][0]['command']. Got None extra keys not allowed @ data['action'][0]['endpoint_id']. Got None

I get an error while setting up the blueprint:

Message malformed: expected a dictionary for dictionary value @ data[‘action’][0][‘variables’]

This Error seems to appear regardless of the attributes set in the blueprint.
And ideas?

4 Likes

Also getting this “Message malformed” error

1 Like

Updated blueprint here:

1 Like

Edit: :white_check_mark: I solved it by myself, I have V2.0.80 and therefore used the wrong blueprint. Thank you anyway. :slight_smile:
2nd edit: here’s the template that I‘m using successfully until today (HAOS, ZHA, Shortcut button firmware 0x24040006)
https://community.home-assistant.io/t/zha-ikea-tradfri-shortcut-button-firmware-2-3-075-or-greater/402565

Hi there,
Thank you for the blueprint.
Unfortunately I run into this error:

Message malformed: expected a dictionary for dictionary value @ data['action'][0]['variables']

Is it just me or does anyone have a clue what I could have done wrong?
Thank you in advance! :slight_smile:
Micky

Edit: :white_check_mark: I solved it by myself, I have V2.0.80 and therefore used the wrong blueprint. Thank you anyway. :slight_smile:
2nd edit: here’s the template that I‘m using successfully until today (HAOS, ZHA, Shortcut button firmware 0x24040006)
https://community.home-assistant.io/t/zha-ikea-tradfri-shortcut-button-firmware-2-3-075-or-greater/402565

1 Like

Just picked up one of these to play with myself - did you even get one working, my experience is similar.

  • Device connects via add device in ZHA
  • no events are triggered when monitoring zha_events

I had this for a long time and running a few reconfigure on the device page while tapping the button eventually got it reporting.

I am getting this error also. What do I need to do? I have been looking at updating the Tradfri firmware. I follow the instructions, but seems my version of HA has different prompts.

I am on the current version of HA. Is there something else I should do?

I can;t get it working either : this is my error message. Message malformed: expected a dictionary for dictionary value @ data[‘action’][0][‘variables’]

Is this worth pursuing or is my dream of using this ikea shortcut button just that… a dream

Is this dead? Do I move on and get another smart button brand? thanks

for now I am thinking its dead. can use the dimmer ones as straight on/off buttons.

I also get this error: Message malformed: expected a dictionary for dictionary value @ data[‘action’][0][‘variables’]
My Firmware: 0x23015631.

So what would be the right blueprint for this? Can you provide a link?

Try updating the FW on your buttons, maybe that’s the culprit.
I configured the ZHA integration to auto update the firmware of IKEA devices by adding this to configuration.yaml:

zha:
  zigpy_config:
     ota:
        ikea_provider: true
        ledvance_provider: false
        salus_provider: false
        inovelli_provider: false

Keep in mind that you will need to restart HA in order to apply these changes.
Also, the update process is very slow and, if I remember correctly, only works with one device at a time (if you enable debug mode on the integration you should be able to see the percentage in the logs).
In new firmware versions the button can detect a long press or a double press and the event message is different, so this is probably why the template is broken.

The FW version which is currently running on my Tradfri Shortcut Buttons is 0x24040006

EDIT:
Just for completeness, I the template I always used for automations is this one.

1 Like

@GregoryWest @Bacchus Sorry for the late answer, I added the link to the blueprint I‘m using

Thanks for the update!

1 Like