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.