What is EOS Connect?
Integration and control platform that connects your energy hardware with optimization engines
Introduction
EOS Connect is an open-source integration and control platform for intelligent energy management. It acts as the orchestration layer between your energy system (solar panels, battery storage, inverters, EV chargers) and external optimization backends.
- Collects data from your devices (battery SOC, PV production, load consumption)
- Retrieves forecasts (PV generation, electricity prices, weather)
- Sends all data to an external optimization engine (EOS or EVopt)
- Receives optimization results back
- Controls your devices based on those results (inverter, battery, EV charger)
- Provides monitoring and manual control via web dashboard and APIs
The actual optimization calculations are performed by:
- Akkudoktor EOS (default) - Full-featured optimization engine - GitHub
- EVopt - Lightweight, very fast alternative - GitHub
How It Works
System Architecture
EOS Connect operates in a continuous optimization cycle:
- Data Collection: Gathers current system state (battery SOC, PV production, load consumption)
- Forecast Integration: Retrieves PV forecasts, electricity price forecasts, and weather data
- Optimization Request: Sends all data to EOS/EVopt server for calculation
- Control Execution: Receives optimization results and controls devices (battery charging, EV charging modes)
- Monitoring & Publishing: Provides real-time data via web dashboard, MQTT, and REST API
Figure: EOS Connect process flow diagram
refresh_time minutes (default: 3 minutes) with configurable time frame granularity (15 minutes or hourly).
Core Features
Battery Management
SOC Monitoring
Real-time State of Charge tracking with remaining energy calculation
Charge/Discharge Control
Automated modes: grid charging, PV-only, discharge allowed, idle
Dynamic Charging Curve
SOC-based power reduction (100% → 5% as battery fills)
Temperature Protection
Automatic power reduction in extreme cold/heat (-30°C to +70°C)
Dynamic Price Calculation
Analyzes charging history to determine real cost of stored energy
Smart Sensor Detection
Automatically detects battery/grid sensor polarity to ensure correct PV vs Grid attribution
Efficiency Settings
Configurable charge/discharge efficiency for accurate calculations
Temperature-Based Protection Details
When a battery temperature sensor is configured, EOS Connect applies intelligent power reduction to protect your battery:
| Temperature Range | Charging Power | Purpose |
|---|---|---|
| < 0°C | 5-7.5% | Prevents lithium plating in LiFePO4 batteries |
| 0-15°C | Gradual increase | Safe warm-up phase |
| 15-45°C | 100% (SOC-based only) | Optimal operating range |
| 45-60°C | Gradual reduction | Heat protection |
| > 60°C | 5-7.5% | Critical temperature protection |
Solar Forecasting
Multiple provider support for accurate PV generation predictions:
| Provider | Description | Requirements |
|---|---|---|
| Akkudoktor | Default, free, comprehensive forecasts | Location, tilt, azimuth, power |
| Solcast | High accuracy, commercial provider | API key, resource ID (10 calls/day limit) |
| OpenMeteo | Weather-based forecasting | Location, system specs |
| Forecast.Solar | Free solar forecasting | Location, basic system info |
| EVCC | Use existing EVCC forecasts | Running EVCC instance |
Multi-Installation Support
Configure multiple PV installations with different orientations:
- South-facing roof (180°, 25° tilt, 5 kW)
- East garage (90°, 15° tilt, 2.5 kW)
- West carport (270°, 10° tilt, 3 kW)
EOS Connect aggregates all forecasts for total system prediction.
Cost Optimization
Dynamic Electricity Pricing
Supports multiple price providers for real-time market rates:
- Tibber: Scandinavian/European dynamic pricing
- smartenergy.at: Austrian market prices
- Stromligning.dk: Danish electricity pricing
- Fixed 24h: Custom hourly price array
- Default: Uses Akkudoktor pricing data
Price Modifiers
- Fixed Adder: Add fixed costs (grid fees, taxes) in ct/kWh
- Relative Multiplier: Apply percentage markup (e.g., 5%)
- Feed-in Price: Set your solar export compensation rate
- Negative Price Switch: Optional: don't pay when prices go negative
Battery Price Calculation (LIFO)
EOS Connect can analyze your charging history to determine the real cost of energy stored in your battery:
- Scans last 48-96 hours of power data
- Identifies charging events (battery power > threshold)
- Attributes energy to either:
- Grid charging at market price
- PV surplus at €0 (free solar energy)
- Uses Last-In-First-Out (LIFO) valuation for current SOC
- Updates optimizer with real battery energy cost
Integration Capabilities
Smart Home Platforms
Home Assistant
- MQTT Auto Discovery
- Sensor integration
- Control via entities
- Native add-on available
OpenHAB
- Item-based integration
- MQTT publishing
- MQTT Auto Discovery (via MQTT binding)
- REST API access
- Full sensor support
Inverter Control
Fronius GEN24 Support:
- Enhanced Interface (Default): Automatic firmware detection, universal compatibility
- Legacy Interface: Available for corner cases
- Supported Actions:
- Grid charge power setting
- Discharge control
- SOC monitoring
- Real-time status
EVCC External Battery Control:
- Universal interface for all EVCC-supported inverters
- Battery management without direct inverter connection
- Note: Dynamic max charge power not currently supported by EVCC
API-Only Mode:
- Disable direct inverter control
- Get optimization results via MQTT/REST API
- Implement control in your own automation
Electric Vehicle Charging (EVCC)
Modes & Control
- PV Mode: Charge only from solar surplus
- Min+PV Mode: Minimum grid + solar surplus
- Fast Charge: Maximum power from grid
- Off: No charging
Multi-EVCC Support
Control multiple EVCC instances:
- Home wallbox (main garage)
- Guest wallbox (driveway)
- Workshop charger
Integration with Optimization
EOS Connect coordinates battery and EV charging:
- Prioritizes PV surplus distribution
- Avoids simultaneous grid charging
- Respects battery SOC limits
- Considers electricity price forecasts
Optimization Backends
Akkudoktor EOS (Default)
- Full-featured: Complex optimization algorithms
- Comprehensive: Considers all system parameters
- Flexible: Highly configurable
- Server: Runs on port 8503
- GitHub: Akkudoktor-EOS/EOS
EVopt (Lightweight)
- Fast: Very quick optimization calculations
- Lightweight: Lower resource requirements
- Simple: Easier to set up and maintain
- Server: Runs on port 7050
- Source: Available via EVCC discussions
eos.source in config.yaml (eos_server or evopt)
⏱️ Time Frame & Refresh Configuration
Time Frame (Optimization Granularity)
Backend-Specific Capabilities:
- EOS Server: Only supports
3600seconds (hourly). 15-minute intervals are not available with this backend. - EVopt: Supports both
3600(hourly) and900(15-minute). Use 900 for more precise, dynamic optimization.
Misconfiguration Handling: If you mistakenly set time_frame: 900 with EOS server, it will be automatically corrected to 3600 at startup with a warning message.
Refresh Time
How often EOS Connect sends optimization requests:
- Default: 3 minutes
- Recommended Range: 1-5 minutes
- Considerations: More frequent updates = more API calls to EOS server
Benefits Summary
Cost Savings
Minimize electricity bills by optimizing when to charge from grid and when to use battery
Self-Sufficiency
Maximize PV self-consumption, reduce grid dependency
Battery Health
Protect your investment with intelligent charging curves and temperature protection
Automation
Set it and forget it - automatic optimization every few minutes
Insights
Understand your energy system with detailed monitoring and analytics
Flexibility
Easy integration with existing smart home systems and custom automation
Web Dashboard
EOS Connect provides a comprehensive web interface for real-time monitoring and control:
Figure: EOS Connect web dashboard showing real-time energy management
Dashboard Features
Main Dashboard
Real-time overview of PV, Load, Battery, and Optimization states with dynamic charts
Battery Overview
Real-time battery status including charge power, temperature monitoring with thermal protection indicators, historical charging sessions, and cost analysis. Includes mobile-responsive temperature display with color-coded status indicators.
Log Viewer
Real-time application logs with component-based filtering
Manual Controls
Override system modes and set charging parameters directly
Next Steps
Ready to get started? Choose your path:
Install EOS Connect on your system
Learn how to configure all features
Explore API, MQTT, and automation