An ESP32, a soil probe, and a DHT22 are $15 total. Point them at Garden.gg's IoT endpoints and every reading lands on the right plot — no homegrown dashboard needed.
Pick one or stack all three on the same device. The Ecowitt ingest path accepts form-encoded data from anything — including your custom firmware.
Capacitive probe on a battery-powered ESP32. Reports soilmoisture1 to your raised bed's plot every 15 minutes. Monthly uptime on two 18650s.
DHT22 + BMP280 in a screened enclosure. Reports temperature, humidity, and pressure to your outdoor plot. Cheaper alternative to a full Ecowitt stack.
ESP32-CAM uploads a photo every 15 minutes. Garden.gg's Plot Photo Playlist picks them up automatically — drag the speed slider to play three weeks in ten seconds.
Nothing bespoke for DIY — you're using the same endpoints Ecowitt gateways and the core Garden.gg apps use.
/i/e/{token}
Ecowitt-format form body — tempf1=…&humidity1=…&soilmoisture1=…. Token is the auth; no headers needed. Great for battery-powered builds.
/api/v1/iot/photo
Multipart upload with X-API-Key. Photos land in the plot's gallery and auto-populate the timelapse playlist.
/api/v1/iot/plots Optional. List the user's plots via API key — useful for one-time provisioning scripts that need to discover plot IDs.
Arduino sketch and full wiring diagram in the build guide. Free account to get your first device token.