NCT218 Temperature Sensor
NCT218 remote/local temperature sensor specifications, I2C interface, and diagnostic procedures for newer Antminer hash boards.
Overview
The NCT218 is a remote/local temperature sensor manufactured by ON Semiconductor, used in newer Antminer hash boards including the S21 and T21 series. Like the TMP451, it can measure both its own die temperature (local channel) and the junction temperature of a remote semiconductor via an external thermal diode built into the ASIC chip.
The NCT218 offers higher remote temperature range (up to +204°C) than the TMP451, making it suitable for monitoring ASIC chips that may reach elevated junction temperatures under heavy load. Its small SOT-23-6 package and low power consumption make it well-suited for the dense PCB layouts of modern hash boards.
Specifications
| Parameter | Value |
|---|---|
| Manufacturer | ON Semiconductor |
| Sensing Type | Local + Remote (external diode) |
| Local Temp Range | -40°C to +127°C |
| Remote Temp Range | -64°C to +204°C (extended) |
| Local Accuracy | ±1°C (0°C to +85°C) |
| Remote Accuracy | ±1°C (0°C to +150°C) |
| Resolution | 0.0625°C (12-bit) |
| Interface | I2C / SMBus |
| Supply Voltage | 1.8V to 3.6V |
| Supply Current | 40uA typical (active) |
| Conversion Rate | Configurable: 0.0625 Hz to 32 Hz |
| Default I2C Address | 0x4C |
| Package | SOT-23-6 |
| Alert Output | ALERT pin (open-drain, active low) |
The NCT218 is register-compatible with the TMP451 and LM90 families. Diagnostic procedures and I2C commands that work for the TMP451 generally work for the NCT218 as well.
Remote Diode Temperature Sensing
The NCT218 measures ASIC junction temperature through a dedicated thermal diode in the ASIC package. It drives a precision current through the external diode (connected via DXP and DXN pins) and measures the resulting forward voltage, which varies linearly with temperature.
Pin Configuration (SOT-23-6)
┌─────┐
DXN ─┤1 6├─ VCC
DXP ─┤2 5├─ ALERT
GND ─┤3 4├─ SCLK/SDA
└─────┘- DXP (Pin 2): Positive connection to remote thermal diode
- DXN (Pin 1): Negative connection (return path)
- VCC (Pin 6): Power supply (1.8V to 3.6V)
- GND (Pin 3): Ground
- SCLK/SDA (Pin 4): Combined I2C data/clock (uses a simplified single-wire protocol on some variants; standard I2C on the most common variant used in miners)
- ALERT (Pin 5): Open-drain alert output
I2C Interface
Key Registers
| Register | Address | R/W | Description |
|---|---|---|---|
| Local Temp (MSB) | 0x00 | R | Local temperature, integer degrees |
| Remote Temp (MSB) | 0x01 | R | Remote temperature, integer degrees |
| Status | 0x02 | R | Alert status and fault flags |
| Configuration | 0x09 | R/W | Operating mode and settings |
| Local Temp (LSB) | 0x21 | R | Local temperature, fractional part |
| Remote Temp (LSB) | 0x10 | R | Remote temperature, fractional part |
| Remote Offset (MSB) | 0x11 | R/W | Remote calibration offset |
| Remote Offset (LSB) | 0x12 | R/W | Remote calibration offset, fine |
| Local High Limit | 0x05 | R/W | Local over-temperature threshold |
| Remote High Limit | 0x07 | R/W | Remote over-temperature threshold |
| Manufacturer ID | 0xFE | R | 0x41 (ON Semiconductor) |
| Device ID | 0xFF | R | Model-specific identifier |
Reading Temperature
# Read remote temperature from NCT218 at 0x4C
msb = i2c_read(0x4C, 0x01) # Integer part (signed)
lsb = i2c_read(0x4C, 0x10) # Fractional part
# 12-bit resolution: MSB is integer, upper 4 bits of LSB are fraction
temp = msb + (lsb >> 4) * 0.0625
# Example: msb=0x50 (80), lsb=0x40 (4 × 0.0625 = 0.25)
# Temperature = 80.25°CRole in Antminer S21 Architecture
In the Antminer S21 hash board, NCT218 sensors replaced the LM75A sensors used in previous generations. The key differences in how they are deployed:
- Remote sensing: NCT218 sensors measure actual BM1368 junction temperature via thermal diodes, providing more accurate readings than the LM75A's surface measurement
- Lower supply voltage: NCT218 sensors can operate from the 1.8V VDDIO rail, reducing the need for separate 3.3V power distribution to the sensor locations
- PIC bridge access: On S21 boards, sensors may still be accessed through a PIC16F1704 bridge, using the same CMD 0x3C sensor read protocol
Common Failure Modes
1. Remote Diode Open Circuit
Symptoms: Remote temperature reads -64°C or a fixed error value. Local temperature works normally.
Causes:
- Broken PCB trace between NCT218 DXP/DXN pins and the ASIC thermal diode
- Failed ASIC chip (internal thermal diode destroyed)
- Poor solder joint on the NCT218 DXP or DXN pin
Diagnosis: Read the status register (0x02). If the OPEN bit is set, the remote diode circuit is broken. Check continuity of the DXP/DXN traces.
2. No I2C Response
Symptoms: No ACK at address 0x4C.
Causes:
- Missing 1.8V or 3.3V supply voltage
- Failed NCT218 IC
- I2C bus contention (SDA or SCL held LOW by another device)
Diagnosis: Measure VCC at the sensor. Verify I2C bus signals. If multiple I2C devices have failed, the bus itself may have an issue (damaged pull-up resistors or broken trace).
3. Both Channels Read Incorrect Values
Symptoms: Both local and remote temperatures are significantly wrong (e.g., reading 0°C in a warm environment).
Causes:
- Sensor stuck in a fault state
- I2C communication errors returning stale data
- Incorrect conversion rate configuration
Diagnosis: Read the manufacturer ID register (0xFE). If it does not return 0x41, I2C communication is corrupted. Try power-cycling the sensor by briefly removing VCC.
Testing Procedures
Verify Power Supply
Measure the VCC pin:
- Expected: 1.8V to 3.6V (depends on board design)
- If 0V: Check the VDDIO LDO regulator or 3.3V supply feeding this sensor
I2C Bus Check
With the board powered:
- Scan for a device at address 0x4C
- Read manufacturer ID register (0xFE) — expect 0x41
- If no response, check that SDA and SCL are not stuck LOW (measure voltage — should be near VCC when idle)
Read Temperature Channels
- Read local temperature (registers 0x00 + 0x21)
- Read remote temperature (registers 0x01 + 0x10)
- At room temperature (board cold): both should read 20-30°C
- Under load: remote should read 40-80°C depending on ASIC workload
- Check status register (0x02) for any fault flags
Thermal Validation
Apply controlled heat near the sensor:
- Local temperature should respond within 2-3 seconds
- Remote temperature should not change (it measures the ASIC die, not ambient)
- If both readings change together, the remote channel may be misconfigured or the DXP/DXN pins may be shorted to local paths
Replacement Notes
- SOT-23-6 package — use a fine-tip soldering iron or hot air at 260°C
- Ensure correct orientation — pin 1 (DXN) has a dot marker
- After replacement, read manufacturer ID (0xFE) to confirm successful installation
- The remote offset register (0x11/0x12) may need reprogramming if the original sensor had calibration offsets
- If the remote diode issue persists after sensor replacement, the fault is in the ASIC thermal diode or the PCB trace, not the sensor
Found In These Miners
- Antminer S21 — 4 sensors per board
- Antminer S21 Pro — 4 sensors per board
- Antminer T21 — 4 sensors per board
Related Pages
TMP451 Remote Temperature Sensor
TMP451 remote/local temperature sensor specifications, I2C interface, and testing procedures for Whatsminer and other mining hardware.
MOSFETs in Mining Hardware
Power stage MOSFETs used in hash board buck converters — high-side and low-side switching, common ICs, multimeter testing procedures, and failure modes.