I was gifted a few old barometers and one of them was broken beyond repair. After many months of staring at what was essentially a neat looking paper weight, I decided to make it "useful" again.
If you've perused my other repositories, you might have notice an aviation theme to some of them - well, surprise! This one is too. I'll be polling the aviation weather API offered by aviationweather.gov and using the data to drive physical needles on the barometer.
I'm not familiar with the beast that is C++
, so please don't make fun of any
of the incredibly stupid and/or inefficient mistakes I'm going to make. We all
benefit from watching someone else learning out loud. Wheels up!
The first challenge for every project is setting scope. "What exactly am I trying to accomplish?" I never know...and let's be honest with ourselves - with a personal project like this - who ever knows? Don't fib...you don't know either.
Usually I start with an idea and then it balloons into a monstrosity. This time the scope was pretty much limited by the hardware. There are three needles and they need to point to the right numbers. Simple, yeah?
Now, the observant reader will have noticed that the words "pretty much" were italicized. Why would that be? Scope creep happens to the best of us. More on that in another branch.
- Acquire METAR
- Parse METAR
- Process
altim
- Drive barometer stepper to position using
altim
- Build barometer stepper homing mechanism
- Commit last barometer stepper position to permanent storage
- Drive temperature stepper to position using
temp
- Build temperature stepper homing mechanism
- Commit last temperature stepper position to permanent storage
- Drive humidity stepper to position using
temp
anddewp
- Build humidity stepper homing mechanism
- Commit last humidity stepper position to permanent storage
- Build web-based configuration options
- Airport selection
- Consolidated Stepper Homing
- Add BME 280 Environment Sensor for local data
- Build automatic or manual toggle for switching between local/remote data