Skip to content

Open-source app for long-term monitoring of PV systems

April 23rd, 2025

The problem

Owners of photovoltaic systems often wonder whether their installation is still as efficient as originally planned. Several factors can reduce a PV system's output over time: ageing materials, small damage or micro-cracks, or panels soiled by dust or other deposits. Spotting this kind of degradation isn't easy, though, because the yield depends not only on the location and orientation of the panels but also on highly variable factors such as cloud cover and temperature. So you can't simply compare one year's yield with the same periods in previous years, as the expected yield also varies from year to year.

An open-source tool for the job

To tackle this problem, Tegonal built a prototype app as one of the projects of this year's Open Source Week. The app compares measured yields with the theoretically expected ones, which reveals any degradation over time. You register the installations you want to monitor along with the required parameters, such as their geographic location and the orientation of the panels. You can then send the system's actual measured yields to the app. This happens through an API endpoint, so it can be automated to keep current data flowing in. The app automatically enriches this data with the modelled expected yields, and you can then compare and analyse it in various charts.

Data sources

Where possible, the expected yields are taken from the Photovoltaic Geographical Information System (PVGIS) of the EU Science Hub. The target yield is based on hourly satellite data on solar irradiance, and the calculation takes into account effects such as shading by hills or mountains, reflection at low angles of incidence and temperature dependence. PVGIS currently only holds data up to the end of 2023. Where PVGIS has no data, we use satellite data from Open Meteo (Global Tilted Irradiation, GTI).

Technology

We built the prototype with Payload, an open-source backend based on Next.js, so the code is written in TypeScript/React. The prototype uses SQLite as its database. The project is available on GitHub at https://github.com/tegonal/sun-set-analytics.

Project status

Tegonal currently has no plans to develop this prototype further. It does, however, give anyone who wants to take the project on a good starting point. The current version also works perfectly well for simple analyses, and some Tegonalers may well use it privately.