Root-zone state estimation with the TEROS-12 sensor
HomePrecisionRoot-zone state estimation with the TEROS-12 sensor
Precision · Root zone

Root-zone state estimation with the TEROS-12 sensor

A TEROS-12 capacitance probe measures three things in your pot. This guide explains what each number means, why the raw reading is not the truth, and how to turn it into safe irrigation decisions.

Precision12 diagramsEvidence-linked · 8 sources~18 min read
Start here

What this is, and who it's for

A TEROS-12 is a small probe you bury in growing media: coco, rockwool or soil. It reports three things down a single digital wire: how much water is in the media, how salty that water is, and the temperature. This guide explains, from zero, what each of those numbers means, how the probe arrives at them, and why you should never wire the probe straight to a valve.

A single probe is one noisy local witness. It samples a roughly 1010 mL pocket of one pot, not the whole zone.[8] Everything that follows turns that one local, uncertain reading into a number you can actually steer irrigation on.

  • The TEROS-12 reports volumetric water content (VWC), bulk electrical conductivity (EC) and substrate temperature over a digital protocol called SDI-12.
  • Its ‘volume of influence’ is only about 1010 mL of media around the prongs. It sees one local spot, not the average of a tray or a zone.
  • The goal is to convert that noisy local reading into a trustworthy estimate of stored water, with the uncertainty stated openly rather than hidden.
  • No prior knowledge of soil sensors is assumed. Every term is defined the first time it appears.
hardware
The probe
Three steel prongs create a high-frequency electric field and read it back.
~1010 mL
Volume of influence
Only ~1010 mL of media around the prongs is sensed.
unseen
The rest of the pot
Everything outside that pocket is invisible to this probe.
Figure 1. What the probe sees: a small ellipsoid of media around the prongs, not the whole root zone.[8]
Who this is for

This is for anyone putting a moisture probe in a pot who wants to steer on it honestly. It pairs with the smart watering (VWC/EC) guide and the coco crop-steering paper.

How sure is this?

Accuracy, self-review, and grain-of-salt notes

How sure is this paper?

We've gone to great lengths to keep these guides honest. One of the main ways we do that is self-review: we actively look for claims that are subjective, only lightly backed by literature, or based on grower practice rather than a controlled study, and we call those out instead of dressing them up as settled science.

Often there simply is no paper for the decision you're making. In those cases we're drawing on what other growers report and what has worked in our own rooms. That can still be useful, but it is not a lab proof. Do what works for your plants, your room, and your meters. If a table disagrees with your crop, believe the crop and log the difference.

Solid
Well supported by plant science, standards, or broad multi-source consensus
  • Capacitance probes estimate VWC via permittivity; media calibration matters
  • Pore-water EC estimation has real limits (Hilhorst-class caveats)
Operational
What many growers and rooms actually run, start here then tune
  • Install depth, volume of influence, and multi-pot placement habits
Grain of salt
Subjective, thin literature, single studies, or “this works for us” practice
  • Manufacturer accuracy specs as guaranteed on every uncalibrated pack

See something glaringly wrong? Tell us and we'll fix it. Please open a GitHub issue with the paper name and what looks off (include a source if you have one): Report an accuracy issue. Local law, labels, and licences always override any recipe here. Inline notes labelled grain of salt flag the highest-risk over-trust points in the text.

Vocabulary

Key terms, defined once

Here is the small set of words this whole field hangs on. You don't need to memorise them. Each one comes back in context.

