Wiznet makers

matthew

Published June 29, 2026 ©

171 UCC

9 WCC

46 VAR

0 Contests

1 Followers

1 Following

Original Link

YaSolR (Yet Another Solar Router)

YaSolR is ESP32 Solar Router firmware that routes solar production excess to water heaters or resistive loads, with support for W5500 Ethernet boards.

COMPONENTS
PROJECT DESCRIPTION

YaSolR — ESP32 Solar Excess Router Firmware with W5500 Ethernet Support

URL Link

GitHub Repository:
https://github.com/mathieucarbou/YaSolR

Project Website:
https://yasolr.carbou.me/

Download Page:
https://yasolr.carbou.me/download/

Documentation:
https://yasolr.carbou.me/manual

Firmware Releases:
https://github.com/mathieucarbou/YaSolR/releases

Recommended Components

  • WIZnet W5500
  • ESP32 / ESP32-S3
  • LilyGO T-ETH-Lite ESP32 S3
  • Waveshare ESP32-S3 ETH Board
  • WT32-ETH01
  • Olimex ESP32-POE / ESP32-GATEWAY
  • Solar Router
  • Solar Excess Power
  • Water Heater / Resistive Load
  • Random SSR
  • Zero-Cross SSR
  • TRIAC Dimmer
  • Voltage Regulator
  • Zero-Cross Detection Module
  • JSY-MK Power Meter
  • PZEM-004T
  • DS18B20 Temperature Sensor
  • MQTT
  • REST API
  • Home Assistant
  • PID Control
  • OTA Update

PROJECT DESCRIPTION

📌 Overview

YaSolR, short for “Yet Another Solar Router,” is an ESP32-based open-source Solar Router firmware project designed to route solar production excess into a water heater, electric heater, or other resistive load.

In a typical home solar installation, unused solar production may be exported back to the grid. YaSolR monitors this surplus power and sends it to a controllable load, such as a water tank resistance, so that the user can increase self-consumption and convert excess solar electricity into useful heat.

This project is not a simple relay ON/OFF controller. It adjusts the voltage and power sent to the load so that the routed power closely follows the available solar excess. To do this, it combines dimmers, solid-state relays, zero-cross detection, PID control, grid measurement, temperature limiting, bypass relays, MQTT, REST API, and Home Assistant integration.

In short, YaSolR is an advanced ESP32 firmware platform for solar excess routing, allowing users to build their own solar router hardware and integrate it into a home energy automation system.


📌 Project / Author Context

YaSolR is developed by Mathieu Carbou, a professional software engineer and active Arduino / ESP32 open-source developer.

Mathieu Carbou’s GitHub profile describes him as a Lead Software Engineer in Terracotta R&D at IBM and an Arduino / ESP32 developer. His profile also indicates that he maintains many repositories and is involved in a broader ecosystem of Arduino, ESP32, networking, web server, MQTT, Home Assistant, power measurement, dimmer control, and solar router projects.

This background matters because YaSolR is not a small one-file proof-of-concept. It is structured as a serious firmware project with:

  • A dedicated documentation website
  • GitHub releases
  • Board-specific firmware binaries
  • OSS / Pro / Trial version structure
  • Community links such as Facebook and Discord
  • Continuous build infrastructure
  • Modular ESP32 codebase
  • Multiple related libraries maintained by the same author

YaSolR is a community-oriented firmware project for people who want to build or upgrade their own ESP32-based solar router.


📌 Author and Project Popularity

YaSolR should be described as a specialized but active niche project rather than a general-purpose viral repository.

Its popularity is not only shown by GitHub stars and forks, but also by the depth of its documentation, release activity, supported hardware list, community links, and the author’s broader ESP32 / solar-routing ecosystem.

As checked from the GitHub repository page, the project is public, uses the GPL-3.0 license, and shows active release activity, multiple contributors, and a clear firmware distribution structure. The repository also links to the YaSolR documentation website and release page.

The project’s community value comes from its very specific audience: solar router / solar diverter users who want to route solar production excess into water heaters or resistive loads. Within that field, YaSolR stands out because it is not just a sketch or prototype. It is a maintained firmware platform with documentation, build variants, board support, web UI, MQTT, REST API, Home Assistant integration, and advanced power control.

