By Andrew Hoover on Sunday, 19 May 2019
Category: Weather Station

My Backyard Weather beta 2

Well another year of testing has come and gone so, it's time for an update! In short, I'm nearly there. This version is the last one with components mounted to a proto board. This is also the last dedicated version of the software.

Overview

I'm not going to go through a project synopsis in this post as that's all been done before here, and collectively here. No, this is more like a ChangeLog and a summary of what's to come.

NOTE: I wrote an Instructable for this version of the station and posted it here if you want more detailed information about this version:
https://www.instructables.com/id/My-Backyard-Weather-Beta-2/

So, what's changed?

A few things have changed about this version - one, I've changed the connectors from RJ-12 to terminal blocks as the RJ-12 connectors are too bulky to all fit easily on a shield. I am also considering JST connectors for the final version as an additional space saving option. In my setup, I opted for a wired Ethernet connection since I also opted to run power to the station - two birds one stone. However, this limits the vertical access to my instrumentation shield.

I've also changed the device I'm using to get temp and humidity from a DHT22 to a BME280. I get three instruments in one in a smaller footprint! I kept the DHT, however. Over the course of testing during the summer, it became clear that under very certain conditions, my station would lock up. I'm fairly certain that temperature was a principle issue but I had no way of knowing for sure. So, beta 2 has heat and humidity data inside the box collected for analysis.

I needed to send that internal system status data somewhere but it didn't make sense to store it with the weather data so I created a second table in my database for system data. Here I can store the above mentioned heat and humidity data as well as...

Speaking of data, I expanded my dataset to include Dew Point and "Feels Like" for calculated data and I've also added a new sensor that gives me UVA, UVB and UV Index. So, that brings us to the following data set which now hits all of the original goals for this project.

What else?

There were some other odds and ends that needed to be address as well:

  1. Lightning Detector - As suspected, the lightning detector had a faulty connection. Fairly easy to fix but I'm still fiddling with the code for this thing. It is still having trouble detecting lightning reliably. I've changed the code a bit to try to dynamically change it's sensitivity to account for different environmental issues but I'm not sure how well that will work. These things are very sensitive to static discharges and I suspect it is still having trouble determining the difference between lightning and noise.
  2. Libraries - I've upgraded all of the underlying libries and now the code is fully current.
  3. Connectors - One of the biggest issues with the longevity of the station is how fast connectors corrode. So, I'm trying out different connectors in a high humidity environment to see what happens. I'm trying to get the best bang for the buck on cost vs reliability. Some of the new internal data I'm collecting now should help with this.
  4. Weather Underground - About the time that I was starting to incorporate the WU API into my code, I received an email stating that they were about to shut down the API and that maybe I'd like to use Weather.com's API instead. Nah, I'll pass. At the time it seemed like they wanted to charge for access so I didn't pursue it.

What's Next?

As I said in the opening of this post, I'm nearly there. Unless I run up against a completely unexpected wall, this should be the last beta for the hardware. I'm fiddling with some 3D printed mounts and such but this is mostly for cosmetic difference rather than operational concerns.

As for the software, this is the last version of the software that is all together combined with this project. I'm spinning off the station code into my first real open source project that will be released to the public on Github. There's a lot to talk about here - more than is appropriate for this post - but just to summarize for now, here are the highlights:

Related Posts