Volumetric water content (VWC)The fraction of the media's total volume that is liquid water, in cubic metres of water per cubic metre of media (m³/m³). So 0.34 means 34% of the pot's volume is water. This is the headline irrigation number.
Permittivity (dielectric constant)How strongly a material responds to an electric field. Water's is very high (~80), dry media is ~3–5 and air is ~1. That huge gap is the entire trick that lets a sensor ‘feel’ water it cannot see.[1]
Capacitance sensorA sensor that measures permittivity, then infers VWC from it. The TEROS-12 is one of these.
Bulk EC vs pore-water ECBulk EC is the conductivity of the whole wet-media mixture (0–20000 µS/cm on this probe). Pore-water EC is the conductivity of just the nutrient solution in the pores, the salt the roots actually feel, estimated indirectly.
DUL / container capacityDrained upper limit: how much water this specific pot holds after it stops draining. It is your steering ceiling, and it is a property of your pot and media, not a textbook constant.
Resolution vs accuracyResolution is the smallest change reported (0.001 m³/m³ VWC). Accuracy is how close the number is to the truth (only ±0.03 m³/m³ with the generic calibration). A precise-looking number can still be wrong.[8]
Relative permittivity: why water dominates the readingWater's permittivity towers over everything else, so it controls the sensor's response.0224568901Air4Dry substrate80Water
Figure 2. Liquid water has a permittivity around 80 versus ~3–5 for dry media and ~1 for air, so even a little water swings the bulk reading hard.[1]
fraction
Solids
The coir, rockwool fibre or soil grains themselves.
fraction
Air
Air-filled pore space between the solids.
VWC
Water
Liquid in the pores. VWC = this volume / total volume.
Figure 3. A unit volume of media splits into solids, air and water. VWC is just the water slice divided by the whole.
Saturation, field capacity and drybackthe same block at three points in a daySaturatedjust irrigated, almostno airField capacityfree water drained,daily peakDryback lowplant drank, air +oxygen in
Diagram. What the sensor reads: saturation, field capacity (container capacity / DUL) and the dryback low.
A daily water-content cycleSaturate to field capacity, hold it, allow a controlled dryback, repeat. The size of the dryback is the steering lever.working bandtoo dry0255075100offP3 minonP1FCP2offwater content %
Diagram. A day of water content as the probe sees it.
Core content

How the probe turns an electric field into a water number

The TEROS-12 is a capacitance probe. Its prongs create a high-frequency electric field in the surrounding media and measure how strongly the media stores that field, which is its permittivity. Because water's permittivity (~80) towers over dry media (~3–5) and air (~1), the bulk permittivity rises steeply and predictably as water content rises. That makes permittivity a stand-in for VWC.[1]

The sensor then applies a calibration equation (a generic mineral-soil curve by default) to map measured permittivity to a VWC number, reporting it to 0.001 m³/m³ resolution. The catch is baked in from the start: that mapping is media-specific, and the generic curve is only good to ±0.03 m³/m³.[8]

  • Capacitance and permittivity are the physical quantity. VWC is a derived, calibrated estimate sitting on top of it.
  • The permittivity-to-VWC curve is nonlinear, especially near saturation, where the response flattens and can fake a ‘full’ reading.
  • Substrate temperature is read as a useful output and because temperature shifts the dielectric response, a known effect that can masquerade as a water swing.[4]
  • The probe outputs over SDI-12. A stale, NaN, or railed value (pinned at 0 or full-scale) is a hardware fault, not data.
Permittivity to VWC: a nonlinear calibration curveBottom axis is permittivity. The curve flattens at the top, so response near saturation can mimic 'full'.00001381524354862VWC (m³/m³)
Figure 4. VWC rises with permittivity but the curve bends and flattens near saturation, so the same VWC step covers very different permittivity steps.[1]
The measurement chain1Electric fieldprongs energisethe media2Permittivitymedia stores thefield3Calibrationcurve maps towater4VWC + EC + tempreported overSDI-12Bulk EC and temperature branch off the same measurement; all three leave on the SDI-12 wire.
Figure 5. From electric field to a number: every output is downstream of the same physical measurement.
Core content

Calibration: why the default number lies a little

Out of the box the TEROS-12 uses a generic mineral-soil calibration, which makes VWC accurate to only ±0.03 m³/m³. A substrate-specific calibration for your exact coco or rockwool tightens that to ±0.01–0.02 m³/m³.[3] That difference is not academic. Crop-steering dryback windows are often narrower than the ±0.03 generic error band, so steering on uncalibrated VWC means steering inside the noise.

A worked headroom example shows the consequence directly. A naive 256 mL of ‘room to water’ shrinks to a safe ~109 mL once you account for ±0.02 accuracy, and to just ~54 mL under the generic ±0.03. Same pot, same probe. The only thing that changed is how honestly you treat the error band.[7]

