Data Plane — The Physical World Interface

Purpose

The Data Plane is the platform’s interface to the physical world. It handles device enrollment and lifecycle management, telemetry ingestion and analytics, OTA software distribution, and data availability for all upstream services. Every robot, PDA, sensor, or IoT device that participates in the platform is registered and monitored here.

Services

Service

Responsibility

Detail

DeviceAdmin

Device enrollment, alerts, and OTA status

Enrolls IoT devices, surfaces ThingsBoard alerts, provides OTA update visibility

ThingIO

Data processing, analytics, and telemetry API

Wraps StreamPipes for pipeline execution; provides Data API for telemetry queries, scope management, and pipeline lifecycle. Consumer apps call APIs and render their own dashboards.

OTAForge

OTA artifact management and policy-driven rollouts

Wraps hawkBit for artifact publishing, distribution sets, policy-driven rollout automation, proxied DDI, CI/CD access keys for artifact publishing

Interaction Model

                                ┌───────────────┐
  CI/CD (Jenkins) ──AK/SK─────►│   OTAForge    │──► hawkBit
  (artifact publishing only)    │               │
                                │ Artifact mgmt │     DDI proxy
  Policy Service ──policies───►│ Policy engine  │◄──────────── Devices
                                │ DDI proxy     │   (Hara polls OTAForge,
                                └───────┬───────┘    not hawkBit directly)
                                        │ OTA status
                                        ▼
  Devices ──MQTT──► ThingsBoard ──► ┌──────────────┐
                         │          │  DeviceAdmin  │ ◄── Identity Plane
                         │ alerts   │ (enrollment,  │     (DotID auth)
                         └─────────►│  alerts, OTA  │
                                    │  status)      │
  Provisioning ◄── delegates ──────│               │
  Service                           └──────────────┘
                         │
              Kafka      │
           (Cluster A)   │ cross-cluster replication
                         ▼
                    ┌──────────────┐
  Applications ───►│   ThingIO    │ ◄── Equator (spatial overlay)
  (WES, CJ)        │ (Data API,  │
  call API,         │  Pipelines) │ Kafka
  own dashboards    └──────────────┘
  • DeviceAdmin is the unified device management interface — enrollment, alerts, and OTA status. Delegates provisioning to the Provisioning Service. Developers never interact with ThingsBoard or hawkBit directly.

  • ThingIO is the data processing and telemetry API layer — provides REST APIs for scopes, telemetry queries, and pipeline management, backed by StreamPipes. Consumer apps call ThingIO APIs and build their own dashboards. Three pipeline tiers: managed (auto-provisioned), app (self-service from templates), and platform (operator-built in StreamPipes UI).

  • OTAForge is the OTA artifact layer — CI/CD access keys for artifact publishing, policy-driven rollout automation, and proxied DDI endpoint. Rollouts are auto-created by policy evaluation, not manually.

  • Kafka runs as a single Strimzi cluster on EKS (KRaft mode, 3 brokers). ThingsBoard publishes to thingsboard.* topics, StreamPipes publishes to sp.analytics.* topics. ThingIO consumes both.

  • All services authenticate via DotID. Resources are scoped to accounts.

Data Ownership

Data

Owner

Consumers

Device registry (ID, type, firmware, lease)

DeviceAdmin

All planes

Device alerts (battery, connectivity, threshold)

DeviceAdmin

Applications, Operators

OTA update status (version, pending, history)

OTAForge (via DeviceAdmin view)

Applications, Operators

Raw telemetry (position, battery, sensor readings)

ThingsBoard (internal)

ThingIO, DeviceAdmin alerts

Processed analytics (patterns, anomalies, coverage)

ThingIO

Applications, Intelligence Plane

Dashboards, widgets, pipelines

ThingIO

Applications

Artifacts, distribution sets, rollouts

OTAForge

DeviceAdmin (status view), Devices

IoT Technology Layer

The Data Plane services wrap three open-source IoT platforms. See the IoT Layer for technology details.

Service

Wraps

Relationship

DeviceAdmin

ThingsBoard CE

Device CRUD, alert subscription, credential management

ThingIO

Apache StreamPipes

Data pipelines, telemetry API, pipeline lifecycle management

OTAForge

Eclipse hawkBit

Artifact storage, rollout engine, proxied DDI endpoint