Skip to content

Releases: MPunktBPunkt/ioBroker.kostalpiko

Release v0.6.22

Choose a tag to compare

@github-actions github-actions released this 31 Jul 16:32

Drop inline changelog from README (link to GitHub Releases only) and bump version to test npm CI deploy.

Co-authored-by: Cursor cursoragent@cursor.com

v0.6.21 – Erstveröffentlichung auf npm

Choose a tag to compare

@MPunktBPunkt MPunktBPunkt released this 31 Jul 15:56

Summary

  • First npm release of iobroker.kostalpiko
  • GitHub Actions deploy job with Trusted Publishing (Node.js 24)
  • npm publish verified via OIDC (Trusted Publishing)

Install

iobroker url npm iobroker.kostalpiko
# or
npm i iobroker.kostalpiko

Note: v0.6.21 was initially published manually; CI Trusted Publishing is configured for future releases.

v0.6.15 – Vmpp-Modultemperatur

Choose a tag to compare

@MPunktBPunkt MPunktBPunkt released this 03 Jul 14:45

v0.6.15

  • Fix PIKO 5.5: kühle Module (MPP ≥ 97 %) werden nicht mehr als ungültig verworfen — Temperatur auch bei T < T_Luft anzeigen

v0.6.14

  • Temperatur-Kacheln: °C immer anzeigen (absolut / eingeschränkt / ungültig)
  • ΔT String 1↔2 ab 50 W Stringleistung
  • Historie-Chart filtert Low-G-Ausreißer

v0.6.13

  • Vmpp-basierte Modultemperatur pro String (ioBroker-States, Daten-Tab, Historie-Chart)
  • Temperaturverlust, MPP-Ausnutzung, System-ΔT und Alarm-Stufen
  • Konzeptdokument: \docs/KonzeptPikoTemperatur.md\

Voraussetzung

Modul-Konfiguration in den Admin-Einstellungen (Vorlage + Modulanzahl pro String).

Hinweis

Die angezeigte Temperatur ist eine äquivalente Vmpp-basierte Betriebstemperatur — besonders zuverlässig für den Vergleich zwischen Strings und zwischen beiden Wechselrichtern.

v0.6.12 – E-Mail-Berichte verbessert

Choose a tag to compare

@MPunktBPunkt MPunktBPunkt released this 28 Jun 11:42

ioBroker Kostal PIKO Adapter v0.6.12

Highlights

  • Wetter im Tagesbericht: Historische Open-Meteo-Archivdaten für den Berichtstag (nicht mehr die aktuelle Vorhersage)
  • Fehlercodes erklärt: PIKO-Ereignisscodes mit Kurztext (z. B. 240 = Netzstörung)
  • E-Mail-Tabellen: Monats- und Wochenberichte mit Inline-Styles – Spalten bleiben in Outlook & Co. sauber ausgerichtet
  • Betreff-Kennung: Neues Feld reportLabel in den Einstellungen (z. B. „Kleiner“ / „Grosser“) → PIKO 8.3 · Grosser – Tagesbericht …

Bugfixes (seit v0.6.4)

  • v0.6.10: Message-Handler für Testberichte und E-Mail-Versand registriert; Timer pro Berichtstyp
  • v0.6.11: ioBroker-CLI-Testberichte (command: send) werden korrekt erkannt

Konfiguration

Unter Benachrichtigungen → Berichts-Kennung (Betreff) optional einen Namen eintragen. Leer lassen = Instanz-Titel aus ioBroker.

Installation / Update

iobroker url https://github.com/MPunktBPunkt/iobroker.kostalpiko
iobroker restart kostalpiko

Oder manuell: Dateien aus dem Release nach /opt/iobroker/node_modules/iobroker.kostalpiko/ kopieren und Adapter neu starten.

Voraussetzungen

  • Node.js ≥ 16
  • Kostal PIKO mit HTTP-Webserver
  • Für Wetter im Tagesbericht: PLZ in der Konfiguration hinterlegen
  • Für Berichte: „Historiendaten laden“ aktiv + E-Mail-Adapter (email.0) konfiguriert

v0.6.4

Choose a tag to compare

@cursor cursor released this 27 Jun 22:08
c8fb125

ioBroker Kostal PIKO Adapter v0.6.4

Highlights

  • Historie: Nachhol-Abruf vom PIKO, wenn die Tageskurve hängen bleibt (z. B. Cutoff um 18:00 trotz laufendem Live-Poll)
  • Ertrag: Backup-Wiederherstellung, Cache-Berechnung, manuelle Werte haben Vorrang, combine-yields.js für mehrere WR
  • Wetter: Text aus Bewölkung/Sonne (nicht mehr widersprüchlich „Bewölkt“ bei 2 %)
  • UI: Wetter auf Daten-Tab nach unten; README als visuelle Produkt-Tour mit Screenshots

