diff --git a/lib/shared/crc32.ts b/lib/shared/crc32.ts index 95da4f9..2117247 100644 --- a/lib/shared/crc32.ts +++ b/lib/shared/crc32.ts @@ -1,6 +1,6 @@ /** * Pre-computed CRC32 lookup table using reflected polynomial 0xEDB88320. - * Compatible with zlib.crc32() used by ESP-IDF. + * Compatible with esp_rom_crc32_le(0xFFFFFFFF, ...) used by ESP-IDF NVS/OTA. */ const CRC32_TABLE: Uint32Array = (() => { const table = new Uint32Array(256); @@ -16,7 +16,7 @@ const CRC32_TABLE: Uint32Array = (() => { /** Compute CRC32 of a Uint8Array. Returns unsigned 32-bit integer. */ export function crc32(data: Uint8Array): number { - let crc = 0xFFFFFFFF; + let crc = 0x00000000; for (let i = 0; i < data.length; i++) { crc = (crc >>> 8) ^ CRC32_TABLE[(crc ^ data[i]) & 0xFF]; }