LTC2983 Commercial Temperature Module
One chip basically replaces 5 MAX31865 and 5 MAX6675 sensors (or more).
I toiled over this configuration for a larger project and the amount of work I put into it was insane since no one has integrated it with ESPHome previously, so I thought I would share it for others that have looked for this implementation and not found it. It includes full fault management as well. I hope someone finds this helpful in the future.
ESPHome firmware and KiCad hardware designs for reading precision temperature sensors through the Analog Devices LTC2983 — a 20-channel multi-sensor ADC supporting RTDs, thermocouples, diodes, and thermistors.
This project is a standalone ESPHome device that reads 5× PT1000 RTDs and 5× K-type thermocouples in one multi-channel conversion cycle, with per-channel fault sensors. The board and can be adapted to other sensor combinations and additional sensors on unused LTC2983 channels.
Hardware
| Component | Description |
|---|---|
| MCU | ESP32-S3-DevKitC-1 class (16 MB flash, 8 MB octal PSRAM) |
| Sensor IC | LTC2983 |
| Target layout | Stacked 5 RTD + 5 TC topology (DC2210A reference) |
| Carrier PCB | Custom DC2209A1 KiCad design — LTC2983 breakout with screw terminals and SPI header |
SPI wiring (ESP32-S3 → LTC2983)
| Signal | GPIO |
|---|---|
| CS | 2 |
| CLK | 9 |
| MOSI | 5 |
| MISO | 4 |
Channel map
| Sensor | LTC2983 CH | Type | Notes |
|---|---|---|---|
| RTD 1 | 4 | PT1000, 2-wire | Sense pair CH4 ↔ CH3 (COM) |
| RTD 2 | 6 | PT1000, 2-wire | CH6 ↔ CH5 (COM) |
| RTD 3 | 8 | PT1000, 2-wire | CH8 ↔ CH7 (COM) |
| RTD 4 | 10 | PT1000, 2-wire | CH10 ↔ CH9 (COM) |
| RTD 5 | 12 | PT1000, 2-wire | CH12 ↔ CH11 (COM) |
| TC 1 | 13 | K-type, single-ended | TC− → COM; CJC via CH20 diode |
| TC 2 | 14 | K-type | |
| TC 3 | 15 | K-type | |
| TC 4 | 16 | K-type | |
| TC 5 | 17 | K-type |
Shared excitation: CH2 = 2 kΩ sense resistor (RSENSE hub). Odd channels CH3/5/7/9/11 tie to CH2. Cold-junction compensation uses a 2N3906 diode on CH20 (emitter → CH20, base + collector → COM).
See schematics/dc2210a-5rtd-5tc-wiring.png and schematics/dc2210a1-sch.pdf for full wiring of demo circuit or KiCad schematics for this implementation.
Firmware
The LTC2983 is driven by a custom C++ handler included directly in the ESPHome config — no external component package required.
Fault text sensors (one per channel — OK, Open Circuit, Overrange, etc.)
Fault CH4,Fault CH6,Fault CH8,Fault CH10,Fault CH12Fault TC1…Fault TC5
References
- LTC2983 datasheet
- DC2210A demo board — 5 RTD + 5 TC reference
- DC2296A evaluation kit
schematics/dc2210a1-sch.pdf— DC2210A schematicschematics/dc2213a1-sch.pdf— DC2213A schematic (single RTD demo)KiCad/Gerbers/— fabrication outputs for the DC2209A1 carrier board