Request for assistance - GW2000/WS90

307 views
Skip to first unread message

gjr80

unread,
Apr 20, 2022, 12:58:10 AM4/20/22
to weewx-user
I'm presently working on adding support for the GW2000/WS90 to the GW1000 driver. Unfortunately the current release (1.6.4) of the Ecowitt gateway API documentation has a number of errors relating to the GW2000/WS90. Whilst I have been able to work around most of these errors, I am uncertain if the revised driver will work robustly across the plethora of Ecowitt setups I know are out there (in particular sites that have the WS90 and another Ecowitt 'traditional' rain gauge). I also have also observed some WS2000 behaviour that does no match the API documentation or indeed any of the previous Ecowitt gateway devices and I am not sure if this is just my device misbehaving or something wider.

I would like to ask the Ecowitt GW2000/WS90 users for some help in running a small python script to interrogate the GW2000. The script sends a number of API commands to Ecowitt gateway devices on your network and the GW2000 and displays the raw data results on screen. It is the script output to the screen that I am after. The script has no WeeWX dependencies but it does require the python six module (this will already be installed if you are running WeeWX v4.0.0 or later). The script can be downloaded and saved anywhere (provided you alter the PYTHONPATH setting appropriately) or for convenience I suggest users download the script to /home/weewx/bin/user or /usr/share/weewx/user. There should be no sensitive data in the required output other than the local (not public) IP addresses of your Ecowitt gateway devices, but please check to satisfy yourself before sending/posting. If sending such info to me or posting here then please contact me via private message and we will see if we can work something out.

If you are a GW2000/WS90 user and would be willing to help out the following instructions should be followed:

1. download the script (change /home/weewx/bin/user to /usr/share/weewx/user if you have a WeeWX package install):


2. obtain the IP address of your GW2000

3. run the script(change /home/weewx/bin/user to /usr/share/weewx/user if you have a WeeWX package install):

$ PYTHONPATH=/home/weewx/bin python3 --run --ip-address=IP_ADDRESS

where IP_ADDRESS is the IP address of your GW2000. You may need to substitute python2 for python3 if you are running WeeWX under python2. You should see some output to screen similar to:

gary@bullseye30:~$ PYTHONPATH=/home/weewx/bin python3 -m user.api_data --run --ip-address=192.168.2.38
CMD_BROADCAST (12):
    Sending broadcast packet 'FF FF 12 03 15' to '255.255.255.255:46000'
    Received broadcast response 'FF FF 12 00 27 E8 68 E7 87 1C 5A C0 A8 02 23 AF C8 17 47 57 31 31 30 30 43 2D 57 49 46 49 31 43 35 41 20 56 32 2E 31 2E 33 D9'
    Received broadcast response 'FF FF 12 00 26 DC 4F 22 58 B7 FF C0 A8 02 24 AF C8 16 47 57 31 30 30 30 2D 57 49 46 49 42 37 46 46 20 56 31 2E 36 2E 38 DF'
    Received broadcast response 'FF FF 12 00 26 50 02 91 E3 FD 32 C0 A8 02 25 AF C8 16 47 57 31 30 30 30 2D 57 49 46 49 46 44 33 32 20 56 31 2E 36 2E 38 64'
    Discovered device: {'mac': 'E8:68:E7:87:1C:5A', 'ip_address': '192.168.2.35', 'port': 45000, 'ssid': 'GW1100C-WIFI1C5A V2.1.3'}
    Discovered device: {'mac': 'DC:4F:22:58:B7:FF', 'ip_address': '192.168.2.36', 'port': 45000, 'ssid': 'GW1000-WIFIB7FF V1.6.8'}
    Discovered device: {'mac': '50:02:91:E3:FD:32', 'ip_address': '192.168.2.37', 'port': 45000, 'ssid': 'GW1000-WIFIFD32 V1.6.8'}
CMD_READ_FIRMWARE_VERSION (50):
     sending: FF FF 50 03 53
    received: FF FF 50 12 0E 47 57 32 30 30 30 43 5F 56 32 2E 31 2E 34 BB

If you could capture this output as text (no images please) and either send to me privately or post here that would be appreciated.

