Plug-and-play
manufacturing test analytics
Connect your test scripts with a single line of Python
With TofuPilot's open-source Python SDK and REST API, you can quickly connect your test scripts—whether you use OpenHTF or your own syntax.
import openhtf as htf
from tofupilot.openhtf import TofuPilot
@plug(multimeter=MultimeterPlug)
@htf.measures(
htf.Measurement('voltage')
.in_range(3.1, 3.5)
.with_units('V'),
)
def test_voltage(test, multimeter):
voltage = multimeter.get_voltage()
test.measurements.voltage = voltage
def main():
test = htf.Test(
test_voltage,
part_number="PCBA01",
procedure_id="PCBA_TEST",
)
with TofuPilot(test):
test.execute(lambda: "07301")
“It's clear, it's direct, it's simple. That's what I like about TofuPilot. I like things to be simple and pragmatic.”

Quentin Lohri
Senior Embedded Software Engineer & R&D Sensor Lead, SICPA
Capture every data point from your hardware tests
TofuPilot's powerful data model makes it easy to log every detail of your hardware testing scenarios for unparalleled reporting and analytics.
- Test phases
- Breakdown your test in distinct phases with separate outcomes.
- Log
- Capture timestamped execution logs for debugging failed tests.
- Attachments
- Upload any binary file and link them to test runs.
- Numeric measurements
- Record numeric values with units and limits.
- Boolean measurements
- Record pass/fail and true/false test results.
- String measurements
- Record text values with regex validation.
- JSON measurements
- Record structured data with custom validation.
- Dimensional measurements
- Store time-indexed data with ready-made visualization.
- Multi-dimensional measurements
- Visualize multiple Y-axis parameters against a single X-axis.
- Validators
- Parse and apply measurement validation rules automatically.
- Plugs (soon)
- Automatic tracking of your metrology equipment.
- Serial number
- Track device under test with unique identifiers.
- Sub-units
- Track unit assembly steps and box build processes hierarchically.
- Part revisions
- Track hardware component versions and iterations during testing.
- Batch number
- Group and trace products by production batch.
- Procedure version
- Track test procedure versions during execution for traceability.
- Test phases
- Breakdown your test in distinct phases with separate outcomes.
- Log
- Capture timestamped execution logs for debugging failed tests.
- Attachments
- Upload any binary file and link them to test runs.
- Numeric measurements
- Record numeric values with units and limits.
- Boolean measurements
- Record pass/fail and true/false test results.
- String measurements
- Record text values with regex validation.
- JSON measurements
- Record structured data with custom validation.
- Dimensional measurements
- Store time-indexed data with ready-made visualization.
- Multi-dimensional measurements
- Visualize multiple Y-axis parameters against a single X-axis.
- Validators
- Parse and apply measurement validation rules automatically.
- Plugs (soon)
- Automatic tracking of your metrology equipment.
- Serial number
- Track device under test with unique identifiers.
- Sub-units
- Track unit assembly steps and box build processes hierarchically.
- Part revisions
- Track hardware component versions and iterations during testing.
- Batch number
- Group and trace products by production batch.
- Procedure version
- Track test procedure versions during execution for traceability.
- Procedure version
- Track test procedure versions during execution for traceability.
- Batch number
- Group and trace products by production batch.
- Part revisions
- Track hardware component versions and iterations during testing.
- Sub-units
- Track unit assembly steps and box build processes hierarchically.
- Serial number
- Track device under test with unique identifiers.
- Plugs (soon)
- Automatic tracking of your metrology equipment.
- Validators
- Parse and apply measurement validation rules automatically.
- Multi-dimensional measurements
- Visualize multiple Y-axis parameters against a single X-axis.
- Dimensional measurements
- Store time-indexed data with ready-made visualization.
- JSON measurements
- Record structured data with custom validation.
- String measurements
- Record text values with regex validation.
- Boolean measurements
- Record pass/fail and true/false test results.
- Numeric measurements
- Record numeric values with units and limits.
- Attachments
- Upload any binary file and link them to test runs.
- Log
- Capture timestamped execution logs for debugging failed tests.
- Test phases
- Breakdown your test in distinct phases with separate outcomes.
- Procedure version
- Track test procedure versions during execution for traceability.
- Batch number
- Group and trace products by production batch.
- Part revisions
- Track hardware component versions and iterations during testing.
- Sub-units
- Track unit assembly steps and box build processes hierarchically.
- Serial number
- Track device under test with unique identifiers.
- Plugs (soon)
- Automatic tracking of your metrology equipment.
- Validators
- Parse and apply measurement validation rules automatically.
- Multi-dimensional measurements
- Visualize multiple Y-axis parameters against a single X-axis.
- Dimensional measurements
- Store time-indexed data with ready-made visualization.
- JSON measurements
- Record structured data with custom validation.
- String measurements
- Record text values with regex validation.
- Boolean measurements
- Record pass/fail and true/false test results.
- Numeric measurements
- Record numeric values with units and limits.
- Attachments
- Upload any binary file and link them to test runs.
- Log
- Capture timestamped execution logs for debugging failed tests.
- Test phases
- Breakdown your test in distinct phases with separate outcomes.
Test, trace, optimize
Right from your browser
TofuPilot's web interface provides everything you need to analyze test results, trace unit quality, and streamline your manufacturing process.
Operator UI
newEnable operators to start tests and enter manual prompts specified from your Python script directly in a browser.

Procedure overview
Get a quick overview of weekly procedure performance and execution trends.

Stations
Create test stations with scoped API permissions for secure distributed testing.

Run page
Explore your test results with a ready-made searchable run page with phases, measurements, attachments, logs, and metadata.

Run analytics
Analyze overall run analytics with run outcomes, unit throughput, first/second/last pass yield, and average duration.

Run filters
Get analytics breakdown by run origin, procedure version, batch, and part revision.

Unit traceability
Trace full history of individual units and sub-units throughout your production process.

Control charts
Track individual measurement analytics to monitor limits accuracy and measurement distributions.

“TofuPilot gives us a clear, well-organized view of our testing results. New features keep rolling in, making it even easier to explore and analyze our data.”

Juliette Lansoy
Integration Validation & Verification Manager, Enchanted Tools
We ship new features fast, so you ship your tests faster
Our roadmap focuses on features that streamline test development, built from our user needs and what we wished we had back then on the production floor.
Host your test data
exactly where you want it
Use our secure cloud infrastructure or self-host TofuPilot in your own environment. Complete control over your test data location and compliance.
Get instant support
from our test engineers
Whether you need a demo, have questions, or want to connect with our community, we're here to support your testing journey.
Ready to get started?
Create a free account to explore all TofuPilot features.
Not sure where to start? Talk to our team