System Overview
CeresFlows is organized into three logical layers that work together to create a complete automation system.
The Three Layers
┌────────────────────────────────────────────┐
│ Intelligence Layer │
│ Analytics · Journal · Insights · AI │
├────────────────────────────────────────────┤
│ Automation Layer │
│ Flow Editor · Programs · Scheduler │
├────────────────────────────────────────────┤
│ Physical Layer │
│ Controllers · Sensors · Relays · Actuators│
└────────────────────────────────────────────┘
Physical Layer
The foundation. This is where your real hardware lives:
- Controllers — Microcontroller boards (ESP32 etc.) connected via USB Serial, Network, or MQTT
- Relays — Relay modules that switch power to actuators
- Sensors — Any measurement device (temperature, humidity, pH, EC, CO₂, etc.)
- Actuators — Devices that do things (pumps, valves, lights, heaters, fans)
CeresFlows communicates with hardware through the Driver System — a template-based protocol layer that understands how to talk to each device type.
Automation Layer
The brain. This is where your logic lives:
- Flow Editor — Visual programming environment. Connect blocks to define automation sequences.
- Programs — Collections of flows organized into time windows (e.g., morning routine, night cycle)
- Scheduler — Runs programs according to their schedule, handles triggers and conditions
Intelligence Layer
The memory and insight engine:
- Journal — A chronological log of everything that happened during program execution
- Sensor Lab — Charts and trends for all sensor readings over time
- Resources — Tracks consumable usage (nutrients, water, etc.)
- Insights — Advanced queries over historical execution data
Data Flow
Sensor Reading
↓
Flow Block (Sensor Read) → stores value in variable
↓
Condition Block → evaluates variable
↓
Actuator Block → sends command to hardware
↓
Journal → records the action with timestamp
Key Modules
| Module | Location | Purpose |
|---|---|---|
| Hardware | Hardware tab | Add and configure controllers, sensors, actuators |
| Flow Editor | Flows tab | Build automation flows visually |
| Template Builder | Hardware → Templates | Define new device types |
| Program Builder | Programs tab | Combine flows into scheduled programs |
| Active Program | Programs → Active | Monitor and control running automation |
| Analytics | Analytics tab | Journal, Sensor Lab, Resources, Insights |
| Settings | Settings tab | Notifications, backup, units, roles |
Next Steps
- Your First Flow — step-by-step tutorial
- Hardware Overview — set up your first controller
- Device Wizard — add your first sensor