The complete IoT
development platform
CLI, runtime, dashboard, and API — everything from first line of code to production fleet.
Full workflow from the terminal
One tool for the entire lifecycle: scaffold, develop, test, deploy, and flash.
devicesdk init
Scaffold a new project with TypeScript config
devicesdk dev
Local simulator with hot reload
devicesdk build
Bundle your device script with esbuild
devicesdk deploy
Push to the cloud in one command
devicesdk flash
Write firmware to a connected Pico
$ devicesdk init sensor-network
✓ Created devicesdk.ts
✓ Created src/devices/device.ts
$ devicesdk dev --port 8181
▶ Simulator running at localhost:8181
$ devicesdk deploy
✓ Built device.ts (42ms)
✓ Deployed to 3 devices
$ devicesdk flash
✓ Found RPI-RP2 at /Volumes/RPI-RP2
✓ Firmware flashed successfully
import { DeviceEntrypoint } from "@devicesdk/runtime";
export default class Thermostat extends DeviceEntrypoint {
// Called when device connects via WebSocket
async onDeviceConnect() {
// Monitor temp sensor on ADC pin 26
await this.env.DEVICE.configureAdcMonitoring(26, {
interval: 60000,
onChange: true
});
}
// Called for every device message
async onMessage(message) {
if (message.type === "adc_reading") {
const temp = this.toTemp(message.payload.value);
await this.env.DEVICE.kv.put("temp", temp);
if (temp < 20) {
await this.env.DEVICE.setGpioOutput(15, 1);
}
}
}
}
DeviceEntrypoint API
Extend DeviceEntrypoint and implement two lifecycle hooks. Your code runs on a globally distributed runtime — the device communicates via WebSocket.
onDeviceConnect()
Configure GPIO, I2C, ADC monitoring when the device first connects
onMessage(message)
Handle sensor readings, button presses, and all device events
this.env.DEVICE.kv
Type-safe key-value storage that persists across reboots
this.env.DEVICE.display
Fluent API for SSD1306 OLED drawing commands
Manage your fleet
Web dashboard at dash.devicesdk.com
Project management
Organize devices into projects with separate settings
Device inventory
See all devices, connection status, and last seen time
Script deployment
Upload and deploy scripts from the browser or API
Version history
Full deployment log with one-click rollback
API tokens
Create and revoke tokens for CLI and programmatic access
Google OAuth
Secure sign-in with session management
Supported devices
| Device | Chip | WiFi | Status |
|---|---|---|---|
| Raspberry Pi Pico W | RP2040 | 2.4 GHz | Supported |
| Raspberry Pi Pico 2 W | RP2350 | 2.4 GHz | Supported |
| ESP32 | ESP32 | 2.4 GHz | Coming soon |