Once finished you can delete api_data.py from the directory where it was saved.

thanks,
Gary

Jon Fear

unread,
Apr 20, 2022, 2:51:55 AM4/20/22
to weewx-user
Gary,

jon@weewx:~$ sudo PYTHONPATH=/usr/share/weewx/user python3 -m api_data --run --i                                              p-address=192.168.10.16

CMD_BROADCAST (12):
    Sending broadcast packet 'FF FF 12 03 15' to '255.255.255.255:46000'
    Received broadcast response 'FF FF 12 00 27 E8 68 E7 12 8B 0F C0 A8 0A 10 AF                                               C8 17 47 57 32 30 30 30 41 2D 57 49 46 49 38 42 30 46 20 56 32 2E 31 2E 34 82'
    Received broadcast response 'FF FF 12 00 27 E8 68 E7 12 8B 0F C0 A8 0A 10 AF                                               C8 17 47 57 32 30 30 30 41 2D 57 49 46 49 38 42 30 46 20 56 32 2E 31 2E 34 82'
    Discovered device: {'mac': 'E8:68:E7:12:8B:0F', 'ip_address': '192.168.10.16                                              ', 'port': 45000, 'ssid': 'GW2000A-WIFI8B0F V2.1.4'}

CMD_READ_FIRMWARE_VERSION (50):
     sending: FF FF 50 03 53
    received: FF FF 50 12 0E 47 57 32 30 30 30 41 5F 56 32 2E 31 2E 34 B9
Device appears to be a 'GW2000'
CMD_READ_SSSS (30):
     sending: FF FF 30 03 33
    received: FF FF 30 0B 01 01 62 5F BB 36 27 01 17
CMD_READ_SENSOR_ID_NEW (3C):
     sending: FF FF 3C 03 3F
    received: FF FF 3C 01 5B 00 FF FF FF FF FF 00 01 FF FF FF FF FF 00 02 00 03                                               00 39 FF 00 03 00 00 C6 AA 8D 03 04 FF FF FF FF 00 00 05 00 00 00 35 00 03 06 00                                               00 00 C1 00 04 07 00 00 00 29 00 04 08 FF FF FF FF 00 00 09 FF FF FF FF 00 00 0                                              A FF FF FF FF 00 00 0B FF FF FF FF 00 00 0C FF FF FF FF 00 00 0D FF FF FF FF 00                                               00 0E FF FF FF FF 1F 00 0F FF FF FF FF 1F 00 10 FF FF FF FF 1F 00 11 FF FF FF FF                                               1F 00 12 FF FF FF FF 1F 00 13 FF FF FF FF 1F 00 14 FF FF FF FF 1F 00 15 FF FF F                                              F FF 1F 00 16 00 00 00 A1 05 04 17 FF FF FF FF 0F 00 18 FF FF FF FF 0F 00 19 FF                                               FF FF FF 0F 00 1A 00 01 1E 83 05 03 1B FF FF FF FF 0F 00 1C FF FF FF FF 0F 00 1D                                               FF FF FF FF 0F 00 1E FF FF FF FF 0F 00 1F FF FF FF FF FF 00 20 FF FF FF FF FF 0                                              0 21 FF FF FF FF FF 00 22 FF FF FF FF FF 00 23 FF FF FF FF FF 00 24 FF FF FF FF                                               FF 00 25 FF FF FF FF FF 00 26 FF FF FF FF FF 00 27 FF FF FF FF 0F 00 28 FF FF FF                                               FF FF 00 29 FF FF FF FF FF 00 2A FF FF FF FF FF 00 2B FF FF FF FF FF 00 2C FF F                                              F FF FF FF 00 2D FF FF FF FF FF 00 2E FF FF FF FF FF 00 2F FF FF FF FF FF 00 30                                               00 42 94 81 A4 04 A2
CMD_READ_RAINDATA (34):
     sending: FF FF 34 03 37
    received: FF FF 34 17 00 00 00 00 00 00 00 00 00 00 00 0B 00 00 00 0C 00 00                                               00 0C 6E
CMD_READ_RSTRAIN_TIME (55):
     sending: FF FF 55 03 58
    received: FF FF 55 04 00 59
