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 pypcaperror: 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... -- 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 [email protected]. To view this discussion visit https://groups.google.com/d/msgid/weewx-user/1f7cde3d-5a95-44eb-95a7-268f72fc4796n%40googlegroups.com.