In other words, YaSolR is meaningful because it is part of a larger author-led ecosystem around ESP32 networking, energy monitoring, dimmer control, zero-cross detection, and solar excess optimization.


📌 YaSolR Download Page and Firmware Structure

The YaSolR download page is important because the project distributes firmware by model, board, and language.

Users must download the firmware that matches their exact board. Firmware files follow this naming structure:

  • YaSolR-<VERSION>-<MODEL>-<BOARD>-<LANG>.OTA.bin
  • YaSolR-<VERSION>-<MODEL>-<BOARD>-<LANG>.FACTORY.bin

The OTA binary is used for updates through the web interface, while the FACTORY binary is used for the first ESP installation or when doing a factory reset through USB flashing.

The filename fields mean:

  • VERSION: YaSolR release version, or main for the latest development build
  • MODEL: oss, pro, or trial
  • BOARD: target board type
  • LANG: language such as en or fr

The Open-Source versions are distributed through the YaSolR GitHub releases page. Pro versions are distributed separately to Pro users. Trial versions are available, but the download page warns that they are old preview builds and should not be treated as current firmware.

This download structure is useful for WIZnet Maker Site readers because YaSolR supports many ESP32 boards, including Ethernet-capable boards. Users who want W5500 Ethernet should select firmware that matches a W5500-based Ethernet board, such as LilyGO T-ETH-Lite ESP32 S3 or Waveshare ESP32-S3 ETH Board, when applicable.

This makes YaSolR more accessible than many maker projects. Users do not always need to compile the firmware themselves; they can choose the correct binary for their hardware and flash it.


📌 What is a Solar Router?

A Solar Router is a device that redirects solar production excess to a useful load instead of exporting it back to the grid.

The most common target is a water tank. When solar production is higher than home consumption, the router sends the surplus power to an electric water heater resistance. This turns otherwise unused or exported electricity into stored heat.

A Solar Router is different from a simple relay. A relay can only turn a load fully on or off. A Solar Router tries to match the available surplus power. For example, if there is 300 W of excess, it routes approximately 300 W; if there is 1,200 W of excess, it routes closer to 1,200 W.

YaSolR achieves this through phase control, cycle stealing, SSRs, TRIAC dimmers, voltage regulators, zero-cross detection, and PID control.


📌 What This Project Does

YaSolR measures solar production excess and routes that energy into resistive loads.

Main functions include:

  • Measuring grid power and solar production excess
  • Routing excess power to a water tank or resistive load
  • Supporting up to two outputs
  • Configuring dimmer, bypass relay, temperature sensor, and measurement device per output
  • Supporting phase control and cycle stealing
  • Using PID-based real-time power control
  • Providing a live PID tuning screen
  • Using DS18B20 temperature sensors or MQTT temperature data for water tank temperature limiting
  • Supporting bypass relays for forced heating or scheduled heating
  • Providing harmonics information and visualization
  • Supporting MQTT, REST API, and Home Assistant integration
  • Supporting OTA update, configuration backup / restore, captive portal, static IP, NTP, and admin password
  • Supporting power sharing / virtual excess between multiple routers
  • Supporting EV charger compatibility and priority handling

The core idea is to use solar production excess as precisely as possible. Instead of simply switching a load on when solar power is available, YaSolR continuously adjusts the routed power to match the surplus.


📌 Solar Excess Routing and Control Logic

YaSolR’s control process can be understood in four steps.

First, it measures power.
YaSolR can use sources such as JSY-MK power meters, PZEM modules, MQTT, Shelly, or Victron Modbus TCP to understand current grid power, voltage, and available solar excess.

Second, it decides what to do.
The firmware checks whether power is being exported, how much excess is available, whether temperature limits are reached, and whether bypass scheduling or output sharing should apply.

Third, it controls the output.
A PID controller adjusts the dimmer duty or routing level. Depending on the hardware, YaSolR can use phase control or cycle stealing to regulate how much power is sent to the load.

