Projektvorstellung: DIY PV Production Tracker – Von der Flask-App auf dem Heimserver zur eigenen Android-App

Hallo zusammen,

ich möchte euch heute ein kleines Projekt vorstellen, an dem ich in den letzten Monaten intensiv gearbeitet habe.

Angefangen hat alles mit meinem Balkonkraftwerk von Marstek. Wie wahrscheinlich viele hier, war ich mit der dazugehörigen Hersteller-App ziemlich unzufrieden. Sie lieferte mir einfach zu wenig aussagekräftige Statistiken und keine wirkliche Kontrolle über meine Daten. Also habe ich mir kurzerhand selbst geholfen und eine erste Lösung mit Flask auf meinem lokalen Debian-Server gebastelt.

Mit der Zeit wuchs der Wunsch nach einem besseren Design, detaillierteren Ansichten und der Möglichkeit, alles bequem vom Smartphone aus zu steuern. So entstand schließlich eine native Android-App. Nachdem ich die App intern auf der Arbeit gezeigt hatte und meine Kollegen mich dazu ermutigt haben, habe ich mich nun entschieden, sie im Google Play Store für alle zur Verfügung zu stellen: DIY PV Production Tracker.

Was macht die App? (Kurzübersicht)
Der PV Production Tracker richtet sich an alle, die von kleinen Balkonkraftwerken bis hin zu größeren PV-Anlagen genaue Ertrags- und Finanzdaten tracken möchten – ganz ohne Cloud-Zwang eines bestimmten Wechselrichter-Herstellers.

Die Funktionen im Detail:

Verwaltung mehrerer Standorte/Anlagen: Man kann verschiedene Anlagen (z.B. Haupt-PV auf dem Dach und BKW auf dem Balkon) getrennt voneinander anlegen und vergleichen.

Detaillierte Finanzeinstellungen: Pro Anlage lassen sich individuelle Parameter hinterlegen (Installationskosten, Strompreis, Einspeisevergütung).

ROI & Amortisation: Die App berechnet automatisch die bisherigen Ersparnisse und zeigt auf einem speziellen ROI-Card-View, wann sich die Anlage amortisiert hat.

Umfangreiche Statistiken: Detaillierte Jahres- und Monatsansichten, historische Daten (z.B. für das abgeschlossene Jahr 2025) und Diagramme, die die tatsächliche Produktion mit den vorher definierten Erwartungen vergleichen.

Datenhoheit (Import/Export & Backup): Man kann historische Produktionsdaten per CSV-Import einpflegen, detaillierte PDF-Berichte exportieren und die gesamte Datenbank sichern.

Personalisierung: Verschiedene View-Modes, Dark/Light-Mode und Mehrsprachigkeit.

Meine Empfehlung für den Start:
Wenn ihr die App ausprobiert, nehmt euch am Anfang kurz die Zeit, einen Standort einmal komplett einzurichten. Tragt die Installationskosten und vor allem die Produktionserwartungen ein. Für meine eigenen Schätzungen habe ich einfach gängige Online-Rechner genutzt. Wenn ihr schon historische Daten habt (z.B. gepflegt in Excel), könnt ihr diese einfach als CSV exportieren (mit den von der App benötigten Feldern) und direkt importieren. So habt ihr sofort aussagekräftige Graphen!

Ein kurzes Wort zur Transparenz (Monetarisierung):
Die App läuft über ein Freemium-Modell. Ein großer Teil der App ist komplett kostenlos nutzbar. Einige erweiterte Funktionen sind hinter einer Einmalzahlung freischaltbar – es gibt absolut keine Abos! Da ich über zwei Monate intensive Entwicklungsarbeit in dieses Nischenprojekt gesteckt habe und erfahrungsgemäß Spenden bei solchen DIY-Projekten kaum vorkommen, habe ich mich für diesen fairen Weg entschieden.

Euer Feedback ist gefragt:
Da dies ein echtes Herzensprojekt ist, bin ich sehr auf eure Meinungen gespannt:

Wie intuitiv findet ihr die Einrichtung der Standorte und die verschiedenen Views?
Fehlen euch noch bestimmte Metriken oder Parameter für eine genauere ROI-Berechnung?
Wie reibungslos klappt der CSV-Import eurer bestehenden Daten?
Welche Features würdet ihr euch für zukünftige Updates unbedingt noch wünschen?

Da ich hier im Forum (noch) keine direkten Links posten darf, findet ihr die App ganz einfach, wenn ihr im Google Play Store nach DIY PV Production Tracker sucht.

Ich freue mich auf die Diskussion mit euch!

Noch ein kleiner Hinweis in eigener Sache: Meine Zeit ist leider extrem knapp bemessen. Neben meinem Hauptberuf, meiner Familie mit einem kleinen Kind und diesem sowie einigen anderen Projekten, bleibt oft nur sehr wenig Freizeit. Bitte habt daher Verständnis, wenn ich nicht sofort auf alles reagiere und nicht jeden Kommentar einzeln beantworten kann. Ich werde aber alles aufmerksam lesen und versuchen, mich regelmäßig in gesammelten Beiträgen auf eure Fragen und euer Feedback zu melden.

Außerdem ist Deutsch nicht meine Muttersprache. Es kann also gut vorkommen, dass sich in meinen Texten und Antworten mal der eine oder andere Fehler in der Ausdrucksweise einschleicht. Solltet ihr etwas nicht auf Anhieb verstehen, weist mich gerne konstruktiv darauf hin – ich lerne immer gerne dazu!

Vielen Dank für euer Verständnis!

Viele Grüße,
Robert

1 „Gefällt mir“

Hallo zusammen,

unter anderem habe ich inzwischen auch eine Synchronisierung mit den Mikrowechselrichtern von Marstek implementiert.

Getestet habe ich das Ganze mit einem Marstek Venus A, wobei sowohl das Smartphone als auch der Inverter im selben lokalen Netzwerk verbunden waren.

Leider stellt Marstek keine Tageswerte zur Verfügung, sondern lediglich einen Gesamtwert des Inverters bis zum jeweiligen Abrufzeitpunkt.

Daher musste ich aktuell eine etwas künstliche Lösung umsetzen:

Der erste Wert des laufenden Tages wird manuell in die App eingetragen. Anschließend kann im Laufe des Tages der Synchronisations-Button verwendet werden, wobei dann jeweils die Differenz zwischen aktuellem Wert und dem vorherigen Abruf zur Tagesproduktion addiert wird.

Solange Marstek keine echten Tagesdaten bereitstellt, ist es schwierig, eine elegantere Lösung zu finden, ohne beispielsweise ein Skript auf einem Debian-Server laufen zu lassen, das die Kommunikation mit dem Inverter übernimmt, die Berechnungen selbst durchführt und anschließend Tageswerte bereitstellt, die die App wiederum vom Server abruft.

Technisch wäre das zwar möglich, für den normalen Anwender aber vermutlich eher die weniger elegante Lösung.

Viele Grüße
Robert