How accuracy erodes usable headroom (same pot)Wider error band = less water you can safely add before risking overshoot.075150225300256 mLNaive estimate109 mLSafe @ ±0.02 cal54 mLSafe @ ±0.03 generic
Figure 6. Usable ‘safe headroom’ collapses as calibration error grows: from 256 mL naive to ~54 mL on the generic curve.[7]
Resolution is identical. Accuracy is what changes. Calibrate to your media.
Calibration typeVWC accuracyResolutionTight steering?
Generic mineral (default)±0.03 m³/m³0.001 m³/m³No. Error wider than dryback window
Substrate-specific±0.01–0.02 m³/m³0.001 m³/m³Yes. Required for tight steering
Calibration is not a cure-all

Calibration corrects an additive offset, but gain error and nonlinearity near saturation persist and do not cancel out in later math. Treat substrate-specific calibration as mandatory for tight steering, not optional, and still respect the residual error.

Core content

What EC tells you, and what the probe cannot see

The TEROS-12 measures bulk EC, the conductivity of the whole wet-media mixture, 0–20000 µS/cm. What growers care about is pore-water EC: the salt concentration in the solution actually touching the roots. You get pore-water EC by combining bulk EC, VWC and temperature through the Hilhorst (2000) model.[2]

That model is genuinely useful, but it is parameter-sensitive at roughly ±20% and unreliable below VWC 0.10 m³/m³, where it should not be used at all. The deeper limit is representativeness. The probe integrates one ~1010 mL spot, so channeling, dry pockets, or poor probe-to-media contact can make a perfectly healthy probe report a number that is simply not true of the zone.[3]

  • Bulk EC is the raw measurement (0–20000 µS/cm). Pore-water EC is the derived quantity the roots experience.
  • Hilhorst (2000) converts bulk EC + VWC + temp to pore-water EC, but is ~±20% sensitive and invalid below VWC 0.10 m³/m³.[2]
  • Representativeness fault: the probe can be fine while its 1010 mL is not representative of the zone (channeling, air gap, pulled probe).
  • The sensor cannot see per-pot runoff, effective substrate volume (it shrinks as roots grow), or whether a commanded irrigation shot was truly delivered.
measured
Bulk EC
Conductivity of solids, water and air together. This is what the probe measures directly.
~±20%
Hilhorst model
Combines bulk EC, VWC and temp. ~±20%, invalid below VWC 0.10.
derived
Pore-water EC
Salt in the liquid the roots feel. This is the number you actually want.
Figure 7. Bulk EC is measured. Pore-water EC is inferred through Hilhorst (2000) and degrades fast in dry media.[2]
What one TEROS-12 can and cannot tell you, and the second witness that fills each gap.
The probe CAN seeThe probe CANNOT seeWorkaround
VWC (local spot)True zone average across potsMultiple probes, a cohort model
Bulk ECPer-pot runoff volumeRunoff trays / drain sensors
Substrate temperatureEffective substrate volume (shrinks with roots)Periodic re-learning of DUL
Derived pore-water ECWhether an emitter actually firedFlow meter or load-cell weight jump
How-to

Using it to steer irrigation, step by step

The practical recipe is one demotion and one promotion. Demote the raw VWC reading from ‘truth’ to ‘one noisy witness with a confidence score’. Promote a small running water-balance model that holds the belief about stored water and is only nudged by trusted readings.

You track dryback (the VWC fall between shots), watch specific yield (S = change in VWC per delivered mL) to sense when the pot is filling, and anchor your ceiling on the observed DUL rather than a guessed number. Steer on derivatives, the shape and slope of the dryback, more than the absolute level, because trends shrug off additive calibration error[6]. Never act on a derivative alone without a second witness such as runoff timing or pot weight.

  1. 1
    Calibrate to your substrate
    Substrate-specific calibration is mandatory for tight steering. Without it you steer inside the error band.
  2. 2
    Verify probe contact and position
    Good media contact and a fixed, representative spot. A loose probe reports its air gap, not your root zone.
  3. 3
    Learn this pot's DUL
    Anchor the ceiling on ~5 corroborated runoff/weight events, not one, and prefer water-volume space over a raw VWC number.
  4. 4
    Steer on shape, gated by safe headroom
    Act on dryback slope and specific yield, bounded by a lower-confidence headroom estimate, not the naive point estimate.
  5. 5
    Require a second witness
    Runoff onset or load-cell mass must confirm before any signal moves a valve. The reading never reaches the valve alone.
