fix: match BW's 5A frame probe to parse event-time metadata.

This commit is contained in:
Brian Harrison
2026-04-02 16:57:12 -04:00
parent 9bf20803c2
commit 66967e036c
2 changed files with 67 additions and 5 deletions

View File

@@ -29,6 +29,7 @@ from .framing import (
S3Frame,
S3FrameParser,
build_bw_frame,
build_5a_frame,
waveform_key_params,
token_params,
bulk_waveform_params,
@@ -465,7 +466,7 @@ class MiniMateProtocol:
# ── Step 1: probe ────────────────────────────────────────────────────
log.debug("5A probe key=%s", key4.hex())
params = bulk_waveform_params(key4, 0, is_probe=True)
self._send(build_bw_frame(SUB_BULK_WAVEFORM, _BULK_CHUNK_OFFSET, params))
self._send(build_5a_frame(_BULK_CHUNK_OFFSET, params))
rsp = self._recv_one(expected_sub=rsp_sub)
frames_data.append(rsp.data)
log.debug("5A A5[0] page_key=0x%04X %d bytes", rsp.page_key, len(rsp.data))
@@ -475,7 +476,7 @@ class MiniMateProtocol:
counter = chunk_num * _BULK_COUNTER_STEP
params = bulk_waveform_params(key4, counter)
log.debug("5A chunk %d counter=0x%04X", chunk_num, counter)
self._send(build_bw_frame(SUB_BULK_WAVEFORM, _BULK_CHUNK_OFFSET, params))
self._send(build_5a_frame(_BULK_CHUNK_OFFSET, params))
rsp = self._recv_one(expected_sub=rsp_sub)
if rsp.page_key == 0x0000:
@@ -505,7 +506,7 @@ class MiniMateProtocol:
"5A termination term_counter=0x%04X offset=0x%04X",
term_counter, _BULK_TERM_OFFSET,
)
self._send(build_bw_frame(SUB_BULK_WAVEFORM, _BULK_TERM_OFFSET, term_params))
self._send(build_5a_frame(_BULK_TERM_OFFSET, term_params))
try:
term_rsp = self._recv_one(expected_sub=rsp_sub)
log.debug(