Historie & Sync (seit v0.6.1)

  • Merge nach Zeitstempel statt blindem Replace – abgeschnittene LogDaten.dat löscht keine Nachmittagsdaten mehr
  • 15-Min-Deduplizierung im History-Cache
  • Automatischer PIKO-Abruf bei veralteten Tagesdaten (>20 Min, tagsüber)
  • Historie-Tab startet bei Bedarf selbst „Vom PIKO laden“
  • Service-busy Retries: 3×

Ertrag-Tab (seit v0.6.2)

  • Aus Cache – berechnet aus history-cache.json (nicht direkt vom PIKO)
  • Backup – stellt monthly-yields.json.bak wieder her
  • Auto löschen – entfernt fehlerhafte automatische Werte
  • Plausibilitätsprüfung bei Monatserträgen (keine unrealistischen MWh-Werte mehr)
  • Button „Neu ab 05/2018“ entfernt → stattdessen + Jahr / Jahre auffüllen

Script: Beide Wechselrichter kombinieren

node /opt/iobroker/node_modules/iobroker.kostalpiko/scripts/combine-yields.js \
  /opt/iobroker/iobroker-data kostalpiko.0 kostalpiko.1 --from 2018-05 --csv ertrag.csv

Installation / Update

iobroker update kostalpiko
iobroker restart kostalpiko

Oder via GitHub: iobroker.kostalpiko

Voraussetzungen

  • Node.js ≥ 16
  • Kostal PIKO mit HTTP-Webserver (Firmware ~3.62)
  • Getestet: PIKO 5.5, 7.0, 8.3

v0.6.0 – GPL-3.0, Wetter/Wirkungsgrad States, Influx Vollsync

Choose a tag to compare

@cursor cursor released this 26 Jun 14:19
af61512

v0.6.0

Lizenz

  • Umstellung auf GPL-3.0 (statt Persönliche Nutzungslizenz)

Neue Datenpunkte (ioBroker + InfluxDB Live-Sync)

  • weather.sunshineHours, weather.tempMax, weather.cloudCover, weather.precipitation
  • dc.totalPower (Σ String-Leistung)
  • efficiency.ratio (Wirkungsgrad DC→AC in %)
  • efficiency.expected (Soll-Wirkungsgrad, temperaturkorrigiert)

InfluxDB

  • Live-Sync erweitert: alle DC-String-Spannungen/Ströme, AC-Phasen, Wirkungsgrad und Wetter – nicht mehr nur ac.power / energy.*
  • History neu: history.dc.totalPower, history.efficiency.ratio

Web-UI / README

  • Daten-Tab: DC-Leistung und Wirkungsgrad angezeigt
  • README überarbeitet mit Ertrag-Screenshot und Feature-Übersicht
  • Langer Changelog entfernt → siehe GitHub Releases

Update

cd /opt/iobroker
npm update iobroker.kostalpiko
iobroker restart kostalpiko.0

v0.5.2 – Ertrag-Tab, Export/Import, Wetter & Sonne

Choose a tag to compare

@cursor cursor released this 26 Jun 13:57
12485c7

ioBroker Kostal PIKO Adapter v0.5.2

Erstes Release der Ertragsauswertung – langfristige PV-Analyse direkt im Adapter-Web-UI.

Highlights

  • Neuer Tab „Ertrag" – Monatstabelle (Jahre × Monate in Wh), wie in Excel
  • Manuelle Historie – Monatswerte seit Inbetriebnahme eintragen, persistent in monthly-yields.json
  • Automatische Monate – letzte ~6 Monate aus 15-min-Historie (manuelle Werte bleiben)
  • Export/Import – JSON-Backup oder CSV für Excel
  • Jahresvergleich – Balkendiagramm (MWh / kWh/kWp, Jahre umschaltbar)
  • Wetter & Sonne – auf dem Daten-Tab (Sonnenstunden, Wetter, Bewölkung via Open-Meteo)
  • Postleitzahl – volle PLZ in Admin (Standard 87781)

Installation / Update

cd /opt/iobroker
npm update iobroker.kostalpiko
iobroker restart kostalpiko.0

Oder im ioBroker Admin: Adapter → Kostal PIKO → Installierte Version → Auf verfügbare Version aktualisieren.

Web-UI nach Update: v0.5.2 im Header.

