Crossposted under Ecowitt GW1000 Gateway (moved here for visibility).... Thanks to @sburke781 for his work with re-releasing the EcoWitt gateway. I have setup a new PWS (Ambient Weather WS-2000). I have it sending data to WeatherUnderground as well as the AmbientWeather.net site with no problems. I have also setup the device driver (snell) for Hubitat to retrieve the data from AmbientWeather.net. It works ok but it is cloud based and the polling is slow. In keeping with my goal to keep everything local (no cloud), I wanted to install the EcoWitt GW1000 gateway. I have setup a separate Hubitat hub (C-5) just to handle my PWS integrations. Its local ip is 10.1.200.4 and the AmbientWeather PWS IP is 10.1.230.1 on the same LAN. I installed the gateway drivers using HPM (great piece of software!). I created a virtual device using the gateway driver. I registered a customized server on the PWS (see attached screen shot). The gateway looks to be sending the data because I get the log entry (see attached log) but I am getting an error (Exception in parse(): java.lang.NullPointerException: Cannot get property 'key' on null object). I have deleted the device and uninstalled the driver and reinstalled just in case but still get the error. Also no child devices are being created...
I sent a private note to @sburke781 and he suggested that I post the question to the group. Does anybody use the app with Ambient Weather Stations?
As a test if you are already using my driver, it also supports receiving data from the Ecowitt gateway (you can have both methods set up at the same time without issue). The instructions for that are in the driver code but here it is also:
Setup Information - Ecowitt Local
On Ecowitt Gateway app
Select the Ecowitt Gateway from the Live Devices
Select More
Select Weather Services
Select Next until Customized is shown
Set the Server IP/Hostname to match your Hubitat
Set the Port to be 39501
Set the Upload Interval as desired
Save
On Hubitat
Setup a new virtual device
Type = AmbientEcowittWeather
Device Network ID = MAC Address of your Ecowitt Gateway, all uppercase, no : or spaces in it (ex: ABCDEF012345)
Save Device
Set method of obtaining weather to Ecowitt Local in Preferences, as well as any other desired preferences
What do you think @automation? I think local access to your data via the Ambient Weather drivers seems like a good option, rather than purchasing another gateway, unless there was something you preferred about the EcoWitt drivers?
Thanks @snell I may give that a try. I have an Ecowitt GW1100 on order but I am questioning now whether my Ambient sensors will work with it. I will give your method a shot later today. Thanks for the response.
Yes if I can get that to play nice it definitely would. I ordered a GW1100 gateway also but after reading up, I am not sure whether my Ambient Weather sensors will work with it. I will have to see about that one. I will probably try @snell method later today and see of that does what I need. Thanks again for your help....
@snell I was setting up the gateway virtual device. Per your instructions, I need to input the "Device Network ID" to contain the MAC address but I don't see that option? Also I see where the data is being received by the Hubitat but it does not look like the device driver is picking it up (See log)
@snell I figured out that the device id is on the Hubitat screen for creating the device. After figuring that out I went in and recreated the virtual device. Now I am receiving the following error.
Hmm... Can you set the driver to Trace logging and send me a PM with what the log shows when it next gets a message from the gateway? It looks like it is having trouble parsing the message... Like it was not formatted correctly.
Problem solved! The Ambient Weather GW-2000 only send out local data in Weatherunderground or AmbientWeather.net protocol for local use. The Ecowitt GW1000 drivers will not work with that format. The header comes in but the body of the data wonโt ever come into Hubitat for some reason. I received my Ecowitt GW1100 today ($30 on Amazon) and it works perfect. The best $30 I have ever spent. I was surprised at how small it is just a couple of inches long and an inch wide, tiny. It works great and far cheaper than the time the @snell , @sburke781 and I spent trying to get the WS-2000 to work.
All AmbientWeather Devices automatically attach except the interior temp and humidity (WF32B). No problem because the new GW1100 has a built in T&H sensor.
The GW1100 is an updated version of the GW1000. It has a built in web server so you can configure it with a browser instead of needing the app.
My sincere appreciation goes out to @snell and @sburke781 for their diligent assistance in helping me get this working!
It is a sweet little device.....I like the built-in web server. I was amazed at how small it was. I was expecting a larger box.. Thanks again for your help!
@snell Everything is working perfectly! Thanks for your app and all of the assistance in getting it up and going. A couple of quick questions.
Does your app report the values/attributes from remote sensors on the GW1100 like lightning or soil moisture?
I want to use the rainrate value as a trigger for a rule. I noticed that it is being returned as a "null" value when it is not raining. Unfortunately I can't find a way to evaluate the "null" value in the trigger only a zero which doesn't evaluate the same. Is there a reason that when it is not raining that the value is not zero instead of null? See attached...
Glad it is mostly working... Barring the rainrate weirdness. As for the answers:
Yes! I have both a lightning sensor and a soil sensor, and they are both reported. As well as a PM2.5, Leak Sensor, and a couple others.
It sounds like it has not received a value. Drivers cannot dynamically create attributes so I have to list them all. If no value has been received for that attribute it will generally NOT show up in the Current States list for the device in question BUT it will still be available in Rules or other apps (and will have a value of null). One thing to check for is whether there is a State Variable "rainratein" listed for the device. That is the actual field reported by the GW and I pop it as a state variable although those are not usable in apps. My GW does not appear to report it (it may be an Ambient API only item). Alternatives to it could be eventRain or hourlyRain (I see those listed on my device).
@automation - I'm assuming you have transitioned to the updated drivers I re-released. Has it rained since you made that transition? It has rained recently for me and I can see a rain rate of zero when I try to use that state variable in a trigger:
I expect it is going to be more in my court to sort out with the EcoWitt driver than something for @snell to solve in the Ambient Weather app / driver, though all help is welcome
I am currently using @snell driver that takes data directly from the Ecowitt gateway. Now that I have the issues resolved with the AmbientWeather vs Ecowitt issues, I may re-install your driver and take it for a spin....
well, I'm half way there....just looking for the folks that know the HE "back end" stuff and Ecowitt's track record (as a development team) and the simplicity of the API to weigh in on the likelihood of the GW2000 API being the same as the GW1000 which they're familiar with. Ecowitt says it is.
To me it looks like a less-fancy WeatherFlow Tempest.
I used to back a lot of projects on Kickstarter... almost never anymore and definitely not one outside the US. Been burned almost every time a project was overseas for me.
But good luck and let us know how it works if you get one!