Repository navigation
TankSync v3.6.8
Adds firmware for the new 3.3 V transmitter board, and fixes power
reporting for any transmitter built without an INA219.
New: 3.3 V transmitter board support
There are now two transmitter PCBs in service, and they drive the GPIO10
sensor-rail gate with opposite polarity:
- 5 V board — GPIO10 feeds an AO3400 N-FET inverter stage. Active-HIGH.
- 3.3 V board — GPIO10 drives an AO3401 P-FET directly, no inverter.
Active-LOW.
One binary cannot serve both. Flashing the 5 V image onto a 3.3 V board
inverts the gate and leaves the sensor rail powered continuously, which
defeats the sleep budget entirely.
Each release now ships four transmitter images instead of two:
| Asset | Board | Radio |
|---|---|---|
tanksync-transmitter-lora-esp32c3-* |
5 V | LoRa |
tanksync-transmitter-lite-espnow-esp32c3-* |
5 V | ESP-NOW Lite |
tanksync-transmitter-lora-esp32c3-3v3-* |
3.3 V | LoRa |
tanksync-transmitter-lite-espnow-esp32c3-3v3-* |
3.3 V | ESP-NOW Lite |
Pick the image that matches your board. The board axis is independent
of the radio, so both radios get both flavours. Existing 5 V boards are
unaffected — those binaries are built exactly as before.
Fixed: transmitters without an INA219 reported "Mains powered"
A transmitter with no power-monitoring chip fitted reported
POWER_MODE_NONE, which the app rendered as "Mains powered" — on boards
that have no mains input at all. That also suppressed solar charge
reporting, because the charging flag is only published when a battery is
detected.
- On the 3.3 V board, a low bus-voltage reading is now treated as a bad
sample rather than as evidence of mains. This board is fed from the cell
through the TPS63802 and nothing else, so "running on external 5 V" is
not a reachable state. The last good reading is held across deep sleep
instead of reporting 0 %. - The INA219 probe retries instead of latching POWER_MODE_NONE on a single
missed ACK at boot. - Battery protection no longer switches off when a reading fails. The
3.1 V cutoff and low-battery backoff previously shared a flag with
battery presence, so a failed read silently disabled both.
Companion app fix: "Mains powered" is now shown only when the transmitter
actually reports mains, not when power monitoring is simply absent.
Upgrading
Existing 5 V boards can update over the air as usual. If you have a 3.3 V
board, flash the matching -3v3- image — a full-flash -full.bin is
attached for first-time programming at offset 0x0.
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.