Skip to content
Ravi Singh edited this page May 23, 2026 · 2 revisions

FAQ

Frequently-asked questions, grouped by topic. If something here isn't, open an issue.


General

Is TankSync open-source?

Yes — firmware is AGPL-3.0, hardware (schematics, STL, BOM) is CC-BY-SA 4.0. You can build, modify, and resell, but derivative work has to stay open under the same licenses. The brand names "TankSync" and "SmartGhar" are trademarks — don't reuse those for commercial derivatives.

Do I need the cloud?

No. TankSync works fully local. Point the hub at your own MQTT broker (Mosquitto on a Pi, or HA's built-in broker), and you'll never touch our servers. The cloud is a convenience for the PWA + remote access — free tier covers up to 3 hubs.

How many tanks per hub?

Six, in current firmware. The limit is LoRa airtime budget + RYLR998 buffer, not LoRa range. If you need more, run a second hub on a different NETID.

What's the LoRa range?

Practical line-of-sight: ~1 km outdoors with the stock PCB antennas. With external SMA antennas: 3–5 km. Through walls: depends, but typically 30–100 m through 1–2 internal walls. Concrete + rebar walls eat LoRa fast.

Will it work in my country?

Pick the frequency in firmware that's legal where you live:

  • India — 865 MHz
  • EU / UK — 868 MHz
  • US / Canada / Australia / NZ — 915 MHz

The RYLR998 supports all three. Set it in firmware/Transmitter-IDF/main/config.hLORA_DEFAULT_FREQ, and matching on the hub.


Building one yourself

Where do I get the PCBs?

Send the schematic SVG + (eventually) the EasyEDA project files to JLCPCB or PCBWay. ~₹60/piece in 10× runs. See Bill of Materials → sourcing.

Can I use an ESP32-S3 / ESP32-C6 instead of the C3?

The S3 multi-target RX build exists (since rx-v2.7.9) — same firmware, different sdkconfig. C6 is untested; pin map would need adjusting. C3 is what's actively tested. Stick with it for TX unless you have a reason.

Why JSN-SR04T and not a different ultrasonic?

It's waterproof (IP67), cheap, widely available, and works at 5 V. Variants (JSN-SR04M / AJ-SR04M) work too — see AJ-SR04M UART Mode for the gotcha. Non-waterproof HC-SR04 will work indoors only — the diaphragm corrodes in tank vapor within months.

Do I really need the solar panel?

For long-term outdoor use: yes. A single 18650 lasts maybe 3–6 months with the default 5-minute wake interval — long enough to forget the unit's there, then it dies on you. With a 1 W panel it runs indefinitely. If your tank is indoors / shaded, swap the panel for a USB power input instead.

Can I run without an INA219?

Yes — firmware auto-detects. If INA219 absent at I²C 0x40, it falls back to a voltage-divider on GPIO 0 (Variant A). You lose the signed current reading (charge vs discharge), but level + battery percentage still work.


Firmware

How do I update firmware?

Easiest: the browser flasher.

Over-the-air: hub OTA via the local web UI (System → Firmware) or via the PWA (Settings → Firmware). TX OTA happens over LoRa — slow (8–10 minutes per TX) but no cable required.

Why doesn't the version-number match what I flashed?

Older releases (pre-rx-v2.8.5) had a CMakeLists.txt bug that stamped the wrong version string into esp_app_desc.version. Fixed in v2.8.5+ via the single-VERSION-file pattern. Re-flash; the displayed version should match what you built.

How is firmware versioned?

Semver. Hub uses rx-vX.Y.Z, transmitter uses tx-vX.Y.Z. The PWA is independent (vX.Y.Z of its own). HACS integration too. See Firmware Versions.


Cloud / PWA

What does the cloud actually store?

Your tank readings, retained as the most-recent state + 90 days of history (free tier). Nothing else — no location, no usage profiling, no third-party analytics.

Can I export my data?

Yes — Settings → Export data in the PWA gives you a CSV of historical readings. For HA users, just use HA's recorder + InfluxDB export.

Will the cloud stay free forever?

Free tier (up to 3 hubs / 6 tanks) has no expiry. Pro tier (more hubs, weather insights, family sharing, 90-day → 1-year history) is paid; see tanksync.smartghar.org → Settings → Plan for current pricing.

What if SmartGhar shuts down?

The hub keeps working — it has the MQTT broker hardcoded but is a one-line change to point elsewhere. Worst case, swap the broker URL in the local web UI to your own Mosquitto. No vendor lock-in.


Reliability / accuracy

How accurate is the level reading?

± 1 % when calibrated correctly. The accuracy ceiling is the JSN-SR04T's own (~1 cm), which on a typical 1 m-tall tank is 1 %. Bad calibration (wrong "empty distance" / "full distance") can throw it off by 10 %.

What if the tank has waves?

Firmware takes 5 samples per wake (50 ms apart) and takes the median — kills wave-induced outliers. If you have huge churn (a borewell filling in), enable FILL_TRACK mode → it goes adaptive.

What about sediment buildup?

Detected as "sensor stuck" when the reading doesn't change across 20+ wake cycles. The PWA flags it; clean the sensor face. See Troubleshooting.

Will it work at 45 °C?

Yes — tested through Delhi summer at 45 °C ambient with PETG enclosure. No RSSI drift, no boost-converter sag. 18650 cell rating de-rates above 45 °C internal temp — use a light-coloured lid in hot climates.


Privacy / security

Can the hub spy on my home network?

It scans Wi-Fi to show you available SSIDs during setup, and otherwise only talks to the MQTT broker you configured. The firmware is auditable — read it.

How is the cloud connection secured?

TLS 1.2+ to mqtt.smartghar.org:8883. Per-hub client cert + token. Each hub gets a unique device ID + claim QR sticker; cross-claiming is prevented by server-side ownership check.

Can I run my own cloud?

The cloud server (Node/Express + MQTT broker + Postgres) is proprietary — that's the bit we don't open-source, because we depend on it commercially. But the hub → broker protocol is plain MQTT — point your hub at any broker and you're independent. See Self-Host Guide (work in progress).


Where to ask more

Clone this wiki locally