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.rai...@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
                <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+unsubscr...@googlegroups.com <mailto:weewx-user+unsubscr...@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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/a1116646-d43c-c2fd-c865-b58316bebfe8%40gmail.com.

Reply via email to