Plug in your TankSync hub or transmitter via USB, pick the right
board below, and click Install. No esptool, no Python,
no command line — your browser does the flashing through WebSerial.
Browser not supported. Web flashing requires Chrome, Edge,
or another Chromium-based browser on a desktop. Firefox and Safari don't
yet support WebSerial. If you're on iOS, use a desktop to flash; the
board only needs flashing once.
Receiver Hub
The brains — the wall-mounted box with the OLED display and LoRa radio.
Board: ESP32 DevKit v1 (CP2102)Size: ~1.4 MB
checking releases…
Your browser doesn't support WebSerial. Use Chrome, Edge, or another
Chromium-based desktop browser.
~45 sec to flash · A pop-up dialog will appear to flash
Connect
Erase
Write
Verify
Waiting for board…0:00
⚠ GPIO2 strapping caveat. If you've already wired up a
buzzer to GPIO2, disconnect the signal wire before
flashing — GPIO2 is a strapping pin and a buzzer holding it low can
keep the chip in download mode. Reconnect after flashing completes.
OTA updates don't have this issue, only first-time USB flashing.
What to expect when you click Install
Browser asks to connect to your board. Pick the USB-serial port that matches your DevKit (usually cu.SLAB_USBtoUART on macOS, COM3+ on Windows).
Install dialog opens. Click Install, leave "Erase device" checked for first install / unchecked for upgrade, then confirm.
Flashing runs ~45 sec. Don't unplug. We show a success card below with next-steps once done.
If your DevKit doesn't appear, you may need the CP2102 driver: Silicon Labs CP210x
After flashing, the hub boots into AP mode — connect to TankSync-XXXX Wi-Fi and visit http://192.168.4.1 to set it up
Transmitter (per tank)
The sensor — mounts above each water tank, talks to the hub over LoRa.
Board: ESP32-C3 SuperMiniSize: ~940 KB
checking releases…
Your browser doesn't support WebSerial. Use Chrome, Edge, or another
Chromium-based desktop browser.
~30 sec to flash · A pop-up dialog will appear to flash
Connect
Erase
Write
Verify
Waiting for board…0:00
What to expect when you click Install
Browser asks to connect to your board. The C3 SuperMini uses native USB-Serial — no driver needed.
Install dialog opens. Click Install, then in the next step leave "Erase device" checked for first install, unchecked when upgrading.
Flashing runs ~30 sec. After success: hold the BOOT button for 2 seconds to enter pair mode.
The ESP32-C3 SuperMini uses native USB-Serial/JTAG — no driver needed
One TX per tank: flash multiple TXes from the same browser tab, one at a time
Receiver Hub V4
The round-display hub — ESP32-S3 CAM board with the GC9A01 dial and LoRa radio.
Board: ESP32-S3 CAM N16R8 (CH343)Size: ~1.5 MB
checking releases…
Your browser doesn't support WebSerial. Use Chrome, Edge, or another
Chromium-based desktop browser.
~90 sec to flash · A pop-up dialog will appear to flash
Connect
Erase
Write
Verify
Waiting for board…0:00
⚠ Fresh boards ship with vendor firmware. First-time
flashing over USB: keep "Erase device" checked so the
factory bootloader and partition table are fully replaced. If the board
doesn't respond, hold BOOT, tap RESET, then
release BOOT and retry. Upgrading an already-set-up hub?
Prefer the built-in OTA update in the hub's own web UI — it keeps
your tanks and pairings.
What to expect when you click Install
Browser asks to connect to your board. Pick the USB-serial port that matches the hub (usually cu.usbmodem… on macOS via the CH343 bridge, COM3+ on Windows).
Install dialog opens. Click Install, leave "Erase device" checked for first install / unchecked for upgrade, then confirm.
Flashing runs ~90 sec (bigger image than the DevKit). Don't unplug. We show a success card below with next-steps once done.
If the board doesn't appear, you may need the CH343 driver: WCH CH343SER
After flashing, the hub boots into AP mode — connect to TankSync-XXXX Wi-Fi and visit http://192.168.4.1 to set it up
The round display shows a setup QR code — scanning it joins the hub's Wi-Fi directly