Gary, Thank you very much for the quick reply. I will stand by for the new release.
Thanks, Chris On Thursday, February 1, 2024 at 1:52:59 AM UTC-7 gjr80 wrote: > You have almost certainly encountered the bug mentioned in this post > <https://groups.google.com/g/weewx-user/c/fa2y3wTr-AE/m/Lat7dEQPAAAJ>. > The bug does not bite (ie potentially delete system files) unless you > uninstall the extension using weectl extension - so my strong advice to > you is do not attempt to uninstall the extension. A manual uninstall (or > install) will be fine. But I would further suggest waiting a few days for > v5.0.1 which fixes this bug, its release should not be too far off. > > Gary > > On Thursday 1 February 2024 at 17:35:01 UTC+10 [email protected] wrote: > >> @Tomasz, you stated above that ' I installed both interceptor and HP1000 >> drivers by weectl. " Can you provide some insight into how you did this? I >> have a fresh install of 5.0.1 and when I run 'weectl extension install >> weewx-interceptor.zip (fresh download) I get an error stack below. I am >> posting here just in case I am missing something obvious, if not I will >> start a new thread. >> >> Thanks, >> Chris >> >> :~$ weectl extension install weewx-interceptor.zip >> Using configuration file /etc/weewx/weewx.conf >> Install extension 'weewx-interceptor.zip' (y/n)? y >> Extracting from zip archive weewx-interceptor.zip >> >> Traceback (most recent call last): >> File "/usr/share/weewx/weectl.py", line 74, in <module> >> main() >> File "/usr/share/weewx/weectl.py", line 66, in main >> namespace.func(namespace) >> File "/usr/share/weewx/weectllib/__init__.py", line 121, in dispatch >> namespace.action_func(config_dict, namespace) >> File "/usr/share/weewx/weectllib/extension_cmd.py", line 116, in >> install_extension >> ext.install_extension(namespace.source, no_confirm=namespace.yes) >> File "/usr/share/weewx/weecfg/extension.py", line 138, in >> install_extension >> extension_name = self._install_from_file(extension_path, filetype) >> File "/usr/share/weewx/weecfg/extension.py", line 168, in >> _install_from_file >> extension_name = self.install_from_dir(extension_dir) >> File "/usr/share/weewx/weecfg/extension.py", line 185, in >> install_from_dir >> self._install_files(installer['files'], extension_dir) >> File "/usr/share/weewx/weecfg/extension.py", line 269, in _install_files >> shutil.copy(source_path, destination_path) >> File "/usr/lib/python3.8/shutil.py", line 418, in copy >> copyfile(src, dst, follow_symlinks=follow_symlinks) >> File "/usr/lib/python3.8/shutil.py", line 264, in copyfile >> with open(src, 'rb') as fsrc, open(dst, 'wb') as fdst: >> FileNotFoundError: [Errno 2] No such file or directory: >> '/bin/user/interceptor.py' >> >> On Thursday, January 25, 2024 at 1:27:34 AM UTC-7 Tomasz Lewicki wrote: >> >>> Mystery solved. >>> >>> But answering to vince question, my system is rather typical - Raspbian >>> on Raspberry Pi, only WLAN interface is active. Weewx was unwillingly >>> updated from 4.10.2 to 5.0.0. I checked all point of failure: Python >>> version, permissions (thank you Gary!), network traffic. As I wrote before, >>> rtupdate.wunderground.com was hijacked - local DNS redirected it to >>> Weewx. So I deleted this bypass, allowing console to send data to real WU >>> server. But still I couldn't see any traffic on my router. Total silence. >>> It was abnormal (and it explains why PCAP file captured by Tshark was empty >>> on port 80). But I didn't check WU settings in WiFi console. Station ID was >>> empty, password was obfuscated by asterisks. I don't use WU website at all, >>> I just needed credentials for conversation between console and Weewx. I >>> entered ID and password - and then console started send data to real WU. So >>> I redirected network traffic on my DNS again, and Weewx started to receive >>> data from WiFi console via interceptor driver :) >>> >>> Thank you to everyone who patiently read my writings and tried to help. >>> >>> środa, 24 stycznia 2024 o 22:54:46 UTC+1 vince napisał(a): >>> >>>> Difficult to answer with no info from you on exactly 'what' command you >>>> ran for wireshark and whether your listening computer is wifi, ethernet, >>>> or >>>> both. What kind of computer are you running on ? What os ? What version >>>> ? Which interfaces ? What was your 'exact' wireshark command ? >>>> >>>> But I see nothing basically in that 6-second pcap. If running a >>>> sniffer on your computer sees no traffic being redirected from the >>>> station, >>>> then there is nothing for interceptor to intercept on the weewx computer. >>>> >>>> Again, when you say "*But I hijacked DNS on my router*" that (to me) >>>> does not cause any traffic from your station to wunderground to be >>>> redirected to your weewx system unless I'm not understanding what you're >>>> saying. Perhaps you should tell everybody what your system config is so >>>> those who do interceptor can try to help more. >>>> >>>> On Wednesday, January 24, 2024 at 1:38:25 PM UTC-8 Tomasz Lewicki wrote: >>>> >>>>> I attach PCAP file with packets captured for 120 seconds. TCP/80 only. >>>>> Weewx was shut down. No traffic on this port until I manually have done >>>>> the >>>>> operation described in one of me previous posts (browser query): >>>>> https://groups.google.com/g/weewx-user/c/O8DTjzeeQcg/m/psrDaMHoAAAJ >>>>> >>>>> środa, 24 stycznia 2024 o 22:22:37 UTC+1 vince napisał(a): >>>>> >>>>>> Stop weewx. Just run the packet capture and post the .pcap file so >>>>>> others can take a look please. Be sure to capture only tcp/80. >>>>>> Compress >>>>>> the pcap file if it's large or post it someplace online where others can >>>>>> download it. >>>>>> >>>>>> The gui version of wireshark is much easier to understand. >>>>>> >>>>>> On Wednesday, January 24, 2024 at 1:16:50 PM UTC-8 Tomasz Lewicki >>>>>> wrote: >>>>>> >>>>>>> My mistake. These packets were captured when Weewx was running with >>>>>>> HP1000 driver. When I changed the driver to interceptor, I didn't >>>>>>> captured >>>>>>> *any* packets from WiFi console. I don't understand it... >>>>>>> środa, 24 stycznia 2024 o 21:06:53 UTC+1 vince napisał(a): >>>>>>> >>>>>>>> You need something to send traffic to intercept. Run wireshark on >>>>>>>> your weewx computer and listen on port 80 and see if your computer is >>>>>>>> hearing anything (and what). If it's http the payload should be >>>>>>>> decipherable. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Wednesday, January 24, 2024 at 12:01:31 PM UTC-8 Tomasz Lewicki >>>>>>>> wrote: >>>>>>>> >>>>>>>>> By hardware do you mean WiFi console from my weather station? If >>>>>>>>> yes, it has very simple (almost none) configuration. It sends weather >>>>>>>>> data >>>>>>>>> to WU only. But I hijacked DNS on my router: >>>>>>>>> >>>>>>>>> pi@meteo:~ $ rtupdate.wunderground.com >>>>>>>>> PING rtupdate.wunderground.com (192.168.0.106) 56(84) bytes of >>>>>>>>> data. >>>>>>>>> 64 bytes from rtupdate.wunderground.com (192.168.0.106): >>>>>>>>> icmp_seq=1 ttl=64 time=0.130 ms >>>>>>>>> 64 bytes from rtupdate.wunderground.com (192.168.0.106): >>>>>>>>> icmp_seq=2 ttl=64 time=0.128 ms >>>>>>>>> >>>>>>>>> pi@meteo:~ $ dig rtupdate.wunderground.com >>>>>>>>> >>>>>>>>> ; <<>> DiG 9.11.5-P4-5.1+deb10u9-Raspbian <<>> >>>>>>>>> rtupdate.wunderground.com >>>>>>>>> ;; global options: +cmd >>>>>>>>> ;; Got answer: >>>>>>>>> ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48940 >>>>>>>>> ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, >>>>>>>>> ADDITIONAL: 1 >>>>>>>>> >>>>>>>>> ;; OPT PSEUDOSECTION: >>>>>>>>> ; EDNS: version: 0, flags:; udp: 1232 >>>>>>>>> ;; QUESTION SECTION: >>>>>>>>> ;rtupdate.wunderground.com. IN A >>>>>>>>> >>>>>>>>> ;; ANSWER SECTION: >>>>>>>>> rtupdate.wunderground.com. 0 IN A 192.168.0.106 >>>>>>>>> >>>>>>>>> ;; Query time: 170 msec >>>>>>>>> ;; SERVER: 192.168.0.10#53(192.168.0.10) >>>>>>>>> ;; WHEN: śro sty 24 20:59:32 CET 2024 >>>>>>>>> ;; MSG SIZE rcvd: 70 >>>>>>>>> >>>>>>>>> I even updated console's firmware to the latest available version >>>>>>>>> from Ambient Weather website. In server.ini file I see only this: >>>>>>>>> >>>>>>>>> [Menu] >>>>>>>>> default=www.wunderground.com >>>>>>>>> web=1 >>>>>>>>> web1=www.wunderground.com >>>>>>>>> >>>>>>>>> [www.wunderground.com] >>>>>>>>> Server=rtupdate.wunderground.com >>>>>>>>> ServerType=php >>>>>>>>> ServerPort=80 >>>>>>>>> UploadType=Customize >>>>>>>>> ReadOnly=true >>>>>>>>> środa, 24 stycznia 2024 o 20:48:31 UTC+1 vince napisał(a): >>>>>>>>> >>>>>>>>>> Just a thought, but interceptor is 'listening' on port 80. Don't >>>>>>>>>> you need to configure your hardware to 'send' to port 80 on your >>>>>>>>>> weewx >>>>>>>>>> computer ? >>>>>>>>>> >>>>>>>>>> On Wednesday, January 24, 2024 at 11:39:31 AM UTC-8 Tomasz >>>>>>>>>> Lewicki wrote: >>>>>>>>>> >>>>>>>>>>> Previously I had strange problems with Python but finally I >>>>>>>>>>> realized that I have Python2 and Python3 installed. When I called >>>>>>>>>>> commands >>>>>>>>>>> begining with 'python', v2 was started. But 'sudo >>>>>>>>>>> update-alternatives >>>>>>>>>>> --install /usr/bin/python python /usr/bin/python3 10' has made the >>>>>>>>>>> trick: >>>>>>>>>>> >>>>>>>>>>> pi@meteo:~ $ python --version >>>>>>>>>>> Python 3.7.3 >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> środa, 24 stycznia 2024 o 20:36:46 UTC+1 Tomasz Lewicki >>>>>>>>>>> napisał(a): >>>>>>>>>>> >>>>>>>>>>>> Here it comes: >>>>>>>>>>>> >>>>>>>>>>>> # systemd service configuration file for WeeWX >>>>>>>>>>>> >>>>>>>>>>>> [Unit] >>>>>>>>>>>> Description=WeeWX >>>>>>>>>>>> Documentation=https://weewx.com/docs >>>>>>>>>>>> Requires=time-sync.target >>>>>>>>>>>> After=time-sync.target >>>>>>>>>>>> >>>>>>>>>>>> [Service] >>>>>>>>>>>> ExecStart=weewxd /etc/weewx/weewx.conf >>>>>>>>>>>> StandardOutput=null >>>>>>>>>>>> StandardError=journal+console >>>>>>>>>>>> RuntimeDirectory=weewx >>>>>>>>>>>> RuntimeDirectoryMode=775 >>>>>>>>>>>> User=root >>>>>>>>>>>> Group=root >>>>>>>>>>>> >>>>>>>>>>>> [Install] >>>>>>>>>>>> WantedBy=multi-user.target >>>>>>>>>>>> >>>>>>>>>>>> środa, 24 stycznia 2024 o 20:33:17 UTC+1 vince napisał(a): >>>>>>>>>>>> >>>>>>>>>>>>> Lets see your systemd service file..... >>>>>>>>>>>>> >>>>>>>>>>>>> On Wednesday, January 24, 2024 at 9:46:50 AM UTC-8 Tomasz >>>>>>>>>>>>> Lewicki wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> OK, I changed user and group to root >>>>>>>>>>>>>> in /etc/weewx/systemd/weewx.service, weewx now starts with port >>>>>>>>>>>>>> 80 and >>>>>>>>>>>>>> interceptor driver. But nevermind which option I use - observer >>>>>>>>>>>>>> or >>>>>>>>>>>>>> wu-client - I always get: >>>>>>>>>>>>>> >>>>>>>>>>>>>> weewxd[27966]: DEBUG user.interceptor: empty queue >>>>>>>>>>>>>> >>>>>>>>>>>>>> But I found this wiki article -> >>>>>>>>>>>>>> https://github.com/weewx/weewx/wiki/gw1000-recipe and >>>>>>>>>>>>>> started interceptor driver from command line: >>>>>>>>>>>>>> >>>>>>>>>>>>>> sudo PYTHONPATH=/usr/share/weewx python >>>>>>>>>>>>>> /etc/weewx/bin/user/interceptor.py --port=80 --debug >>>>>>>>>>>>>> --device=observer >>>>>>>>>>>>>> --mode=listen >>>>>>>>>>>>>> >>>>>>>>>>>>>> Then - exactly as this part of article says -> >>>>>>>>>>>>>> https://github.com/weewx/weewx/wiki/gw1000-recipe#verify-that-the-interceptor-can-receive-data >>>>>>>>>>>>>> >>>>>>>>>>>>>> I pasted to browser such query: >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://192.168.0.106/data/report?PASSKEY=XXX&stationtype=GW1000B_V1.5.5&dateutc=2019-12-29+16:27:27&tempinf=67.1&humidityin=39&baromrelin=30.138&baromabsin=30.138&freq=915M&model=GW1000 >>>>>>>>>>>>>> >>>>>>>>>>>>>> And I got an answer in terminal: >>>>>>>>>>>>>> >>>>>>>>>>>>>> raw data: >>>>>>>>>>>>>> PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2019-12-29+16:27:27&tempinf=67.1&humidityin=39&baromrelin=30.138&baromabsin=30.138&freq=915M&model=GW1000 >>>>>>>>>>>>>> raw packet: {'dateTime': 1577636847, 'usUnits': 1} >>>>>>>>>>>>>> mapped packet: {'dateTime': 1577636847, 'usUnits': 1} >>>>>>>>>>>>>> raw data: >>>>>>>>>>>>>> raw packet: {'dateTime': 1706118216, 'usUnits': 1} >>>>>>>>>>>>>> mapped packet: {'dateTime': 1706118216, 'usUnits': 1} >>>>>>>>>>>>>> >>>>>>>>>>>>>> So it seems that driver is working when called explicitly >>>>>>>>>>>>>> from command line. So why I got "empty queue" when started by >>>>>>>>>>>>>> 'sudo >>>>>>>>>>>>>> systemctl start weewx'? >>>>>>>>>>>>>> wtorek, 23 stycznia 2024 o 15:46:08 UTC+1 [email protected] >>>>>>>>>>>>>> napisał(a): >>>>>>>>>>>>>> >>>>>>>>>>>>>>> sudo only issues the command as root. >>>>>>>>>>>>>>> What is in the service file for user and group? >>>>>>>>>>>>>>> That is who weewx is running as. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Monday, January 22, 2024 at 11:43:48 AM UTC-5 Tomasz >>>>>>>>>>>>>>> Lewicki wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I run weewx as root: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> sudo systemctl start weewx >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> If I set higher port (8080), weewx starts but I have empty >>>>>>>>>>>>>>>> queue for interceptor. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> niedziela, 21 stycznia 2024 o 18:49:48 UTC+1 matthew wall >>>>>>>>>>>>>>>> napisał(a): >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On Sunday, January 21, 2024 at 12:23:34 PM UTC-5 Tomasz >>>>>>>>>>>>>>>>> Lewicki wrote: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Jan 21 18:14:17 FR24 weewxd[14285]: INFO weewx.engine: >>>>>>>>>>>>>>>>> Loading station type Interceptor (user.interceptor) >>>>>>>>>>>>>>>>> Jan 21 18:14:17 FR24 weewxd[14285]: INFO user.interceptor: >>>>>>>>>>>>>>>>> driver version is 0.60 >>>>>>>>>>>>>>>>> Jan 21 18:14:17 FR24 weewxd[14285]: INFO user.interceptor: >>>>>>>>>>>>>>>>> device type: observer >>>>>>>>>>>>>>>>> Jan 21 18:14:17 FR24 weewxd[14285]: INFO user.interceptor: >>>>>>>>>>>>>>>>> hardware name: weatherstation via interceptor >>>>>>>>>>>>>>>>> Jan 21 18:14:17 FR24 weewxd[14285]: INFO user.interceptor: >>>>>>>>>>>>>>>>> mode is listen >>>>>>>>>>>>>>>>> Jan 21 18:14:17 FR24 weewxd[14285]: INFO user.interceptor: >>>>>>>>>>>>>>>>> listen on :80 >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> if you listen on port 80, then the process must run as >>>>>>>>>>>>>>>>> root (only root can listen on lower ports). >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> so either run weewxd as root, or configure interceptor >>>>>>>>>>>>>>>>> (and the station) to communicate on a higher port. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> -- 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 on the web visit https://groups.google.com/d/msgid/weewx-user/617ca28a-a820-4a02-9ca5-88cd0c65ab30n%40googlegroups.com.
