Menu

weatherPi / Blog: Recent posts

Data Science?

So I've flopped around for a while, looking for a reasonable way to make a better view of the data gathered by weatherPi. The fist hard part is to decide what a better view might be. The current default display just crams in however many samples will fit in your web view, by dividing the width of the graph view by 5. This moves the points on the graph far enough apart to be able to see them, but even on a 4K display that gives you less than 4 hours visibility, which is likely not what you want.... read more

Posted by Wes Peters 2020-02-15

And a new sensor type

I was digging through my box of Pi/Arduino goodies and came across a few old sensors. Two of them have been destroyed by leaving them out in the weather unprotected. We don't have a lot of weather in SoCal, but we do have thick fogs regularly, which is not at all friendly to electronics outdoors.

At any rate, There was one GYBMEP board in there, so I plugged into a Pi Zero W, checked out the sensor code, and fired it up. It said "Invalid chip ID 0x57." A quick web search revealed that was was indeed a BMP280 chip, not the BME280 I have on the front of the house. What's the diff? The BMP280 has temperature and pressure, but not humidity. It's also a somewhat simpler protocol. Adafruit of course has a CircuitPython module for the BMP, so I hacked up the sensor code to support both, added another setting to the ini file so you can tell the code which you have, et voila! A sensor ready to go.... read more

Posted by Wes Peters 2020-01-09 Labels: sensor BMP280 BME280 Raspberry Pi ZeroW

An un-release!

I've done a few driblets of work on the web UI over the past week, between and around being back to ${DAYJOB}, and have the very very basic display functional enough that I've enabled it on my gateway. So, if you'd like to see what the recent weather is like at the front of my house, surf on over to weatherPi at Handbasket House. I'm actually going to tag this with a version number, but I haven't decided on versioning yet, so the tag awaits this final bit of creativity.... read more

Posted by Wes Peters 2020-01-08

Re-creating the temperature, pressure, and humidity sensor

Happy Solstice/Hannakuh/Christmas/Saturnalia!

I'm having a relaxed holidy, which included some time to work on weatherPi. I repurposed my desktop/development GYBMEP sensor for the new backyard sensor - I managed to kill the old one with a series of rain storms. I have the sensor board (except for the BME280 chip itself) conformally coated, as well as the Raspberry Pi ZeroW. The whole sensor is put back together, with the new CircuitPython version of the sensor code, as well as updates to the package lists and the crontab. ... read more

Posted by Wes Peters 2019-12-26 Labels: sensor ZeroW

Updates, we got updates!

I managed to finish up the end-of-year goals at the dayjob already, so I've had a bit of time to tinker with weatherPi again. I put my Cassandra cluster project on the back burner. So I decided to brush up one of the SQL server backends for weatherPi and bring it into production.

At the same time, my back yard weather sensor failed. The Pi ZeroW is still running, but the BME280 sensor (an inexpensive GYBMEP) is no longer responding. Weather sensors are difficult, because they have to be out in the weather, and this one was insufficiently protected from the rains we've seen. So the updates coming in include:... read more

Posted by Wes Peters 2019-12-23 Labels: web ui sqlite3

To be of service

The server part of weatherPi is, so far, fairly trivial. We have a PUT request to add a sample to the database, and a few simple POST requests to query about the sensors attached, and to query samples from a sensor. But even a trivial server program sort of takes on a life of it's own when it comes to getting it up and running from boot. Todays updates address that issue for the database service.... read more

Posted by Wes Peters 2019-08-19 Labels: web service startup Cassandra Flask gunicorn

Being Resilient

Back in the late 90s, I did a lot of work on so-called "mission critical" equipment. The industry at that time used some very confusing and amusing terminology; you would hear phrases like "redundant," which was not a great selling point for customers in the UK, and even "designed for failure." I can't imagine why you would want to buy something "designed for failure." Even the "hot spare" concept was a little curious, if it's "mission critical" it's not a "spare."... read more

Posted by Wes Peters 2019-08-09 Labels: resilient Bill Joy

Cassandra and Mongo and SQLite and databases oh my!

Q: Why do you have three different versions of the wxWeb server code in this project?
A: It's a learning exercise!

I started this project with Cassandra, because it's what I'm using for my current project at $DAYJOB. Getting Cassandra to run on Pi grade hardware is tricky, I'll blog about that in a later post. Know that the current Cassandra database I'm using is running on an ASUS Tinker Board because I had one available, and it has 2GB RAM. That will change in the future, with the Raspberry Pi 4 out now and available with 4GB RAM. Well, someday soon.... read more

Posted by Wes Peters 2019-08-07 Labels: cassandra mongodb sqlite postgresql mysql

What's so special about the Raspberry Pi?

Before I take the next step in this project, let me indulge in a bit of philosophy first. I get asked a lot -- by both geeks and non-geeks -- why I am so fascinated and thrilled with the Raspberry Pi. This post is at least partly and answer to that.

The Raspberry Pi is an interesting technological confluence. One of the most common asked, and most infuriating questions I get from beginners (I'll just refer to them as noobs from now on) are the "what is the best ..." questions. Best computer, best operating system, best language, best IDE, best graphics editor, on and on and on and on.... read more

Posted by Wes Peters 2019-08-07 Labels: Raspberry Pi Raspbian best

It's Alive!

What's alive? This blog, this Sourceforge project, and my weather net!

weatherPi

I've been tinkering around the edges of this for ages, and finally pulled all the different parts together to get the sensor part working. As I've been pulling this all together, the tought occurred to me that I should blog the steps I've taken, both technological and idealogical, to come up with this little project and bring it to some sort of useful life. So where we have the the weatherPi blog.... read more

Posted by Wes Peters 2019-08-04 Labels: RaspberryPi Python Tinker Board Cassandra Flask