BUILD NOTES
Flashing and first boot
USB once. OTA forever. Unplug test last and not optional.

Applies to the hub, the DSC-Control panel, the soil probes and the Sonoff plugs. A kit's SD image already carries the binaries and their secrets; the Setup wizard flashes them over USB. You need: each board built first (see the hub and probe builds) and a USB cable from the board to the Pi (kit path) or to your computer (bench path).
On this page
Problem
A board that boots into a guess is not adopted.
Build
Kit path: Setup › USB flash on the Pi (steps in the user guide), in order hub, panel, probes, then Sonoffs. Bench path: esphome run dsc-hub-kit.yaml from firmware/v4 (ESPHome 2026.6.5 or newer) with your own secrets.yaml.
Result
The hub and the Sonoff plugs join the Pi's own Wi-Fi network, DSC-Brain-XXXX (XXXX is unique to your card; setup shows the full name. Cards made before 9.9.0 use DSC-Brain). A hub that cannot join opens a fallback hotspot for recovery; the fleet steps are in the user guide. Stopping the brain switches each Sonoff off within its grace time (heater 60 s, heat mat and humidifier 90 s, dehumidifier 240 s).
How it works
Secrets
API, OTA and setup-hotspot passwords plus the ESP-NOW key. The kit card carries the hotspot passwords. Names only here. Values never; rotate anything that ever sat in a chat paste.
Validate
Tolerant YAML parse, esphome config with dummy secrets. A full PlatformIO compile failing offline is an environment limit, not a config fault.
First boot (hub)
Heartbeat grace, safe-boot ventilation (or persisted manuals), boot-resume prompt after a mid-photoperiod cut, time from SNTP (with no valid clock the hub leaves the lamp as it is).
Adopt
The brain finds the fleet in Kit › Inventory. Later updates go over the air from Settings › Devices › Firmware. Then run the unplug test on the bench, with nothing flammable near the heater or heat mat: each plug boots OFF, so have the brain switch each one on first, then stop the brain (unplug the Pi) and watch each plug that is on switch off within its grace time (heater 60 s, heat mat and humidifier 90 s, dehumidifier 240 s). A plug still on after its time has failed the test: unplug its appliance and do not run the kit until it passes.
Diagram
Milestones
- 1. Write secrets locally
- 2. Config check
- 3. USB flash
- 4. Adopt
- 5. Unplug
Cost band + next
Firmware files stay on Firmware releases, next to the flash notes.
You are live when the last test passes. Not before.
