docs(openmeteo): guide d'installation en trois langues, à la place du « à venir »

La fiche openmeteo n'avait que son bloc de référence généré. Elle porte
maintenant la prose, en FR, DE et EN : ajout du site et des plans PV (avec
l'avertissement azimut 0 = nord), « une prévision, jamais une mesure » (la
conversion ignore ombrage, encrassement et écrêtage : la prévision est
optimiste), rafraîchissement et relance, comportement sans internet, ce qui
quitte la box, usage commercial et attribution CC-BY.

Chaque affirmation a été vérifiée dans le code de feature/beta-forecast
(etm16) : coordonnées arrondies à deux décimales, altitude envoyée seulement
si renseignée, puissance crête et rendement jamais transmis. La prose reste
juste aussi pour master, dont la CI génère le bloc de référence.

Accroche corrigée dans i18n/devices.yaml : le meta.json annonce « current
weather data », alors que le plugin publie surtout des prévisions.

Supprimé : la ligne commentée `openmeteo, channel: nightly` de
PORTING_STATUS.yaml, un vestige qui contredisait l'entrée active.

TODO : noté que la référence publiée retarde sur le paquet testing (master
d'etm-powersync-plugins a 39 commits de retard sur feature/beta-forecast).

Vérifié dans une copie, à partir des branches par défaut des 5 dépôts de
plugins comme en CI : génération, --check et mkdocs build --strict passent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Patrick Schurig 2026-10-16 22:08:34 +02:00
parent 2a8eea6cfc
commit b2513a86a4
5 changed files with 367 additions and 6 deletions

View File

@ -429,5 +429,4 @@
# - {repo: nymea-plugins-genericthings, plugin: genericthing, channel: stable}
# -- etm-powersync-plugins : hors périmètre direct --
# - {repo: etm-powersync-plugins, plugin: openmeteo, channel: nightly}
# (keba : fork ETM disponible mais doublon de nymea-plugins/keba ci-dessus)

View File

@ -7,7 +7,131 @@ Aktuelle Wetterdaten für Ihren Standort abrufen.
<!-- END GENERATED -->
_Installationsanleitung folgt._
Das OpenMeteo-Plugin liefert der Box die **Wetter- und Solarprognosen** für Ihren
Standort: das Wetter für heute und morgen sowie die erwartete PV-Erzeugung für jede
Dachausrichtung. Die Daten stammen vom öffentlichen Dienst
[Open-Meteo](https://open-meteo.com), den die Box direkt abfragt – **ohne Konto, ohne
API-Schlüssel** und ohne Umweg über einen ETM-Dienst.
Paket: `powersync-plugin-openmeteo`.
## 1. Was das Plugin bereitstellt
Das Plugin legt zwei Arten von Objekten an:
- einen **Standort** (`Open-Meteo site`): Wetter am Standort (Temperatur, Bewölkung,
Wind, Luftfeuchtigkeit …), prognostizierte Einstrahlung, Sonnenauf- und -untergang
sowie eine Satellitenbeobachtung der vergangenen Stunde;
- eine oder mehrere **PV-Flächen** (`Open-Meteo PV plane`), die dem Standort
zugeordnet sind – eine pro Dachausrichtung. Jede Fläche liefert die prognostizierte
Einstrahlung auf ihre Module und die daraus abgeleitete erwartete Erzeugung: für die
laufende Stunde, die nächsten 3, 6 und 12 Stunden, den Rest des Tages und den
Folgetag.
Die ETM-PowerSync-App zeigt diese Prognosen neben den Messwerten an (erwartete
Erzeugung in den Diagrammen, Wetter Stunde für Stunde).
## 2. Standort hinzufügen
Fügen Sie im Installateurmodus ein Gerät **Open-Meteo site** hinzu (siehe
[Gerät hinzufügen](../../installation/application.md)) und tragen Sie ein:
| Feld | Inhalt |
| --- | --- |
| `Latitude`, `Longitude` | Position des Standorts in Dezimalgrad |
| `Elevation (m, optional)` | Höhe des Standorts in Metern. Optional: Bei `0` verwendet Open-Meteo die Höhe aus seinem eigenen Geländemodell. In den Bergen oder in engen Tälern eintragen, denn die prognostizierte Temperatur hängt davon ab. |
Der Standort wird nicht automatisch gefunden: Er wird von Hand angelegt, einmal pro
Standort.
## 3. PV-Flächen hinzufügen
Sobald der Standort angelegt ist, fügen Sie ein Gerät **Open-Meteo PV plane** hinzu:
Die Suche schlägt für jeden vorhandenen Standort eine Fläche vor. Legen Sie **eine
Fläche pro Ausrichtung** an – ein Ost-West-Dach ergibt zwei Flächen.
| Feld | Inhalt |
| --- | --- |
| `Tilt (deg, 0=horizontal)` | Neigung der Module in Grad: `0` = flach, `90` = senkrecht |
| `Azimuth (deg geographic, 180=South)` | Ausrichtung in **geografischer Konvention**: `180` = Süden, `90` = Osten, `270` = Westen |
| `Peak power kWp` | Spitzenleistung der Module dieser Fläche |
| `Performance ratio (declared, not learned)` | Gesamtwirkungsgrad der Anlage, vom Installateur **angegeben** (die Box lernt ihn nicht). Bleibt er auf `1.0`, wird die erwartete Erzeugung überschätzt. |
Je nach Plugin-Version ergänzen zwei Werte aus dem Moduldatenblatt die Fläche:
`Power temperature coefficient (%/K, declared, not learned)` (Standard −0,37 %/K) und
`NOCT (°C, declared, not learned)` (Standard 45 °C). Sie korrigieren die erwartete
Erzeugung, wenn sich die Module erwärmen.
!!! warning "Achtung beim Azimut"
Andere Werkzeuge zählen den Azimut ab Süden (`0` = Süden). Hier ist `0`
**Norden**: Ein Azimut von `0` für ein reines Süddach ergibt eine stark
unterschätzte Erzeugungsprognose.
## 4. Eine Prognose, niemals eine Messung
Alles, was dieses Plugin bereitstellt, ist eine in Erzeugung umgerechnete
**Wetterprognose** oder eine etwa eine Stunde alte **Satellitenbeobachtung**. Es ist
nie eine Messung Ihrer Anlage: Die tatsächliche Erzeugung liefert der Wechselrichter
oder der Zähler.
Deshalb heißen die Werte `forecast…` (Prognose) oder `observed…`
(Satellitenbeobachtung): Es gibt in diesem Plugin kein `pvPower`, nur
`forecastPvPower`.
Die erwartete Erzeugung wird einfach berechnet: prognostizierte Einstrahlung ×
Spitzenleistung × angegebener Wirkungsgrad. Sie **berücksichtigt nicht** Verschattung,
Verschmutzung der Module oder die Leistungsbegrenzung des Wechselrichters. Die
Abweichung geht daher immer in dieselbe Richtung: **Die Prognose ist optimistisch.**
4 kW Prognose sind nicht 4 kW Erzeugung.
Die für heute und morgen angegebene **Wetterstreuung** (in %) sagt, wie unsicher das
Wetter selbst ist. Über die Genauigkeit der erwarteten Erzeugung sagt sie nichts: Bei
stabilem Sonnenwetter ist sie gering, während die Überschätzung gerade dann am größten
ist.
## 5. Aktualisierung und Internetausfall
Die Wettermodelle veröffentlichen nicht häufiger: Prognose und Satellitenbeobachtung
werden **stündlich** abgerufen, die Streuung **alle 3 Stunden**. Die Aktion `Refresh`
des Standorts erzwingt alle drei.
Antwortet Open-Meteo nicht, versucht es das Plugin nach 5 Minuten erneut, dann nach
10, 20, 40 … – nie seltener als im normalen Takt der Quelle – und kehrt mit der ersten
Antwort zu seinem Takt zurück. Nach **3 Stunden** ohne empfangene Prognose wechselt
`Forecast valid` auf falsch.
Ein Internetausfall blockiert nichts: Die Box steuert mit ihren Messwerten weiter, die
Sicherheit bleibt gewährleistet, und nur die Prognosen verschlechtern sich, bis die
Verbindung zurück ist.
## 6. Was die Box verlässt
Für ihre Prognosen sendet die Box an Open-Meteo **ausschließlich**:
- die Koordinaten des Standorts, **auf zwei Nachkommastellen gerundet** (etwa 1 km):
genau genug für das Wetter, zu ungenau, um eine Adresse zu bezeichnen;
- die Höhe des Standorts, sofern eingetragen;
- Neigung und Azimut jeder PV-Fläche.
Es werden keine Messwerte, kein Verbrauch und keine Nutzungsdaten übertragen.
Spitzenleistung und Wirkungsgrad bleiben auf der Box: Die Umrechnung in Erzeugung
erfolgt lokal.
## 7. Gewerbliche Nutzung: eigene Open-Meteo-Instanz
Die öffentliche API von Open-Meteo ist der **nicht gewerblichen Nutzung** vorbehalten.
Für einen gewerblichen Einsatz lassen sich in den Plugin-Einstellungen eine selbst
betriebene Open-Meteo-Instanz eintragen (`Base URL (forecast)`,
`Base URL (satellite radiation)`, `Base URL (ensemble spread)`) oder ein Schlüssel für
das kommerzielle Angebot von Open-Meteo (`API key (commercial endpoint, optional)`).
Ohne Änderung fragt das Plugin die öffentliche API ab.
## 8. Datenquellen
Wetterdaten von Météo-France, Satellitenstrahlung von EUMETSAT, bereitgestellt über
[Open-Meteo](https://open-meteo.com) unter der Lizenz CC-BY 4.0.
---
## Referenz

View File

@ -7,7 +7,121 @@ Get current weather data for your location.
<!-- END GENERATED -->
_Installation guide coming soon._
The OpenMeteo plugin gives the box the **weather and solar forecasts** for your site:
today's and tomorrow's weather, and the expected PV production for each roof
orientation. The data come from the public [Open-Meteo](https://open-meteo.com)
service, queried directly by the box — **no account, no API key**, and no detour
through an ETM service.
Package: `powersync-plugin-openmeteo`.
## 1. What the plugin publishes
The plugin creates two kinds of objects:
- a **site** (`Open-Meteo site`): weather at the location (temperature, clouds, wind,
humidity…), forecast solar irradiance, sunrise and sunset, and a satellite
observation of the past hour;
- one or more **PV planes** (`Open-Meteo PV plane`), attached to the site — one per
roof orientation. Each plane publishes the forecast irradiance on its modules and
the expected production derived from it: for the current hour, the next 3, 6 and 12
hours, the rest of the day and tomorrow.
The ETM-PowerSync app shows these forecasts next to the measurements (expected
production on the charts, hour-by-hour weather).
## 2. Adding the site
In installer mode, add an **Open-Meteo site** device (see
[Adding a device](../../installation/application.md)) and enter:
| Field | Content |
| --- | --- |
| `Latitude`, `Longitude` | Position of the site, in decimal degrees |
| `Elevation (m, optional)` | Altitude of the site in metres. Optional: left at `0`, Open-Meteo uses the altitude of its own terrain model. Enter it in mountains or narrow valleys, where the forecast temperature depends on it. |
The site is not discovered automatically: it is created by hand, once per location.
## 3. Adding the PV planes
Once the site exists, add an **Open-Meteo PV plane** device: discovery offers one
plane for each existing site. Create **one plane per orientation** — an east-west roof
gives two planes.
| Field | Content |
| --- | --- |
| `Tilt (deg, 0=horizontal)` | Tilt of the modules in degrees: `0` = flat, `90` = vertical |
| `Azimuth (deg geographic, 180=South)` | Orientation, in **geographic convention**: `180` = south, `90` = east, `270` = west |
| `Peak power kWp` | Peak power of the modules on this plane |
| `Performance ratio (declared, not learned)` | Overall system efficiency, **declared** by the installer (the box does not learn it). Left at `1.0`, the expected production is overestimated. |
Depending on the plugin version, two values from the module datasheet complete the
plane: `Power temperature coefficient (%/K, declared, not learned)` (default
−0.37 %/K) and `NOCT (°C, declared, not learned)` (default 45 °C). They correct the
expected production when the modules heat up.
!!! warning "Mind the azimuth"
Other tools count the azimuth from south (`0` = south). Here, `0` is **north**:
an azimuth of `0` entered for a due-south roof gives a heavily underestimated
production forecast.
## 4. A forecast, never a measurement
Everything this plugin publishes is a **weather forecast** converted into production,
or a **satellite observation** about an hour old. It is never a measurement of your
installation: the actual production is read from the inverter or the meter.
This is why the values are named `forecast…` or `observed…` (satellite observation):
there is no `pvPower` in this plugin, only `forecastPvPower`.
The expected production is a simple calculation: forecast irradiance × peak power ×
declared efficiency. It **does not account for** shading, soiled modules or inverter
clipping. The error therefore always goes the same way: **the forecast is
optimistic**. 4 kW forecast is not 4 kW produced.
The **weather spread** published for today and tomorrow (in %) says how uncertain the
weather itself is. It says nothing about the accuracy of the expected production: on a
clear, stable day it is low, precisely when the overestimate is at its highest.
## 5. Refresh and internet outage
Weather models do not publish more often than this: the forecast and the satellite
observation are fetched **every hour**, the spread **every 3 hours**. The site's
`Refresh` action forces all three.
If Open-Meteo does not answer, the plugin retries after 5 minutes, then 10, 20, 40… —
never less often than the source's normal rate — and returns to its normal rate at the
first answer. After **3 hours** without a forecast, `Forecast valid` turns false.
An internet outage blocks nothing: the box keeps controlling with its measurements,
safety is maintained, and only the forecasts degrade until the connection returns.
## 6. What leaves the box
To get its forecasts, the box sends Open-Meteo **only**:
- the site's coordinates, **rounded to two decimals** (about 1 km): precise enough for
the weather, too blurred to point to an address;
- the site's altitude, if you entered it;
- the tilt and azimuth of each PV plane.
No measurement, no consumption and no usage data is sent. The peak power and the
efficiency stay on the box: the conversion into production happens locally.
## 7. Commercial use: a dedicated Open-Meteo instance
The public Open-Meteo API is for **non-commercial use** only. For a commercial
deployment, the plugin settings can point to a self-hosted Open-Meteo instance
(`Base URL (forecast)`, `Base URL (satellite radiation)`, `Base URL (ensemble
spread)`) or take a key for Open-Meteo's commercial offer (`API key (commercial
endpoint, optional)`). Unchanged, the plugin queries the public API.
## 8. Data sources
Weather data by Météo-France, satellite radiation by EUMETSAT, provided through
[Open-Meteo](https://open-meteo.com) under the CC-BY 4.0 licence.
---
## Reference

View File

@ -7,7 +7,127 @@ Obtenir les données météo courantes pour votre site.
<!-- END GENERATED -->
_Guide d'installation à venir._
Le plugin OpenMeteo fournit à la box les **prévisions météo et solaires** de votre
site : météo du jour et du lendemain, et production photovoltaïque prévue pour chaque
orientation de toiture. Les données viennent du service public
[Open-Meteo](https://open-meteo.com), interrogé directement par la box, **sans compte
ni clé d'API** et sans passer par un service ETM.
Paquet : `powersync-plugin-openmeteo`.
## 1. Ce que le plugin publie
Le plugin crée deux types d'objets :
- un **site** (`Open-Meteo site`) : météo de l'emplacement (température, nuages,
vent, humidité…), irradiance solaire prévue, lever et coucher du soleil, et une
observation satellite de l'heure écoulée ;
- un ou plusieurs **plans PV** (`Open-Meteo PV plane`), rattachés au site : un par
orientation de toiture. Chaque plan publie l'irradiance prévue sur ses panneaux et
la production prévue qui en découle, pour l'heure courante, les 3, 6 et 12 heures à
venir, le reste de la journée et le lendemain.
L'application ETM-PowerSync affiche ces prévisions à côté des mesures (production
prévue sur les graphes, météo heure par heure).
## 2. Ajouter le site
En mode installateur, ajoutez un appareil **Open-Meteo site** (voir
[Ajouter un appareil](../../installation/application.md)) et renseignez :
| Champ | Contenu |
| --- | --- |
| `Latitude`, `Longitude` | Position du site, en degrés décimaux |
| `Elevation (m, optional)` | Altitude du site en mètres. Facultative : laissée à `0`, Open-Meteo utilise l'altitude de son propre modèle de terrain. À renseigner en montagne ou en vallée encaissée, où la température prévue en dépend. |
Le site n'est pas découvert automatiquement : on le crée à la main, une fois par
emplacement.
## 3. Ajouter les plans PV
Une fois le site créé, ajoutez un appareil **Open-Meteo PV plane** : la découverte
propose un plan pour chaque site existant. Créez **un plan par orientation** — une
toiture est-ouest donne deux plans.
| Champ | Contenu |
| --- | --- |
| `Tilt (deg, 0=horizontal)` | Inclinaison des panneaux, en degrés : `0` = à plat, `90` = vertical |
| `Azimuth (deg geographic, 180=South)` | Orientation, en **convention géographique** : `180` = sud, `90` = est, `270` = ouest |
| `Peak power kWp` | Puissance crête des panneaux de ce plan |
| `Performance ratio (declared, not learned)` | Rendement global de l'installation, **déclaré** par l'installateur (il n'est pas appris par la box). Laissé à `1.0`, la production prévue est surestimée. |
Selon la version du plugin, deux champs issus de la fiche technique des modules
complètent le plan : `Power temperature coefficient (%/K, declared, not learned)`
(par défaut −0,37 %/K) et `NOCT (°C, declared, not learned)` (par défaut 45 °C). Ils servent à corriger la production prévue
quand les modules chauffent.
!!! warning "Attention à l'azimut"
D'autres outils comptent l'azimut à partir du sud (`0` = sud). Ici, `0` est le
**nord** : un azimut de `0` saisi pour une toiture plein sud donne une production
prévue fortement sous-estimée.
## 4. Une prévision, jamais une mesure
Tout ce que publie ce plugin est une **prévision météo** convertie en production, ou
une **observation satellite** datant d'environ une heure. Ce n'est jamais une mesure
de votre installation : la production réelle se lit sur l'onduleur ou le compteur.
C'est pourquoi les grandeurs sont nommées `forecast…` (prévision) ou `observed…`
(observation satellite) : il n'existe pas de `pvPower` dans ce plugin, seulement
`forecastPvPower`.
La production prévue est calculée simplement : irradiance prévue × puissance crête ×
rendement déclaré. Elle **ne tient pas compte** de l'ombrage, de l'encrassement des
panneaux ni de l'écrêtage de l'onduleur. L'écart va donc toujours dans le même sens :
**la prévision est optimiste**. 4 kW prévus ne sont pas 4 kW produits.
La **dispersion météo** publiée pour aujourd'hui et demain (en %) dit à quel point la
météo elle-même est incertaine. Elle ne dit rien de la justesse de la production
prévue : par grand beau temps stable, elle est faible alors que la surestimation, elle,
est à son maximum.
## 5. Rafraîchissement et coupure internet
Les modèles météo ne publient pas plus souvent que cela : la prévision et
l'observation satellite sont relues **toutes les heures**, la dispersion **toutes les
3 heures**. L'action `Refresh` du site force les trois.
Si Open-Meteo ne répond pas, le plugin réessaie après 5 minutes, puis 10, 20, 40… sans
dépasser le rythme normal de la source, et reprend son rythme dès la première réponse.
Après **3 heures** sans prévision reçue, l'état `Forecast valid` passe à faux.
Une coupure internet ne bloque rien : la box continue de piloter avec ses mesures, la
sécurité reste assurée, et seules les prévisions se dégradent jusqu'au retour de la
connexion.
## 6. Ce qui quitte la box
Pour obtenir ses prévisions, la box envoie à Open-Meteo **uniquement** :
- les coordonnées du site, **arrondies à deux décimales** (environ 1 km) : assez
précises pour la météo, trop floues pour désigner une adresse ;
- l'altitude du site, si vous l'avez renseignée ;
- l'inclinaison et l'azimut de chaque plan PV.
Aucune mesure, aucune consommation et aucune donnée d'usage n'est transmise. La
puissance crête et le rendement restent sur la box : la conversion en production se
fait localement.
## 7. Usage commercial : instance Open-Meteo dédiée
L'API publique d'Open-Meteo est réservée à un **usage non commercial**. Pour un
déploiement commercial, les réglages du plugin permettent de pointer vers une instance
Open-Meteo auto-hébergée (`Base URL (forecast)`, `Base URL (satellite radiation)`,
`Base URL (ensemble spread)`) ou de renseigner une clé pour l'offre commerciale
d'Open-Meteo (`API key (commercial endpoint, optional)`). Sans modification, le plugin
interroge l'API publique.
## 8. Sources des données
Données météo de Météo-France, rayonnement satellite d'EUMETSAT, fournis par
[Open-Meteo](https://open-meteo.com) sous licence CC-BY 4.0.
---
## Référence

View File

@ -246,9 +246,13 @@ sunspec:
# ── Tarifs & prévisions ──────────────────────────────────────────────────────
openmeteo:
# Correction : le meta.json annonce « current weather data », mais le plugin publie
# surtout des PRÉVISIONS (météo et production PV par orientation). Corrigé dans les
# trois langues tant que le meta.json d'etm-powersync-plugins ne l'est pas.
tagline:
fr: Obtenir les données météo courantes pour votre site.
de: Aktuelle Wetterdaten für Ihren Standort abrufen.
fr: Prévisions météo et production solaire prévue pour votre site, via Open-Meteo.
de: Wetterprognosen und erwartete PV-Erzeugung für Ihren Standort, über Open-Meteo.
en: Weather forecasts and expected PV production for your site, via Open-Meteo.
awattar:
tagline:
fr: Obtenir le dernier prix de l'énergie chez aWATTar.