Software Defined Radio Reading of a Personal Weather Station

I am very lucky to be involved in the Sage Cyberinfrastructure project where I am kind of acting as “Chief Science Evangelist”. Basically I help motivate the hardware and software engineering with real world science use cases. Discussions with friends like Profs.

Pi4 with the RTL-SDR reading 915MHz data. Pi3 syncing via scp and displaying on UnicornHat-HD

Eric Brunning and Tim Logan have led me to Lightning detection as an interesting problem and several folks in the team are big fans of Software Defined Radios. So I purchased one (and then three more!) and started playing. Several months ago I purchased ($169) an Ambient W2902B personal weather station. It sends signals to a base station via PCM @ 915MHz. The base station then sends data to ambient you can download via an API. Issue is you can only download 1 minute data and the head unit transmits every 16s. I was ok with that for the price. Well, enter the software defined radio! I knew the RTL-SDR 2832U unit I have can tune into 915MHz.. And looking on gqrx I cold see the pulses so I thought I could write some code to decode the data..

Output from rtl_433. Note my Ambient 2903B tags itself as BOTH fineoffset-WH24 and 65B

Well cool thing is I did not have to! As I always say to my students: Google that! I did and found this excellent blog. It was as simple as a apt-get rtl-433 or, on the Raspberry Pi4 compiling from source and you have a pulse code decoder that can read everything from a weather station to a tire pressure gauge in your car. I then simply set it to run with a nohup on my Raspberry Pi4 and save JSONs to a file. I wrote some simple code in Python using ACT (a module that builds on xarray) to visualize.. You can see so much more in the 16s data! Like the turbulence reflected in dewpoint and temperature data when the boundary layer builds. Now I want to include a Software Defined Radio in every Sage node so we can connect instruments wirelessly using the 915 and 433MHz standards. More on lightning detection later!

Bingo! My own weather data saved and plotted without using a 3rd party API.

The weather in Chicago is like an angry teenager….

From a dog on the deck day …

As well stated by my friend Rajesh Sankaran “While I have you here, what is up with the weather? Why is it behaving like an angry confused teenager going through puberty here in Chicago/Midwest? This hot and cold is not fun.”. First, it’s not due to COVID19. Yes, as I said on WTTW Chicago Tonight, there are clear impacts on the atmosphere and our ability to predict it however, the variability that saw us go from shorts weather to snow is a normal seasonal phenomena. In previous posts I have compared the

To this! Charlie does not approve!

upper level winds to “railway tracks” these winds are referred to at the Jet streams or jet stream pattern. At the moment these patterns are very buckled sending storm systems bearing tornadoes and hail into Alabama and southern states while pulling arctic air down over Chicago. If this were mid winter it would be a Chibera, however because things have been warming we are seeing snow and just above freezing at the surface… What is crazy about these snow systems is we are seeing snow at up to +5 degrees celsius! This is because the temperature is cooling so rapidly with height that snowflakes are not melting on their trip from the freezing level to the surface… Silver lining? well hopefully the snow is good for stay at home orders and social distancing.. meanwhile I am getting back into baking to make the house warm…

Current Jet Stream pattern that helps direct the movement of weather patterns… 

More Snow! (February 26th event)

This winter has been a rollercoaster! I was riding outside yesterday with temperatures in double digit celsius (55F). Well this was the peak of the ride and now we are about to come crashing down. Whenever you have unseasonal warmth there has to be a gradient in temperature somewhere and nature likes to destroy those gradients with nice juicy weather systems. The story for this system is all in the middle of the atmosphere. NAMUS_500_avort_051

The above figure shows the vorticity of the winds. Or how much they are spinning. There is a whole heap of math I could lay on you but simply put vorticity helps air go up. And rising air (also called unstable air) allows clouds to form as it cools as it rises becoming saturated. So the other thing we need is moisture.


