Первый релиз в выделенном репозитории. Инструмент вынесен из
atomspectra-waterfall-esp32,
чтобы его релизы не затеняли релизы прошивки вreleases/latest. Бинарь идентичен
прежнемуwf-recorder-v0.2.1(тот же SHA256).
Багофикс сборщика pull-стрима: смена формата строки в прошивке платы больше не роняет запись.
Изменения:
- #REC-14 авто-ротация файла шва — при несовпадении
row_stride/channelsочередного сегмента с активным.aswfсборщик замораживает текущий файл и уводит новый формат в отдельный<base>__s<stride>.aswf, вместо потокаerror:stitch. Старый файл остаётся валидным ASWF; - устранён клинч без ack — раньше при несовпадении формата сегмент не удалялся с платы, и кольцо Flash копилось к потере данных. После ротации сегменты усваиваются и штатно ack-аются;
- dedup-guard — повторный запуск после ротации не дублирует уже вшитые строки;
- тест
test_rec14_rotation.py(5/5).
Повод: прошивка firmware-v1.0.11 (#FW-41) сменила формат строки ASWF v3→v5 (row_stride 16402→16410: +temperature +crc32). Рекордер v0.2.0 и раньше отказывался дозаписывать v5-строки в v3-файл (корректно — иначе водопад после шва = каша), но зависал в клинче. v0.2.1 стыкует форматы авто-ротацией: старая v3-запись остаётся цела, новые v5-данные пишутся рядом со всеми полями.
Assets:
wf_recorder.exe— Windows onefile (PyInstaller), автосбор сегментов платы + шов в единый.aswf.
SHA256: wf_recorder.exe 3701b5cf2d50f9301011610508b49cf647f6ff9c17d1f1cbce69b584464ddd4d