firmware v1.0.1 — #FW-23 n42 StartDateTime 1970 fix
#FW-23 fix — n42-экспорт водопада больше не застревает на 1970 году.
Проблема (репорт Andrey)
При boot-автозапуске водопада usb_host_cdc_init() стартует раньше init_sntp(),
поэтому spectrogram_start() фиксировал started_at = time(NULL) пока RTC ещё
near-epoch. Результат: <StartDateTime>1970-01-01T…Z</StartDateTime> в каждой строке
n42-экспорта сегмента.
Фикс
SNTP time-sync callback (esp_sntp_set_time_sync_notification_cb) →
spectrogram_time_synced(): если запись активна и started_at < WF_SANE_EPOCH
(1700000000), пересчитывает started_at от монотонного аптайм-якоря
(esp_timer, #FW-21) и персистит через write_state(true) — переживает ребут.
Идемпотентно; когда часы уже валидны, коррекция не нужна.
Commit: 79eff24.
Flash (ESP32-S3, per flash_args)
- 0x0 bootloader.bin
- 0x8000 partition-table.bin
- 0x10000 atomspectra_gw.bin
Целостность (flasher verify)
SHA256: firmware.factory.bin 14cf6bb4d1569c530677be0e19dfef14cd4b6d6ef6498de4ee4ef075f8e81df5