CMD_READ_RAIN (57):
     sending: FF FF 57 03 5A
    received: FF FF 57 00 54 0E 00 00 10 00 00 00 00 11 00 00 00 0B 12 00 00 00                                               0C 13 00 00 00 0C 0D 00 00 0F 00 64 80 00 00 83 00 00 00 00 84 00 00 00 0F 85 00                                               00 00 0F 86 00 00 00 0F 81 00 0C 87 00 64 00 64 00 64 00 64 00 64 00 64 00 64 0                                              0 64 00 64 00 64 88 00 00 00 E5
jon@weewx:~$


Hope this helps

Jon

Stephen Hocking

unread,
Apr 20, 2022, 6:32:05 AM4/20/22
to weewx...@googlegroups.com
Hi Gary,

I get

pi@weather:~ $ PYTHONPATH=/usr/share/weewx/ python3 -m user.api_data --run --ip-address=202.12.111.10

CMD_BROADCAST (12):

    Sending broadcast packet 'FF FF 12 03 15' to '255.255.255.255:46000'

    Received broadcast response 'FF FF 12 00 27 E8 68 E7 12 9D 87 CA 0C 6F 0A AF C8 17 47 57 32 30 30 30 43 2D 57 49 46 49 39 44 38 37 20 56 32 2E 31 2E 34 D7'

    Discovered device: {'mac': 'E8:68:E7:12:9D:87', 'ip_address': '202.12.111.10', 'port': 45000, 'ssid': 'GW2000C-WIFI9D87 V2.1.4'}

CMD_READ_FIRMWARE_VERSION (50):

     sending: FF FF 50 03 53

    received: FF FF 50 12 0E 47 57 32 30 30 30 43 5F 56 32 2E 31 2E 34 BB

Device appears to be a 'GW2000'

CMD_READ_SSSS (30):

     sending: FF FF 30 03 33

    received: FF FF 30 0B 00 01 62 60 6D 7D 27 01 10

CMD_READ_SENSOR_ID_NEW (3C):

     sending: FF FF 3C 03 3F

    received: FF FF 3C 01 5B 00 FF FF FF FF FF 00 01 FF FF FF FF FF 00 02 00 06 00 2A 97 04 03 FF FF FF FF 1F 00 04 FF FF FF FF 00 00 05 FF FF FF FF 00 00 06 FF FF FF FF 00 00 07 FF FF FF FF 00 00 08 FF FF FF FF 00 00 09 FF FF FF FF 00 00 0A FF FF FF FF 00 00 0B FF FF FF FF 00 00 0C FF FF FF FF 00 00 0D FF FF FF FF 00 00 0E FF FF FF FF 1F 00 0F FF FF FF FF 1F 00 10 FF FF FF FF 1F 00 11 FF FF FF FF 1F 00 12 FF FF FF FF 1F 00 13 FF FF FF FF 1F 00 14 FF FF FF FF 1F 00 15 FF FF FF FF 1F 00 16 FF FF FF FF 0F 00 17 FF FF FF FF 0F 00 18 FF FF FF FF 0F 00 19 FF FF FF FF 0F 00 1A FF FF FF FF 0F 00 1B FF FF FF FF 0F 00 1C FF FF FF FF 0F 00 1D FF FF FF FF 0F 00 1E FF FF FF FF 0F 00 1F FF FF FF FF FF 00 20 FF FF FF FF FF 00 21 FF FF FF FF FF 00 22 FF FF FF FF FF 00 23 FF FF FF FF FF 00 24 FF FF FF FF FF 00 25 FF FF FF FF FF 00 26 FF FF FF FF FF 00 27 FF FF FF FF 0F 00 28 FF FF FF FF FF 00 29 FF FF FF FF FF 00 2A FF FF FF FF FF 00 2B FF FF FF FF FF 00 2C FF FF FF FF FF 00 2D FF FF FF FF FF 00 2E FF FF FF FF FF 00 2F FF FF FF FF FF 00 30 00 44 94 81 A0 03 D6

CMD_READ_RAINDATA (34):

     sending: FF FF 34 03 37

    received: FF FF 34 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4B

