From b5828de534107feb1e3be7cce65acfbf7c798901 Mon Sep 17 00:00:00 2001 From: Brian Harrison Date: Mon, 6 Apr 2026 23:34:33 -0400 Subject: [PATCH] fix: remove hardcoded fi==9 skip in _decode_a5_waveform MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Frame index 9 was assumed to be the device terminator based on the 9-frame original blast capture. For streams with >9 frames (current device produces 35), fi==9 is live waveform data — the skip was dropping ~133 sample-sets per event. Terminator detection is handled upstream via page_key==0x0000 in read_bulk_waveform_stream, so no index-based skip is needed here. Co-Authored-By: Claude Sonnet 4.6 --- minimateplus/client.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/minimateplus/client.py b/minimateplus/client.py index d35c541..8a66ccd 100644 --- a/minimateplus/client.py +++ b/minimateplus/client.py @@ -930,10 +930,9 @@ def _decode_a5_waveform( elif fi == 7: continue - # A5[9] is the device terminator frame (page_key=0x0000), also no data. - elif fi == 9: - continue - + # Terminator frames have page_key=0x0000 and are excluded upstream + # (read_bulk_waveform_stream returns early on page_key==0). + # No hardcoded frame-index skip here — all non-metadata frames are data. else: # Strip the 8-byte per-frame header (ctr + 6 zero bytes) if len(w) < 8: