added support for weatherflow

to the latest consolewd 64 bit version for linux 64 bit desktop (i.e not raspberry pi)

and have added support for the weatherflow station to consolewd raspberry pi 3 now (using the UDP data straight from the hub)

I’m trying to make this work with my weatherflow but when I launch consolewd … nothing happens as if the script can’t see the udp packages

I did set 72 in config.txt and also where to send the data … added GPS coordinates and gave a name to the station

something I forgot ??

I can ping the hub from the pi …

pi3, installed stretch lite, hardly anything changed on pi except the usual like time zone etc …

is there a way to debug ?

it should say
running cronweatherflowconsole
does it say that?
I just tested here and its working
and I do have a report it has worked for someone else

heuu what to say, while doing something else it now shows movement …
though I seem to have an issue sending it to meteotemplate … progress already lol

**** updating data logs
updating meteotemplate
updating records to ini file
meteotemplatedata to send https://wouters.fr/meteo/api.php?U=1514312888&T=13.0&TMX=13.0&TMN=13.0&TIN=0.0&HIN=0&H=0&P=1013.0&W=0.0&G=0.0&B=0&R=0.0&RR=0.000&PASS=redacted&SW=WD&T1=0.0&T2=0.0&T3=0.0&T4=0.0&T5=0.0&T6=0.0&T7=0.0&T8=0.0&T9=0.0&T1=0.0&H2=0&H3=0&H4=0&H5=0&H6=0&H7=0&H8=0&H9=0&TS1=0.0&TS2=0.0&TS3=0.0&TS4=0.0&SM1=0.0&SM2=0.0&SM3=0.0&SM4=0.0&LW1=0&LW2=0&LW3=0&LW4=0
meteotemplate data send failed 19:30:00
**** doing minute routines now 19:31:00
Stationless
**** updating clientraw extra files
**** updating data logs
**** doing minute routines now 19:32:00
Stationless
**** updating clientraw extra files
**** updating data logs
**** doing minute routines now 19:33:00
Stationless
**** updating clientraw extra files
**** updating data logs
**** doing minute routines now 19:34:00
Stationless
**** updating clientraw extra files
**** updating data logs
**** doing minute routines now 19:35:00
Stationless
**** updating clientraw extra files
**** updating data logs
updating meteotemplate
updating records to ini file
meteotemplatedata to send https://wouters.fr/meteo/api.php?U=1514313225&T=13.0&TMX=13.0&TMN=13.0&TIN=0.0&HIN=0&H=0&P=1013.0&W=0.0&G=0.0&B=0&R=0.0&RR=0.000&PASS=redacted&SW=WD&T1=0.0&T2=0.0&T3=0.0&T4=0.0&T5=0.0&T6=0.0&T7=0.0&T8=0.0&T9=0.0&T1=0.0&H2=0&H3=0&H4=0&H5=0&H6=0&H7=0&H8=0&H9=0&TS1=0.0&TS2=0.0&TS3=0.0&TS4=0.0&SM1=0.0&SM2=0.0&SM3=0.0&SM4=0.0&LW1=0&LW2=0&LW3=0&LW4=0
meteotemplate data send failed 19:35:00
**** doing minute routines now 19:36:00
Stationless
**** updating clientraw extra files

the problem with meteotemplate for you is that https is not supported natively by consolewd (http server is)
would need to use curl

changed https to http

meteotemplate data send Ok 20:10:01 :smiley:

so 2 things to remember

when you launch ./consolewd … let it do for some time, seems not to work from second 1
When uploading, do not use https but http (in my case meteotemplate)

thanks Brian, now get this thing to launch at boot so I don’t need to open a terminal and keep it open. Saw somewhere some posts but seemed a bit complicated via a fake terminal etc …

the UDP packets dont arrive every second though
if the windspeed is changing alot (and you have the sky) then I would say every 3 seconds
otherwise if just the air then that data only arrives every minute (unless the temperature changes then it wil arrive when that change occurs, yes?)

consolewd is free…but donations to the cause are welcome

merry X-mas … ok bit late #-o

and no I’m not the lucky owner of Sky, hoping it’ll come soon …

thanks for the donation!
I think when you get a sky, the updates via udp will be much faster

pleasure, all work deserves $$ :wink:

yep as the wind update is pretty quick according some

anyway, now get it to work with meteotemplate, seems the db doesn’t populate via api …

last question for now, what means stationless ??

re meteotemplate
try pasting what is sent into a url
to see what is returned

stationless, means no station attached, i,e for testing (or to use a metar for data)

Had Jachym

meteotemplatedata to send http://wouters.fr/meteo/api.php?U=1514321325&T=13.0&TMX=13.0&TMN=13.0&TIN=0.0&HIN=0&H=0&P=1013.0&W=0.0&G=0.0&B=0&R=0.0&RR=0.000&PASS=edited&SW=WD&T1=0.0&T2=0.0&T3=0.0&T4=0.0&T5=0.0&T6=0.0&T7=0.0&T8=0.0&T9=0.0&T1=0.0&H2=0&H3=0&H4=0&H5=0&H6=0&H7=0&H8=0&H9=0&TS1=0.0&TS2=0.0&TS3=0.0&TS4=0.0&SM1=0.0&SM2=0.0&SM3=0.0&SM4=0.0&LW1=0&LW2=0&LW3=0&LW4=0

according him a problem related t humidity (you’re in copy of the mail)

I think the data is not from my station : https://smartweather.weatherflow.com/station/2230/grid
T is far from 13, P = 1003 and not 1013 …

Weather station type=72// Irox=59,WMR100=232,WMR200=233,WMR300=235,WMR968=8,WMR918=3,WM918=1,Davis VP=31,Davis WMMII=4, WH1081=166,2310=60,WXT510=190,3600=61,Davis IP=32, OWWfile=71,universal=34,102=meteobridge,weatherflow=72
meteobridge username=
meteobridge IP=192.168.0.1
meteobridge password=
Davis com method=2             //1 for serial, 2 for usb data logger
OWW file location=
Davis VP IP port=22222             // Port        for Davis VP IP data logger
Davis VP IP address=192.168.2.3           // IP address   "   "    "  "   "     "
wh1080 read delay=50
latitude= 43.34309    /// latitude, e.g -38.375 for southern hemisphere
longitude= 1.14968         /// e.g -17idwow5.456 for east of UTC/London
Station name=Bois de la Pierre
Start up daily rain(mm)=0.0
Start up monthly rain(mm)=0.0
Do wunderground=N //For updating wunderground.com (set to Y for yes, N for no) (every 5 minutes)
Wunderground username=   //WU ID
Wunderground password=
Wunderground timezone=-5    // e.g 12 for 12 hours ahead of GMT, -12 for - 12 hours
timezone=       (to change the local PC hour used)
Direction offset (whole degrees)=0
Barometer offset(hpa)=0
Comport number (e.g 1)=U //For non USB stations (e.g Davis, OS WMR968), use U for ttyUSB0 (i.e usb to serial)
Comport custom=
Davis com method=2   // 1 for regular  2 for special davis serial read
Revb Davis VP=Y (Y for Yes (new model (default) ) N for No)
Davis rain gauge=2 (1 for 0.1 inch, 2 for 0.01 inch, 3 for 0.2mm)
Do mysql=N //for mysql updates (see the readme for the table structure), every 5 minutes
Mysql username=
Mysql password=
Mysql server=
Mysql databasename=
Mysql tablename=
Mysql metric=Y (set N for oF, inches of rain, inches for baro)
Mysql time=300    (time interval between mysql update in seconds from 60 to 10000 sec)
Do CWOP updates=N //every 10 minutesidwow
CWOP station id=
CWOP ham call sign=-1 // -1 is default (you do not have a Ham call sign)
CWOP Latitude=
CWOP Longitude=
Do clientraw FTP=N //(set to Y for yes, N for no), uploads every 1 minute
FTP server=
FTP username=
FTP password=
FTP port=21                                              //default is 21
FTP remote dir=
FTP use passive=Y                                       //(set to Y for yes, N for no)
FTP use remote file rename=                    //Write here the remote name: NOTE that not all FTP servers allow remote file rename"
FTP time interval=60                   //the interval between two upload of the clientraw.txt and custom file
Save logfile=Y   //to save the .txt logfile (set to N to save on disk space)
Logfile metric=Yidwow
Create custom file=N   //converts the custom tags in a file called wxlocal.html to wx.html
Use this filename instead of wx.html=
Use this filename instead of wx2.html=
Use this filename instead of wx3.html=
Use this filename instead of wx4.html=
Use this filename instead of wx5.html=
FTP the custom file=N    //will FTP the wx.html or filename you set to FTP server specified (clientraw FTP needs to be enabled too)
Units for custom tag file output:
Temp in celsius=Y
Wind in=kts          // options are: mph,kts,kph,m/s (changes the custom tags)
Baro in metric=Y
Rain in metric=Y
run cron files=Y  // set to N to not run the separate cron files
do custom log=N    // set to Y to create an appended logfile from a template (customlog.txt)
custom log out=customlogout.txt
temp offset=                   //C
wmr300 channel number=1
Rain Offset=0.0  //mm
Modified rain gauge=
update WOW=      //Y or N
WOW id=
WOW pass=
update PWS=       //Y or N
PWS id=
PWS pass=
update windfinder=
windfinder id=
windfinder pass=
update meteotemplate=Y //Y or N
meteotemplatepass=***** (edited)
meteotemplateurl=http://wouters.fr/meteo/api.php

