Someone actually posted a working solution in issue #80 on GitHub https://github.com/matthewwall/weewx-interceptor/issues/80#issuecomment-699638053 It works for me!
tisdag 3 augusti 2021 kl. 14:29:57 UTC+2 skrev lang....@googlemail.com: > > -------- Forwarded Message -------- > Subject: [weewx-user] Re: Pulling my hair - one weird issue after the > other [4] > Date: Tue, 3 Aug 2021 14:28:28 +0200 > From: Rainer Lang <lang....@gmail.com> > To: Konrad Skeri Ekblad <kon...@skeri.com> > > I think this side effect is due to a recent change of Interceptor.py to > show also the hardware name in the "about this weather station" section - > the change fell somewhat too short. I had already been searching myself for > a solution, but gave up due to lack of time and decided to bear with this > message before every archiving cycle. > > If you want to get rid of this log message, you would have to walk through > the Interceptor.py coding and add some additional filtering. > Without that hardware name change the PASSKEY info was filtered out. Now > the program flow is different. > It will probably have to be filtered out a 2nd time or only at some other > place now. > > On 03.08.2021 10:55, Konrad Skeri Ekblad wrote: > > Actually, the console tries to post even without a path entered, it just > doesn't specify a request-URI in the HTTP POST header causing an error 400 > on the server side. > I never changed the path setting from when it was working, so it must have > been a side effect from a firmware update done during the months my WeeWX > was down. Good thing to know for people having the same trouble in the > future. I also changed the path from /path? as suggested in the GitHub > discussion I found to just / and that works as well. However, in both > cases I get the following line in the message log every time the station > sends an update: > > Aug 3 10:51:33 localhost journal[2825]: weewx[2825] INFO > user.interceptor: unrecognized parameter b'PASSKEY=9879… > > While not interfering with function it clutters up the log making it > harder to read. Guess that's a topic for the GitHub issue tracker though. > > Konrad > > tisdag 3 augusti 2021 kl. 01:35:43 UTC+2 skrev lang....@googlemail.com: > >> By mistake I sent this reply only to the OPer - now forward also to the >> group for information and documentation >> >> It's a common mistake when using the custom server function of a Fine >> Offset (clone) console in ecowitt protocol >> to leave the path entry in the WSView app empty. >> Even though weewx (the interceptor driver) doesn't care about any path, >> the console still does. >> >> If there is no entry at all, the console will not post !!! >> >> Therefore at least "/" without "" has to be entered into the path field >> in the WSView app. >> >> This is for weewx. >> >> When posting via custom server function to a web site, the path has to be >> meaningful and point to the HTML or www root of the server respectively the >> path from there where the posting will be picked up e.g. by some index.php >> file. >> >> The posting in Ecowitt protocol will always look like >> >> >> http://IP-or-URL/path-from-wsview-app/index.php&PASSKEY=xxxxxxxxxxxxxx&stationtype= >> >> ..... >> >> the interceptor driver filters out the PASSKEY, stationtype and other not >> observation related parts of the posted string and takes only the >> observation related portions e.g. windgustmph=5.82 >> >> >> -------- Forwarded Message -------- >> Subject: [weewx-user] Re: Pulling my hair - one weird issue after the >> other [3] >> Date: Mon, 2 Aug 2021 16:05:30 +0200 >> From: Rainer Lang <lang....@gmail.com> >> To: Konrad Skeri Ekblad <kon...@skeri.com> >> >> Did you enter a path in the WSView app ? >> There must be at least a "/" - even though weewx doesn't care, the >> console does. >> If there is no path entered, it doesn't post via the custom server >> function. >> >> On 02.08.2021 14:55, Konrad Skeri Ekblad wrote: >> >> Running WeeWX directly instead the output in /var/log/messages is this: >> >> Aug 2 14:36:59 localhost systemd[1]: Starting SYSV: start and stop the >> weewx weather system... >> Aug 2 14:36:59 localhost journal[2697]: weewx[2697] INFO __main__: >> Initializing weewx version 4.5.1 >> Aug 2 14:36:59 localhost journal[2697]: weewx[2697] INFO __main__: Using >> Python 3.6.8 (default, Mar 19 2021, 05:13:41) #012[GCC 8.4.1 20200928 (Red >> Hat 8.4.1-1)] >> Aug 2 14:36:59 localhost journal[2697]: weewx[2697] INFO __main__: >> Platform Linux-4.18.0-305.10.2.el8_4.x86_64-x86_64-with-centos-8.4.2105 >> Aug 2 14:36:59 localhost journal[2697]: weewx[2697] INFO __main__: >> Locale is 'sv_SE.UTF-8' >> Aug 2 14:36:59 localhost journal[2697]: weewx[2697] INFO __main__: PID >> file is /var/run/weewx.pid >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO __main__: Using >> configuration file /etc/weewx/weewx.conf >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO __main__: Debug >> is 1 >> Aug 2 14:36:59 localhost weewx[2688]: Starting weewx: [ OK ] >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> Loading station type Interceptor (user.interceptor) >> Aug 2 14:36:59 localhost systemd[1]: Started SYSV: start and stop the >> weewx weather system. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO >> user.interceptor: driver version is 0.53 >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO >> user.interceptor: device type: ecowitt-client >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO >> user.interceptor: mode is listen >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO >> user.interceptor: listen on :8000 >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO >> user.interceptor: sensor map: {'pressure': 'pressure', 'barometer': >> 'barometer', 'outHumidity': 'humidity_out', 'inHumidity': 'humidity_in', >> 'outTemp': 'temperature_out', 'inTemp': 'temperature_in', 'windSpeed': >> 'wind_speed', 'windGust': 'wind_gust', 'windDir': 'wind_dir', >> 'windGustDir': 'wind_gust_dir', 'radiation': 'solar_radiation', 'dewpoint': >> 'dewpoint', 'windchill': 'windchill', 'rain': 'rain', 'rainRate': >> 'rain_rate', 'UV': 'uv', 'txBatteryStatus': 'battery', 'extraTemp1': >> 'temperature_1', 'extraTemp2': 'temperature_2', 'extraTemp3': >> 'temperature_3', 'extraHumid1': 'humidity_1', 'extraHumid2': 'humidity_2', >> 'soilTemp1': 'soil_temperature_1', 'soilTemp2': 'soil_temperature_2', >> 'soilMoist1': 'soil_moisture_1', 'soilMoist2': 'soil_moisture_2', >> 'soilMoist3': 'soil_moisture_3', 'soilMoist4': 'soil_moisture_4', >> 'leafWet1': 'leafwetness_1', 'leafWet2': 'leafwetness_2', 'pm2_5': 'pm2_5', >> 'extraTemp4': 'temperature_4', 'extraTemp5': 'temperature_5', 'extraTemp6': >> 'temperature_6', 'extraTemp7': 'temperature_7', 'extraTemp8': >> 'temperature_8', 'extraHumid3': 'humidity_3', 'extraHumid4': 'humidity_4', >> 'extraHumid5': 'humidity_5', 'extraHumid6': 'humidity_6', 'extraHumid7': >> 'humidity_7', 'extraHumid8': 'humidity_8', 'soilTemp3': >> 'soil_temperature_3', 'soilTemp4': 'soil_temperature_4'} >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> StdConvert target unit is 0x1 >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> Archive will use data binding wx_binding >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> Record generation will be attempted in 'hardware' >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> Using archive interval of 300 seconds (specified in weewx configuration) >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.restx: >> StationRegistry: Registration not requested. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.restx: >> Wunderground: Posting not enabled. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.restx: >> PWSweather: Posting not enabled. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.restx: >> CWOP: Posting not enabled. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.restx: >> WOW: Posting not enabled. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.restx: >> AWEKAS: Posting not enabled. >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO __main__: >> Starting up weewx version 4.5.1 >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> Using binding 'wx_binding' to database 'weewx.sdb' >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.manager: >> Starting backfill of daily summaries >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.manager: >> Daily summaries up to date >> Aug 2 14:36:59 localhost journal[2701]: weewx[2701] INFO weewx.engine: >> Starting main packet loop. >> >> After that there are no more log entries. Been running about 10 minutes >> now. >> >> systemctr status weewx gives the following info: >> ● weewx.service - SYSV: start and stop the weewx weather system >> Loaded: loaded (/etc/rc.d/init.d/weewx; generated) >> Active: active (running) since Mon 2021-08-02 14:36:59 CEST; 10min ago >> Docs: man:systemd-sysv-generator(8) >> Process: 2671 ExecStop=/etc/rc.d/init.d/weewx stop (code=exited, >> status=0/SUCCESS) >> Process: 2688 ExecStart=/etc/rc.d/init.d/weewx start (code=exited, >> status=0/SUCCESS) >> Tasks: 2 (limit: 11377) >> Memory: 13.5M >> CGroup: /system.slice/weewx.service >> └─2701 python3 /usr/share/weewx/weewxd --daemon >> --pidfile=/var/run/weewx.pid /etc/weewx/weewx.conf >> >> aug 02 14:45:29 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:45:39 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:45:49 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:45:59 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:46:09 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:46:19 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:46:29 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:46:39 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:46:49 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> aug 02 14:46:59 localhost.localdomain python3[2701]: weewx[2701] DEBUG >> user.interceptor: empty queue >> >> According to Wireshark the weather station connects to WeeWX every >> minute, but receives the 400 error code. >> Stopping WeeWX, Wireshark now shows that the weather station instead of >> the SYN ACK response to the low level TCP handshake instead receives a RST >> ACK, indicating that the port now is closed for communication. >> >> Konrad >> måndag 2 augusti 2021 kl. 13:02:50 UTC+2 skrev gjr80: >> >>> Have a look in the other log files on your system, it should be there >>> somewhere. When running the interceptor driver directly the (WeeWX) logging >>> setup is somewhat abbreviated so it could be different to when WeeWX is >>> run. >>> >>> Gary >>> >>> On Monday, 2 August 2021 at 20:47:01 UTC+10 Konrad Skeri Ekblad wrote: >>> >>>> If I start WeeXW (still using simulator driver) I get its log messages >>>> in /var/log/messages, however, running the interceptor driver directly >>>> does >>>> not produce any output in this log file. >>>> >>>> Konrad >>>> >>>> måndag 2 augusti 2021 kl. 12:22:05 UTC+2 skrev gjr80: >>>> >>>>> When you just ran the interceptor driver directly there should have >>>>> been output to the console as well as log output in the WeeWX log, not >>>>> sure >>>>> what log file it will be in as I am not a Centos user. Can you please >>>>> post >>>>> the log output exactly as it appears in the log. >>>>> >>>>> Gary >>>>> >>>>> On Monday, 2 August 2021 at 19:17:12 UTC+10 Konrad Skeri Ekblad wrote: >>>>> >>>>>> I did a complete reinstallation of the server with Centos 8. Fresh >>>>>> install of WeeWX from repository using yum as described on web page. >>>>>> Installed interceptor driver according to set up instructions. >>>>>> Running PYTHONPATH=/usr/share/weewx python3 user/interceptor.py >>>>>> --debug --port=8000 --device=ecowitt-client for almost an hour only >>>>>> gives the following output: >>>>>> >>>>>> raw data: >>>>>> raw packet: {'dateTime': 1627891880, 'usUnits': 1} >>>>>> mapped packet: {'dateTime': 1627891880, 'usUnits': 1} >>>>>> >>>>>> Using Wireshark to monitor the network traffic I notice this: >>>>>> Weatherstation to WeeWX server: >>>>>> POST HTTP/1.1 >>>>>> HOST: 192.168.129.10 >>>>>> Connection: Close >>>>>> Content-Type: application/x-www-form-urlencoded >>>>>> Content-Length: 415 >>>>>> >>>>>> PASSKEY=**replaced**&stationtype=EasyWeatherV1.6.0&dateutc=2021-08-02+08:11:21&tempinf=77.5&humidityin=42&baromrelin=29.894&baromabsin=29.374&tempf=59.9&humidity=76&winddir=25&windspeedmph=2.7&windgustmph=3.4&maxdailygust=6.9&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&totalrainin=53.673&solarradiation=355.26&uv=3&model=WS2900 >>>>>> >>>>>> Response from WeeWX server: >>>>>> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" >>>>>> "http://www.w3.org/TR/html4/strict.dtd"> >>>>>> <html> >>>>>> <head> >>>>>> <meta http-equiv="Content-Type" >>>>>> content="text/html;charset=utf-8"> >>>>>> <title>Error response</title> >>>>>> </head> >>>>>> <body> >>>>>> <h1>Error response</h1> >>>>>> <p>Error code: 400</p> >>>>>> <p>Message: Bad HTTP/0.9 request type ('POST').</p> >>>>>> <p>Error code explanation: HTTPStatus.BAD_REQUEST - Bad >>>>>> request syntax or unsupported method.</p> >>>>>> </body> >>>>>> </html> >>>>>> >>>>>> According to WireShark there is this communication about once each >>>>>> minute, but I have only one entry in the terminal. >>>>>> onsdag 28 juli 2021 kl. 02:24:31 UTC+2 skrev gjr80: >>>>>> >>>>>>> You have changed many things in your setup and even though you >>>>>>> appear to have reverted to your original working configuration I would >>>>>>> be >>>>>>> starting from scratch as per the interceptor drive readme.I would be >>>>>>> running the driver directly and then making sure you use the —debug >>>>>>> command >>>>>>> line option. Post the console output here. Let’s see where that gets >>>>>>> us. >>>>>>> >>>>>>> Gary >>>>>>> On Wednesday, 28 July 2021 at 08:20:26 UTC+10 Konrad Skeri Ekblad >>>>>>> wrote: >>>>>>> >>>>>>>> I have been using weewx on a Raspberry Pi for about two years now. >>>>>>>> After my old Fine Offset died soon after I moved from pywws I bought a >>>>>>>> Eurochron WS2900 which I got running using the interceptor driver, and >>>>>>>> that >>>>>>>> worked fine until the weather station stopped giving temperature >>>>>>>> readings >>>>>>>> this winter. I was able to fix that last week (bad connector on the >>>>>>>> cable >>>>>>>> from the temperature sensor to the circuit board in the sensor array) >>>>>>>> but >>>>>>>> when I reconnected it to weewx I started to experience various odd >>>>>>>> things. >>>>>>>> The unit shows correct data on its display and sends data to weewx, >>>>>>>> and the >>>>>>>> webpages rendered by weewx are correct (e.g. temperature ranging >>>>>>>> between >>>>>>>> 16°C and 28°C the other day) but the temperatures sent to Windy (and >>>>>>>> others) by weewx varies from -2°C to 21°C for the same day. Thinking >>>>>>>> that >>>>>>>> there might be some API change or something during the half year my >>>>>>>> station >>>>>>>> was offline, and that I for some time have had thoughts of moving it >>>>>>>> to a >>>>>>>> virtual server on my ESXi station anyway, I set up a Centos 8 machine >>>>>>>> and >>>>>>>> installed weewx on it. Simulator works fine, but using the same >>>>>>>> interceptor >>>>>>>> settings as on my Raspberry Pi I don't get any data (IP updated in the >>>>>>>> weather station settings). >>>>>>>> >>>>>>>> Using >>>>>>>> PYTHONPATH=/usr/share/weewx python3 -m user.interceptor --debug >>>>>>>> --mode=listen --port=8000 --device=ecowitt-client >>>>>>>> I was able to once capture this after listening maybe one hour: >>>>>>>> raw data: >>>>>>>> raw packet: {'dateTime': 1627416663, 'usUnits': 1} >>>>>>>> mapped packet: {'dateTime': 1627416663, 'usUnits': 1} >>>>>>>> Yay! A timestamp! >>>>>>>> >>>>>>>> Trying to connect to port 8000 from another computer in the network >>>>>>>> shows that the port is open. >>>>>>>> >>>>>>>> Thinking there is some problem with the weather station I have >>>>>>>> reseted it, but no change. The device is by itself directly uploading >>>>>>>> to >>>>>>>> Weather Underground and some other sites, and that works. >>>>>>>> >>>>>>>> Frustrated I one again change the local IP the weather station >>>>>>>> should send data to to the Raspberry Pi, but now I don't get any data >>>>>>>> there >>>>>>>> at all. >>>>>>>> >>>>>>>> This is the interceptor settings of weewx.conf: >>>>>>>> >>>>>>>> … >>>>>>>> station_type = Interceptor >>>>>>>> … >>>>>>>> >>>>>>>> ############################################################################## >>>>>>>> >>>>>>>> [Interceptor] >>>>>>>> # This section is for the network traffic interceptor driver. >>>>>>>> >>>>>>>> # The driver to use: >>>>>>>> driver = user.interceptor >>>>>>>> >>>>>>>> # Specify the hardware device to capture. Options include: >>>>>>>> # acurite-bridge - acurite internet bridge, smarthub, or >>>>>>>> access >>>>>>>> # observer - fine offset WH2600/HP1000/HP1003, ambient WS2902 >>>>>>>> # lw30x - oregon scientific LW301/LW302 >>>>>>>> # lacrosse-bridge - lacrosse GW1000U/C84612 internet bridge >>>>>>>> # wu-client - any hardware that uses the weather underground >>>>>>>> protocol >>>>>>>> # device_type = observer >>>>>>>> device_type = ecowitt-client >>>>>>>> port = 8000 >>>>>>>> >>>>>>>> >>>>>>>> ############################################################################## >>>>>>>> >>>>>>>> I'm not sure what more is relevant logs to post. >>>>>>>> I see no dropped packages originating from the weather station in >>>>>>>> the firewall log. >>>>>>>> >>>>>>>> Does anyone have any idea how I should proceed or what I should try? >>>>>>>> >>>>>>>> regards >>>>>>>> Konrad Skeri Ekblad >>>>>>>> >>>>>>> -- >> 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/aeab950d-a2c4-4039-8750-b03b9b21fa64n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/weewx-user/aeab950d-a2c4-4039-8750-b03b9b21fa64n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> >> -- > 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/fd503c01-014a-4fe9-bd99-db3de185272dn%40googlegroups.com > > <https://groups.google.com/d/msgid/weewx-user/fd503c01-014a-4fe9-bd99-db3de185272dn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- 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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/b2337a80-ebdf-401d-9ad8-5fa291ae1749n%40googlegroups.com.