The figure above shows temperature (red) and dewpoint (green, a measure of moisture content) throughout the atmosphere and is referred to as a Skew T Log P diagram. To the right of the temperature trace you can see the wind barbs. The direction is from the “flags” to the tip. In this case we can see winds from the North East up to about 3km. These are coming right off the lake! The lake is running very ice free at the moment so those cold winds will be fully saturated as they move over the water. And with the aforementioned vorticity forcing the air to rise we should see very effective “wringing out” of the air like a sponge! Now, there is one more ingredient. To get real good snow you need there to be plentiful saturated air in the dendritic growth zone (see previous post).


A second forecast sounding (from the “North American Model, NAM“) , shown above, is truly remarkable. For one the vorticity is forcing ascent so effectively you have a rapid cooling of temperatures with height. This is very unstable air. Second, you have a deep slab (~3km) of saturated air between -10c and -15c. If this verifies this will be a snow making machine!


The only real part spoiler will be if the models (simulations) are being initialized with bad data. This is entirely possible (and I think the NWS in Chicago are thinking this given their forecast) and the surface layer of air is way warmer that the model analyses (simulation time step zero). Prediction: If it pans out the way the NAM/GFS are predicting we will see rain turn to light snow Tuesday morning around 4am. Snow will remain light as the vorticity maximum remains to our west until around 3pm when snow will begin to intensify (if it is not rain). Overnight the party really starts with the most intense snowfall rates right in time for Wednesday morning’s commute. Again, big uncertainty is rain versus snow. My bet is for that cold air to replace the warmer airmass we have over us pretty quickly. Despite the warm weather our closest soil temperature measurement in St Charles shows 4in temps of 33F.  So we will not see much heat coming from the soil into the air. The Chicago region could see from 8 to 14 inches for this event. However this is a complex system and small errors in the location of that high vorticity air could have a big impact. FUN TIMES!

Snow for Chicago and Downstate 02/12/20

This is basically a dump from our Departmental Slack channel… Nice compact system shaping up for the next 24-48 hours. Normally this would not get my attention but we have been so starved for snow and real winter weather this year I’ll take anything. NAMUS_prec_prec_012Very interesting MSLP as shown in Figure 1 from the NAM (12Hr FCST). Juicy intense cold front over the Appalachians with copious moisture being fed in (SPC has a SLGHT chance for Severe.. Worried about flooding) Note the solid block high over central Canada and then a second trough squeezed on in over our region. Second figure shows the 500hPa winds.NAMUS_500_spd_012 VERY VERY broad jet dipping down. Chicago is sitting under, kind of the left entrance to the NE propagating jet streak. Take a read of this primer on the impact of jets on instability. The left entrance is a region of unstable air and will be enhancing snowfall over our region… Kind of… Screen Shot 2020-02-12 at 8.57.12 AM

Next figure is a forecast sounding taken at the time of maximum snowfall rate, as forecast by NAM, at +12hours, or at around 6pm Chicago time. Green line is the dewpoint or “water content” while red is temperature. Where the red and green lines are close the atmosphere is saturation and clouds can form. Note the temperature axis is skewed (This is called a SkewT Log P chart) so from 1500m to ~4000m the saturated atmosphere is around 10 degrees celsius… This is borderline temperature for nice snow formation (aka the Dendritic growth zone, DGZ). the DGZ is a range of temperatures at which the saturation vapor pressure for air over ice is much less than that for air over water. This allows a process called WegenerBergeronFindeisen where, basically, ice can very effectively suck all the moisture not only from the atmosphere but surrounding drops.. Suffice to say, when you look at a plot like the above and you are looking to forecast snow, look for deep saturated layers at ~-10 to -15c. Also note the steep lapse rate (decrease in temperature with height) from the surface to ~1km… This layer is what we call “Conditionally unstable” which could allow convective clouds to form… This time is right at the change over from mixed precipitation to snow.. So our total accumulation in Chicago will depend on the exact timing.. Expect a NASTY WET SNOW at the peak commute home 🙂


Finally, let’s look at the actual NAM (the 4km “Nest”) forecast above… Hopefully you have gathered from my discussion that model estimates for snow  are very uncertain. But if the model (simulation initialized with atmospheric observations) is to be believed we could be shoveling 4 wet inches of snow.. But, wait… There is a kicker here.