as in H=0
i.e zero humidity?
i notice the temperature and barometer are default values too
seems like consolewd is not actually getting temperature/humidity/barometer data from he udp data?
let me run a test here

running here, I get a , current data
output in consolewd
showing the data from the hub OK
maybe the update to meteotemplate occured before valid data had arrived from the hub

has been running for an hour and all the data streams are identical …just relaunched it and still same string

can it be it isn’t getting the correct UDP packages ? I have quite some network with several switches and a bunch of devices around emoncms …
will try tomorrow to find the correct syntax to listen on the py for udp packages on port 50222 … time for zzz now

btw it sniffs on wifi or does it sniff ethernet btw … might be as stupid as that as I disabled wifi and bt on the pi

if you could post what you do see
from the terminal output from consolewd
you should be seeing status ouput from the hub more frequently than an actual data packet

before repling I did some digging and … in short there is no traffic from the hub on port 50222 UDP

when I do a tcpdump on the ip from the hub there is traffic back and forth between it and amazonaws … quite a lot even but when I filter on UDP and I leave it for ages, not a single line, did same on my Mac and there not a single line of UDP from weatherflow hub …
Basically whatever code I use, it can’t intercept what is not available …

This is something I can’t understand, why don’t I see these UDP packages … any idea ? OR are these only available for testers and we the normal users will get it later ?

sudo tcpdump host  192.168.1.176 -v
tcpdump: listening on wlan0, link-type EN10MB (Ethernet), capture size 262144 bytes
19:33:54.284805 IP (tos 0x0, ttl 128, id 49660, offset 0, flags [none], proto TCP (6), length 238)
    WeatherFlow.46301 > ec2-54-82-232-65.compute-1.amazonaws.com.1884: Flags [P.], cksum 0x34b8 (correct), seq 4162697251:4162697449, ack 3383001507, win 5120, length 198
19:33:54.312671 IP (tos 0x0, ttl 128, id 49661, offset 0, flags [none], proto TCP (6), length 202)
    WeatherFlow.46301 > ec2-54-82-232-65.compute-1.amazonaws.com.1884: Flags [P.], cksum 0xc6a3 (correct), seq 198:360, ack 1, win 5120, length 162
19:33:54.411918 IP (tos 0x0, ttl 47, id 14551, offset 0, flags [DF], proto TCP (6), length 40)
    ec2-54-82-232-65.compute-1.amazonaws.com.1884 > WeatherFlow.46301: Flags [.], cksum 0x105c (correct), ack 198, win 1539, length 0
19:33:54.439565 IP (tos 0x0, ttl 47, id 14552, offset 0, flags [DF], proto TCP (6), length 40)
    ec2-54-82-232-65.compute-1.amazonaws.com.1884 > WeatherFlow.46301: Flags [.], cksum 0x0fbb (correct), ack 360, win 1538, length 0
19:33:54.445726 IP (tos 0x0, ttl 128, id 49662, offset 0, flags [none], proto TCP (6), length 213)

it should be working by default, its not just for testers
maybe try a complete reboot of the hub

have you tested WD for windows to see if the cronweatherflow.exe gets the UDP data?

no PC only Mac here. Though in a terminal on my mac, no dump on port 50222.

Got the mac version on the mac (complains as I didn’t register that one) … but in a separate screen I ticked use local UDP from hob only an all stays empty