NTC Thermistor Temperature Measurement
NTC uses the ADC peripheral for sampling; there is no dedicated NTC peripheral type. After configuring a sensor-read action (actionType=19) in "Peripheral Execution" and selecting sensorCategory: "ntc", the firmware converts the temperature using the B-parameter method. For the ADC peripheral's own range, filtering, and engineering-unit conversion, see ADC Analog Input.
Circuit Topology
VCC → series resistor → ADC pin → NTC → GND. Verify the front-end common ground, supply voltage, and the allowed pin input range against the target chip; the ADC pin voltage must not exceed the chip's allowed value.
Conversion Method
Temperature: 1/T = 1/T0 + ln(Rntc/R0) / B
Resistance: Vntc = adc × vRef / adcMax; Rntc = Rseries × Vntc / (vRef − Vntc)Calibration Parameters
Calibration parameters are written as top-level fields of the actionValue JSON of the sensor-read action:
| Field | Default | Description |
|---|---|---|
bCoefficient | 3950 | B value (K) |
seriesResistor | 10000 | Series resistor (Ω) |
nominalResistance | 10000 | Nominal resistance R0 (Ω) |
nominalTempC | 25 | Nominal temperature T0 (°C) |
vRef | 3.3 | Reference voltage (V) |
adcMax | 4095 | Full-scale count |
- Each read performs a 10-sample median filter internally, reusing the read cache.
- When the ADC value is ≤1 or ≥ adcMax−1 (open/short circuit), NAN is returned, and upper layers can use this to determine sensor failure; NAN must not be treated as 0 °C or a valid reading.
- The standard 10K/B3950 configuration has a calculated error <1 °C at 25 °C; field accuracy also depends on resistor tolerance, reference voltage, and self-heating, and must be verified against actual measured temperatures.
Web UI: after selecting "NTC Thermistor" as the "Sensor Category" in the executor form, three dedicated inputs for B value / series resistor / nominal resistance expand; on save they are written into the action JSON top-level fields.
Related Documents
- ADC Analog Input
- ADC resource lifecycle, sampling failures, and multi-consumer behavior: see the ADC lifecycle document

