Update:
If I change the output format from Weather station to "Ecowitt" Interceptor 
will find the info, even though it is in "wu-client" or "observer" format.

This is the raw data captured with Netcat:
pi@raspberrypi:~ $ sudo nc -l 8000
POST /data/report/ HTTP/1.1
HOST: 192.168.0.160
Connection: Close
Content-Type: application/x-www-form-urlencoded
Content-Length: 444

PASSKEY=CFCD77F9A5836A0D9EF120FA44A30E14&stationtype=EasyWeatherV1.4.4&dateutc=2019-10-25+11:57:29&tempinf=70.0&humidityin=59&baromrelin=29.891&baromabsin=29.055&tempf=69.1&humidity=62&winddir=200&windspeedmph=0.0&windgustmph=0.0&maxdailygust=14.8&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&totalrainin=0.000&solarradiation=0.00&uv=0&wh65batt=0&freq=868M&model=WS2900_V2.01.08

....and this is what Interceptor now receives (in debug mode):
pi@raspberrypi:~ $ sudo PYTHONPATH=/usr/share/weewx python 
/usr/share/weewx/user/interceptor.py --port=8000 --debug --device=observer 
--mode=listen
identifiers: {}
raw data: 
PASSKEY=CFCD77F9A5836A0D9EF120FA44A30E14&stationtype=EasyWeatherV1.4.4&dateutc=2019-10-25+12:02:33&tempinf=70.0&humidityin=58&baromrelin=29.891&baromabsin=29.055&tempf=69.1&humidity=62&winddir=200&windspeedmph=0.0&windgustmph=0.0&maxdailygust=14.8&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&totalrainin=0.000&solarradiation=0.00&uv=0&wh65batt=0&freq=868M&model=WS2900_V2.01.08
raw packet: {'wind_speed': 0.0, 'humidity_in': 58.0, 'temperature_in': 
70.0, 'wind_gust': 0.0, 'humidity_out': 62.0, 'uv': 0.0, 'radiation': 0.0, 
'rain': None, 'dateTime': 1572004953, 'pressure': 29.055, 
'temperature_out': 69.1, 'wind_dir': 200.0, 'rain_total': 0.0, 'usUnits': 1}
mapped packet: {'pressure': 29.055, 'outHumidity': 62.0, 'UV': 0.0, 
'radiation': 0.0, 'rain': None, 'dateTime': 1572004953, 'windDir': 200.0, 
'outTemp': 69.1, 'windSpeed': 0.0, 'inHumidity': 58.0, 'inTemp': 70.0, 
'windGust': 0.0, 'usUnits': 1}

Why ?  What's the problem/difference to the WU format that makes it not 
even pass through to Interceptor ?  Ok, I now get the data to Weewx but it 
don't feel right. (Btw before changing to "Ecowitt" I also tested with a 
new, fresh clear installation of R-Pi img etc, but it was the same).

Thanks in advance for all ideas...




