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

ModuleLocationPurpose
HardwareHardware tabAdd and configure controllers, sensors, actuators
Flow EditorFlows tabBuild automation flows visually
Template BuilderHardware → TemplatesDefine new device types
Program BuilderPrograms tabCombine flows into scheduled programs
Active ProgramPrograms → ActiveMonitor and control running automation
AnalyticsAnalytics tabJournal, Sensor Lab, Resources, Insights
SettingsSettings tabNotifications, backup, units, roles

Next Steps