GW1200 driver?

54 views
Skip to first unread message

dana....@gmail.com

unread,
Jan 7, 2026, 8:52:48 PM (3 days ago) Jan 7
to weewx-user
I have a GW1200 gateway I would like to interface with weewx to collect data from an Ambient WS-2000 weather station.  I am not sure what driver to use so I thought I'd check here. I've seen references to the interceptor, a GW1000 driver, and a new driver being developed which talks to the GW1200 itself.

I am running Ubuntu 24.04.2 LTS on an intel mini-PC. I installed weewx 5.2 using the instructions at  https://weewx.com/docs/5.2/quickstarts/debian/. I got it working with the simulator, then with the WeatherflowUDP extension/driver.

The Interceptor seemed like the way to go for my GW1200 and I found it at https://github.com/matthewwall/weewx-interceptor. I followed the instructions as best I could. I wanted the "sniff" mode and the doc told me to install  pypcap module. I got this error when I attempted to use "pip3":

/usr/share/weewx/user# pip3 install pypcap
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.


I tried "apt install python3-pypcap" and that did not work. I tried "apt-get install libpcap-dev" which installed something, not sure it it satisfied the dependencies of the interceptor module, probably not.

I downloaded the Interceptor modules with "wget -O weewx-interceptor.zip" - that worked. I added it as an extension using "weectl extension install weewx-interceptor.zip".  That seemed to work. I edited the weewx.conf file to set the station type to Interceptor and added a basic Interceptor stanza:

[Interceptor]
    driver = user.interceptor
    device_type = ecowitt-client

I restarted weewx and not unsurprisingly it didn't work (console message below).

I am not sure I have the right driver, and am pretty sure I didn't supply the prerequisite module.  Any pointing the right direction would be appreciated.

  Dana

17:45:02 zbox weewxd[75068]: INFO __main__: Initializing weewxd version 5.2.0
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Command line: /usr/share/weewx/weewxd.py /etc/weewx/weewx.conf
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Using Python: 3.12.3 (main, Nov  6 2025, 13:44:16) [GCC 13.3.0]
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Located at:   /usr/bin/python3
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Platform:     Linux-6.8.0-90-generic-x86_64-with-glibc2.39
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Locale:       'en_US.UTF-8'
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Entry path:   /usr/share/weewx/weewxd.py
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: WEEWX_ROOT:   /etc/weewx
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Config file:  /etc/weewx/weewx.conf
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: User module:  /etc/weewx/bin/user
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Debug:        0
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: User:         weewx
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Group:        weewx
Jan 07 17:45:02 zbox weewxd[75068]: INFO __main__: Groups:       weewx
Jan 07 17:45:02 zbox weewxd[75068]: INFO weewx.engine: Loading station type Interceptor (user.interceptor)
Jan 07 17:45:02 zbox weewxd[75068]: INFO user.interceptor: driver version is 0.60
Jan 07 17:45:02 zbox weewxd[75068]: INFO user.interceptor: device type: ecowitt-client
Jan 07 17:45:02 zbox weewxd[75068]: INFO user.interceptor: hardware name: weatherstation via interceptor
Jan 07 17:45:02 zbox weewxd[75068]: INFO user.interceptor: mode is listen
Jan 07 17:45:02 zbox weewxd[75068]: INFO user.interceptor: listen on :80
Jan 07 17:45:02 zbox weewxd[75068]: ERROR weewx.engine: Import of driver failed: [Errno 13] Permission denied (<class 'PermissionError'>)
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****  Traceback (most recent call last):
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/usr/share/weewx/weewx/engine.py", line 115, in setupStation
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      self.console = loader_function(config_dict, self)
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/etc/weewx/bin/user/interceptor.py", line 316, in loader
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      return InterceptorDriver(**config_dict[DRIVER_NAME])
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/etc/weewx/bin/user/interceptor.py", line 2529, in __init__
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      self._device = self.DEVICE_TYPES.get(self._device_type)(**stn_dict)
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/etc/weewx/bin/user/interceptor.py", line 2298, in __init__
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      super(EcowittClient, self).__init__(
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/etc/weewx/bin/user/interceptor.py", line 430, in __init__
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      self._server = Consumer.TCPServer(address, port, handler)
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/etc/weewx/bin/user/interceptor.py", line 585, in __init__
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      TCPServer.__init__(self, (address, int(port)), handler)
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/usr/lib/python3.12/socketserver.py", line 457, in __init__
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      self.server_bind()
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****    File "/usr/lib/python3.12/socketserver.py", line 473, in server_bind
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****      self.socket.bind(self.server_address)
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL weewx.engine:     ****  PermissionError: [Errno 13] Permission denied
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL __main__: Unable to load driver: [Errno 13] Permission denied
Jan 07 17:45:02 zbox weewxd[75068]: CRITICAL __main__:     ****  Exiting...

Vince Skahan

unread,
Jan 7, 2026, 9:44:59 PM (3 days ago) Jan 7
to weewx-user
Did you try the old original gw1000 driver and verify that it did or did not work ?

There are lots of permission denied links in the wiki and faq and user docs here if you poke around more if you have to battle interceptor….

Another way is to have your gateway publish to MQTT and use mqttsubscribe as a driver, but you’d need to set up a MQTT broker on your network which isn’t hard but it is more moving parts end to end,

Dana Roode

unread,
Jan 7, 2026, 10:25:21 PM (3 days ago) Jan 7
to weewx...@googlegroups.com
No, I didn't try the old gw1000 driver, I don't know where that is. Do you have a link?

Dana

--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/KNuP_lU-i2s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/weewx-user/215f675a-f616-41d8-9967-7785936b5a1cn%40googlegroups.com.

Vince Skahan

unread,
Jan 7, 2026, 10:27:52 PM (3 days ago) Jan 7
to weewx...@googlegroups.com
In the wiki.

-----  vince...@gmail.com ----


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 visit https://groups.google.com/d/msgid/weewx-user/CAEhu_sxR%3DM8niHzO%3DkLq7D2m5gm%3DCGZD2-aKvRxGeHZEk0UENA%40mail.gmail.com.

Dana Roode

unread,
Jan 7, 2026, 11:35:06 PM (3 days ago) Jan 7
to weewx...@googlegroups.com
Thanks Vince. I was aware of weewx docs (https://weewx.com/docs/5.2/), and the user and hardware guides within. No mention of gw1000 that I could find (might be there somewhere). I did not know about "the wiki" and googling "weewx wiki" wasn't too helpful. I did eventually find a wiki link in one of the documents, https://github.com/weewx/weewx/wiki.  I am sharing this in case there are others out there as clueless as me. 

Within the wiki the first reference to gw1000 was a how-to guide for the interceptor, which I had tried before unsuccessfully.

The next reference was to what I believe you referred to as the "old GW1000" driver. I followed the instructions at https://github.com/weewx-contrib/weewx-gw1000 and that worked like a champ. They had been updated for weewx version 5.

I appreciate the help.

  Dana

Vince Skahan

unread,
Jan 7, 2026, 11:47:00 PM (3 days ago) Jan 7
to weewx...@googlegroups.com
A google query of 'weewx'  returns the top hit which points you to weewx.com

There is a link there 'docs' pointing you to the docs for all versions.

Selecting 5.2 points you to this page

That gets you to the first page to start reading, which includes a section mentioning all the guides. It also has a Support section which mentions the FAQ and Wiki and has links to those.

I cannot explain why your queries came up empty, but glad you got it working...

-----  vince...@gmail.com ----


Reply all
Reply to author
Forward
0 new messages