Soil moisture chart card
Who it’s for
Agronomists, precision farmers, and irrigation managers ask “how has soil moisture changed over the selected period, and is the trend toward stress or waterlogging?” They want the current reading, the direction of change, and the magnitude in one card so they can schedule irrigation or drainage without opening a separate report.
What it does
A sensor averaging 52% this week versus 35% last week shows a blue value — Optimal — with a +49% delta and a +17 pp absolute change, plus a chart of readings over the selected window.
- Large current soil-moisture value color-coded across four bands from Dry to Saturated
- Delta percentage and absolute delta comparing the current period to the previous one
- Time-series chart of soil-moisture readings averaged per interval
- Shows one sensor’s data; it does not compare multiple probes
How to set up
Data keys
| Key | Role | Type | Description |
|---|---|---|---|
soilMoisture | Chart series | Timeseries | Volumetric water content in %; drives the chart and all derived overlays |
| Latest | Latest value | Timeseries | The headline figure above the chart. Its own color ranges are where the band colors are edited |
| Delta percent | Percentage change | Timeseries | Change against the previous period, as a percentage |
| Delta absolute | Absolute change | Timeseries | Change against the previous period, in the key’s own unit |
The widget ships with a simulated function datasource key labeled Soil Moisture, so it draws random values until you point the datasource at a device and rename the key.
To point it at your own device: open the dashboard in edit mode, open the widget’s Datasources, pick the entity or entity alias, and replace the function key with the key your device reports.
If the key has never reported for the selected time window, the chart is empty and all overlays show no data.
Value ranges
| Range (%) | Level | Color |
|---|---|---|
| 0–20 | Dry | Red |
| 20–40 | Low | Orange |
| 40–60 | Optimal | Blue |
| 60–100 | Saturated | Dark Blue |
How to customize
- To use your own soil-moisture thresholds — edit the color ranges on the Latest data key; adjust the four default bands to match your soil type and crop requirements.
- To change the comparison period — adjust the Time window on the dashboard; the delta automatically compares to the equivalent preceding period.
- To hide or show the chart — toggle Show chart in the widget settings.
- To change the chart line color — set Chart color.
- To hide the entity name subtitle or the timestamp — turn off Show subtitle or Show date.
- To match your dashboard’s fonts — set the font options under each data key’s appearance settings.
Tips
- A negative delta after a dry spell confirms the soil is drying toward the stress threshold — use it as the trigger to review irrigation scheduling before the value crosses into the Dry band.
- A positive delta that pushes the value into Saturated signals waterlogging risk; cross-check with rainfall data to determine whether the cause is over-irrigation or heavy precipitation.
- The optimal range (40–60%) reflects typical field capacity for loamy soils; adjust the color range boundaries to match your soil type.
Share Your Widget with the Community
Built a custom widget? Export it as a JSON from ThingsBoard and publish it to the IoT Hub through a simple 4-step wizard (Upload, Listing, Readme, Review & Submit). Share it with thousands of ThingsBoard developers worldwide and get featured in the catalog.