Skip to content

Commit ccf3c78

Browse files
committed
docs: define compatibility evidence
Document full RTD resistance envelopes for hardware compatibility checks. Clarify the difference between vendor claims, electrical compatibility, and physical validation so support is not overstated.
1 parent 1918c69 commit ccf3c78

5 files changed

Lines changed: 146 additions & 33 deletions

File tree

‎docs/CHANGELOG.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ The first public alpha release was `0.1.0a1`.
88

99
### Added
1010

11+
- Define full-characteristic resistance envelopes for all six current
12+
`rtd-sensor` built-in RTD families and the evidence needed to distinguish
13+
manufacturer support, electrical compatibility, range validation, and real
14+
family/hardware validation.
1115
- Record the TI ADS1220 as a later configurable precision-ADC candidate and the
1216
PT-100-485/MB as a low-cost raw-resistance Modbus research candidate.
1317
- Record Atlas Scientific EZO-RTD as an evaluated temperature-output device

‎docs/DESIGN.md‎

Lines changed: 58 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1007,18 +1007,67 @@ repeated in every measurement.
10071007

10081008
Three compatibility claims are distinct:
10091009

1010-
1. **Manufacturer-supported** — the vendor explicitly documents support.
1011-
2. **Electrically compatible** — the configured acquisition chain can measure
1012-
the required resistance range/topology even if not advertised for that RTD.
1013-
3. **rtd-acquire validated** — the project has explicit test evidence for the
1014-
RTD/hardware/configuration combination.
1010+
1. **Manufacturer-supported** — the vendor explicitly documents the relevant RTD
1011+
family/model or a resistance-input mode that covers the stated use, with the
1012+
required configuration/topology. The claim applies only to what the vendor
1013+
actually documents: support for a generic resistance-input mode does not
1014+
become a vendor claim for an RTD family that the documentation does not name.
1015+
2. **Electrically compatible** — documented device limits plus engineering
1016+
analysis show that the configured acquisition chain can measure the complete
1017+
required resistance envelope and wiring/topology without violating relevant
1018+
reference, excitation, gain, input, or representability limits, even if the
1019+
vendor does not advertise that RTD family.
1020+
3. **rtd-acquire validated** — the project has reproducible physical test
1021+
evidence for the hardware/configuration combination. Validation never upgrades
1022+
an electrically compatible combination into a manufacturer-supported claim.
10151023

10161024
Compatibility is configuration-specific rather than a simple property of a
10171025
converter chip. Reference resistance, excitation, gain, wiring, input limits,
1018-
and other configuration may determine whether a combination is usable.
1019-
1020-
The project must not turn an electrical-compatibility analysis into a claim of
1021-
manufacturer support.
1026+
and other configuration may determine whether a combination is usable. A nominal
1027+
`R0` value alone is not enough: compatibility is checked against the complete
1028+
ideal resistance envelope of the companion `rtd-sensor` characteristic.
1029+
1030+
### 9.1 Evidence required for a compatibility record
1031+
1032+
A compatibility record should identify enough evidence to reproduce the claim:
1033+
1034+
- exact acquisition device/module and relevant hardware revision when known;
1035+
- interface/backend used and software version or commit;
1036+
- RTD family/characteristic being assessed;
1037+
- required resistance envelope and its source/provenance;
1038+
- reference resistor/reference network, excitation, gain, wiring mode, channel,
1039+
and other electrical settings that affect usable range;
1040+
- vendor documentation supporting any manufacturer-support claim;
1041+
- calculations and device limits supporting any electrical-compatibility claim;
1042+
- physical test platform/date, reference equipment, tested resistance points,
1043+
acceptance limits, and result artifacts for project validation; and
1044+
- explicit limitations, untested regions, and unresolved assumptions.
1045+
1046+
Absence of one evidence class must remain visible. For example, successful bench
1047+
tests can establish project validation for a configuration but cannot manufacture
1048+
a vendor support statement that the vendor never made.
1049+
1050+
### 9.2 Validation depth
1051+
1052+
`rtd-acquire validated` can carry two useful evidence depths without creating
1053+
additional compatibility categories:
1054+
1055+
- **range-validated** — physical precision-resistance testing covers
1056+
representative low, middle, and high points spanning the required acquisition
1057+
envelope for a configuration. This validates resistance acquisition without
1058+
depending on RTD temperature-model interpretation.
1059+
- **family/hardware validated** — the configured acquisition path is additionally
1060+
exercised with the intended RTD family on real hardware, with applicable
1061+
wiring behavior and any native-fault behavior required by the validation plan
1062+
recorded.
1063+
1064+
A family/hardware validation does not imply that every resistance across the
1065+
characteristic was physically tested. Conversely, range validation does not prove
1066+
that a particular physical probe is suitable across its mathematical model's
1067+
full temperature range. The validation record must say which evidence exists.
1068+
1069+
The project must not turn electrical-compatibility analysis, range validation, or
1070+
family testing into a stronger claim than the evidence supports.
10221071