A day of dryback: shots, decay and the DUL ceilingSharp rises are shots; the decay between them is the dryback. The top is the learned DUL ceiling.00000P0 endshot+2h+4hshot+2hpre-darkVWC (m³/m³)
Figure 8. Irrigation shots refill toward the DUL ceiling; the slope of the fall between shots is the steering signal, not the absolute level.
The steering loop: the reading never touches the valve1Probe readingraw VWC / EC /temp2Confidence scorehow much totrust it3Belief modelwater-balanceestimate42nd-witness gaterunoff or weightconfirmsOnly after the confidence gate AND a second witness does a valve action happen.
Figure 9. Every reading passes through a confidence score, a belief model and a second-witness gate before it is allowed to move water.[6]
When it goes wrong

Troubleshooting and pitfalls

Most TEROS-12 disappointments are not the sensor breaking. They are the sensor being believed when it shouldn't be. Make the first distinction clearly. A wrong reading (the probe is fine but its 1010 mL isn't the zone) is a representativeness fault that should lower your trust in absolute VWC. A railed, flatline, NaN or stale value is a hardware or cable fault that should stop you acting entirely.

Watch for VWC that tracks the daily substrate-temperature swing. That is a contact or calibration artifact, not a real storage change[5]. Watch for wetting-versus-drying paths that diverge abnormally (channeling or hydrophobic media), and for one pot that drifts away from its identically-treated siblings (a dud probe or blocked emitter).

The cardinal safety rule

Temperature and EC should move your trust in the reading, never the stored-water number directly. A diurnal-temperature artifact can drive a real dielectric shift in dry media that mimics a water change[4]. If you let it write VWC, you will chase ghosts.

Fault triage: trust or act?1Railed / NaN / stale?hardware fault →fallback2Tracks temperature?contact artifact→ down-trust3One pot unlike siblings?local fault →inspect4Otherwisetreat as a noisybut usablewitnessHardware faults stop you acting; representativeness faults only lower your trust.
Figure 10. A simple decision order: rule out hardware first, then artifacts, then local faults, before believing the number.
Symptom to cause to response. Note the ‘what it is NOT’ column, because misdiagnosis is the real cost.
SymptomLikely causeWhat it is NOTResponse
VWC railed / flatline / NaN / staleHardware or cable faultReal water readingStop steering. Run a bounded safe routine. Page a human
VWC swings with diurnal tempPoor contact / cal artifactA real water changeDown-trust absolute VWC; check contact[5]
Wetting vs drying diverge oddlyChanneling / hydrophobic mediaSensor failureInspect media; re-wet; check probe seating
One pot unlike its siblingsDud probe or blocked emitterA plant problem (yet)Inspect emitter and probe before blaming the plant
Never hard-write your anchors

Never let one manual reading or a single human observation hard-write your capacity anchor or override a safety interlock. Anchors earn their place from corroborated events, not from one good look.

Reality check

Realistic expectations

What one probe can and cannot earn

A single TEROS-12 will not give you a per-zone, ground-truth picture of your root zone, and treating it as one is the most common and most expensive mistake. With substrate-specific calibration you can realistically resolve dryback trends and approximate stored water to about ±0.01–0.02 m³/m³ in the spot the probe occupies. That is good enough to steer if you account for the uncertainty and cross-check it.[3]

Trust earned: single probe vs probe + witness + calibrationAdding a calibration and an independent witness is what moves you from caveats to control authority.single probe alone, wide band, many caveatsprobe + 2nd witness + calibration, steering-ready0% trust50% trust100% trust
Figure 11. A lone probe sits in a wide, caveat-heavy uncertainty band. Calibration plus an independent witness earns a tighter, steering-ready band.[7]
  • Best case with calibration: trustworthy dryback shape and ~±0.01–0.02 m³/m³ stored-water estimate for the probe's local spot.
  • Not achievable alone: per-zone runoff, delivery verification, or a true zone average across pots.
  • A load cell (pot weight) is the highest-value add-on because it is the one measurement that does not route through dielectric physics.
  • Expect, and design for, explicit ‘I cannot tell’ outputs rather than false precision. Control authority should be earned, not assumed.

