NTC Thermistor Calculator

An NTC (Negative Temperature Coefficient) thermistor is a type of resistor whose resistance decreases as its temperature increases. These semiconductor devices are highly temperature-sensitive and find applications in thermostats, temperature sensors, and protection systems.

The Beta equation

The resistance at a given temperature is calculated using the Beta equation:

R(T) = R0 x exp(B x (1/T - 1/T0))

Where:

The formula works by comparing the inverse of the absolute (Kelvin) temperatures of the target and reference points. The Beta constant amplifies the differences for precise modelling.

Parameters

Worked example

For a typical 10k NTC thermistor (B = 3950, R0 = 10,000 ohms at 25 C):

Temperature (C) Temperature (K) Resistance (ohms)
0 273.15 32,650
10 283.15 19,900
20 293.15 12,490
25 298.15 10,000
30 303.15 8,055
40 313.15 5,325
50 323.15 3,600
60 333.15 2,488
70 343.15 1,752
80 353.15 1,256
90 363.15 915
100 373.15 677
Resistance (ohms) Temperature (°C) 0 5k 10k 15k 20k 25k 30k 35k 0 10 20 30 40 50 60 70 80 90 100 32,650 19,900 12,490 10,000 3,600 677

The steep resistance curve at lower temperatures gives excellent resolution for solar thermal monitoring, where tank temperatures of 20-80 C are typical.

Steinhart-Hart equation

The Beta equation assumes a simplified two-point model of the thermistor's resistance-temperature curve. For wider temperature ranges or higher accuracy, the Steinhart-Hart equation uses three coefficients:

1/T = A + B x ln(R) + C x (ln(R))^3

Where A, B, and C are coefficients determined by calibrating against three known temperature points. The Steinhart-Hart model fits the real NTC curve more closely than the Beta equation, particularly at temperature extremes.

Our firmware supports both methods per sensor — if a Beta value is configured, the Beta equation is used. If Beta is set to zero, the Steinhart-Hart coefficients are used instead. Each sensor also supports a per-channel calibration offset, applied after conversion, to correct for systematic errors.