The above animation is from NOAA’s High Resolution Rapid Refresh simulation which is a type of simulation (Model) that we call “Convection permitting”. This means it is high enough resolution to resolve smaller storm systems. But, as it is costly to run it only simulates 18 hours in the future. Note the interesting small features at the end of the predicted radar image. This is a small mesoscale (~100km in size) snow squall.. Behind the squall the winds are turning north east, or off the lake and on to the western shore of lake Michigan. This means we may see some lake enhancement at the end of the event. My take is that we could see 4-7 inches from this event depending on 1) How long we get rain before the snow and 2) If we get some lake enhancement at the end…


The final image is from Michigan State University and NOAA and shows lake temperatures near Chicago. Just above freezing… So there may be a sweet spot for snow accumulations  ~5km inland from the lake edge… it will be touch and go in the city to begin with.

Weather plots courtesy of the amazing COD NEXLAB site!


More updates… Coming soon.

Whenever I have the best things to share I am at my busiest.. And I don’t post.. Life has been good and busy. Some very exciting things are happening like NSF giving us 9M for Sage. And a chance I can get into active storm tracking (it’s so cool when you hear folks are as excited about a subject as you..). More updates coming soon.. Open source, radar, science, cycling and.. A SKI TRIP TO WHISTLER! Bring it. IMG_4503

It’s Wet. And The Lakes Are Full of Water.

WTTW Chicago tonight gave me a yell asking about the record lake levels. I have been watching the evolving large scale forcing behind the recent rains.

Irene and Vidya (SAVEUR Scientists) pouring over a map of Chicago identifying key areas to study in Chicago

It is nice as my work on the NSF funded SAVEUR project (Collaboration between Argonne, Northwestern and the University of IL) gives me a little freedom to do this given our focus on Chicago and the region.  In a nutshell: It’s complicated. This time of year we are not particularly strongly impacted by ENSO (Weak but persistent El-Nino) or NAO. But it has rained. A LOT. Chicago beat its all time may record with 8.25 inches (sorry about the old money) of rain.. This is over double its mean rainfall of 3.68 inches. Furthermore the rain has come from a series of torrential persistent (organized) downpours. This has allowed the soil column to becomes so wet it looses the ability to soak, store and evaporate the rain leading to increased run off.

Map of Great Lakes watersheds from Environment Canada

“But wait!” I hear the hydrologists amongst you exclaim, “Only a fraction of the Chicagoland region is in the Great Lakes watershed”. Well you are correct random hydrologist! The figure to the left (from Environment Canada) shows the watersheds of the great lakes. However, take a look at this site from NOAA which shows almost every area around the lakes has received much greater than average rainfall. Furthermore, it has been cold and damp and the lakes themselves have been cold thus inhibiting evaporation. The lake levels (or more so the rate of rise of the lake levels) is the solution to a simple budget equation: The rate of rise (or fall) is water in (Rainfall and diversions from some watersheds in) minus water out (flow into Atlantic via the St Lawrence River plus water lost from diversions away from the lakes plus evaporation). Each of the terms on both sides of this equation involve very complex physics and geopolitics. For example did you know that far less water is diverted away from the lake in Chicago (to the Mississippi) than is added to the lake on the Canadian side? But there is a hard limit to how much extra flow can be added at each point (to the great relief of those living in Montreal). So with well above average rainfall, very wet soils (see this calculation from NOAA with runoff around the lakes at the 95+ percentile) limited evaporation an already modestly full lake system is now breaking records.

Climate Differences

-11F in Utqiagvik

What a difference a few months makes. Back in January I was visiting Utqiagvik as a guest of Argonne’s Education and Outreach team. When we arrived it was -20F and lets just assume the dewpoint was -20F. img_3192Today I went for a run in Nanjing, China with a (5am) temperature of 70F and a dewpoint of 65F. In China each kg (roughly a cubic meter has 13.37 grams of water in the form of vapor. In Utqiagvik it was a mere 0.35g. From the dry to the dripping wet!