The mature stance is to demand that the system say when it cannot tell, rather than emit a confident number it has not earned. Get the probe calibrated, add one independent witness, and read the smart watering (VWC/EC) guide for how those signals drive shots, and the signal-and-noise paper for separating a real trend from sensor noise.

Open hardware

Building the same measurement yourself

Everything above is about the measurement, not the badge on the probe. The TEROS-12 is the reference instrument, and it is worth the money if you need one thing you can trust absolutely. But the conversion from raw sensor counts to water content is published in the METER manual,[8] and several probes on the market answer the same SDI-12 protocol and return the same raw counts. If a probe returns TEROS-12 counts, the METER equations apply to it directly, with no reverse engineering.

That is the basis of an open-source node that reads one of these probes on a small ESP32, runs the whole conversion on the device, and serves the result on its own web page. The code, wiring diagrams and the full calibration procedure are published.[9] This section covers what that build gets you and, more importantly, where it does not let you off the hook.

What changes and what does not

Building your own changes the price of a reading and who owns the data. It does not change the physics. A cheap probe in the wrong spot is still one noisy local witness, still needs substrate-specific calibration, and still deserves a second witness before you act on it. Every caution in this paper applies to a DIY node exactly as written.

The equations, written out

This paper has so far described the conversion without giving you the coefficients. Here they are. R is the raw calibrated count the probe reports, roughly 1800 in air and 3600 in water. Output is in m³/m³, so multiply by 100 for a percentage.

TEROS-12 conversions from the METER manual. Use the soilless curve for rockwool, coco and peat.
What you wantFrom raw counts
VWC, soilless mediaθ = 6.771e-10·R³ − 5.105e-6·R² + 1.302e-2·R − 10.848
VWC, mineral soilθ = 3.879e-4·R − 0.6956
Apparent permittivityεa = (2.887e-9·R³ − 2.080e-5·R² + 5.276e-2·R − 43.39)²
Pore water EC (Hilhorst)σp = εp · σb / (εb − ε0), with ε0 = 4.1
Pore water permittivityεp = 80.3 − 0.37·(T − 20), T in °C

The temperature term in the last row matters more than people expect. Leaving εp as a fixed 80.3 quietly biases pore EC as substrate temperature drifts across the day, which is exactly the kind of artefact that masquerades as a real root-zone change.[4]

Handling the dry end, where Hilhorst gives up

Earlier this paper flagged that the Hilhorst model is invalid below about 0.10 m³/m³.[2] That is not a rounding problem. As the media dries, the denominator εb − ε0 collapses toward zero and the computed pore EC runs away, which is where the 50 dS/m spikes and the sudden blank readings come from.

The practical fix is to stop pretending one model covers the whole range. Use Hilhorst while the media is wet, fall back to a simple mass balance (σb divided by water content) while it is dry, and cross-fade between them across a window you set for your substrate. The open node defaults to blending between 40–60 % VWC in rockwool and lower in coco. You get a pore EC number that stays continuous through a full dryback instead of going ragged at the bottom.

Blending is a presentation fix, not new accuracy

Cross-fading removes the spikes, which makes the number usable for logging and alerts. It does not make pore EC in dry media accurate. Hilhorst is roughly ±20 % at its best and worse at the edges. Treat dry-end pore EC as a trend, not a measurement.

What the probes actually cost, and who makes them

The TEROS-12 protocol clones are mostly built by one Chinese OEM and sold under several names. The Infiwin MT22A is protocol-compatible with the TEROS 12, the MT22B with the TEROS 11, and the MT20A with the older Decagon 5TE.[10] Knowing that is worth real money, because the same measurement is sold across a wide price range.

Approximate 2026 street prices for the same class of measurement.
What you buyRoughlyWhat the money buys
TEROS-12 protocol clone60–150 USDThe measurement. Expect unit-to-unit variance, calibrate each one
Genuine METER TEROS 12300–370 USDTight consistency, rugged build, calibration backed by published work
Own-brand substrate probe~300 USDVendor support and a supported ecosystem
Platform sensor plus subscription550 USD and up, plus monthlyManaged software, dashboards, someone to call

None of that makes the expensive options a rip-off. A commercial room buying support and a warranty is making a reasonable trade. But if you are a grower who wants ten sensors instead of two, the clone plus an open node is how you get there, and the measurement underneath is the same one this paper describes.