CMD_READ_RSTRAIN_TIME (55):

     sending: FF FF 55 03 58

    received: FF FF 55 04 00 59

CMD_READ_RAIN (57):

     sending: FF FF 57 03 5A

    received: FF FF 57 00 37 80 00 00 83 00 00 00 0D 84 00 00 02 3E 85 00 00 02 3E 86 00 00 02 3E 81 02 3E 87 00 3A 00 32 00 32 00 32 00 32 00 64 00 64 00 64 00 64 00 64 88 00 00 00 B3


--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/f54d317f-2e0d-4a61-ab1a-3da5d7025d7an%40googlegroups.com.


--
  "I and the public know
  what all schoolchildren learn
  Those to whom evil is done
  Do evil in return"		W.H. Auden, "September 1, 1939"

gjr80

unread,
Apr 21, 2022, 5:09:19 AM4/21/22
to weewx-user
Thanks Jon and Stephen, exactly what I was looking for. One question I did forget to add in my original post was how is your GW2000 connected; via Ethernet (cable), WiFi or both? Also Jon, would you by chance have a second Ecowitt (non-WS90) rain gauge on your system?

Gary

Rainer Lang

unread,
Apr 21, 2022, 5:26:44 AM4/21/22
to gjr80, weewx-user
Hi Gary,
I have a WH40 and WS90 connected to my GW2000.
The 0x57 command returns
FF-FF-57-00-54-0E-00-00-10-00-00-00-00-11-00-00-00-00-12-00-00-02-F2-13-00-00-0B-93-0D-00-00-0F-00-64-80-00-00-83-00-00-00-00-84-00-00-00-00-85-00-00-01-DE-86-00-00-0B-F2-81-00-00-87-00-64-00-64-00-64-00-64-00-64-00-64-00-64-00-64-00-64-00-64-88-00-00-00-F7

which contains the correct data (monthly and yearly totals only as no rainfall recently - coming Sunday some forecast) for both rain gauges,
traditional 0E, 10 thru 13, 0D,0F and piezo 80-88

symptomatically the 82 marker is missing and the 81 marker is/seems to be sorted out of sequence between 86 and 87.

Looks the others show the same pattern.
I have already started a request with Ecowitt to get this behaviour of the GW2000 explained.
Waiting for response.

MY GW2000 is also connected via eth0 and wlan0, weewx via  wlan0 (for some time also via eth0), now CumulusMX via eth0.
The network interfaces show some messy behaviour when more than one application connects (e.g. weewx and WSView+ or WebUI) via the same interface (eth0, wlan0).
This often results in the whole network access (in/out) freezing. Only reboot helps.
Issue also reported to Ecowitt and still with their technicians.

cheers
Rainer

On 21.04.2022 11:09, gjr80 wrote:
Thanks Jon and Stephen, exactly what I was looking for. One question I did forget to add in my original post was how is your GW2000 connected; via Ethernet (cable), WiFi or both? Also Jon, would you by chance have a second Ecowitt (non-WS90) rain gauge on your system?

Gary
--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

Stephen Hocking

unread,
Apr 21, 2022, 6:27:28 AM4/21/22
to weewx...@googlegroups.com
Hi Gary,

Mine is connected via ethernet only. I should also add that I've been messing with the gain over various rainfall rates, as found in the rain totals webpage for the unit as so:

image.png

On Thu, 21 Apr 2022 at 19:09, gjr80 <gjrod...@gmail.com> wrote:
Thanks Jon and Stephen, exactly what I was looking for. One question I did forget to add in my original post was how is your GW2000 connected; via Ethernet (cable), WiFi or both? Also Jon, would you by chance have a second Ecowitt (non-WS90) rain gauge on your system?

Gary

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

gjr80

unread,
Apr 21, 2022, 6:53:04 AM4/21/22
to weewx-user
On Thursday, 21 April 2022 at 19:26:44 UTC+10 lang....@googlemail.com wrote:
Hi Gary,
I have a WH40 and WS90 connected to my GW2000.
The 0x57 command returns
FF-FF-57-00-54-0E-00-00-10-00-00-00-00-11-00-00-00-00-12-00-00-02-F2-13-00-00-0B-93-0D-00-00-0F-00-64-80-00-00-83-00-00-00-00-84-00-00-00-00-85-00-00-01-DE-86-00-00-0B-F2-81-00-00-87-00-64-00-64-00-64-00-64-00-64-00-64-00-64-00-64-00-64-00-64-88-00-00-00-F7

