Commit Graph

3 Commits

Author SHA1 Message Date
kerms e0e95f80c0
feat(nvs): normalize result with dropped/clamped counts, blob compat check
normalizePartition now returns NormalizeResult { partition, dropped, clamped }
so callers can report exactly what happened during import. Clamp functions
report when values were modified. Add checkBlobCompatibility() for proactive
size warnings on version switch/merge. Also includes reconcileBlobTypes at
all import boundaries and BLOB_IDX whitelist enforcement.
2026-03-12 12:09:47 +01:00
kerms 1076aa3848
fix(crc32): use correct init value for ESP-IDF ROM CRC32
esp_rom_crc32_le(0xFFFFFFFF, ...) inverts the input (~0xFFFFFFFF = 0),
so the effective init is 0x00000000, not 0xFFFFFFFF (standard zlib).
This caused all NVS page/entry CRC checks to fail silently.
2026-03-11 11:03:42 +01:00
kerms 8320bf7ab2
feat(app-image): add ESP firmware image parser and viewer with robust
upload handling

- add app image parser/types/constants for ESP image header, extended
header, segments, and app description
- add shared binary read/write utilities and CRC32 helper
- add AppImageViewer component to inspect firmware metadata in UI
- improve upload UX: accept .bin only and show explicit error for ELF input
- prevent status alert timer race by clearing previous timeout before
setting a new one
- ignore .claude in .gitignore
2026-02-22 12:37:30 +01:00