Den torsdag 24 oktober 2019 kl. 19:08:31 UTC+2 skrev Ingper:
>
> I have an issue to receive the data from my new weather station 
> ((FineOffset clone, Eurochron WS2900) that is sent through my local network 
> to a Raspberry Pi running Weewx.
>
> The station (IP 192.168.0.11 below) is configured to send according to WU 
> protocol *but* to the (static) IP of my R-Pi 192.168.0.160 and port 8000. 
> The problem is that Interceptor receives *something* but the packets are 
> empty. 
>
> If I instead use Netcat to monitor the port, correct data is received each 
> 60s (it's no row brake after GET, forum editor adds that):
>
> pi@raspberrypi:~ $ sudo nc -l 8000
> GET 
> ID=EMCO&PASSWORD=1234&indoortempf=70.0&tempf=69.8&dewptf=56.1&windchillf=69.8&indoorhumidity=59&humidity=62&windspeedmph=0.0&windgustmph=0.0&winddir=356&absbaromin=29.076&baromin=29.912&rainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&solarradiation=0.00&UV=0&dateutc=2019-10-24%2016:24:42&softwaretype=EasyWeatherV1.4.4&action=updateraw&realtime=1&rtfreq=5
>  
> HTTP/1.0
> Host: 192.168.0.160
> Accept:*/*
> Connection: Close
>
> But this data never reach Weewx through Interceptor, and the weewx debug 
> info shows that Interceptor queue is always empty. By running Interceptor 
> alone and directly (below in debug mode) it shows that something really is 
> happening/received each 60s (the result, four last rows, are written each 
> 60 s), *but* it's empty:
>
> pi@raspberrypi:~ $ sudo PYTHONPATH=/usr/share/weewx python 
> /usr/share/weewx/user/interceptor.py --port=8000 --debug --device=observer 
> --mode=listen
> identifiers: {}
> raw data: 
> raw packet: {'usUnits': 16, 'dateTime': 1571935276}
> mapped packet: {'usUnits': 16, 'dateTime': 1571935276}
>
> And if I instead use Tcpdump, I also get packets with no data (or at least 
> not the weather station data, only the necessary communication related, I 
> think). And also a little bit too often, each 16 s, but nothing additional 
> as long as the data i see with Netcat each 60s:
>
> pi@raspberrypi:~ $ sudo tcpdump -i wlan0 port 8000 -A -X -v
> tcpdump: listening on wlan0, link-type EN10MB (Ethernet), capture size 
> 262144 bytes
> 18:45:15.911352 IP (tos 0x0, ttl 128, id 486, offset 0, flags [none], 
> proto TCP (6), length 44)
>     192.168.0.11.10877 > 192.168.0.160.8000: Flags [S], cksum 0x8304 
> (correct), seq 275093, win 5840, options [mss 1460], length 0
> 0x0000:  4500 002c 01e6 0000 8006 b6ea c0a8 000b  E..,............
> 0x0010:  c0a8 00a0 2a7d 1f40 0004 3295 0000 0000  ....*}.@..2.....
> 0x0020:  6002 16d0 8304 0000 0204 05b4            `...........
> 18:45:15.911459 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP 
> (6), length 40)
>     192.168.0.160.8000 > 192.168.0.11.10877: Flags [R.], cksum 0xb17d 
> (correct), seq 0, ack 275094, win 0, length 0
> 0x0000:  4500 0028 0000 4000 4006 b8d4 c0a8 00a0  E..(..@.@.......
> 0x0010:  c0a8 000b 1f40 2a7d 0000 0000 0004 3296  .....@*}......2.
> 0x0020:  5014 0000 b17d 0000                      P....}..
> 18:45:31.903936 IP (tos 0x0, ttl 128, id 487, offset 0, flags [none], 
> proto TCP (6), length 44)
>     192.168.0.11.28473 > 192.168.0.160.8000: Flags [S], cksum 0x3504 
> (correct), seq 277465, win 5840, options [mss 1460], length 0
> 0x0000:  4500 002c 01e7 0000 8006 b6e9 c0a8 000b  E..,............
> 0x0010:  c0a8 00a0 6f39 1f40 0004 3bd9 0000 0000  ....o9.@..;.....
> 0x0020:  6002 16d0 3504 0000 0204 05b4            `...5.......
> 18:45:31.904053 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP 
> (6), length 40)
>     192.168.0.160.8000 > 192.168.0.11.28473: Flags [R.], cksum 0x637d 
> (correct), seq 0, ack 277466, win 0, length 0
> 0x0000:  4500 0028 0000 4000 4006 b8d4 c0a8 00a0  E..(..@.@.......
> 0x0010:  c0a8 000b 1f40 6f39 0000 0000 0004 3bda  .....@o9......;.
> 0x0020:  5014 0000 637d 0000                      P...c}..
>
> It's the same behaviour regardless if I use eth0 or wlan0 interface on my 
> Pi. Version of Interceptor is 0.46 (latest). Have also tried different 
> device settings in Interceptor, but because already the raw data is missing 
> it may be irrelevant. 
>
> But the weather station seems to be correct configured and transmits 
> everything ok I think, otherwise the data could not have been captured by 
> Netcat on my Pi. But why is it then filtered out (?) before it gets to 
> Tcpdump or Interceptor, what is the difference in interface handling 
> compared to Netcat ?
>
> I'm VERY thankful if somebody could help. I have spent days on this now. 
> Have a faulty station that should be replaced ASAP (Renkforce/FineOffset 
> 2315) that only worked ok for few weeks. But it was USB interface on that 
> (=easier ;-).
>
>
>
>

-- 
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/1b048756-f0dc-4bb1-bc20-411ecbe31d7c%40googlegroups.com.

Reply via email to