ECOWITT Weatherstation integration for Home Assistant

Good to know that is a big difference. I can baby sit it the first time, but I didnt want to have my entire HA break because my ecowitt was unplugged in a couple of months and go nuts trying to figure out what is wrong!! :slight_smile:

Is there any way to get the current AQI and AQI 24hr average from a gw1000?

As I told, I havenā€™t really tried a reboot as you asked. But recently I had to turn off the power in the house and the weather stationā€™s console was unable to reconnect to the WiFi. When I checked HA, it has turned on and working, but all the weather station entities were ā€œunavailableā€.

Has anyone tried ecowitt2mqtt? https://github.com/bachya/ecowitt2mqtt

Since this project seems abandoned by the original dev at the moment, perhaps its a better option? it seems under active development and natively supports home assistant.

Iā€™m using it now and so far its great, highly recommended.

Does anyone know the definition of wind_gust? It seems to be the highest wind value in the last n minutes. But Iā€™m not sure the value of n. Seems to be about 10 minutes. Does anyone know?

Specifically this sensor: https://github.com/garbled1/homeassistant_ecowitt/blob/72434003e7f82eae869b170f1e9e49607b2bf1c9/custom_components/ecowitt/init.py#L276

By definition (from Wikipedia):

A gust or wind gust is a brief increase in the speed of the wind, usually less than 20 seconds.

Otherwise look here:

I didnā€™t ask my question very well. I didnā€™t mean to ask the definition of a gust, what I really meant was how long does the value of the gust last within the HA sensor. The WS68 sensor might give the largest wind value (gust) since the last 16 second update but home assistant seems to hold onto the largest value for about 120 seconds.

The path of the data:

WS68 --> GW1002 --> ecowitt community integration --> HA sensor wind_gust sensor

Somewhere along the way the wind_gust in HA seems to be the largest wind value reported by the sensor in the last 2 minutes (this is me guessing based on historical sensor data from this sensor).

It depends how you set your Ecowitt reporting interval. HA just displays the gust value from the unit what was sent. (It might be 120 seconds what you set on your unit.)

I bought Froggit WH4000SE weather station (European label for Ecowitt), installed Ecowitt plugin via HACS and added Ecowitt integration as well. I got lots of sensors that started to work right away. I have chosen metric instead of imperial, so some of the sensors changed soon to ā€œunavailableā€ (for example wind speed miles per hour, while kilometers per hour was still available), so I just removed those.

BUT my question is, I would like to have wind speed in meters per second instead of kilometers per hour. I know I chose that option from my weather station settings, and the indoors control panel shows it right, but is it the integration itself that is missing meters per second for wind (or, lux value for light)? Or is there some way I can just convert those sensor values on the fly?

All right, I just solved this by creating another sensor that I will be using instead of Ecowittā€™s one (sensor.wind_speed_2). That will do the calculation:

    wind_speed:
      unit_of_measurement: m/s
      friendly_name: "Speed of wind"
      icon_template: mdi:weather-windy
      value_template: >
        {{ (states('sensor.wind_speed_2')|float * 0.277777778)|round(1) }}

So, then Iā€™ll just display wind_speed sensor in UI and now I have wind speed in meters per second instead of kilometers per hour :slight_smile:

1 Like

I bought a GW1000 Gateway and managed to get it set up (figuring out their app was much trickier than it should have been). I did NOT buy any extra sensors (yet). The GW1000 comes with a pre-wired temp/humidity/pressure sensor. Iā€™m able to see data from this on the WS View app on my phone.

I followed the setup instructions for the Ecowitt Weatherstation integration and everything went smoothly. However, the integration didnā€™t set up any devices and thus Iā€™m not seeing any data. Iā€™m wondering if this is because I donā€™t have any other sensors besides the built-in ones, or if there is something wrong.

Any ideas?

EDIT: I forgot to mention, there are no errors in the logs

When you loaded the integration how did you load it?
Did you load HACS and then load it from there?
Did you restart HA after you loaded HACS & Ecowitt?
If you did and followed the instructions you should see this in your integrations list
image
Note there is only 1 device and 44 entities.

Hi, @rontaylor, thanks for the quick reply.

I downloaded from HACS and loaded it from there. I did several restarts afterwards. Hereā€™s what I see:

Screen Shot 01-09-21 at 08.28 PM

