Report your Weather Station Data to Windy
-
-
how to delete a wrong data input?
-
@haryana What do you exactly mean? Reported data via station in Windy?
-
@Ondřej-Šutera yes pws data entered manually
-
@haryana and can you tell me when will my data be available for everyone.
-
@haryana When did you connect your station?
-
@Ondřej-Šutera about 6 hours ago
-
@haryana It usually takes a day or two, so please wait for a while.
-
@Ondřej-Šutera thanks for reply ondfej. nice talking to you.
-
@TomSlavkovsky said in Report your Weather Station Data to Windy:
precip - real number [mm]; precipitation over the past hour
How should I interpret this, precipitation added up over the entire hour that passed ? example at 10am the weather station sends the total precipitation between 9 and 10am ? My weather station sends a the observation every 5 minutes. at 10h05, 10h10 etc should then again send the precipitation between 9 and 10h?
-
@TomSlavkovsky
Hi, I'm sending data to Windy station f0ccf7c7 using requests.post(windy_url, data=windy_data) but when I look on www.windy.com/station/pws-f0ccf7c7, I get a message that says:Observation station f0ccf7c7 does not report any date for this period.
(did it mean data instead of date??)
So, why isn't this working?
Thanks for your help! -
@RothwellHeights Hi, I checked the station and it looks like there are no data in the last 7 days to display, so at this moment, there is an issue with sending data to Windy end.
-
@Suty said in Report your Weather Station Data to Windy:
@RothwellHeights Hi, I checked the station and it looks like there are no data in the last 7 days to display, so at this moment, there is an issue with sending data to Windy end.
Thanks for the quick reply. I'm receiving a SUCCESS message (code 200) at the end so I'm not sure why it's not uploading.
-
@Suty Thanks for the quick reply. I'm receiving a SUCCESS message (code 200) at the end so I'm not sure why it's not uploading.
-
Can someone please take a look at this snippet? It runs successfully with a return code 200 however the station is not showing any data on Windy.
Prepare data for Windy.com
windy_data = { "latitude":45.45908, "longitude":-75.61356, "elevation":60, "tempheight":3, "windheight":3, "dewpoint": weatherflow_data['obs'][0]['dew_point'], "uv": weatherflow_data['obs'][0]['uv'], "ts": weatherflow_data['obs'][0]['timestamp'], "winddir": weatherflow_data['obs'][0]['wind_direction'], "wind": weatherflow_data['obs'][0]['wind_avg'], "gust": weatherflow_data['obs'][0]['wind_gust'], "windgustdir": weatherflow_data['obs'][0]['wind_direction'], "winddir_avg2m": weatherflow_data['obs'][0]['wind_direction'], "rh": weatherflow_data['obs'][0]['relative_humidity'], "temp": weatherflow_data['obs'][0]['air_temperature'], "precip": weatherflow_data['obs'][0]['precip_accum_last_1hr'], "mbar": weatherflow_data['obs'][0]['station_pressure']
}
Post data to Windy.com
response_windy = requests.post(windy_url, data=windy_data)
-
@RothwellHeights I discussed this with colleagues, and you probably send these data in the wrong format. One station can be sent with GET method, where setup of the station and measuring are URL parameters.
But if you use POST method, you must send data as a JSON file, where setup of station and measuring has to be separated. More here.
-
-
@Suty Thanks for your help. That worked!
For the record, here is my corrected Python code:
def my_function():
Fetch data from WeatherFlow
response_weatherflow = requests.get(weatherflow_url) weatherflow_data = response_weatherflow.json()
Prepare data for Windy.com
tempheight=3 windheight=3 dewpoint=weatherflow_data['obs'][0]['dew_point'] uv=weatherflow_data['obs'][0]['uv'] ts=weatherflow_data['obs'][0]['timestamp'] winddir=weatherflow_data['obs'][0]['wind_direction'] wind=weatherflow_data['obs'][0]['wind_avg'] gust=weatherflow_data['obs'][0]['wind_gust'] windgustdir=weatherflow_data['obs'][0]['wind_direction'] winddir_avg2m=weatherflow_data['obs'][0]['wind_direction'] rh=weatherflow_data['obs'][0]['relative_humidity'] temp=weatherflow_data['obs'][0]['air_temperature'] precip=weatherflow_data['obs'][0]['precip_accum_last_1hr'] mbar=weatherflow_data['obs'][0]['station_pressure']
URL for Windy.com data
windy_url = f'https://stations.windy.com/pws/update/{windy_personal_access_key}?dewpoint={dewpoint}&uv={uv}&ts={ts}&winddir={winddir}&wind={wind}&gust={gust}&windgustdir={windgustdir}&winddir_avg2m={winddir_avg2m}&rh={rh}&temp={temp}&precip={precip}&mbar={mbar}'
Post data to Windy.com
response_windy = requests.get(url=windy_url)
Check response
if response_windy.status_code == 200: print(current_time,"Data successfully shared with Windy.com") else: print("Error sharing data with Windy.com:", response_windy.text)
while True:
my_function()
time.sleep(300) -
This post is deleted! -
Hi,
I use Ardubridge.com as sender for custom weather station built wit NodeMCU ESP8266, very easy to send data to Windy.com and other weather popular sites. Just configuring minimal credentials from panel.Regards
Enrique -
-