Constraints
This chapter lists constraints that the Station’s architecture must work within.
Technical Constraints
| Constraint | Impact |
|---|---|
Runs on a single Raspberry Pi with a touch display, as established in System Design |
Available CPU, GPU, and memory are limited compared to a desktop, and the UI must be fully operable by touch alone. |
Pods are reachable only through the shared wire protocol over USB CDC (Protocol, ADR-002) |
The Station cannot assume any other channel to a Pod. All hardware control is mediated by that protocol. |
The Station must remain the sole initiator of all communication with a Pod (ADR-003) |
The Station’s architecture must not introduce any path for a Pod to act without an originating Station request. |
Recipes, ingredients, and glasses are provided as data validated against a published schema, not as code |
The Station must be able to load and act on this data without a rebuild whenever it changes. |
Conventions
Domain terms and their naming across the Station’s code follow the project-wide convention in Naming Conventions. Architecturally significant choices made while designing the Station are recorded as ADRs alongside the code, in the same style as the machine-wide ADRs, rather than left implicit.
Continue with Context and Scope.