Perhaps I need to uninstall and reinstallā€¦

I would check that your Ecowitt GW1000 has been configured correctly. I am using a HP2551 Display so I was able to configure the third upload for HACS on the display. Much easier than WSView in my opinion.

What are you running you HA on? RPI,? NUC? PC?

Make sure there are no Firewalls
Other than that ???

Yes, this is a bit strange. I uninstalled from Integrations, then uninstalled from HACS. Restarted. Then reinstalled from HACS and restarted. Then reinstalled from Integrations and restarted again. Still not showing any devices/entities.

Iā€™ll double-check that things are set up correctly in WSView. Iā€™m running Home Assistant on a LINUX PC. Iā€™ve installed numerous other things from HACS without difficultly.

I donā€™t think there is any firewall, but Iā€™ll run netstat and at least verify that there is traffic on port 4199. That will also confirm that the GW1000 has been set up correctly, I guess.

I am running Ecowitt on a NUC which is running Ubuntu 20.04 so I am in the Linux environment. Strange

I ran this command

sudo lsof -i -P -n | grep LISTEN

and got  (see last 2 lines)

systemd-r     918 systemd-resolve   13u  IPv4  33816      0t0  TCP 127.0.0.53:53 (LISTEN)
sshd         1121            root    3u  IPv4  39734      0t0  TCP *:22 (LISTEN)
sshd         1121            root    4u  IPv6  39736      0t0  TCP *:22 (LISTEN)
teamviewe    1146            root   11u  IPv4  38237      0t0  TCP 127.0.0.1:5941 (LISTEN)
docker-pr    1690            root    4u  IPv6  44471      0t0  TCP *:9000 (LISTEN)
docker-pr    1691            root    4u  IPv6  43531      0t0  TCP *:4357 (LISTEN)
smbd         5640            root   26u  IPv6  68790      0t0  TCP *:445 (LISTEN)
smbd         5640            root   27u  IPv6  68791      0t0  TCP *:139 (LISTEN)
smbd         5640            root   28u  IPv4  68792      0t0  TCP *:445 (LISTEN)
smbd         5640            root   29u  IPv4  68793      0t0  TCP *:139 (LISTEN)
cupsd      929757            root    6u  IPv6 323162      0t0  TCP [::1]:631 (LISTEN)
cupsd      929757            root    7u  IPv4 323163      0t0  TCP 127.0.0.1:631 (LISTEN)
python3   1772860            root   10u  IPv6 457123      0t0  TCP *:8123 (LISTEN)
python3   1772860            root   11u  IPv4 457124      0t0  TCP *:8123 (LISTEN)
python3   1772860            root   32u  IPv4 457175      0t0  TCP 127.0.0.1:38199 (LISTEN)
python3   1772860            root   43u  IPv4 457188      0t0  TCP *:4199 (LISTEN)
python3   1772860            root   44u  IPv6 457189      0t0  TCP *:4199 (LISTEN)

How did you get on?

Hi, @rontaylor,

Sorry for a few daysā€™ delay in getting back on this issue. Family stuff and then trying to do some troubleshooting before writing back. Hereā€™s where I am at on this.

  1. First, I ran nmap localhost -p 4199 to make sure that port 4199 was open on the machine. It is:
    Screen Shot 01-14-21 at 04.28 PM

  2. verified that the port is open for listening by netstat -tulpm | grep LISTEN:

So, I think I can conclude that the port is open and being listened-to. However the Ecowitt integration is still not setting up a device nor entities.

I have set up another server and Iā€™m going to run wireshark on it and point my WS-1000 to this server to verify that it is for sure sending packets. I can ping the WS1000 and it responds, and I can see it sending out UDP packets every 2 seconds. Also, it is able to update the Ecowitt server. So, I know that it is connected to the network correctly. Still, I would like to verify that it is sending data to a custom server.

Assuming that the WS-1000 is working as expected, then I am really lost as to why the data appears not to be making it to the Ecowitt Integration in HA.

That is really weird.
The only thing that I can think of and itā€™s caught me before is a typo in the IP address on the WS1000.
I chased a similar issue once on another device and when I finally found it it was a comma instead of a full stop in an IP4 ip address. Silly, you would think the input checking would have caught it but ā€¦

Anyway itā€™s worth a look.