Skip to content

v0.3.9 - Wake-learning guard (session-refresh packets)

Choose a tag to compare

@actabi actabi released this 07 Jun 14:33

Fixed

Wake learning can no longer be overwritten by session-refresh packets.

The official Coffee Link app emits 0x84 0x0f frames that are not a power-on (e.g. params 03 02, seen in issue #1 captures). The sniffer used to learn any power-family frame as the wake frame, so such a packet could silently replace the learned power-on frame and break the Wake button replay.

  • Only frames with the real wake params (02 01) are now learned as the wake frame.
  • A non-wake frame persisted by an earlier version is discarded at startup, with a log message asking to power the machine on once from the official app to re-learn.

No behaviour change on the PrimaDonna Soul (DL-millcore) or on the Eletta beverage learn-replay path. 44 tests pass.

Thanks @TischenkoArseny for spotting the overwrite path (#1).