Speicherort Monatstabelle

/opt/iobroker/iobroker-data/kostalpiko.0/monthly-yields.json

Pro Wechselrichter-Instanz eine eigene Datei (kostalpiko.0, kostalpiko.1, …).


Changelog

0.5.2

  • Gesamtertrag im Ertrag-Tab in kWh (statt Wh)
  • Wetter & Sonne auf dem Daten-Tab (Open-Meteo, PLZ-basiert)
  • Volle Postleitzahl in Admin (Standard 87781)
  • Wechselrichter-Grenzwerte nur noch auf Daten-Tab (Duplikat Historie entfernt)

0.5.1

  • Jahres-Spalten hinzufügen / auffüllen
  • JSON- und CSV-Export, Import (merge/replace)
  • Speicherort-Anzeige, Vergleichs-Balkendiagramm

0.5.0

  • Ertrag-Tab mit Monatstabelle, manueller Eingabe, €/Jahr, kWh/kWp

v0.4.3 – Korrekte Grenzwert-Warnungen

Choose a tag to compare

@MPunktBPunkt MPunktBPunkt released this 25 Jun 14:52

Summary

  • Bugfix: Keine falschen Rot-Warnungen mehr bei Spannung unter MPP-Min (360 V)
  • MPP-Min/Max = Nennleistungsbereich laut Kostal-Datenblatt, keine Sicherheitsgrenze
  • Echte Alarme nur bei U > Udcmax (950 V), U < Udcmin (180 V) oder I > Idmax
  • Bugfix: Web-UI-Syntaxfehler in app.js behoben (fehlende Klammer)

Seit v0.4.0

  • Chart.js Engineer-Dashboard im Historie-Tab (KPIs, interaktive Charts)
  • History-Cache auf Disk mit Backup (.bak) – Historie überlebt Neustart
  • Schutz vor unvollständiger LogDaten.dat (5650→1 bei service busy)
  • Kostal-Datenblatt-Grenzwerte in String-Analyse und Web-UI
  • String-Analyse mit Vmpp-Korridor (Solarworld 225 poly/mono Vorlage)
  • InfluxDB: history.dc3.*, history.energy.total, Live-Sync energy.today/total/ac.power

Test plan

  • Historie-Tab lädt ohne JavaScript-Fehler (Strg+F5)
  • PIKO 5.5: String-Analyse ohne rote MPP-Min-Warnung bei ~314–350 V
  • PIKO 8.3: WR-Grenzwerte-Karte sichtbar, Strings grün im MPP-Korridor
  • Nach PIKO-Neustart: History-Cache weiterhin vollständig

v0.4.2 – History-Schutz & Kostal-Grenzwerte

Choose a tag to compare

@MPunktBPunkt MPunktBPunkt released this 25 Jun 14:37

Summary

  • Bugfix: Historie wird nicht mehr durch unvollstaendige LogDaten.dat ersetzt (5650->1)
  • History-Cache-Backup (.bak) und Wiederherstellung beim Start
  • Kostal-Datenblatt-Grenzwerte in String-Analyse und Web-UI
  • String-Analyse: Vmpp statt Voc, Solarworld 225 poly/mono Vorlage

Test plan

  • Historie-Tab zeigt wieder volle Datenpunktzahl nach Neustart
  • Bei service busy bleibt bestehende Historie erhalten
  • WR-Grenzwerte-Karte sichtbar bei gesetztem PIKO-Modell
  • String-Analyse gruen auf PIKO 8.3 bei ~480V

v0.4.0 – Chart.js Engineer-Dashboard

Choose a tag to compare

@MPunktBPunkt MPunktBPunkt released this 25 Jun 13:51

Highlights

  • Historie-Tab komplett überarbeitet – Chart.js Dashboard mit KPI-Leiste, interaktiven Zeitreihen (AC/DC/Phasen/Netz/Energie)
  • History-Cache – nach Adapter-Neustart sofort Daten sichtbar
  • InfluxDB-Fixes – \history.dc3.*\ und \history.energy.total\ werden jetzt synchronisiert
  • Live-Influx-Sync für \energy.today, \energy.total, \�c.power\
  • README mit Screenshots aller Web-UI-Tabs
  • Lizenz auf persönliche, nicht-kommerzielle Nutzung umgestellt

Installation / Update

\\�ash
iobroker url https://github.com/MPunktBPunkt/iobroker.kostalpiko
iobroker restart kostalpiko
\\

Nach dem Update einmal Sync-All pro Instanz ausführen, damit neue Datenpunkte (DC3, Energie) in InfluxDB landen.