Technology

True interoperability.
By design.

Every Continuis standard is built to outlast individual products. Open specifications, published wire formats, and IEEE 1451-compatible TEDS — so any probe you build works on any platform forever.

Read the Docs → Protocol Spec
Peripheral Detection Protocol

From plug-in to
streaming in seconds.

PDP is the state machine that takes a probe from physical attachment to authenticated, configured, data-streaming status — automatically, without user intervention.

01
Probe Attachment
The MNEMOS Node detects a newly connected probe via I²C bus enumeration. The AT24C16 TEDS EEPROM is read: 2048 bytes containing probe identity, channel definitions, calibration data, and a manufacturer certificate chain.
Signals: DETECT_PIN, I²C ACK · Duration: < 50ms
02
Authentication
The node validates the probe's ECDSA-P256 signature against the Continuis Labs root CA. Only probes with a valid cert chain are permitted to stream. Counterfeit or tampered probes are rejected at hardware level.
Algorithm: ECDSA-P256 · Root CA: Continuis Labs PKI · Revocation: CRL / OCSP
03
Configuration
The node reads channel definitions from TEDS — quantity slug, engineering units, sample rate, and calibration coefficients — and sends a JOIN_REQUEST frame to the platform via MQTT. The platform responds with binding IDs mapped to each channel.
Frame type: JOIN_REQUEST (0x01) · Payload: UUID + N_CHANNELS + channel descriptors
04
Streaming
The node begins publishing DATA frames over MQTT at the configured sample rate. Each 10-byte measurement entry carries a binding index, 32-bit timestamp, quality flag, and IEEE-754 float32 value — all little-endian, CRC-16/CCITT-FALSE protected.
Topic: mnemos/<gw_id>/rx · Frame: MBP DATA (0x10) · Rate: 1–1000 Hz
05
Platform Binding
The platform creates or updates device bindings, associating each channel stream with a named measurement binding visible in the Vigil dashboard. From this point, every measurement is stored, alerted on, and available for analytics.
API: POST /api/v1/pdp/probe/ · Response: binding_id[] + config ACK
TEDS — Transducer Electronic Data Sheet

The probe
knows itself.

Every Continuis-compatible probe carries a 2 KB EEPROM containing its complete datasheet, calibration, and cryptographic identity. Plug it in — the system already knows what it is.

The AT24C16 EEPROM (2048 bytes) is structured around the IEEE 1451.4 TEDS standard, extended with Continuis-specific fields for certificate chain storage and ECDSA signature verification.

Every field is little-endian encoded. The CRC-32 covers the entire protected region (header through reserved), computed with the CRC field itself zeroed. This prevents both accidental corruption and deliberate field forgery without breaking the signature.

IEEE 1451.4 Compatible AT24C16 (2KB) ECDSA-P256 Signature CRC-32 Protected 8 Channels Max Little-endian
OffsetSizeRegion
0x0000 16 B Header — Magic, version, schema, channel count, timestamp, CRC-32
0x0010 48 B Probe Info — UUID, manufacturer, model, serial, manufactured_at
0x0040 368 B Channel Table — 8 × 46 B: idx, flags, qty slug, rate, min, max
0x01B0 128 B Calibration — 8 × 16 B: gain, offset, zero, span per channel
0x0230 512 B Certificate Chain — DER-encoded leaf + intermediate
0x0430 64 B ECDSA Signature — P-256 signature over protected region
0x0470 16 B Reserved
MBP — MNEMOS Binary Protocol

Compact enough
for constrained edges.

MBP is purpose-built for low-power, low-bandwidth edge nodes. An 8-byte fixed header, variable payload, and 2-byte CRC — every byte is load-bearing.

DATA Frame Anatomy
4D 4E MAGIC
V|T VER|TYP
SRC Source ID
DST Dest ID
SEQ Sequence
FLG Flags
N N_MEAS
BIND Bind Idx
TS×4 Timestamp
Q Quality
V×4 float32
CRC CRC-16
Header (6 B fixed)
DATA Payload (1 + N×10 B)
Routing
CRC-16/CCITT-FALSE
16 Frame Types
PING, PONG, JOIN_REQUEST, JOIN_RESPONSE, DATA, ACK, NACK, CONFIG, CONFIG_ACK, STATUS, STATUS_RESP, ERROR, DISCONNECT, RECONNECT, HEARTBEAT, RESERVED — covering the full lifecycle.
CRC-16/CCITT-FALSE
Industry-standard polynomial (0x1021), initial value 0xFFFF. Provides 99.998% error detection probability on 8-byte headers and variable payloads up to 255 measurements.
🏎️
Up to 1000 Hz
The 10-byte per-measurement payload is compact enough to sustain 1kHz sample rates over MQTT without overwhelming constrained gateways or cellular uplinks.
Security Architecture

Authenticated.
Encrypted. Auditable.

Security is not a feature layer — it is the foundation. Every probe, gateway, and API call is authenticated before a single byte of data is accepted.

Probe Certificate Chains
Every probe ships with an ECDSA-P256 keypair burned at manufacture. The leaf certificate is signed by a manufacturer intermediate, chained to the Continuis Labs root CA. Unsigned probes stream zero data.
Gateway API Tokens
Each gateway authenticates with a 256-bit token scoped to a single organisation. Tokens are rotatable, revocable, and carry a hardware_id binding — preventing credential sharing across devices.
TLS 1.3 End-to-End
All MQTT traffic runs over TLS 1.3 with mutual certificate authentication. The platform API and WebSocket feeds require TLS; unencrypted connections are rejected at the load balancer.
Immutable Audit Log
Every PDP phase transition, binding change, alert event, and user action is appended to an append-only audit log. Logs are cryptographically chained to detect tampering.
Org-level Isolation
Organisations are hard-isolated at the database row level. No shared buffers, no cross-tenant query paths. Multi-site admins control access with role-based permissions per site and device group.
Key Rotation & Revocation
Gateway tokens are rotatable without downtime. Compromised probe certificates can be added to a CRL published via the Continuis PKI. Revocation is propagated to all nodes within 60 seconds.
Third-party Integrations

Open by design.
Your stack, connected.

Vigil is built to integrate, not to own. Bring your existing PLCs, SCADA systems, BMS controllers, and analytics tools — we provide the connective tissue.

Protocol / System Direction Use Case Status
PDP / MBPInboundMNEMOS Node native telemetryLive
MQTT 3.1 / 5.0InboundGeneric MQTT sensor bridgesLive
REST API v1BothCustom integrations, 3rd-party clientsLive
WebSocketOutboundReal-time dashboard feedsLive
Webhook (HTTP POST)OutboundAlert notifications to any systemLive
OPC-UAInboundSCADA / PLC bridgeQ3 2025
Modbus TCP / RTUInboundLegacy industrial devicesQ3 2025
BACnet IPInboundBuilding management systemsQ4 2025
CANopen / J1939InboundVehicle + robotics CAN busesQ4 2025
Prometheus / GrafanaOutboundOps teams, SRE dashboardsQ3 2025
Slack / PagerDutyOutboundAlert delivery channelsLive
AWS IoT Core / Azure IoTBothHybrid cloud deploymentsPartner
Open Standard

Build a probe.
It works everywhere.

Register as a PDP developer, publish your peripheral type, and your probe appears in the Vigil ecosystem for every customer worldwide.

Developer Programme → Contact Engineering