Skip to content

v0.3.0

Compare
Choose a tag to compare
@puddly puddly released this 07 Dec 19:10
· 361 commits to dev since this release

Security Fixes

  • CC2531 coordinators running Z-Stack Home 1.2 firmware erroneously permit joins on startup, even after being reset. Joins are now explicitly disabled every time the coordinator is started (home-assistant/core#43245).

New Features

  • Handle errors internal to Z-Stack by retrying requests within zigpy-znp. Missing routes are explicitly re-discovered using a few different methods, including manual source routing as a last resort. Thanks zigbee-herdsman!
  • Check for and re-discover missing routes before sending ZDO requests.
  • Upon receipt of a Trust Center key exchange notification, handle_join will be delayed for at most two seconds, until a device sends a ZDO Parent Announce broadcast.

Bugfixes

  • NVRAM backup and restore did not read/write tables except for the first and last items. This is now properly handled but the backup format is now backwards-incompatible.
  • ControllerApplication.force_remove does not throw exceptions (zigpy/zigpy#563).
  • Fix communication with devices using nonstandard profiles by always defaulting to endpoint 1 (#43)
  • Fix ZDOCmd.Mgmt_Rtg_req ZDO converter incorrectly sending ZDO.MgmtLqiReq instead of ZDO.MgmtRtgReq.

Internal Changes

  • NwkNvIds and OsalNvIds were improperly named. NwkNvIds are now OsalNvIds and OsalNvIds are now ExNvIds. The new-style and legacy NVRAM operations are now exposed via ZNP.nvram.read and ZNP.nvram.legacy_read, respectively. The ZNP.nvram object transparently handles items that require multiple reads/writes to fully populate and bypasses NVRAM read protection for secure items when used with certain builds of Z-Stack Home 1.2.
  • Shield request/response/callback coroutines from cancellation in order to reduce the number of logged unhandled command warnings.
  • Remove handling of "auto" as a device path.