Skip to content

TankSync v3.6.10

Latest

Choose a tag to compare

@Techposts Techposts released this 08 Aug 15:40

Fixed: hub firmware updates failed on every S3 hub

Updating a hub from the app, the web UI or Home Assistant failed with
"Download failed" and a progress bar stuck at 0%.

Every ESP32-S3 hub was asking the update server for the plain-ESP32
image, then rejecting it because the binary was built for a different
chip. Nothing was ever written to the hub — it declined the wrong image
and carried on running the firmware it already had, which is why the
failure was harmless but persistent.

The connection, the download URL and the storage partition were all
fine. The hub simply asked for the wrong file.

Also in this release

  • Hub OTA failures now name the stage that failed instead of a bare
    "Download failed" (from 3.6.9).
  • Receiver version stamping corrected — the binary now reports the same
    version as the release it came from (from 3.6.9).
  • 3.3 V transmitter board support and correct battery reporting on
    transmitters built without an INA219 (from 3.6.8).

Important for existing hubs

A hub already running 3.6.9 or earlier still contains the old, incorrect
request, so it cannot pull this fix over the air — it will keep asking
for the wrong image. Those hubs need one manual USB flash of
3.6.10.
After that, over-the-air updates work normally from the app,
the web UI and Home Assistant.

Use the image matching your hub:
tanksync-receiver-esp32s3-v3.6.10-full.bin for the S3 hub.


Downloads (every variant for this firmware version)

Transmitter — ESP32-C3 SuperMini

  • …-transmitter-lora-esp32c3-<tag>.binLoRa SKU (RYLR998 module)
  • …-transmitter-lite-espnow-esp32c3-<tag>.binLite SKU (ESP-NOW, built-in radio, no module)

Receiver / Hub

  • …-receiver-esp32-<tag>.binESP32 DevKit
  • …-receiver-esp32s3-<tag>.binESP32-S3 SuperMini

Each variant ships two images:

  • plain .binOTA app image, flash at 0x10000, or use the one-click browser flasher / in-app OTA.
  • …-full.binfull-flash image for a fresh/blank board, flash at 0x0 with esptool: esptool.py write_flash 0x0 <file>-full.bin.