Menu

Code Sample — Scaler

Once pub/sub feels natural with Minimalist, the Scaler sample adds the structure you need when one device becomes several.

Where to get it: the Scaler sample lives in the firmware repositories — pick the Scaler-ArduinoIDE or Scaler-PlatformIO project for your toolchain. This page is the map; the repo is the territory.

What Scaler adds over Minimalist

Minimalist gets one device connected and publishing cleanly. Scaler is the next rung: it keeps that same simplicity but layers on the conventions that stop hurting once you have more than one board in the field.

  • Automatic device-twin building — the device reports the self-metrics that populate its dashboard card (uptime, boot count, connection state) without you wiring each one by hand.
  • Message handling — a tidier pattern for subscribing and dispatching inbound messages, so adding a new command doesn't mean growing one giant callback.
  • Fleet topic conventions — consistent topic shapes across many devices, so a graph or a rule written for one device works for all of them.
  • Per-device configuration — a place for the settings that differ board to board, kept separate from the code that's the same everywhere.

When to step up to it

Move to Scaler when you stop thinking about "my device" and start thinking about "my devices." The moment you're copy-pasting a sketch and changing one constant for each new board, the conventions in Scaler are what keep that from turning into a pile of near-identical one-offs.

Still the same platform underneath — it's plain MQTT and the same topic shapes from Publishing Data. Scaler organizes how you use them; it doesn't change them.

And then Champion

When you need over-the-air updates, persistent configuration, and provisioning, that's the Champion tier. Scaler is the bridge between one-device simplicity and a managed fleet.