Zum Hauptinhalt springen

Ecowitt Smart-Home-Integration, kostenlos und Open Source

Ecowitt-Integration für Gladys Assistant

Bring your Ecowitt weather station sensors into Gladys, fully locally.

Info

Die Dokumentation dieser Integration wird von ihrem Autor geschrieben und ist bisher nur auf Englisch verfügbar.

Overview​

This integration brings your Ecowitt weather station sensors into Gladys: temperature, humidity, wind, rain, solar radiation, UV, pressure, and also the remote probes (soil moisture, PM2.5, CO2, lightning, leak detection). Every physical sensor becomes its own Gladys device, with its own battery and history, ready to use in your scenes.

Everything stays local: no data goes through the Ecowitt cloud.

Prerequisites​

  • Gladys 4.86 or later.
  • An Ecowitt weather station, console or gateway on the same local network as the machine running Gladys.
  • For the push mode: the WS View Plus app, and a station that can reach the machine running Gladys over the local network, on the port shown in the configuration screen.
  • For the local polling mode: a gateway or a console with a local API (see the list below), reachable at its IP address from the machine running Gladys.

Configuration​

Two modes are available, depending on your hardware.

Push (works with almost every station)​

Your station sends its readings to Gladys itself. This is the mode to use with the WS2910, GW1000, WN1900, WN1910, WS2320, HP2550, HP3500 consoles and, more generally, with every model except the WS6006.

  1. Install the integration and wait for the receiver container to start.
  2. Open the configuration screen: the full address to copy is shown there, as http://<address>:<port>/data/report/. If it contains localhost or 127.0.0.1 — which happens when you browse Gladys from the machine running it — replace that part with the local IP address of that machine: your station has to reach it over the network, and localhost means nothing to it.
  3. In the WS View Plus app, select your station, then Customized:
    • Protocol Type Same As: Ecowitt
    • Server IP / Hostname: the local IP address of the machine running Gladys
    • Path: /data/report/
    • Port: the port shown in Gladys
    • Upload Interval: 60 seconds
    • Turn Enable on and save.
  4. Wait for a first upload, then click Test the connection to confirm the readings are arriving.
  5. Go to the Discover screen: your sensors are listed there.

Sensors are only known after the first reading arrives. An empty Discover screen almost always means the station has not sent anything yet: double-check the address, port and path set in WS View Plus.

If your console only offers the Wunderground protocol, that works too: use the path /weatherstation/updateweatherstation.php. It carries fewer measurements (no multi-channel, no PM2.5, no CO2, no lightning).

Local polling (recent gateways)​

The GW1100, GW1200, GW2000, GW3000 and the recent network consoles (WS3800, WS3820, WS3900, WS3910, WN1700, WN1820, WN1821, WN1920, WN1980, WS6210) expose a local API. Gladys polls them directly, with nothing to configure on the station.

  1. Fill in the gateway IP address in the configuration. The Search for gateways button can find it for you.
  2. Adjust the polling interval if needed: 30 or 60 seconds (60 by default). The integration reads the gateway at that interval and refreshes the readings of every device you created.
  3. Run a discovery.

This mode has one advantage: it reads each sensor's hardware id, so replacing a battery or moving a sensor to another channel breaks neither your scenes nor your history.

Choosing the mode​

By default the integration switches to local polling as soon as an IP address is set, and stays in push mode otherwise.

The two sources do not produce the same device identifiers, so they are never combined on a single station. If you switch modes after creating your devices, they will show up again in the Discover screen — delete the old ones.

Security​

The receiving port is open on your local network and accepts, by design, any upload that reaches it. If several stations coexist on your network, fill in the PASSKEY field to accept only yours. To find it, enter any value in that field and save: the next reading is then ignored, and the integration logs show its PASSKEY (Relevé ignoré : PASSKEY inattendu (…)). Copy that value into the field and save again.

Troubleshooting​

SymptomWhat to check
The Discover screen stays emptyNo reading received: check the address, port and path in WS View Plus, then click "Test the connection".
The displayed address looks wrongIt mirrors the one your browser uses to reach Gladys: localhost when you are on the machine itself, the tunnel hostname through Gladys Plus or a reverse proxy. Replace it with the local IP address of the machine running Gladys.
"Search for gateways" finds nothingExpected on a WS2910 or a GW1000: those models have no local API. Use the push mode.
A measurement is missingNot every sensor reports every measurement. Only the ones actually received become features.
No battery on a solar sensorEcowitt reports a voltage but documents no threshold for the WS80, WS90, WH40 and WH85: rather than an invented state, nothing is shown.
"Gateway unreachable at …"Local polling mode: check that the gateway is powered on and that its IP address has not changed (give it a fixed address in your router), or find it again with "Search for gateways".
"The reading receiver is unreachable (it may be restarting): retrying automatically."Push mode: the receiver container may be restarting. The integration retries on its own; if the message stays, restart the integration.
"Initialization failed, check the integration logs."Open the integration logs and restart the integration.

The integration logs are in the Logs tab of the integration page in Gladys.

Konfigurationseinstellungen​

Diese Einstellungen fragt Ecowitt in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
Send your station's data to GladyssectionNeinIn the WS View Plus app, open your station then Customized: choose the Ecowitt protocol and a 60 second interval, then copy the address below. Sensors appear in the Discover screen after the first reading, which can take a few minutes.
http://{{gladys_host}}:{{port:ecowitt}}/data/report/sectionNeinWS View Plus asks for the three fields separately: server {{gladys_host}}, port {{port:ecowitt}}, path /data/report/. If the address above contains localhost, 127.0.0.1 or a domain name (Gladys Plus, reverse proxy), replace it with the local IP address of the machine running Gladys: your station has to reach it over the local network, and localhost means nothing to it.
Station PASSKEY (optional)stringNeinOnly accept readings from this station. Leave empty to accept the first station that reports.
Or poll a recent gatewaysectionNeinGW1100, GW1200, GW2000, GW3000 and recent network consoles expose a local API: fill in their IP address and Gladys polls them directly, with no configuration on the station. Consoles such as the WS2910 or the GW1000 do not: leave this empty and use the push mode above.
Gateway IP addressstringNein
Acquisition modeselectNeinThe two sources do not produce the same identifiers, so they are never combined on one station.
Polling interval (s)numberNeinLocal polling mode only: how often the gateway is read and the readings refreshed, 30 or 60 seconds.

So installierst du Ecowitt in Gladys​

  1. Öffne in Gladys Integrationen: Ecowitt erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
  2. Klicke auf Installieren. Gladys lädt das Docker-Image (ghcr.io/cicoub13/gladys-ecowitt:1.1.3) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration).
  3. Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
  4. Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/cicoub13/gladys-ecowitt.

Ecowitt benötigt Gladys >=4.86.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.

Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.

Über externe Integrationen​

Ecowitt ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von cicoub13 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.

Abonniere den Newsletter von Gladys Assistant

Ein paar E-Mails im Monat zu neuen Releases und Neuigkeiten aus dem Projekt. Verschickt von Pierre-Gilles Leymarie, dem Gründer des Projekts. Jederzeit abbestellbar 🙂