Fourth, it monitors and exposes data.
The web UI, MQTT, REST API, Home Assistant, graphs, and dashboard views let users monitor grid power, routed power, output state, temperature, harmonics, and PID tuning behavior.


📌 Supported Hardware and Build Options

YaSolR supports a wide range of ESP32 hardware and solar router configurations.

Supported ESP32 board families include common ESP32 and ESP32-S3 development boards, as well as Ethernet-capable ESP32 boards. Ethernet-capable boards include examples such as:

  • Olimex ESP32-GATEWAY
  • Olimex ESP32-POE
  • LilyGO T-ETH-Lite ESP32 S3
  • Waveshare ESP32-S3 ETH Board
  • WT32-ETH01

From a WIZnet perspective, the important point is that YaSolR includes build environments for W5500-based Ethernet boards. The LilyGO T-ETH-Lite ESP32 S3 and Waveshare ESP32-S3 ETH Board configurations define ETH_PHY_TYPE=ETH_PHY_W5500 and W5500 SPI pin mappings.

For load control, YaSolR can work with:

  • Random SSR
  • Zero-Cross SSR
  • RobotDyn AC Dimmer
  • Voltage Regulator
  • DFRobot DAC module
  • Dedicated Zero-Cross Detection module
  • JSY-MK-194G integrated ZCD
  • Bypass relay
  • DS18B20 temperature sensor

For power measurement, it can use:

  • JSY-MK series meters
  • PZEM-004T
  • Shelly EM
  • MQTT sources
  • Victron Modbus TCP
  • Remote JSY through MycilaJSYApp

📌 Role and Application of the WIZnet Chip

Related WIZnet product: W5500

YaSolR supports many ESP32 boards and network configurations. Among them, some Ethernet boards use the WIZnet W5500.

The W5500-related configurations are especially visible in the PlatformIO build settings for LilyGO T-ETH-Lite ESP32 S3 and Waveshare ESP32-S3 ETH Board. These configurations define W5500 as the Ethernet PHY type and specify W5500 SPI pins.

In YaSolR, the W5500’s role is to connect the ESP32 Solar Router to a stable wired network.

This is valuable because a Solar Router continuously monitors energy data and communicates with systems such as MQTT, REST API, Home Assistant, web dashboard, OTA update, NTP, and configuration tools. If the router is installed near an electrical panel, water heater, or utility room, Wi-Fi can be weak or unstable. W5500 Ethernet can provide a more reliable network path.

Therefore, YaSolR is a meaningful WIZnet Maker Site example because it shows W5500 Ethernet being used as a practical network option for a real home energy automation project.


📌 Features

Solar excess routing
YaSolR redirects solar production excess into a water tank or resistive load instead of exporting it to the grid.

PID-based power control
A PID controller adjusts the routed power to match available solar excess. PID parameters can be tuned in real time through the UI.

Phase control and cycle stealing
YaSolR supports both phase control and cycle stealing, allowing users to select the best routing method depending on their SSR, dimmer, ZCD, and load hardware.

Zero-cross detection support
YaSolR supports several ZCD sources, including dedicated ZCD modules, JSY-MK-194G integrated ZCD, RobotDyn ZCD, BM1Z102FJ, and compatible clean zero-cross pulse circuits.

12-bit dimmer resolution
YaSolR targets high-resolution dimmer control, allowing precise routing even with large resistive loads.

Harmonics visualization
The project includes tools to visualize harmonics and helps users choose safer and more stable control methods.

Two-output routing
YaSolR supports up to two outputs, including power sharing, output power limiting, excess ratio settings, dimmer limits, temperature limits, and bypass controls.

Bypass relay control
A bypass relay can be used for forced heating, scheduled heating, or temperature-based heating.

Temperature limiter
DS18B20 or MQTT temperature data can be used to stop or limit routing when a water tank reaches a configured temperature.

MQTT, REST API, and Home Assistant
YaSolR supports MQTT, REST API, and Home Assistant Auto Discovery for easy integration into home automation systems.

Ethernet support
YaSolR supports multiple Ethernet-capable boards, including W5500-based ESP32 Ethernet boards.