Check the wire colours before you power anything

Colour codes are not consistent between brands, and the usual assumption is wrong on at least one common probe. On the Infiwin MT22 the red wire is the SDI-12 data line, not power, white is power and bare is ground. On a METER TEROS 12 it is orange for data and brown for power. On a Growlink TerraLink M8 lead, red is 12 V and white is signal. Only bare-is-ground holds across all three. Wire by habit and you put supply voltage straight onto a data pin.

Where a DIY node genuinely helps

The honest case for building your own is not that it measures better, because it does not. It is that cheap sensors change what you can afford to do:

  • More witnesses. This paper keeps insisting on a second witness. That advice is much easier to follow when a probe costs less than a bag of coco. Three cheap probes in one room, cross-checked, beat one expensive probe treated as gospel.
  • The derived numbers come for free. Dryback since the last peak, dryback rate, shot detection, EC stacking against pore EC at field capacity and a drained-upper-limit estimate learned from the running peak can all be computed on the device, which is the shape-of-the-curve steering this paper argues for.
  • Your data stays yours. Local web page, MQTT, CSV, or a Home Assistant integration, with no cloud account and nothing to renew.

What it does not do is remove the work. You still calibrate to your substrate, you still verify probe contact, you still learn your own drained upper limit over several corroborated events, and you still refuse to act on a derivative without a second witness. A cheap sensor makes those steps cheaper to repeat. It does not make them optional.

Related papers

References

  1. Topp, G. C., Davis, J. L., & Annan, A. P. (1980). Electromagnetic determination of soil water content: Measurements in coaxial transmission lines. Water Resources Research, 16(3), 574-582. https://doi.org/10.1029/WR016i003p00574
  2. Hilhorst, M. A. (2000). A Pore Water Conductivity Sensor. Soil Science Society of America Journal, 64(6), 1922-1925. https://doi.org/10.2136/sssaj2000.6461922x
  3. Fragkos, A., Loukatos, D., Kargas, G., & Arvanitis, K. G. (2024). Response of the TEROS 12 Soil Moisture Sensor under Different Soils and Variable Electrical Conductivity. Sensors, 24(7), 2206. https://doi.org/10.3390/s24072206
  4. Nasta, P., Coccia, F., Lazzaro, U., Bogena, H. R., Huisman, J. A., Sica, B., Mazzitelli, C., Vereecken, H., & Romano, N. (2024). Temperature-Corrected Calibration of GS3 and TEROS-12 Soil Water Content Sensors. Sensors, 24(3), 952. https://doi.org/10.3390/s24030952
  5. Kapilaratne, R. G. C. J. & Lu, M. (2012). Correcting the Temperature Influence on Soil Capacitance Sensors Using Diurnal Temperature and Water Content Cycles. Sensors, 12(7), 9773-9790. https://doi.org/10.3390/s120709773
  6. Tavan, M., Wee, B., Brodie, G., Fuentes, S., Pang, A., & Gupta, D. (2021). Optimizing Sensor-Based Irrigation Management in a Soilless Vertical Farm for Growing Microgreens. Frontiers in Sustainable Food Systems, 4, 622720. https://doi.org/10.3389/fsufs.2020.622720
  7. Nemali, K. S. & van Iersel, M. W. (2006). An automated system for controlling drought stress and irrigation in potted plants. Scientia Horticulturae, 110(3), 292-297. https://doi.org/10.1016/j.scienta.2006.07.009
  8. METER Group, Inc. (2023). TEROS 11/12 User Manual & Specifications. METER Group, Pullman, WA. (industry/manufacturer or non-journal source) https://metergroup.com/products/teros-12/
  9. Isdale, B. (2026). TDR-Sensor: an open-source ESPHome SDI-12 substrate sensor node for crop steering. GitHub. (industry/manufacturer or non-journal source) https://github.com/JakeTheRabbit/TDR-Sensor
  10. Dalian Endeavour Technology. MT22 SDI-12 Soil Moisture, EC and Temperature Sensor, user manual v6.01. (industry/manufacturer or non-journal source) infwin.com

Citations marked in-text as [n] map to this list. Primary literature and official guidance except where noted. Cannabis tissue culture is strongly genotype-dependent, verify dilutions, hormone doses and local regulations against the primary sources before relying on them.