2023.10.05
Thinger.io for Small IoT Projects.
Using Thinger.io's open-source platform to build a soil moisture dashboard for a rooftop garden — without writing a backend.
Thinger.io is an IoT platform that lets you connect devices, expose endpoints, and build dashboards without standing up your own backend. I used it for a soil moisture monitoring project on a rooftop garden in Kathmandu.
Why Thinger.io over alternatives
- Self-hostable on a cheap VPS — I used a ₹200/month DigitalOcean droplet
- Native Arduino and ESP32 library — no REST plumbing
- Dashboard builder is genuinely usable, unlike Grafana for small projects
- Free tier is enough for one-person projects
ESP32 sketch (core)
#include <ThingerESP32.h>
#define USERNAME "your_username"
#define DEVICE_ID "soil_sensor"
#define DEVICE_CREDENTIAL "your_credential"
ThingerESP32 thing(USERNAME, DEVICE_ID, DEVICE_CREDENTIAL);
void setup() {
thing["moisture"] >> [](pson& out) {
out = analogRead(34) / 4095.0 * 100;
};
thing.add_wifi("SSID", "password");
}
void loop() { thing.handle(); }The sensor data streamed at 30-second intervals. Thinger.io's bucket storage kept 30 days of history without any database config on my end.
What the dashboard showed
- Live moisture percentage per pot
- 7-day moisture trend graph
- Alert badge when moisture < 30%
- Last-watered timestamp derived from moisture spike detection
For production agricultural monitoring, you'd want something more robust. But for a weekend project that needed to actually run reliably, Thinger.io was the right level of abstraction.