SpecsModelExplore
Overview
Actors
External Systems
IoT Platform
Edge
Edge Agent
Driver LoaderLocal BufferMQTT PublisherOTA Updater
Edge Rule Runtime
Ingestion
Stream Processing
Device Management
User-Facing Apps
Platform
Driver Loader
Supervision model
Responsibilities
SpecsModelExplore
Driver Loader
OverviewGuideLinks and Communications

Driver Loader

The Driver Loader is how the Edge Agent talks to a heterogeneous fleet of hardware. Different devices speak different buses — Modbus, OPC-UA, a vendor serial protocol — so each is handled by a driver plugin. The loader discovers those plugins, starts them, and keeps them alive.

Why drivers are plugins

The set of device types in the field changes far more often than the agent core. Keeping drivers as separately loadable plugins (some written in C and wrapped with a thin Rust shim) means a new sensor family can ship without rebuilding the agent.

Supervision model

A driver that crashes or hangs must never take the whole agent down. Each driver runs under a supervisor that restarts it with backoff and reports its health upstream.

Responsibilities

  • Enumerate available driver plugins at startup and on config change.
  • Start each driver in its own supervised task with a CPU/memory budget.
  • Normalise raw device readings into the agent’s internal message shape.
  • Surface per-driver health and last-error to the agent’s diagnostics.

Budget enforcement

A misbehaving driver is capped, not trusted. If a plugin exceeds its resource budget repeatedly it is moved to Disabled and an alert is raised rather than allowed to starve telemetry collection.