Check the data before it reaches your edge model.
A local audit for industrial telemetry handovers. Catch unit mismatches, quality flags, stale timestamps, missing channels and acquisition skew.
The core needs only Python. An optional collector reads OPC UA locally with an encrypted, pinned-certificate connection. No control-write operation is exposed.
1 / Map the contract
Declare the asset, engineering units, numeric ranges and freshness policy.
2 / Capture locally
Read mapped OPC UA nodes or prepare a historian CSV with raw metadata.
3 / Audit the handover
Check each channel and every complete sample group. Keep failures visible.
4 / Retain the evidence
Export a JSON report with profile and capture hashes for review.
Try the audit
This preview executes the same Python audit as the kit. The Python runtime is bundled from pinned Pyodide 314.0.7; entered data is processed in this browser. Use the offline kit for sensitive captures. Preview CSV limit: 2 MB.
Edit the profile and capture
Example limits are invented. Edits invalidate the displayed report until you run checks again.
Channel checks
| Sample | Tag | Value | Passed | Reasons | Warnings |
|---|
Complete and coherent groups
| Sample | Passed | Missing tags | Duplicate tags | Receive skew (s) |
|---|
Tables show at most 200 rows/groups. The downloaded report retains the complete audit.
Download audit reportReport summary and hashes
Why both timestamps matter
An unchanged value may have an old source timestamp and a recent server timestamp. A server freshness contract can accept that while retaining the old source age as a warning. A source freshness contract requires recent source updates.
Complete groups also matter: every row can pass individually while a missing channel or excessive acquisition skew still rejects the group.
Freshness is evaluated against each row’s recorded receiver clock. Historical files do not prove current live freshness. The collector’s sequence identifies a sample group; it is not a PLC counter or source replay defense.