10231072
### RTD-model parity goal
10241073

‎docs/HARDWARE.md‎

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -89,16 +89,36 @@ public diagnostic vocabulary.
8989
This table is the canonical `rtd-acquire` list of current `rtd-sensor` parity
9090
targets. The project should maintain at least one validated acquisition path for
9191
each listed built-in family and reconcile this table whenever `rtd-sensor` adds
92-
or removes a supported family:
93-
94-
| RTD model | Nominal R0 | rtd-acquire obligation |
95-
| --- | ---: | --- |
96-
| Pt100 | 100 Ω | Required |
97-
| Pt500 | 500 Ω | Required |
98-
| Pt1000 | 1000 Ω | Required |
99-
| Ni120 6720 | 120 Ω | Required |
100-
| Ni1000 6180 | 1000 Ω | Required |
101-
| Ni1000 TK5000 | 1000 Ω | Required |
92+
or removes a supported family.
93+
94+
The resistance envelope is the ideal-element resistance implied by the current
95+
`rtd-sensor` characteristic over that characteristic's complete supported
96+
temperature range. It is an **acquisition requirement**, not temperature-model
97+
logic for a driver. A candidate acquisition chain must be able to measure the
98+
required resistance interval with the intended wiring/configuration before it can
99+
be considered electrically compatible with the full characteristic.
100+
101+
| RTD model | Nominal R0 | Characteristic span | Required ideal resistance envelope | rtd-acquire obligation |
102+
| --- | ---: | ---: | ---: | --- |
103+
| Pt100 | 100 Ω | -200 to 850 °C | 18.52008 to 390.481125 Ω | Required |
104+
| Pt500 | 500 Ω | -200 to 850 °C | 92.6004 to 1952.405625 Ω | Required |
105+
| Pt1000 | 1000 Ω | -200 to 850 °C | 185.2008 to 3904.81125 Ω | Required |
106+
| Ni120 6720 | 120 Ω | -80 to 260 °C | ~66.6000 to 380.3099 Ω | Required |
107+
| Ni1000 6180 | 1000 Ω | -60 to 250 °C | 695.202595 to 2891.5625 Ω | Required |
108+
| Ni1000 TK5000 | 1000 Ω | -60 to 250 °C | 751.79284 to 2517.265625 Ω | Required |
109+
110+
The platinum values are derived from the IEC 60751 PT-385 characteristic used by
111+
`rtd-sensor`; Pt100, Pt500, and Pt1000 therefore share one normalized curve and
112+
differ only by scale. The nickel values come from the distinct 6720, 6180, and
113+
TK5000 characteristics used by `rtd-sensor`. Ni120 is shown rounded because its
114+
published piecewise coefficients require the small, explicitly bounded continuity
115+
adjustments documented by the companion project.
116+
117+
These bounds describe the mathematical characteristic, not every physical RTD
118+
product sold under the same family name. A probe's packaging, construction,
119+
tolerance class, lead arrangement, or rated operating range may be narrower.
120+
Hardware validation must record the actual sensor and acquisition configuration
121+
rather than treating this table as a product-rating claim.
102122

103123
A device need not support all models. Project-wide coverage is the goal. A new
104124
family first triggers a compatibility/validation review of existing acquisition

‎docs/REFERENCES.md‎

Lines changed: 36 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -113,11 +113,42 @@ separate physical HERO/MAX31865 validation required by the roadmap.
113113
Roe, G. (2026). *rtd-sensor* [Python software]. GitHub.
114114
https://github.com/GregRR/rtd-sensor
115115

