SDK Language Table

SDK Language Table

Choose the right /IOTCONNECT™ SDK for your device platform. Each SDK provides the same core capabilities — authentication, telemetry, commands, and OTA — optimized for its target language and hardware.

SDK comparison

SDK Language Best For Protocol Auth GitHub
Python Lite Python 3.7+ Raspberry Pi, Linux gateways, prototyping MQTT X.509, Key Repo
C SDK C99 MCUs, RTOS, constrained devices MQTT X.509, Key Repo
Node.js JavaScript / TS Edge servers, gateways, cloud functions MQTT X.509, Key Repo
C# / .NET C# Windows IoT, .NET gateways MQTT X.509, Key Repo
Java Java 8+ Android Things, JVM gateways MQTT X.509, Key Repo
Greengrass Python AWS Greengrass Components, edge ML IPC + MQTT Greengrass Repo
Android Kotlin / Java Mobile companion apps, Android IoT MQTT X.509, Key Repo
iOS Swift iPhone / iPad companion apps MQTT X.509, Key Repo

Choosing the right SDK

Constrained devices (MCUs, RTOS): Use the C SDK. Minimal memory footprint, no OS dependency, works on bare-metal and FreeRTOS.

Linux single-board computers: Use Python SDK. Easy to develop, rich ecosystem, ideal for Raspberry Pi and similar boards.

Edge computing with AWS: Use Greengrass Python SDK. Deploys as Greengrass Components with OTA managed by /IOTCONNECT™.

Enterprise gateways: Use Node.js or C# SDK depending on your team expertise. Both support high-throughput multi-device scenarios.

Mobile apps: Use Android (Kotlin) or iOS (Swift) SDK for companion applications that monitor and control IoT devices.

Common SDK interface

All SDKs expose a similar interface pattern regardless of language:

init(cpid, env, unique_id): Initialize the SDK client with your account and device identifiers.

connect(): Discover broker, authenticate, and establish MQTT connection.

send_telemetry(data): Publish a telemetry message with attribute key-value pairs.

on_command(callback): Register a callback function invoked when a C2D command arrives.

send_ack(ack_id, status): Send command acknowledgment back to the platform.

disconnect(): Gracefully close the MQTT connection and clean up resources.

ⓘ QUICK START

To get started quickly with any SDK:
1. Install the SDK package for your language.
2. Get CPID + Environment from Settings > Key Vault.
3. Use your Device Unique ID from the portal.
4. Call init() > connect() > send_telemetry().
5. View data in the Live Data tab on the portal.