ISO 13485 Test Data Requirements with TofuPilot
ISO 13485 is the quality management standard for medical device manufacturers. It requires rigorous control of production processes, including complete test records for every device produced. TofuPilot provides the structured, traceable test data storage that ISO 13485 demands.
What ISO 13485 Requires for Test Data
ISO 13485 Section 7.5.1 (Control of Production and Service Provision) and Section 8.2.4 (Monitoring and Measurement of Product) require:
| Requirement | ISO 13485 clause | What it means for testing |
|---|---|---|
| Process validation | 7.5.2 | Prove your test process produces consistent results |
| Identification and traceability | 7.5.3 | Link every test result to a specific device serial number |
| Monitoring and measurement | 8.2.4 | Define acceptance criteria and record conformity evidence |
| Control of records | 4.2.5 | Maintain test records, ensure they're retrievable and protected |
| Nonconforming product | 8.3 | Document what happens to devices that fail testing |
How TofuPilot Maps to ISO 13485
Traceability (7.5.3)
Every test run in TofuPilot is linked to a unit serial number. Search by serial to see the complete test history of any device.
from tofupilot import TofuPilotClient
client = TofuPilotClient()
# Every run ties to a unique device identifier (UDI)
client.create_run(
procedure_id="FINAL-INSPECTION-IEC60601",
unit_under_test={
"serial_number": "MD-2025-00421", # UDI or serial
"part_number": "PULSE-OX-V3",
},
run_passed=True,
steps=[{
"name": "Electrical Safety",
"step_type": "measurement",
"status": True,
"measurements": [
{"name": "earth_leakage_ua", "value": 287, "unit": "uA", "limit_high": 500},
{"name": "patient_leakage_ua", "value": 8.3, "unit": "uA", "limit_high": 10},
{"name": "insulation_resistance_mohm", "value": 520, "unit": "Mohm", "limit_low": 100},
],
}, {
"name": "Functional Performance",
"step_type": "measurement",
"status": True,
"measurements": [
{"name": "spo2_accuracy_pct", "value": 1.2, "unit": "%", "limit_high": 2.0},
{"name": "heart_rate_accuracy_bpm", "value": 1.5, "unit": "BPM", "limit_high": 3.0},
],
}],
)Acceptance Criteria (8.2.4)
ISO 13485 requires documented acceptance criteria for every inspection and test. In TofuPilot, limits on measurements serve as your acceptance criteria.
| Measurement | Acceptance criteria | Standard reference |
|---|---|---|
| Earth leakage | < 500 uA | IEC 60601-1 |
| Patient leakage | < 10 uA (Type BF) | IEC 60601-1 |
| Insulation resistance | > 100 Mohm | IEC 60601-1 |
| SpO2 accuracy | < 2% ARMS | ISO 80601-2-61 |
These limits are defined in the test procedure and enforced by TofuPilot on every run.
Control of Records (4.2.5)
ISO 13485 requires records to be:
| Requirement | How TofuPilot meets it |
|---|---|
| Legible | Structured data, not handwritten |
| Readily identifiable | Searchable by serial, procedure, date |
| Retrievable | API and dashboard access |
| Protected from damage | Cloud-hosted, backed up |
| Protected from loss | Redundant storage |
| Retained for defined period | Data retention per your QMS policy |
Nonconforming Product (8.3)
When a device fails testing, ISO 13485 requires documentation of:
- The nature of the nonconformity (which measurement failed)
- Actions taken (rework, scrap, use-as-is disposition)
- Re-inspection results after rework
TofuPilot captures #1 automatically (failed measurements with values and limits). For #2 and #3, the retest flow creates additional run records linked to the same serial number.
# Device failed initial test
# After rework, retest and record
client.create_run(
procedure_id="FINAL-INSPECTION-IEC60601-RETEST",
unit_under_test={
"serial_number": "MD-2025-00421",
},
run_passed=True,
steps=[{
"name": "Post-Rework Electrical Safety",
"step_type": "measurement",
"status": True,
"measurements": [
{"name": "earth_leakage_ua", "value": 312, "unit": "uA", "limit_high": 500},
{"name": "patient_leakage_ua", "value": 7.1, "unit": "uA", "limit_high": 10},
],
}],
)The device now has two test records in TofuPilot: the initial failure and the post-rework pass. Both are traceable, timestamped, and immutable.
Device History Record (DHR)
The DHR is a compilation of records that documents the production history of a finished device. Test records are a key component.
TofuPilot contributes to the DHR by providing:
- All test procedures executed on the device
- All measurement results with pass/fail status
- Dates and times of each test
- Which station/tester ran each test
- Any retests after rework
Pull a device's complete test history by serial number for DHR compilation.
Audit Readiness
When an auditor asks for test records, you need to produce them quickly and completely.
Common audit requests and how to answer them with TofuPilot:
| Auditor request | TofuPilot response |
|---|---|
| "Show me test records for lot 2025-03" | Filter by date range, export all runs |
| "What's the acceptance criteria for leakage testing?" | Show measurement limits in the procedure |
| "Show me all devices that failed and were reworked" | Filter for failed runs, check retests by serial |
| "Prove your test equipment is calibrated" | Station metadata with calibration dates |
| "What's your first-pass yield for this product?" | Procedure dashboard FPY metric |
IEC 60601 Electrical Safety Tests
Medical devices connected to patients require IEC 60601-1 electrical safety testing. Key measurements:
| Test | Type BF limit | Type CF limit |
|---|---|---|
| Earth leakage (normal) | 500 uA | 500 uA |
| Earth leakage (single fault) | 1000 uA | 1000 uA |
| Patient leakage (normal) | 100 uA | 10 uA |
| Patient leakage (single fault) | 500 uA | 50 uA |
Log all of these in TofuPilot with limits matching your device classification. The structured records serve as evidence of conformity for regulatory submissions.
Software Validation
If you're using TofuPilot as part of your quality system, ISO 13485 Section 7.5.2.1 requires validation of software used in production and quality management. Work with your quality team to document TofuPilot's role in your QMS and include it in your software validation plan.