which contains the correct data (monthly and yearly totals only as no rainfall recently - coming Sunday some forecast) for both rain gauges,
traditional 0E, 10 thru 13, 0D,0F and piezo 80-88

symptomatically the 82 marker is missing and the 81 marker is/seems to be sorted out of sequence between 86 and 87.

Looks the others show the same pattern.
I have already started a request with Ecowitt to get this behaviour of the GW2000 explained.
Waiting for response.

Thank you, that is helpful. Unfortunately the API documentation is lacking quite a bit of detail re CMD_READ_RAIN (0x57) so coming up with reliable parsing based on the API documentation only is somewhat difficult. 
 
MY GW2000 is also connected via eth0 and wlan0, weewx via  wlan0 (for some time also via eth0), now CumulusMX via eth0.
The network interfaces show some messy behaviour when more than one application connects (e.g. weewx and WSView+ or WebUI) via the same interface (eth0, wlan0).
This often results in the whole network access (in/out) freezing. Only reboot helps.
Issue also reported to Ecowitt and still with their technicians.

I'm not surprised. I'm seeing more fundamental problems where the GW2000 does not respond to CMD_BROADCAST when connected via wifi but does respond when connected via ethernet.

Gary

gjr80

unread,
Apr 21, 2022, 7:06:20 AM4/21/22
to weewx-user
Thanks Stephen. It seems discovery via broadcast works reliably on ethernet but I am not sure that is the case via wifi.

Gary

Jon Fear

unread,
Apr 21, 2022, 9:51:22 AM4/21/22
to weewx-user
Hi Gary, 

Ethernet cable. So much easier than wireless! No drop outs...

BW

Jon

Jon Fear

unread,
Apr 21, 2022, 9:55:42 AM4/21/22
to weewx-user
Sorry Gary,

Yes I do have the WH40 from my WS80 set up. I retained it to do debugging and have the ability to calibrate the Piezo RG...

Jon

Stephen Hocking

unread,
Apr 28, 2022, 7:25:15 PM4/28/22
to weewx...@googlegroups.com
Hi Gary,

My WH40 has turned up, and is reporting along with the piezo rain  sensor on my WittBoy. We're expecting a fair amount of rain this weekend, so it'll be interesting to see what each one reports.

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

gjr80

unread,
Apr 28, 2022, 9:28:23 PM4/28/22
to weewx-user
I hope to release v0.5.0 of the GW1000 driver (with GW2000/WS90 support) tonight, just need to do a few final checks.

Gary

Graham Eddy

unread,
Apr 29, 2022, 1:23:28 AM4/29/22
to WeeWX User
anyone in australia know how i can order a GW2000 from here at present?
i want the ethernet port and sane power supply

Stephen Hocking

unread,
Apr 29, 2022, 4:02:08 AM4/29/22
to weewx...@googlegroups.com
I got mine through the kickstarter, but a quick google says that Ecowitt ships to Oz.

On Fri, 29 Apr 2022 at 15:23, Graham Eddy <g...@geddy.au> wrote:
anyone in australia know how i can order a GW2000 from here at present?
i want the ethernet port and sane power supply

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.

Rainer Lang

unread,
Apr 29, 2022, 4:09:51 AM4/29/22
to Graham Eddy, WeeWX User
You can only buy it from Ecowitt (ecowitt.com) so far.
If you want the console/gateway only, you will have to send a mail to
sup...@ecowitt.com.
However, there are delays right now as they have run out of stock with
their kickstarter campaign
for the GW2001 station (GW2000 + WS90 outdoor array).
That's why you don't find prices for the GW2000 on the ecowitt.net web
site yet.

The LAN port is great and the power connection is less bulky than with
the GW1x00 gateways.
Design is always a matter of taste, but you can fix it to wall. It comes
with a wall mount.
Reply all
Reply to author
Forward
0 new messages