Temperature Sensors
Temperature sensor selection and interfacing: NTC thermistors, PT100/RTD, thermocouple, and digital temperature sensor ICs.
Temperature is one of the most commonly measured physical quantities in embedded products, and the right sensing technology depends heavily on the required accuracy, range, and cost. A thermistor, an RTD, a thermocouple, and a digital sensor IC are genuinely different technologies with different interface circuits, not interchangeable options with the same firmware. This subtopic covers temperature sensor selection and interfacing at the practical, IC-specific level.
What Is Temperature Sensing?
This subtopic covers the main contact temperature-sensing technologies used in embedded products (NTC thermistors, RTDs/PT100, thermocouples, and digital sensor ICs) plus non-contact infrared sensing, and how to interface each correctly: signal conditioning, linearisation, and the specific ICs (MAX31865, MAX31855/MAX31856, MLX90614) that convert a sensor's raw electrical signal into a usable temperature reading. For the broader sensor interfacing and signal conditioning principles this subtopic builds on, see the parent Sensors topic.
This subtopic is part of the Sensors topic.
Why Temperature Sensor Selection Matters
- The four sensing technologies are not interchangeable trade-offs on one spectrum — a thermistor's low cost and high sensitivity, an RTD's linearity and long-term stability, a thermocouple's very high temperature range and ruggedness, and a digital sensor's simplicity each solve a different problem, and choosing based on cost alone often means missing a hard requirement (range, accuracy, or interface simplicity) later.
- A thermocouple without cold junction compensation reads the wrong temperature by design — this is not an edge case or a rare failure mode; every practical thermocouple circuit requires CJC to produce a correct absolute temperature, because the thermocouple only measures a temperature difference.
- RTD and thermistor accuracy depends on the interface circuit as much as the sensor itself — lead resistance in a 2-wire RTD connection, or ADC reference noise on a thermistor divider, can dominate the total measurement error even when the sensor element itself is accurate.
- Fault detection matters for anything safety- or process-critical — a sensor that reads a plausible-but-wrong value after an open or shorted connection can be worse than an obviously failed reading; dedicated ICs like the MAX31865 provide explicit fault detection that a raw ADC reading doesn't.
- A datasheet tolerance is not the finished circuit's accuracy — self-heating, ADC reference error, lead resistance, and linearisation residual all add to the sensor's own tolerance; see how to budget for error and calibrate a temperature sensor for combining these into a real system-level accuracy figure.
Key Concepts
- NTC thermistor — a resistor whose resistance decreases non-linearly with increasing temperature; requires the Steinhart-Hart equation or a lookup table to convert resistance to temperature. See What Is a Thermistor?.
- RTD (Resistance Temperature Detector) — a precision sensor (PT100 being the most common) whose resistance increases linearly and predictably with temperature (0.385 Ω/°C nominal for PT100), more accurate and stable than a thermistor but requiring a more careful interface circuit. See PT100 and RTD temperature measurement.
- Thermocouple and the Seebeck effect — two dissimilar metal junctions generate a voltage proportional to the temperature difference between them, not the absolute temperature at either junction — which is why cold junction compensation (measuring the reference junction's actual temperature) is mandatory for an absolute reading. See Thermocouples and cold junction compensation.
- Digital temperature sensor IC — a sensor with the ADC and signal conditioning integrated on-chip, communicating a ready-to-use temperature value over a digital bus (1-Wire, I2C); trades some accuracy and range flexibility for interface simplicity. See Interfacing a digital temperature sensor.
- Cold junction compensation (CJC) — the correction applied to a thermocouple reading using the measured temperature at the reference (cold) junction, without which a thermocouple's output cannot be converted to an absolute temperature.
Common Mistakes
- Choosing a thermocouple for a moderate-temperature application where an RTD or thermistor would be simpler and more accurate — thermocouples are the right choice for very high temperatures or ruggedness requirements a contact resistive sensor can't meet, not a default first choice.
- Omitting cold junction compensation, or getting the cold junction temperature wrong — a thermocouple circuit that assumes the cold junction is at a fixed known temperature (rather than measuring it) will drift with ambient temperature changes at the connector.
- Using a 2-wire RTD connection where accuracy requirements demand 3- or 4-wire — lead resistance in a 2-wire connection adds directly to the measured resistance and is indistinguishable from a genuine temperature change; 3-wire (with lead compensation) or 4-wire (Kelvin) connections remove this error.
- Ignoring fault detection on precision measurement circuits — an open RTD, a shorted thermistor, or a disconnected thermocouple can produce a plausible-looking but wrong reading on a raw ADC input; dedicated interface ICs with built-in fault flags (like the MAX31865) catch this class of failure that a raw analog reading cannot.
Common Questions
Should I use a thermistor, an RTD, or a digital sensor IC for a typical embedded product?
For most general-purpose embedded products needing ±0.5–1°C accuracy over a moderate range (roughly −40°C to +125°C), a digital sensor IC (DS18B20, MCP9808) is the simplest choice: no external signal conditioning, no linearisation math, just a bus read. An NTC thermistor is the lower-cost option when a digital IC's cost or footprint doesn't fit, at the expense of needing a linearisation calculation in firmware. Reach for an RTD only when the application genuinely needs better long-term stability and linearity than a thermistor provides, typically in industrial or scientific measurement contexts. See the parent Sensors topic for the detailed NTC-vs-PT100 comparison.
When do I actually need a thermocouple instead of an RTD?
When the application needs to measure temperatures beyond an RTD's practical range (RTDs are typically usable to a few hundred °C; thermocouples routinely measure into the 1000°C+ range depending on type), or where the measurement point's ruggedness requirements (vibration, thermal shock, a bare-wire sensing junction) favour a thermocouple's simpler, more robust physical construction over an RTD's more delicate resistive element. See Thermocouples and cold junction compensation for type K/J/T/E selection guidance.
Do I need a dedicated interface IC like the MAX31865, or can I read an RTD directly into an ADC?
A dedicated interface IC is worth it whenever accuracy, fault detection, or design time matter more than BOM cost: the MAX31865 handles the RTD excitation current, ratiometric measurement (removing reference-voltage drift as an error source), linearisation, and fault detection in hardware, work that would otherwise need to be replicated carefully in analog front-end design and firmware. A raw ADC interface can work for lower-precision applications where the added firmware complexity and calibration effort are acceptable trade-offs for lower cost. See Using the MAX31865 with a PT100 sensor for the complete interface design. Zeus Design designs precision temperature measurement circuits for industrial and IoT products.
Knowledge Base
Sensor Technologies
- What Is a Thermistor? — NTC thermistor operating principle, B-parameter model, linearisation, and ADC interface
- How Do PT100 and RTD Temperature Sensors Work? — 2-wire, 3-wire, and 4-wire connections; Wheatstone bridge; instrumentation amplifier interface
- How Do Thermocouples Work, and How Do You Implement Cold Junction Compensation? — the Seebeck effect, why CJC is mandatory, type K/J/T/E comparison, and MAX31855 vs MAX31856 implementation
- How Do You Interface an MLX90614 Non-Contact Infrared Temperature Sensor? — infrared thermopile sensing, emissivity compensation, field-of-view/distance ratio, and the SMBus/I2C register interface
Digital Sensor Interfacing
- How Do You Interface a Digital Temperature Sensor? — DS18B20 1-Wire, MCP9808 I2C, and choosing between analog and digital sensor outputs
IC-Specific Implementation
- How Do You Use the MAX31865 RTD-to-Digital Converter with a PT100 Sensor? — SPI wiring, configuration register, resistance-to-temperature conversion, fault detection
Accuracy and Calibration
- How Do You Budget for Error and Calibrate a Temperature Sensor? — self-heating error, combining error sources (worst-case vs RSS), and NATA/ISO 17025-traceable calibration
Forum Discussions
- MAX31865 reading fault bit on every conversion — VBIAS enabled but still faulting, traced to RTDIN- wiring and REFIN configuration
- NTC thermistor temperature reading jumping ±4°C — distinguishing genuine ADC noise from thermistor circuit and layout issues
Forum Discussions
MAX31865 reading fault bit on every conversion — VBIAS enabled but still faulting
Spent most of yesterday trying to get a MAX31865 talking to my STM32F4 and I'm stuck on the same problem no matter what I try: the fault bit
NTC thermistor temperature reading jumping ±4°C — ADC noise or something in the circuit?
I've got an NTC thermistor (10 kΩ at 25°C, standard B = 3950) in a voltage divider with a 10 kΩ fixed resistor, top rail 3.3 V, thermistor t