Device SDKs

The FlexGalaxy device platform ships device-side SDKs in four languages so firmware teams implement the DDI-1 wire contract without hand-rolling mTLS, protobuf, provisioning, and MQTT plumbing.

Note

These are the on-device SDKs (firmware ↔ platform), distinct from the backend-integration SDKs (your factory service ↔ the cloud API). This page is for firmware engineers.

Languages

SDK

Target

Covers

Python

Linux edge devices, gateways, prototyping, virtual devices

Full DDI-1 (§3 provisioning + §4 MQTT)

Android / Java

Android-based robots + tablets

Full DDI-1 (§3 + §4)

C

Constrained / RTOS / bare-metal firmware

DDI-1 device client (§3 + §4); provisioning per platform

C++

Robotics stacks (ROS-adjacent), performance-sensitive firmware

Full DDI-1 (§3 + §4)

Every SDK conforms to the same frozen DDI v1.0 contract, so a device built against any of them passes the same conformance suite.

What the SDK does for you

A device SDK implements the full onboarding + steady-state flow so your firmware calls a handful of methods instead of the raw wire:

  1. Identify + provision — presents the factory attestation token, runs the CSR provisioning pattern (on-device keypair, private key never leaves the device), and stores the returned device certificate + CA chain (§3.1–§3.2).

  2. Secure transport — establishes mTLS for both HTTPS and MQTT using the device cert; handles reconnection + resubscription (§1, §4).

  3. Telemetry + attributes + events — encodes payloads as fgai.device.v1 protobuf and publishes on the right topics + QoS (§4).

  4. Commands — subscribes, surfaces inbound commands to your handler, and acks over HTTPS (§4 + §3.7).

  5. Rotation + lifecycle — rotates the certificate before expiry and surfaces revocation / blacklist as terminal states (§2.3, §5).

Onboarding flow (language-agnostic)

factory burn ──► identify ──► provision (CSR) ──► mTLS established
                                                     │
        ┌────────────────────────────────────────────┤
        ▼                    ▼               ▼         ▼
   publish telemetry   report attributes  receive    rotate cert
   + heartbeat (§4)    + ack shared (§4)  commands   before expiry
                                          (§4 + §3.7)  (§3.3)

Getting the SDKs

Device SDK access is provisioned through your integration contact as part of factory onboarding. Pin to a released SDK version and track the DDI-1 versioning policy: the contract is frozen at v1.0, so a released SDK stays wire-compatible until a future major (DDI v2).