zigpy-zigate
zigpy-zigate copied to clipboard
Homeassistant zigbee 2022.10.0 not starting with zigpy error
Hi,
Zigbee Homeassistant component is no longer starting since latest upgrade yesterday on version 2022.10. I'm using a zigate dongle.
Hard to see from the logs if it originates int zigpy or zigpy-zigate as both got recent update.
- ZiGate USB-TTL dongle - 3.1d
- Home Assistant 2022.10.0
- Supervisor 2022.09.1
- Operating System 9.0
- Version requirements for hass 2022.10
# homeassistant.components.zha
zigpy-zigate==0.10.0
# homeassistant.components.zha
zigpy==0.51.2
I'm opening an issue in zigpy repo as well.
Screenshot below and full log attached.
Associated zigpy issue: https://github.com/zigpy/zigpy/issues/1067
Could you include a debug log of it correctly starting up with the last-working release?
It appears that even in this version, every single packet is failing to send but the error is being ignored:
2022-10-06 22:07:13.621 DEBUG (MainThread) [zigpy_zigate.zigbee.application] APS Data confirm Fail 196 Status.unknown_0xD4
What hardware specifically are you using? Is this a ZiGate or ZiGate+?
ZiGate first version
Can you try to update your ZiGate's firmware? It looks like the latest version is now 3.21: https://github.com/fairecasoimeme/ZiGate/releases
Do you know if I can safely upgrade from 3.1d to 3.21 without having to repair all devices ? I've got about 40 devices and I can't do that easily.
I don't own a first generation ZiGate so I am not sure.
@pipiche38 any ideas? Is this error code expected?
It seems that 3.21 is for v2 only. I'm not that far off with my current version 3.1d.
I don't own a first generation ZiGate so I am not sure.
@pipiche38 any ideas? Is this error code expected?
I don't know what you mean is this code expected. In fact these are linked to 0x8011 and 0x8012 APS Success/Failure. 3.1d for me is an old stuff and 3.21 which is also almost 1 year old is the best to take for ZiGate V1 ( https://github.com/fairecasoimeme/ZiGate/releases/ )
Last you will have to check with @fairecasoimeme if you don't need to re-initialise the Zigate due to the newest firmware version ? and so re-pair all devices
I'm referring to this:
# Sending a `permit(0)` broadcast
2022-10-06 10:15:54.101 DEBUG (MainThread) [zigpy_zigate.zigbee.application] Sending packet ZigbeePacket(src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), 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=10, profile_id=0, cluster_id=<ZDOCmd.Mgmt_Permit_Joining_req: 0x0036>, data=Serialized[b'\n\x00\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=None, rssi=None)
# Corresponding ZiGate command
2022-10-06 10:15:54.101 DEBUG (MainThread) [zigpy_zigate.api] Sending CommandId.SEND_RAW_APS_DATA_PACKET (b'\x04\xff\xfc\x00\x00\x006\x00\x00\x00\x00\x03\n\x00\x00'), waiting for status: True, waiting for response: None
2022-10-06 10:15:54.101 DEBUG (MainThread) [zigpy_zigate.uart] Send: 0x0530 b'04fffc0000003600000000030a0000'
2022-10-06 10:15:54.102 DEBUG (MainThread) [zigpy_zigate.uart] Frame to send: b'\x050\x00\x0f\x02\x04\xff\xfc\x00\x00\x006\x00\x00\x00\x00\x03\n\x00\x00'
2022-10-06 10:15:54.102 DEBUG (MainThread) [zigpy_zigate.uart] Frame escaped: b'\x02\x150\x02\x10\x02\x1f\x02\x12\x02\x14\xff\xfc\x02\x10\x02\x10\x02\x106\x02\x10\x02\x10\x02\x10\x02\x10\x02\x13\x02\x1a\x02\x10\x02\x10'
2022-10-06 10:15:54.104 DEBUG (MainThread) [zigpy_zigate.api] Wait for status to command CommandId.SEND_RAW_APS_DATA_PACKET
2022-10-06 10:15:54.191 DEBUG (MainThread) [zigpy_zigate.uart] Frame received: 8000000714a6000530000000
# Received an unknown 0xA6 status
2022-10-06 10:15:54.191 DEBUG (MainThread) [zigpy_zigate.api] data received 0x8000 b'a60005300000' LQI:0
2022-10-06 10:15:54.192 DEBUG (MainThread) [zigpy_zigate.zigbee.application] zigate_callback_handler ResponseId.STATUS [<Status.unknown_0xA6: 166>, 0, 1328, b'\x00\x00']
^^^^^^^^^^^^
According to https://www.nxp.com/docs/en/user-guide/JN-UG-3113.pdf:
0xA6:
zps_APL_APS_E_INVALID_PARAMETER
@guirem's log shows that every single request fails with this same error code (which zigpy-zigate was ignoring), yet the network is functional.
to be check with @fairecasoimeme, that is pure ZiGate firmware related things and even more in a RAW Mode manner. In all cases you shouldn't have any differences between HW version of ZiGate.
I've downgraded my ZiGate+ to 3.1e (the earliest firmware available for it) and it still works as before. It must be some problem with 3.1d.
I'm confirm this is a firmware problem. I have no problem with ZiGate V1 USB TTL on firmware 3.21.
You really should upgrade
@doudz can I safely upgrade from 3.1d to 3.21-legacy without having to repair all devices?
Yes you could upgrade without repairing devices but you just have to take care to not erase the EEPROM
I really tried to upgrade my PiZigate v1 w/o success (I have been successful in the past). I booted on an official image of RPi Debian Bullseye 64bits.
I find the documentation of zigate.fr difficult to browse so after many clicks I collected these steps:
- sudo nano /boot/config.txt to add
enable_uart=1
- sudo nano /boot/cmdline.txt to remove
console=serial0,115200
After the reboot, the blue light still low. I don't know if it's OK.
-
It isn't possible anymore to install the required https://project-downloads.drogon.net/wiringpi-latest.deb package :/
-
I tried to reproduce the Flash instructions by using:
raspi-gpio set 0 op
raspi-gpio set 2 op
raspi-gpio set 2 dh
raspi-gpio set 0 dl
raspi-gpio set 0 dh
- flash with v0.7(r56124)
sudo JennicModuleProgrammer -V 6 -P 115200 -f ZiGate_v3.21-legacy.bin -s /dev/ttyAMA0
Error setting baudrate...