OTA and configuration management
The project includes Web OTA updates, configuration backup / restore, captive portal, static IP, NTP, web console, and admin password options.


📌 System Architecture

YaSolR can be understood through five layers: measurement layer, control layer, output layer, network layer, and user interface layer.

In the measurement layer, YaSolR reads grid power, voltage, routed power, and temperature through JSY-MK meters, PZEM modules, MQTT, Shelly, Victron Modbus TCP, DS18B20 sensors, or remote JSY data.

In the control layer, PID control and solar routing logic calculate how much power should be sent to the load.

In the output layer, dimmers, SSRs, voltage regulators, bypass relays, and temperature sensors control the physical water heater or resistive load.

In the network layer, Wi-Fi or Ethernet connects the system to MQTT, REST API, Home Assistant, OTA update, NTP, and the web dashboard. For W5500-based Ethernet boards, W5500 provides the wired network interface.

In the user interface layer, users can interact through the web dashboard, graphs, OLED displays, MQTT, REST API, Home Assistant, and WebSerial.


📌 Usage, Market, and Application Value

YaSolR is suitable for users who already have a solar installation and want to increase self-consumption by using excess solar production more intelligently.

Possible applications include:

  • Solar excess routing to a water heater
  • Electric water tank self-consumption optimization
  • Home solar diverter
  • Solar energy automation
  • Temperature-based water tank control
  • Home Assistant energy automation
  • EV charger and solar router priority management
  • Multiple solar routers in one home
  • Power routing algorithm experiments
  • ZCD, SSR, TRIAC, and dimmer control learning
  • W5500 Ethernet-based reliable energy controller builds

From the WIZnet Maker Site perspective, YaSolR is more advanced than a basic sensor or relay project. It measures energy, makes real-time routing decisions, controls actual power delivery, integrates with home automation platforms, and supports multiple hardware configurations.


📌 Similar Existing WIZnet Maker Site Content

It is difficult to find an existing WIZnet Maker Site post that exactly matches YaSolR as an “ESP32 solar excess router firmware.” However, the following contents are strongly related from the perspectives of solar energy monitoring, relay/load control, Ethernet-based monitoring, energy management, and IoT automation.


1. WIZnet Success Stories : Daeyeon C&I Solar Power Monitoring System

URL Link:
https://maker.wiznet.io/Alan/resellers/wiznet-success-stories--daeyeon-c-i-solar-power-monitoring-system/

Why it is similar:
This content is related to solar power monitoring. It introduces a solar power monitoring device that transmits solar charging status data to the cloud. Like YaSolR, it belongs to the broader solar energy monitoring and optimization category.

Both projects are connected by the idea that solar energy systems need reliable networked monitoring. Solar energy data is not only useful in the moment; it becomes valuable when it is continuously collected, visualized, and used to improve system operation.

Difference:
The Daeyeon C&I content focuses on solar panel monitoring and cloud data transmission in an industrial or commercial solar power environment. It is mainly about monitoring solar panel status and improving communication reliability in outdoor installations.

YaSolR is different because it is not only monitoring solar energy. It actively controls how solar production excess is consumed. Instead of only sending solar data to the cloud, YaSolR routes surplus power into water heaters or resistive loads using dimmer control, PID logic, zero-cross detection, temperature limits, and home automation integration.

Expansion value:
Daeyeon C&I shows WIZnet technology in solar monitoring. YaSolR expands that theme into solar self-consumption control, where the system does not just observe solar power but actively uses surplus energy to heat water.


2. WizOnOff

URL Link:
https://maker.wiznet.io/nk_maker/contest/wizonoff/

Why it is similar:
WizOnOff is a standalone automation controller with relays and a DS18B20 temperature sensor. It is similar to YaSolR because both projects connect temperature sensing and load control.

YaSolR also supports temperature-based control, especially for water tanks. A DS18B20 temperature sensor can be used to stop routing when the tank reaches a temperature limit, or to trigger heating based on temperature thresholds.

Difference:
WizOnOff is a general-purpose relay automation board. Its main idea is to turn devices on and off through relays and use a temperature sensor for automation experiments.

