geeksville 66c41e683d bug #4184: fix config file loss due to filesystem write errors (#4397)
* Use SafeFile for atomic file writing (with xor checksum readback)
* Write db.proto last because it could be the largest file on the FS (and less critical)
* Don't keep a tmp file around while writing db.proto (because too big to fit two files in the filesystem)
* generate a new critial fault if we encounter errors writing to flash
either CriticalErrorCode_FLASH_CORRUPTION_RECOVERABLE or CriticalErrorCode_FLASH_CORRUPTION_UNRECOVERABLE
(depending on if the second write attempt worked)
* reformat the filesystem if we detect it is corrupted (then rewrite our config files) (only on nrf52 - not sure
yet if we should bother on ESP32)
* If we have to format the FS, make sure to preserve the oem.proto if it exists

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-08-06 13:59:06 -05:00
2024-07-10 14:39:41 -05:00
2023-01-21 21:23:24 +01:00
2024-03-06 16:23:04 -06:00
2022-11-26 16:03:17 +01:00
2023-01-21 21:23:24 +01:00
2023-10-09 22:30:02 +10:00

Meshtastic Firmware

GitHub release downloads CI CLA assistant Fiscal Contributors Vercel

Overview

This repository contains the device firmware for the Meshtastic project.

Stats

Alt

Languages
C++ 67.2%
C 30.9%
Python 1.1%
Shell 0.3%
Batchfile 0.3%
Other 0.1%