Repository navigation
TankSync v3.6.2
Receiver (hub) reliability + UX. Transmitter unchanged (version bumped in lockstep).
Fixes
- Data-loss guard (important): the hub could publish an empty tank manifest after a failed storage read (SPIFFS/OOM/corruption at boot), which the cloud honored by deleting all of a user's tanks. The registry now distinguishes "couldn't read" from "genuinely empty" and withholds the manifest when a load fails — so a transient read error can never wipe your tanks. Legitimate empties (first boot, factory reset, removing your last tank) are unaffected.
- OTA ring animation now actually runs. The full-ring update animation was gated on a status flag that was never set, so it had never displayed on any hub. It now shows during updates.
New
- Whole-ring status animations on the LED ring/strip, each a distinct colour: hub update = orange comet, transmitter update = magenta comet, pairing = cyan comet, first-time setup = blue breathing. Normal tank gauges are unchanged.
Also
- Transmitter: sensor +5V power gate is deferred past boot so sensor inrush can no longer brown out the ESP on battery (carried from the prior fix).
Downloads (every variant for this firmware version)
Transmitter — ESP32-C3 SuperMini
…-transmitter-lora-esp32c3-<tag>.bin— LoRa SKU (RYLR998 module)…-transmitter-lite-espnow-esp32c3-<tag>.bin— Lite SKU (ESP-NOW, built-in radio, no module)
Receiver / Hub
…-receiver-esp32-<tag>.bin— ESP32 DevKit…-receiver-esp32s3-<tag>.bin— ESP32-S3 SuperMini
Each variant ships two images:
- plain
.bin— OTA app image, flash at0x10000, or use the one-click browser flasher / in-app OTA. …-full.bin— full-flash image for a fresh/blank board, flash at0x0with esptool:esptool.py write_flash 0x0 <file>-full.bin.