Everything you need to build
production IoT applications
A complete platform for building, deploying, and managing IoT devices with TypeScript.
Powerful command-line interface
Everything you need for the entire development workflow in one tool.
-
Project initialization
Scaffold new projects instantly with templates
-
Local development
Built-in simulator for testing without hardware
-
One-command deployment
Build and push to production in seconds
-
Firmware flashing
Direct Raspberry Pi Pico support
# Initialize a new project
$ devicesdk init sensor-network
✓ Created devicesdk.ts
✓ Created src/devices/device.ts
# Start local development
$ devicesdk dev --port 8181
▶ Simulator running...
# Deploy to production
$ devicesdk deploy --device temp-sensor
✓ Deployed version 1.2.0
# Flash firmware to device
$ devicesdk flash pico-1
✓ Firmware flashed successfully
import { DeviceEntrypoint } from "@devicesdk/runtime";
export default class Thermostat extends DeviceEntrypoint {
async onDeviceConnect() {
// Monitor temperature sensor
await this.env.DEVICE.configureAdcMonitoring(26, {
interval: 60000, // Every minute
onChange: true
});
}
async onMessage(message) {
if (message.type === "adc_reading") {
const temp = this.toTemperature(message.payload.value);
// Store in device KV
await this.env.DEVICE.kv.put("temp", temp);
// Control heating based on temp
if (temp < 20) {
await this.env.DEVICE.setGpioState(15, "high");
}
}
}
}
TypeScript runtime for devices
Write device logic in TypeScript with a simple, familiar API.
-
DeviceEntrypoint class
Simple lifecycle hooks: onDeviceConnect, onMessage
-
GPIO control
Digital I/O, analog inputs, PWM output
-
I2C & SPI support
Talk to sensors and peripherals
-
Device KV storage
Persistent state management per device
Manage your entire fleet
A powerful web dashboard for managing projects, devices, scripts, and deployments.
Project Management
Organize devices by project with full CRUD operations.
Device Inventory
See all devices, their status, and last connection time.
Script Deployment
Upload and deploy code directly from the browser.
Version History
Full deployment history with one-click rollback.
API Tokens
Create and manage API tokens for automation.
Real-Time Status
Live online/offline indicators for all devices.
RESTful API for everything
Full programmatic control over your devices and deployments.
-
Device management
CRUD operations for all devices
-
Script deployment
Upload and deploy programmatically
-
OAuth & token auth
Secure authentication flows
# List all devices
GET /v1/projects/my-project/devices
# Deploy a script
PUT /v1/projects/my-project/devices/sensor-1/script
Content-Type: multipart/form-data
Authorization: Bearer $TOKEN
# Download firmware
POST /v1/projects/my-project/devices/pico-1/firmware
Supported hardware
Start building with popular microcontrollers, with more coming soon.
Raspberry Pi Pico W
RP2040 with WiFi
SupportedRaspberry Pi Pico 2 W
RP2350 with WiFi
SupportedMore hardware support coming soon, including ESP32 family.