Skip to content

Standalone Solar Router

This configuration of the Solar Router is using Fronuis power meter, Triac regulator, Variable engine.

GPIO pins have been defined to match hardware configuration described here

# ----------------------------------------------------------------------------------------------------
# ESPHome configuration - This part depends on your hardware target
# ----------------------------------------------------------------------------------------------------

esphome:
  name: solarrouter
  friendly_name: SolarRouter

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:
  baud_rate: 115200
  level: INFO
  logs:
    component: ERROR
    light: ERROR

# Enable Home Assistant API
api:
  encryption:
    key: !secret api_encryption_key


# Enable over-the-air updates
ota:
  - platform: esphome
    password: !secret solar_router_ota_password

# Enable improv serial
improv_serial:

# WiFi connection
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  # If you have a WiFi activity plannification, you may have to update the reboot timeout (Default: 15min)
  reboot_timeout: 24h

# Activate web interface
web_server:
  port: 80

# Define watchdog time (it should be greater than timeout)
http_request:
  watchdog_timeout: 12s

# ----------------------------------------------------------------------------------------------------
# Customisation
# ----------------------------------------------------------------------------------------------------

# This part of the script is designed to be use for customisation. It shouldn't be necessary to
# edit other part of the script to perform configuration.

substitutions:
  # Power meter source -----------------------------------------------------------
  # Define ip address of Power Meter (Fronius Inverter)
  power_meter_ip_address: "192.168.1.21"


  # Regulator --------------------------------------------------------------------
  regulator: "ac_dimmer"

  # Regulator configuration 
  # Define GPIO pin connected to AC Dimmer for gate and zero crossing detection.
  regulator_gate_pin: GPIO22
  regulator_zero_crossing_pin: GPIO23

  # LEDs -------------------------------------------------------------------------
  # Green LED is reflecting regulation status
  # Yellow LED is reflecting power meter status
  green_led_pin: GPIO19
  yellow_led_pin: GPIO18

  # Temperature sensor
  temperature_sensor: "input_number.test_temperature"
  red_led_pin: GPIO4


# Uncomment the following lines if you want to use the source from github
# packages:
#   power_meter:
#     url: https://github.com/XavierBerger/Solar-Router-for-ESPHome/
#     file: solar_router/power_meter_fronius.yaml
#     refresh: 5s
#   regulator:
#     url: https://github.com/XavierBerger/Solar-Router-for-ESPHome/
#     file: solar_router/regulator_triac.yaml
#     # file: solar_router/regulator_relay.yaml
#     refresh: 5s
#   solar_router:
#     url: https://github.com/XavierBerger/Solar-Router-for-ESPHome/
#     file: solar_router/engine.yaml
#     refresh: 5s

# And Comment the following lines if you want to use the source from github
packages:
  common:
    <<: !include solar_router/common.yaml
  power_meter:
    <<: !include solar_router/power_meter_fronius.yaml
  regulator:
    <<: !include solar_router/regulator_triac.yaml
  solar_router:
    <<: !include solar_router/engine.yaml
  energy_counter: 
    <<: !include solar_router/energy_counter_theorical.yaml
  temperature_limiter:
    <<: !include solar_router/temperature_limiter_home_assistant.yaml