116-
**Project use:** Integration-interface reference for the explicit package
117-
boundary demonstrated by `examples/rtd_sensor_pt100.py`. The example passes a
118-
trustworthy acquired resistance to `rtd_sensor.pt100.resistance_to_celsius()`;
119-
`rtd-sensor` remains a separate package rather than an `rtd-acquire` runtime
120-
dependency.
116+
**Project use:** Integration-interface and parity reference for the explicit
117+
package boundary demonstrated by `examples/rtd_sensor_pt100.py` and for the
118+
current built-in RTD families that `rtd-acquire 0.3` must cover. The companion
119+
project's source definitions and versioned conformance catalog identify the
120+
characteristic ranges and coefficients from which `rtd-acquire` derives required
121+
ideal resistance envelopes; `rtd-sensor` remains a separate package rather than
122+
an `rtd-acquire` runtime dependency.
123+
124+
## RTD characteristic and resistance-envelope sources
125+
126+
International Electrotechnical Commission. (2022). *IEC 60751:2022 industrial
127+
platinum resistance thermometers and platinum temperature sensors* (3rd ed.).
128+
https://webstore.iec.ch/en/publication/63753
129+
130+
**Project use:** Normative scientific source inherited through the companion
131+
`rtd-sensor` PT-385 characteristic for the Pt100, Pt500, and Pt1000 full-model
132+
resistance envelopes used in 0.3 acquisition-compatibility planning.
133+
134+
Innovative Sensor Technology AG. (n.d.). *RTD nickel sensors* [Application
135+
note].
136+
https://www.ist-ag.com/sites/default/files/downloads/ATN_E.pdf
137+
138+
**Project use:** Scientific source inherited through `rtd-sensor` for the
139+
former-DIN Ni1000 6178/6180 ppm/K and Nickel NL / Ni1000 TK5000 5000 ppm/K
140+
characteristics. The resulting resistance envelopes are compatibility inputs,
141+
not runtime temperature-model logic in `rtd-acquire`.
142+
143+
Minco Products, Inc. (n.d.). *Resistance thermometry: Principles and
144+
applications of resistance thermometers and thermistors*.
145+
https://www.minco.com/wp-content/uploads/Resistance-Thermometry.pdf
146+
147+
**Project use:** Scientific source inherited through `rtd-sensor` for the North
148+
American Ni120 / 6720 ppm/K piecewise characteristic and its -80 °C through
149+
260 °C model span. The companion project owns the bounded continuity treatment
150+
of the published rounded segments; `rtd-acquire` consumes only the resulting
151+
resistance-envelope requirement.
121152

122153
## Precision ADC and converter research
123154

‎docs/ROADMAP.md‎

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -127,16 +127,25 @@ validate them independently against Python.
127127
Goal: ensure the project as a whole provides practical acquisition paths for
128128
all current `rtd-sensor` built-in RTD families.
129129

130-
- [ ] Document resistance requirements for Pt100, Pt500, Pt1000, Ni120,
130+
- [x] Document resistance requirements for Pt100, Pt500, Pt1000, Ni120,
131131
Ni1000 6180, and Ni1000 TK5000 without importing temperature-model logic
132-
into acquisition drivers.
133-
- [ ] Classify tested combinations as manufacturer-supported, electrically
134-
compatible, and/or `rtd-acquire` validated.
135-
- [ ] Validate appropriate MAX31865 configurations beyond Pt100 where the
136-
electrical range and reference network support them.
137-
- [ ] Add precision reference-resistance validation across representative
138-
low/mid/high operating points.
139-
- [ ] Document unsupported or unvalidated combinations explicitly.
132+
into acquisition drivers; define the compatibility/evidence vocabulary used
133+
by later validation records.
134+
- [ ] Add machine-readable 0.3 compatibility/evidence data after the textual
135+
contract is stable enough to avoid freezing accidental schema choices.
136+
- [ ] Extend shared Python/C MAX31865 conformance and threshold coverage to a
137+
representative ~4.3 kΩ reference network/high-scale configuration.
138+
- [ ] Classify MAX31865/family configurations as manufacturer-supported,
139+
electrically compatible, and/or `rtd-acquire` validated, with unsupported
140+
and unvalidated combinations explicit.
141+
- [ ] Publish the compatibility matrix and evidence distinctions in the GitHub
142+
Pages documentation with navigation/cross-links and bibliography updates.
143+
- [ ] Extend the physical validation procedure across representative family
144+
resistance envelopes and precision low/mid/high reference points.
145+
- [ ] Add a reproducible validation-results template and small capture helpers so
146+
physical evidence can be recorded without copying ad hoc terminal output.
147+
- [ ] Record incremental real-hardware evidence as equipment becomes available,
148+
while keeping untested combinations visibly unvalidated.
140149

141150
## 0.4 — Configurable precision ADC: ADS124S08
142151

0 commit comments

Comments
 (0)