Learn · Foundations · 03 of 04

The controller image

Why a golden image turns one prototype into many identical controllers.

A working Opichy controller is not "an application on a Raspberry Pi". It is a repeatable controller appliance, captured as a flashable image.

Golden image vs. identity

Two things are deliberately separated:

  1. The controller image — OS, drivers, runtime, automation engine, protocol stacks, web interface, local database, services, configuration defaults. Built once, flashed many times.
  2. Controller identity — generated on first boot, never baked into the image. The first Pi becomes Controller #001, the next #002, and so on, all running identical software.

The key test

The architecture is working when a completely blank Raspberry Pi can be flashed, booted, and become a controller with no manual Linux configuration:

Flash → Boot → Name controller → Connect devices → Automate

rather than:

Flash → SSH → install packages → fix permissions → configure services → …

Local-first

The controller never needs Cloudflare, GitHub or even Internet access to run. Control, logic, device communication and safety-related behaviour stay on the Pi. The cloud adds identity, management, updates, telemetry, remote access and fleet orchestration around it.