{ lib, pkgs, ... }: let pythonValidityPatch = pkgs.writeText "python-validity-python-3.14.patch" '' diff --git a/validitysensor/flash.py b/validitysensor/flash.py index d37f15a..be3d4a1 100644 --- a/validitysensor/flash.py +++ b/validitysensor/flash.py @@ -34,6 +34,10 @@ def get_flash_info(): rsp = tls.cmd(unhex('3e')) assert_status(rsp) rsp = rsp[2:] + if len(rsp) < 0xe: + # An uninitialised 06cb:009a returns only the success status word. + # Let init_flash() format it instead of failing in struct.unpack(). + return FlashInfo(None, 0, 0, 0, 0, []) hdr = rsp[:0xe] rsp = rsp[0xe:] jid0, jid1, blocks, unknown0, blocksize, unknown1, pcnt = unpack('