YaSolR goes far beyond simple ON/OFF relay control. It controls how much power is sent to a resistive load by using dimmers, SSRs, voltage regulators, zero-cross detection, PID control, and phase control or cycle stealing. It is designed specifically for solar excess routing, where precision and reaction speed matter.

Expansion value:
WizOnOff represents temperature-based relay automation. YaSolR expands that concept into precision solar load routing, where the load is not simply switched but continuously adjusted to match solar surplus power.


3. Programmable IoT Edge ESP32 Ethernet IO Module

URL Link:
https://maker.wiznet.io/matthew/resellers/programmable-iot-edge-esp32-ethernet-io-module/

Why it is similar:
This content introduces an ESP32 Ethernet I/O module for remote monitoring, secure I/O control, industrial protocols, MQTT, cloud platforms, utilities and energy monitoring, alarm applications, condition monitoring, and PLC / SCADA applications.

YaSolR is also a network-connected monitoring and control system. It uses ESP32, web dashboard, MQTT, REST API, Home Assistant integration, and Ethernet-capable boards for reliable operation.

Difference:
The Programmable IoT Edge ESP32 Ethernet IO Module is a general-purpose industrial I/O device. It is designed to connect digital inputs and outputs to Ethernet, MQTT, MODBUS TCP, cloud platforms, and industrial monitoring systems.

YaSolR is application-specific. It is built for one precise energy problem: routing solar production excess into water heaters or resistive loads. Its control focus is not generic I/O, but real-time solar power matching, dimmer control, PID tuning, output sharing, temperature limiting, and harmonics awareness.

Expansion value:
The ESP32 Ethernet IO Module shows networked I/O control. YaSolR shows how networked embedded control can become a complete energy self-consumption firmware platform with solar routing, Home Assistant integration, and optional W5500 Ethernet support.


📌 Difference and Expansion Value Compared with Existing Maker Site Content

YaSolR is different from many existing WIZnet Maker Site contents because it is not just a sensor project, relay project, cloud alert project, or basic Ethernet monitoring example.

It is a complete solar excess routing firmware.

The main differences are:

First, YaSolR moves from monitoring to active energy control.
Many solar or energy-related contents focus on measuring voltage, current, temperature, or sending data to the cloud. YaSolR uses those measurements to actively control a load in real time.

Second, YaSolR moves from relay ON/OFF to precision power routing.
Simple automation projects switch a load on or off. YaSolR adjusts the power delivered to the load so that it matches the available solar excess as closely as possible.

Third, YaSolR introduces advanced control algorithms.
PID control, PID tuning, zero-cross pulse analysis, phase control, cycle stealing, output sharing, and resistance calibration make the project much more sophisticated than a basic ESP32 relay controller.

Fourth, YaSolR is strongly connected to home energy automation.
It supports MQTT, REST API, Home Assistant Auto Discovery, virtual excess, EV charger compatibility, multiple routers in one home, and remote JSY power metering.

Fifth, YaSolR supports Ethernet as a reliability option.
W5500-based ESP32 Ethernet boards can be used where Wi-Fi is weak or unstable, such as near electrical panels, water tanks, or utility rooms.

Sixth, YaSolR has a real user ecosystem.
The project has a dedicated website, download page, firmware releases, documentation, community links, and a broader author ecosystem of ESP32 libraries. This makes it more mature than many one-time UCC examples.

Therefore, YaSolR can be positioned on the WIZnet Maker Site as a project that connects:

solar energy monitoring → temperature/load control → Ethernet-enabled ESP32 control → Home Assistant integration → solar self-consumption optimization

This makes YaSolR a strong UCC candidate for expanding WIZnet Maker Site content into solar energy, home energy management, water-heater automation, and W5500 Ethernet-based reliable energy control.


📌 Additional Insight for W5500 Makers

YaSolR is interesting for WIZnet makers because W5500 can act as a stable network option for a home energy controller.

Solar Router systems continuously read power data, expose a web UI, send MQTT data, integrate with Home Assistant, and support OTA updates and configuration management. If network connectivity is unstable, the user experience can suffer.

