home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
71.07k stars 29.73k forks source link

ZHA cannot configure Frient A/S SMSZB-120 smokedetector #97287

Open SchulieBug opened 1 year ago

SchulieBug commented 1 year ago

The problem

I'm trying to add Frient A/S SMSZB-120 smokedetector to my Zigbee network but after the interview phase it isn't configured, though only 2 meters away from the coordinator, resulting in a device not usable. I do already have one Frient A/S SMSZB-120 smokedetector added to the network (located in the kitchen).

I deleted the device from HA, gave it a reset and tried to re-add it several ways (other routers, coordinator), nothing works. I'm still trying to get the network stable and am only using a Sonoff Zigbee 3.0 USB Dongle Plus V2 and 4 wallplugs as router, one on the groundfloor in the kitchen, one in the master bedroom on the 1st floor and two on the second floor. The routers seem to react good.

I have my thoughts on the stability of the network.. The coordinator is in the central meter box and the routers could be having a bad signal. The concrete floors could be giving some issues? Since the first smoke alarm was connected without issues and the second one, almost next to the coordinator, isn't, it doesn't look a network issue to me :(

What version of Home Assistant Core has the issue?

core-2023.7.3

What was the last working version of Home Assistant Core?

NA

What type of installation are you running?

Home Assistant OS

Integration causing the issue

ZHA

Link to integration documentation on our website

No response

Diagnostics information

home-assistant_zha_2023-07-26.log

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

home-assistant[bot] commented 1 year ago

Hey there @dmulcahey, @adminiuga, @puddly, mind taking a look at this issue as it has been labeled with an integration (zha) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `zha` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign zha` Removes the current integration label and assignees on the issue, add the integration domain after the command.

(message by CodeOwnersMention)


zha documentation zha source (message by IssueLinks)

Adminiuga commented 1 year ago

It failed to configure attribute reporting on on_off cluster for on_off attribute with "unsupported attribute" status. Which is strange, cause that is pretty much a standard attribute on this type of cluster. But important the other clusters seems to be configured successfully, so I'd confirm the device works and ignore this error.

You could also check the device software build id attribute on the basic cluster and confirm if there are any updated version from frient.

SchulieBug commented 1 year ago

I checked the device firmware (it's from Develco and the firmware is 4.0.2 found on Koenkk).

I checked this morning and i seems fine. I have one more that I can use, will do it this evening.

TheHolyRoger commented 1 year ago

This is strange, I have exactly the same problem.

I have 5 of these smoke sensors, 4 work absolutely fine. The one right next to my zigbee coordinator pairs once and then eventually drops to unavailable until I pair it again.

TheHolyRoger commented 1 year ago

I might have fixed mine by pairing it further away from the coordinator and then moving it back afterwards

SchulieBug commented 1 year ago

I did remove them after buying a sonoff zigbee stick and re-adding them again. The sonoff zibee stick looks way beter than the SkyConnect stick as of discovering devices/maintiaining connections

lorenzodeveloper commented 10 months ago

Hi, any news on this? I'm experiencing the same problem. Interview is done, but I cannot go beyond configuring phase. Thank you.

Ollek2006 commented 10 months ago

Hi, any news on this? I'm experiencing the same problem. Interview is done, but I cannot go beyond configuring phase. Thank you.

Complete system restart of Home Assistant helped me. Without having to retrain the smoke detector, everything was detected correctly.

lukasmedia commented 9 months ago

Is there a structural solution for this device? I'm having the same problem. Device was added; however, without entities. After an HA system restart the entities were there; but I can't use them; the smoke detector does not respond.

MarcHagen commented 9 months ago

(Home Assistent Yellow) 2023.11.3

I got 3 of the smoke sensors, two with 4.0.7 firmware and one 4.0.8. The 4.0.8 worked directly, but the other two didn't and had to restart home assistant twice.

After OTA updating all they just work. Tho had 1 that is misbehaving and triggers the other two.

Also Reconfiguring still it fails to the "DevelcoIasZone".

Commifreak commented 9 months ago

Same issue. Added (stuck at configuring, restarted HA and I see the device anyway), Firmware is already 4.0.8 (current_file_version=262152). I cant see battery or temp status. Configuring siren loudness seems to not work either.

HA 2023.11.3

MarcHagen commented 9 months ago

From what I've found, not all Fried devices have the Configuring siren loudness or the other values. Seems that other platforms dont have these config options.

ElToro1966 commented 8 months ago

I have several Frient devices and recently changed the zigbee coordinator to a Sonoff. I created the whole network anew, and everything works fine except the Frient devices. On adding them, I get stuck on "Configuring". The device is never declared ready. Moreover, there are no available entities for the device, see also attached screenshots.

I took a look at the core.device_registry and core.entity_registry in terminal, and the Frient device showed up as follows in the device_registry:

  {                                                                                                            
    "area_id": null,                                                                                           
    "config_entries": [                                                                                        
      "201481940134a40a971277448a94d218"                                                                       
    ],                                                                                                         
    "configuration_url": null,                                                                                 
    "connections": [                                                                                           
      [                                                                                                        
        "zigbee",                                                                                              
        "00:15:bc:00:31:01:78:e7"                                                                              
      ]                                                                                                        
    ],                                                                                                         
    "disabled_by": null,                                                                                       
    "entry_type": null,                                                                                        
    "hw_version": null,                                                                                        
    "id": "fbefd7b1d651a866efd8a9783cb635c4",                                                                  
    "identifiers": [                                                                                           
      [                                                                                                        
        "zha",                                                                                                 
        "00:15:bc:00:31:01:78:e7"                                                                              
      ]                                                                                                        
    ],                                                                                                         
    "manufacturer": "frient A/S",                                                                              
    "model": "SMSZB-120",                                                                                      
    "name_by_user": null,                                                                                      
    "name": "frient A/S SMSZB-120",                                                                            
    "serial_number": null,                                                                                     
    "sw_version": null,                                                                                        
    "via_device_id": null                                                                                      
  }   

However, there is no trace of the entities for the device in the entity_registry.

Screenshot from 2023-12-19 10-15-02 Screenshot from 2023-12-19 10-08-01

meibensteiner commented 8 months ago

Having the same issue. I get the following results when reconfiguring:

Screenshot 2023-12-29 at 19 15 41
peter-held commented 7 months ago

Same here:

image image

Any idea ?

peter-held commented 7 months ago

For me, the devices are working fine with all sensors, after I restarted HA.

image image

Commifreak commented 7 months ago

But none of the config changes get applied. At least at my end

peter-held commented 7 months ago

@Commifreak with config changes are you referring to "siren level", "siren tone", "strobe", "strobe level" ? How do you test them (for me, siren level, seems to increase loudness, siren tone does nothing, strobe and strobe level, I don't know how to test them) ? Does anybody know what should "Switch" and "Binary input", do ? When I set "Switch", I get: image

Thanks.

Commifreak commented 7 months ago

How do you test them (for me, siren level, seems to increase loudness

Thats not working for me. I set it to be the lowest and its still default loud :/

frazer84 commented 7 months ago

Same here with ZHA using SkyConnect and latest version of HA. Got stuck at "Configuring" when added the device. After restarting HA it appears but the commands doesn't work. And is it supposed to say "Binary sensor" (what does it sense?).

Screenshot_2024-01-20-14-40-24-31_c3a231c25ed346e59462e84656a70e50.jpg

Screenshot_2024-01-20-14-41-23-14_c3a231c25ed346e59462e84656a70e50.jpg

Simonmaignan commented 7 months ago

I had the same issue with the configuration and restarting HA seems to have solved my issue.

Nomisdk86 commented 6 months ago

For me i had issues with getting it past the interview phase, and when i finally got it, it was stuck at configuring. Restarted HA, and i am then able to use the Siren function, but the Temperature is not show :/ Is there anyway to fix this?

GentleHoneyLover commented 5 months ago

I confirm the same behavior on ZHA with SkyConnect. After HA restart all entities and sensors appear.

Has anyone had luck with configuring the siren level and tone?

Creddi commented 5 months ago

Same here, worked after reboot.

korpx commented 3 months ago

Had the same problem adding with my first smoke detector. Worked after reboot. Tried a second one today and I can't get it to work. It does not seem to pass the interview. Tried rebooting. Tried pairing. Multiple times. Tried resetting the smoke detector and adding again. Multiple times.

image

Log; Feeding watchdog [0xAD3E](BADRING Water Leakage Sensor): Device seen - marking the device available and resetting counter [0xAD3E](BADRING Water Leakage Sensor): Update device availability - device available: True - new availability: True - changed: False [0x507F](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x507F](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog [0x7524](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x7524](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog 0x448F: Device seen - marking the device available and resetting counter 0x448F: Update device availability - device available: True - new availability: True - changed: False [0x2238](TRETAKT Smart plug): Device seen - marking the device available and resetting counter [0x2238](TRETAKT Smart plug): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog New device 0x9a96 (00:15:bc:00:31:00:dc:af) joined the network [0x9a96] Scheduling initialization Tries remaining: 5 [0x9a96] Requesting 'Node Descriptor' [0x9a96] Extending timeout for 0x01 request Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 52, 11, 600181, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9A96), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.Broadcast: 15>, address=<BroadcastAddress.ALL_ROUTERS_AND_COORDINATOR: 65532>), dst_ep=0, source_route=None, extended_timeout=False, tsn=0, profile_id=0, cluster_id=19, data=Serialized[b'\x00\x96\x9a\xaf\xdc\x001\x00\xbc\x15\x00\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=64, rssi=-84) Device 0x9a96 (00:15:bc:00:31:00:dc:af) joined the network [0x9a96] Scheduling initialization [0x9a96] Canceling old initialize call Received frame on uninitialized device from ep 0 to ep 0, cluster 19: Serialized[b'\x00\x96\x9a\xaf\xdc\x001\x00\xbc\x15\x00\x00'] [0x9a96:zdo] ZDO request ZDOCmd.Device_annce: [0x9A96, 00:15:bc:00:31:00:dc:af, 0] Tries remaining: 5 [0x9a96] Requesting 'Node Descriptor' [0x9a96] Extending timeout for 0x02 request Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 52, 11, 629154, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9A96), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=0, source_route=None, extended_timeout=False, tsn=2, profile_id=0, cluster_id=2, data=Serialized[b'\x01\x00\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=68, rssi=-83) Received frame on uninitialized device from ep 0 to ep 0, cluster 2: Serialized[b'\x01\x00\x00'] [0x9a96:zdo] ZDO request ZDOCmd.Node_Desc_req: [0x0000] [0x9a96:zdo] No handler for ZDO request:ZDOCmd.Node_Desc_req([0x0000]) Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 52, 11, 685028, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9A96), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=0, source_route=None, extended_timeout=False, tsn=4, profile_id=0, cluster_id=32770, data=Serialized[b'\x01\x80\x96\x9a\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=64, rssi=-84) Received frame on uninitialized device from ep 0 to ep 0, cluster 32770: Serialized[b'\x01\x80\x96\x9a\x00'] [0x9a96:zdo] ZDO request ZDOCmd.Node_Desc_rsp: [<Status.INV_REQUESTTYPE: 128>, 0x9A96, None] [0x9a96:zdo] No handler for ZDO request:ZDOCmd.Node_Desc_rsp([<Status.INV_REQUESTTYPE: 128>, 0x9A96, None]) Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 52, 13, 457928, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9A96), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=0, source_route=None, extended_timeout=False, tsn=6, profile_id=0, cluster_id=32770, data=Serialized[b'\x02\x80\x96\x9a\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=84, rssi=-79) Received frame on uninitialized device from ep 0 to ep 0, cluster 32770: Serialized[b'\x02\x80\x96\x9a\x00'] Tries remaining: 4 [0x9a96] Requesting 'Node Descriptor' [0x9a96] Extending timeout for 0x03 request Feeding watchdog Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 52, 21, 566716, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9A96), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=0, source_route=None, extended_timeout=False, tsn=8, profile_id=0, cluster_id=2, data=Serialized[b'\x03\x00\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=84, rssi=-79) Received frame on uninitialized device from ep 0 to ep 0, cluster 2: Serialized[b'\x03\x00\x00'] [0x9a96:zdo] ZDO request ZDOCmd.Node_Desc_req: [0x0000] [0x9a96:zdo] No handler for ZDO request:ZDOCmd.Node_Desc_req([0x0000]) Feeding watchdog Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 52, 31, 587481, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9A96), src_ep=0, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=0, source_route=None, extended_timeout=False, tsn=10, profile_id=0, cluster_id=2, data=Serialized[b'\t\x00\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=92, rssi=-77) Received frame on uninitialized device from ep 0 to ep 0, cluster 2: Serialized[b'\t\x00\x00'] [0x9a96:zdo] ZDO request ZDOCmd.Node_Desc_req: [0x0000] [0x9a96:zdo] No handler for ZDO request:ZDOCmd.Node_Desc_req([0x0000]) Feeding watchdog Feeding watchdog Feeding watchdog [0xAD3E](BADRING Water Leakage Sensor): Device seen - marking the device available and resetting counter [0xAD3E](BADRING Water Leakage Sensor): Update device availability - device available: True - new availability: True - changed: False [0x7524](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x7524](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False [0x507F](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x507F](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog [0x2238](TRETAKT Smart plug): Device seen - marking the device available and resetting counter [0x2238](TRETAKT Smart plug): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog 0x448F: Device seen - marking the device available and resetting counter 0x448F: Update device availability - device available: True - new availability: True - changed: False Feeding watchdog Feeding watchdog Feeding watchdog Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 53, 52, 110571, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x448F), src_ep=35, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=224, profile_id=260, cluster_id=1280, data=Serialized[b'\x19\xcf\x000\x00\x00\x00\xff\xff'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=152, rssi=-62) [0x448F:35:0x0500] Received ZCL frame: b'\x19\xcf\x000\x00\x00\x00\xff\xff' [0x448F:35:0x0500] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl<0x19>(frame_type=<FrameType.CLUSTER_COMMAND: 1>, is_manufacturer_specific=0, direction=<Direction.Server_to_Client: 1>, disable_default_response=1, reserved=0, is_cluster=True, is_general=False), tsn=207, command_id=0, *direction=<Direction.Server_to_Client: 1>) [0x448F:35:0x0500] Decoded ZCL frame: DevelcoIasZone:status_change_notification(zone_status=<ZoneStatus.Supervision_reports|Restore_reports: 48>, extended_status=<bitmap8: 0>, zone_id=0, delay=65535) [0x448F:35:0x0500] Received command 0x00 (TSN 207): status_change_notification(zone_status=<ZoneStatus.Supervision_reports|Restore_reports: 48>, extended_status=<bitmap8: 0>, zone_id=0, delay=65535) [0x448F:35:0x0500]: Updated alarm state: 48 Feeding watchdog [0x7524](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x7524](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog Tries remaining: 3 [0x9a96] Requesting 'Node Descriptor' [0x9a96] Extending timeout for 0x04 request Feeding watchdog [0xAD3E](BADRING Water Leakage Sensor): Device seen - marking the device available and resetting counter [0xAD3E](BADRING Water Leakage Sensor): Update device availability - device available: True - new availability: True - changed: False Tries remaining: 2 [0x9a96] Requesting 'Node Descriptor' [0x9a96] Extending timeout for 0x05 request [0x2238](TRETAKT Smart plug): Device seen - marking the device available and resetting counter [0x2238](TRETAKT Smart plug): Update device availability - device available: True - new availability: True - changed: False Tries remaining: 1 [0x9a96] Requesting 'Node Descriptor' [0x9a96] Extending timeout for 0x06 request [0x507F](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x507F](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog 0x448F: Device seen - marking the device available and resetting counter 0x448F: Update device availability - device available: True - new availability: True - changed: False Feeding watchdog Feeding watchdog Feeding watchdog [0x7524](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x7524](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog Feeding watchdog Feeding watchdog [0x2238](TRETAKT Smart plug): Device seen - marking the device available and resetting counter [0x2238](TRETAKT Smart plug): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog [0xAD3E](BADRING Water Leakage Sensor): Device seen - marking the device available and resetting counter [0xAD3E](BADRING Water Leakage Sensor): Update device availability - device available: True - new availability: True - changed: False 0x448F: Device seen - marking the device available and resetting counter 0x448F: Update device availability - device available: True - new availability: True - changed: False Feeding watchdog [0x507F](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x507F](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog Feeding watchdog [0x7524](RODRET Dimmer): Device seen - marking the device available and resetting counter [0x7524](RODRET Dimmer): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(timestamp=datetime.datetime(2024, 6, 8, 19, 56, 15, 873321, tzinfo=datetime.timezone.utc), src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x2238), src_ep=1, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=169, profile_id=260, cluster_id=8, data=Serialized[b'\x08g\n\x00\x00 \xfe'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=144, rssi=-64) [0x2238] Ignoring message on unknown cluster 8 for endpoint <CustomEndpoint id=1 in=[basic:0x0000, identify:0x0003, groups:0x0004, scenes:0x0005, on_off:0x0006, lightlink:0x1000, manufacturer_specific:0xFC57, manufacturer_specific:0xFC7C, manufacturer_specific:0xFC85] out=[ota:0x0019] status=<Status.ZDO_INIT: 1>> Feeding watchdog Feeding watchdog Feeding watchdog [0x2238](TRETAKT Smart plug): Device seen - marking the device available and resetting counter [0x2238](TRETAKT Smart plug): Update device availability - device available: True - new availability: True - changed: False Feeding watchdog 0x448F: Device seen - marking the device available and resetting counter 0x448F: Update device availability - device available: True - new availability: True - changed: False Feeding watchdog [0xAD3E](BADRING Water Leakage Sensor): Device seen - marking the device available and resetting counter [0xAD3E](BADRING Water Leakage Sensor): Update device availability - device available: True - new availability: True - changed: False

alexander-jung commented 2 months ago

same problem here - older devices, reporting Firmware 0x00040002 work, new device with Firmware 0x00040004 gets the same problems as reported above.

Device was fresh out of the box, no other config or app connection was there. Zigbee is via a Conbee II, if that is relevant.

korpx commented 2 months ago

I made progress tonight by updating the firmware of my Sonoff Zigbee 3.0 USB Dongle Plus to version 7.4.3.0 build 0 from; https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/NCP_7.4.3

Due to a Home Assistant update fail going from 2024.6.3 to 2024.6.4 my Home Assistant was unstable tonight so I also did a clean reinstall and then restored a partial backup though I am pretty sure the firmware update was the solution that made the difference for me.

I have now been able to add the two smoke detectors that I was having problems with earlier. The interview phase finishes but it still hangs on the configure phase. Reloading the ZHA integration afterwards make them show up reporting battery status, temperature etc.

Also, I want to give kudos to Frient technical support. I informed them of this thread and they replied to my emails really quickly last week. Their first suggestion was to make sure the firmware of the controller was updated which I thought it was. They even tried out their smoke detectors with Home Assistant (both ZHA and Z2M) using Conbee II, and there were no issues on their side. To make sure I really had the latest firmware for my dongle I dug a little deeper past the Sonoff support site (which I found very confusing) and found the Github repository linked above. I got the dongle in April and it came with a 2 year old firmware.

So anyway, make extra sure your controllers run an updated firmware :-)

DucLeto51 commented 1 month ago

Same problem here. I have three detectors, one is correct (don't know why) but two stay on configuring... I've upgraded Sonoff dongle to 7.4.3 but still the same issue.