Skip to content

0.2.1

Choose a tag to compare

@markusressel markusressel released this 23 Oct 01:14
· 81 commits to main since this release
3dd9385

Fixes

  • A connection could end up without notifications, which left it without acknowledgements for uploads and commands and without the heartbeat. The log message was could not subscribe to device notifications, uploads are not flow controlled: 'NoneType' object has no attribute 'start_notify'.
    • Cause: ConnectionManager.set_device is called whenever a scanner (f.e. the one of Home Assistant) sees the display again, which also happens while a connection attempt is running. It replaced the transport then, so the connect finished on the old transport and the subscription ran on the new one, which was never connected.
    • set_device now only remembers a newer BLEDevice for the same display, and the next connection uses it. Setting the device of a different display still replaces the transport right away. connect() subscribes on the transport it connected.

Everybody who uses set_device or IDotMatrixClient.set_ble_device (Home Assistant integrations) should update.