Since Weatherflow’s servers are so slow in updating Weather Underground, I am attempting to write a simple linux/windows application to perform this update myself. Although I know there are other programs that do the same (such as WeeWx?), I am doing this for my own education and entertainment right now!
I am getting the Tempest data from its UDP API. Currently, I am sending the Tempest’s Station Pressure, Air Temperature, Relative Humidity, UV, and Solar Radiation from its most recent obs_st observation and its Wind Speed and Wind Direction from its most recent rapid_wind observation after each and every rapid_wind observation. For these values, I am setting the Weather Underground’s baromin, tempf, humidity, UV, solarradiation, windspeedmph, and winddir values after performing appropriate unit conversions. So far, this seems to be working great.
However, Weather Underground shows much different wind information between when updated by WeatherFlow and when updated by my program. It seems like WeatherFlow must be also (or instead) updating one or more of windgustmph, windgustdir, windspdmph_avg2m, winddir_avg2m, windgustmph_10m, and windgustdir_10m.
Does WeatherFlow document exactly what Weather Underground values they are updating and when?
Thank you for any and all help!
Not sure I understand what you want? If you didn’t use the app to link with WU, by default WeatherFlow does not send anything.
Now if you wonder what is send when you do link … that is not documented but I’m sure someone from @corrineb’s team will be able to tell. Not sure when she will see this (week end )
When I was trying to use the data from Weather Underground that weatherflow had populated from my station I could not match it together. For example the maximum wind speed of a period would not match. It appears that random readings populate weather underground. It causes the difference between average and maximum gusts for the time period to be different.
The effect causes graphs to appear very different depending on where I source the data from.
In my notes I have my analysis which would take time to retype here for no real benefit.
My approach was attempting to use weather underground as my database.
Due to its inaccuracies I now use the weatherflow API to access my data from the Weatherflow database.
Ages ago it was easy to find the documentation of exactly what WU wanted you to post and in what format. Now it seems close to impossible given IBM’s takeover and hiding almost everything behind their positively brutal web setup and login requirements.
I found the API for how to ‘query’ their data, but did not find the docs for how to ‘post’ data to them.
Unknown if this link will work but…(link) is the toplevel link I found. Its current observations item points to (this).
FWIW - WeeWX’s “wunderfixer” utility seems to indicate that the minimum is:
# The formats to be used to print the record. For each type, there are two
# formats, the first to be used for a valid value, the second for value
_formats = (('barometer', ('%7.3f"', ' N/A ')),
('outTemp', ('%6.1fF', ' N/A ')),
('outHumidity', ('%4.0f%%', ' N/A ')),
('windSpeed', ('%4.1f mph', ' N/A mph')),
('windDir', ('%4.0f deg', ' N/A deg')),
('windGust', ('%4.1f mph gust', ' N/A mph gust')),
('dewpoint', ('%6.1fF', ' N/A ')),
('rain', ('%5.2f" rain', ' N/A rain')))
I am trying to mimic what weather flow sends to weather underground – except i want do it at a much higher frequency (i.e. every few seconds instead of every ten or fifteen minutes or worse). In general, I have been successful in doing this by getting the tempest data from its udp data and then sending to weather underground using the following https://support.weather.com/s/article/PWS-Upload-Protocol
Right now, I am sending data to weather underground every time i get a tempest rapid_wnd event. When I receive this event, I send the following to weather underground:
- Tempest Time Epoch → Weather Underground Time Epoch
- Tempest Air Temperature → Weather Underground tempf
- Tempest Relative Humidity → Weather Underground humidity
- Tempest Station Pressure → Weather Underground baromin
- Tempest UV → Weather Underground UV
- Tempest Solar Radiation → Weather Underground solarradiation
- Tempest Wind Speed → Weather Underground windspeedmph
- Tempest Wind Direction → Weather Underground winddir
Although this works great, it doesn’t match up with what weatherflow apparently sends to weather underground. Currently, I suspect that weatherflow never sends the Wind Speed value to weather underground, but instead sends the Wind Avg and Wind Gust values.
Just run weewx in rapidfire mode perhaps ?
Yes, I have been thinking about doing that – I just don’t have any systems set up to do that right now. I have looked over some of the weewx documentation and it seems like it could potentially have a similar issue based on what information it seems to be sending to weather underground. But, I obviously need to get this up and running to see for myself.
Do you happen to know a weather understation station that is getting its data from a tempest via weewx whose web address you can share? I am definitely curious to see its output!
If you are curious, my weather underground site which is being updated by weather flow is the following: https://www.wunderground.com/dashboard/pws/KTXCYPRE247
My weather underground site which is being updated by my own program is the following: https://www.wunderground.com/dashboard/pws/KTXCYPRE599
I guess I don’t know what you’re looking at. Both your stations show zero wind for many hours which makes no sense unless you moved them inside.
A random weewx site is http://appnea.net which appears to feed a variety of downstream sites according to ShenPWS Weather Conditions but I have no idea who this site is so I guess be nice if you poke around there. A quick look at their graphs at ShenPWS Weather Conditions does show some data dropouts FWIW.
There is no wind being reported because there is no wind being detected by the weather station at my house – especially since it is not at an ideal height for detecting wind. Nevertheless, I think the wind graphs at the bottom of the two different weather underground sites accurately show my problem. One of them shows wind that varies between 0 and 4 MPH with gusts up to nearly 10 MPH (when it was detecting some wind). The other shows wind that varied between 4 and 10 MPH – but no gust information.
I guess the question may be this – Is there a way to get wind average values and wind gust values uploaded to weather underground like weather flow does but also with immediate wind speed values in a rapid fire fashion?
this is one of my Tempest via weewx in rapid fire mode As you can see it isn’t exactly 3 seconds, sometimes it does and with moments not at all, I think there is also their server load affecting speed at which it ingests data.
Thank you very much, kind sir! Although I am still planning to get a weewx system up and running myself, I think the data seen on your site may answer my questions. Unless there are different configurations for weewx to upload to weather underground, the wind speed and wind gust graphs at the bottom of your page show my issue.
Specifically, it looks like weewx is probably uploading the wind speed value from the rapid_wind event message and the wind gust value from the obs_status event message. As such, the wind gust values (i.e. the dots in orange on your graph) follow the wind speed values almost perfectly.
If you take a look at my weather underground site (https://www.wunderground.com/dashboard/pws/KTXCYPRE247) that is being uploaded to by weather flow, you will see there is usually a big difference between the wind speed and wind gust values. Although I could be wrong, I think weather flow is probably uploading the average wind speed value (over a minute or some number of minutes) and the wind gust value (i.e. the maximum wind speed value over this same number of minutes) to weather underground.
I have not looked at your graphs or data, they were blank when I tried but could be my internet because weather underground places a heavy load on my loading their site. Just commenting that my guess was that weatherflow might upload a one minute average and the one minute maximum that minute, or similar for a 5 minute. Then miss a few minutes and load another random minutes average and max. I might be wrong. But that was my guess why I could not get the data to match. But looking at another weather underground station I use I suspect similar behaviour, not just from Weatherflow.
Yes, I think your suspicions match my current suspicions. Specifically, I don’t think WeatherFlow ever sends the data that can be seen in a “rapid_wind” udp message to Weather Underground. On the contrary, I think WeatherFlow only sends the data that can be seen in a “obs_st” udp message to Weather Underground. Although these messages only occur once a minute, WeatherFlow for some reason only manages to send the data once every ten or fifteen minutes – and sometimes even longer!
Specifically, I think the following mapping occurs for the wind data:
- Tempest’s “WindAvg” (from obs_st) gets sent to Weather Underground’s “windspeedmph”
- Tempest’s “WindGust” (from obs_st) gets sent to Weather Underground’s “windgustmph”
- Tempest’s “WindDirection” (from obs_st) gets sent to Weather Underground’s “winddir”
Currently, I am thinking there is no way to send immediate wind speed information and still get Weather Underground to display the average wind speed as well as the wind gust speed over a certain period of time. Nevertheless, there should be no problem for us to upload this information once every minute. I am puzzled why it takes so long for this to be done by WeatherFlow.
P.S. I have attached images of my two sites so you can more easily see the difference. The top one is being supplied data from my custom program. The bottom one is being supplied data from WeatherFlow.
9 posts were merged into an existing topic: Weather Underground - Issues and Comments
Hey guys. New Tempest owner here and I’m a little frustrated with the update delay the Tempest provides WU. I am coming from an AcuRite device so I’m used to pretty quick updates. I like the Tempest app but WU is sometimes easier to view depending on where I am and what device I’m on. I tried to follow the above info but it didn’t get me very far. Is there any step by step info or other new options to get the Tempest to provide faster updates to WU ?
Unfortunately, I don’t think there is anything we can do to speed up updates to Weather Underground. Like you, I have owned (or have friends or relatives who own) weather stations from Acurite and Ambient which update WU much faster. It appears the difference is that they (Acurite and Ambient) directly update WU themselves whereas Tempest updates WU via their own servers (i.e. the weather data gets uploaded to WeatherFlow servers and these servers then update WU). I am not completely confident the WeatherFlow servers are performing these WU updates in the most efficient and optimal manner possible, but I obviously can’t do anything about that.
There are a few workarounds to this issue: 1) get weewx up and running on a system and have it do the updates to WU. Weewx is a free, open-source software program that has the ability to get data from various different weather stations to display locally and upload to various other sites such as WU. Please see http://weewx.com/. Or, 2) buy a meteobridge and have it do the updates to WU. Meteobridge is a hardware device that has the ability to get data from various different weather stations and upload to various other sites such as WU. Please see https://www.meteobridge.com/.
Thanks for all that info. I did see the Meteobridge device recently. I am unable to find how to connect that to the Tempest however unless I’m missing it somewhere. WeeWx isn’t an option for me unfortunately.
You merely select the WeatherFlow station as your input and Meteobridge captures the raw data from the UDP packets the Tempest hub sends out on your network. Meteobridge can connect to several different stations and has been updated to not only work with the first generation SKY and AIR but now the Tempest as well.
Ah okay. So it monitors the network traffic. I was thinking the hub had to connect to the WeatherBridge somehow. Thanks for clarifying. I went ahead and ordered one and it’ll be here Sunday. Hopefully it works well for me.