feat(protocol): update Blastware file format documentation and encoding details

This commit is contained in:
2026-04-22 19:16:05 -04:00
parent dfbc9f29c5
commit c47e3a3af0
5 changed files with 250 additions and 109 deletions
+7 -1
View File
@@ -878,7 +878,13 @@ def device_event_blastware_file(
def _do():
with _build_client(port, baud, host, tcp_port, timeout=120.0) as client:
info = client.connect()
events = client.get_events(full_waveform=True, stop_after_index=index)
# Use full_waveform=False (metadata-only, stop_after_metadata=True) —
# Blastware writes .N00 files from only the first ~8 A5 frames, NOT
# the full bulk download. Using full_waveform=True produces a file
# ~8x larger than Blastware's because it includes all post-event
# silence chunks. The metadata-only a5_frames (with terminator) are
# sufficient for byte-perfect write_n00 output.
events = client.get_events(full_waveform=False, stop_after_index=index)
matching = [ev for ev in events if ev.index == index]
return matching[0] if matching else None, info
ev, info = _run_with_retry(_do, is_tcp=_is_tcp(host))