A W5500-based Ethernet board can provide:

  • More stable network connection near electrical panels or utility rooms
  • Better reliability for Home Assistant and MQTT integration
  • More dependable OTA update and web dashboard access
  • A strong option for long-running energy automation systems
  • A path to upgrade ESP32 Wi-Fi solar router builds into wired Ethernet builds

The fact that YaSolR includes build environments for W5500-based boards such as LilyGO T-ETH-Lite ESP32 S3 and Waveshare ESP32-S3 ETH Board is a strong WIZnet Maker Site point.


📌 Things to Know Before Building

YaSolR deals with power control and AC loads. It should be treated as an electrical energy control project, not only as software.

Before building, users should check:

  • The firmware must match the exact ESP32 board.
  • For W5500 Ethernet boards, users should select the proper board-specific firmware and verify the pin mapping.
  • Dimmer, SSR, voltage regulator, DAC, and ZCD combinations must be understood.
  • The voltage and current rating of the water heater or resistive load must be verified.
  • SSRs and TRIACs generate heat and require suitable heat sinks.
  • AC mains wiring must follow proper isolation, grounding, protection, and safety practices.
  • ZCD signal quality strongly affects routing precision and flickering.
  • Phase control can generate harmonics, so load size and control method must be considered.
  • Cycle stealing requires compatible SSR and routing settings.
  • Home Assistant, MQTT, and REST API use should be configured with proper network and security settings.

📌 Summary

YaSolR is an ESP32-based open-source Solar Router firmware. It routes solar production excess into water heaters or resistive loads using measurement devices, PID control, dimmers, SSRs, zero-cross detection, temperature limiting, bypass relays, MQTT, REST API, and Home Assistant integration.

The author, Mathieu Carbou, is an active ESP32 / Arduino open-source developer with a broader ecosystem of libraries and solar routing projects. The project itself is a specialized but active niche firmware platform, with a dedicated website, documentation, release structure, board-specific firmware downloads, and community links.

From a WIZnet perspective, the key point is that YaSolR supports W5500-based ESP32 Ethernet boards. LilyGO T-ETH-Lite ESP32 S3 and Waveshare ESP32-S3 ETH Board configurations define W5500 Ethernet support, making YaSolR a good example of how W5500 can provide reliable wired networking for a home energy automation controller.

On the WIZnet Maker Site, this project can be introduced as an advanced UCC project combining solar excess routing, water-heater control, Home Assistant integration, open-source firmware distribution, and W5500 Ethernet-based reliable networking.


📌 FAQ

Q1. What is YaSolR?
YaSolR is ESP32-based Solar Router firmware. It routes solar production excess into a water heater or resistive load to improve solar self-consumption.

Q2. What is a Solar Router?
A Solar Router redirects unused solar production into a useful load instead of exporting it back to the grid. It usually controls the power sent to a water tank resistance.

Q3. Who developed YaSolR?
YaSolR is developed by Mathieu Carbou, a professional software engineer and active Arduino / ESP32 open-source developer.

Q4. Is YaSolR a product or a UCC project?
For the WIZnet Maker Site, it should be treated as a UCC / open-source firmware project, not as a VAR product.

Q5. Which WIZnet chip is related?
W5500 is related. YaSolR includes build environments for W5500-based ESP32 Ethernet boards.

Q6. Do all YaSolR boards use W5500?
No. YaSolR supports many ESP32 boards. W5500 applies to certain Ethernet boards, such as LilyGO T-ETH-Lite ESP32 S3 and Waveshare ESP32-S3 ETH Board.

Q7. What loads does YaSolR control?
It mainly controls water tank heaters, electric heaters, or other resistive loads.

Q8. What measurement devices are supported?
YaSolR supports JSY-MK series meters, PZEM-004T, Shelly EM, MQTT sources, Victron Modbus TCP, and remote JSY data through MycilaJSYApp.

Q9. Does it support Home Assistant?
Yes. YaSolR supports MQTT, REST API, and Home Assistant Auto Discovery.

Q10. Why is this meaningful for the WIZnet Maker Site?
Because it shows W5500 Ethernet being used not just for basic connectivity, but as a reliable network option for a real solar energy self-consumption controller.

Documents
Comments Write