Start Here
This is the quickest route from installation to your first rtd-acquire
measurement. No hardware is required.
Want to explore RTD temperature behavior instead?
The interactive experiments live in the
rtd-sensor RTD Playground.
rtd-acquire focuses on obtaining resistance; rtd-sensor interprets it.
1. Install rtd-acquire
rtd-acquire requires Python 3.11 or newer. Install the current release from
PyPI:
For Raspberry Pi / Linux spidev support:
See Installation for development-checkout instructions and the current support boundary.
2. Make a hardware-free measurement
from rtd_acquire import Measurement
from rtd_acquire.simulation import SimulatedAcquisitionDevice
sensor = SimulatedAcquisitionDevice(
[Measurement(resistance_ohms=109.73)]
)
measurement = sensor.read()
print(measurement.resistance_ohms)
print(measurement.status)
The device returns a Measurement, not a temperature. The important fields are:
resistance_ohms— the trustworthy acquired resistance, orNonefor a fault result;status— derived asok,warning, orfault;diagnostics— normalized acquisition diagnostics; andstandard_uncertainty_ohms— optional quantified standard uncertainty in the acquired resistance.
3. Hand the resistance to rtd-sensor
The packages stay independent. If your application wants a Pt100 temperature,
pass the resistance explicitly to rtd-sensor:
from rtd_sensor import pt100
measurement = sensor.read()
if measurement.resistance_ohms is not None:
temperature_c = pt100.resistance_to_celsius(
measurement.resistance_ohms
)
Install rtd-sensor separately when you need model interpretation.
4. Move to real hardware
The first hardware driver is the MAX31865. A typical Raspberry Pi path is:
from rtd_acquire.max31865 import MAX31865, MAX31865Config
from rtd_acquire.transports import LinuxSpidevDevice, SpiSettings
settings = SpiSettings(
clock_polarity=0,
clock_phase=1,
clock_frequency_hz=1_000_000,
)
config = MAX31865Config(
reference_resistance_ohms=430.0,
wire_count=3,
filter_frequency_hz=60,
)
with LinuxSpidevDevice("/dev/spidev0.0", settings) as spi:
measurement = MAX31865(spi, config).read()
Do not copy the 430.0 reference-resistor value blindly. Configure the actual
reference resistance used by your board.
Physical validation is still pending
The Linux/MAX31865 implementation has been present since 0.1.0a1, but the
project's formal Raspberry Pi 4 + real MAX31865 validation gate has not yet
been completed. 0.2.0 also adds the portable C/HERO path, whose physical
MAX31865 validation is likewise pending.
Where to go next
- Documentation for concepts and task-oriented guides.
- API Reference for public Python interfaces.
- Advanced for conformance, C, and embedded architecture.
- RTD Playground for experiments with RTD models and temperature interpretation.