Finish the startup wrangling - no need to use a port state variable, the gpiozero I/O port does that for us.
Use gpiozero for relay switching; load pin configuration from json then port configuration from database; provide reasonable defaults on startup.
Add a test program to cycle the relays, also document gpiod usage
Typod port I
Introduce the full relay object as a map
Sync pins configurations with documentation in README
being grounded is important
Rework pins table for cascading pass through cable style
Markdown still sucks
make pin maps per documentation
Markdown is DUMB
Markdown is DUMB
Table format almost
Pooched format port table better, try again
Pooched format port table better, try again
Pooched format port table better, try again
Pooched format port table better, try again
Format port table better
Update relay description, add details of how to configure for 1, 2, or 3 relay modules
UTSL! It's a tiny simple python program to verify my BMP280 is still working.
Well, first of all, my SourceForge is mostly nothing but clutter. But more importantly, my approach to learning any new topic or technique in coding is to try to distill it down to a very simple program, preferable one that does something semi-useful. When I needed to add an auto-updating section to an embedded web gui, I was certain there should be a very simple short path to doing so using AJAX, but I hadn't done any real JavaScript coding in ages, so I wanted to create a simple auto-update web...
Initial checkin of thermoweb example
Clearer? I hope? Plus beginning config.
Organize better
Initial commit
Cleanup a bit in prep for modularization and threading
Use hmc5883l module
Modularize hmc5883l code
Basic multi-connection working
Home
Initial commit
Stop babbling to stdout
Remove first (failed) attempt
Display the temp in the icon, add updated icons
First stab as the systray temp app. It does display icons in the tray at this point.
Wow, this actually works. It's chatty and doesn't have a digital temperature display yet, but totally worth saving.
Prepare to import the C version
Fix the date labelling axis
Switch to the day view for the default chart
Put the timestamps back in the output with the name the UI expects
Fix the day view to output a bit more like the existing call
Data Science?
Run as a WSGI service.
Merge branch 'master' of ssh://git.code.sf.net/p/weatherpi/code
First stab at the cpu temperature display using the 10-segment color LED. The LED colors are, from cold to hot: BGGGGYYYRR.
And a new sensor type
And a new sensor type
Add preliminary support for BMP280 as well
Add sensor name to ini file, rather than using hostname
Have to be in the sensor directory now, so we can find the ini file.
Merge branch 'master' of ssh://git.code.sf.net/p/weatherpi/code
Add Fahrenheit temperature
An un-release!
Display the correct number of points always
Handle chart width sensibly: get the horizontal size of the chart and scale the number of datapoints to that. This is not reactive at this point, it only samples the width on load.
The deb packages you need for this to work.
Use moments to display the time data.
Un-invert the samples before sending them so they come out in the right order on the graph
Add the "since" API to make charting more sensible.
Images 713 and 714 are the BME280 sensor that got exposed to the rain. I'll clean it up and see if I can determine which component(s) failed, but it's probably a write-off. Images 711 and 712 are the ZeroW and new sensor sporting a fresh conformal coating. Image 715 is the conformal coating I'm using.
Re-creating the temperature, pressure, and humidity sensor
Use the new recordBME program, based on the CircuitPython library.
Make executable, duh.
On this day, a sensor is (re-)born
Bring requirements up to date for the CircuitPython version of the recorder.
Add chrony for time sync, pip for fetching python packages.
recordBME is a rewrite of cassBME using the supported Adafruit CircuitPython driver for the BME280. Some basic configuration has been moved into an ini file, to make it easier to accomodate sensors outside of my network names.
Simplistic web ui for weatherPi. This has a dropdown for choosing a sensor, but the sensor in the graph is still hard coded; I'm
Updates, we got updates!
Better formatting
Describe this part of the system a bit more.
Bring the SQLite3 implementation up to working order
Move configuration into a single configuration file
Flesh out installation a bit
ToC looks stupid there
Add more missing
Add an overall project Readme too
Add readme for the sensor code.
Hopefully slightly more Sourcegforge-friendly formatting.
Add a Readme to describe what's in this directory.
To be of service
Clean out unused old configuration line
Specify python3 as the runtime for this program.
Add an nginx site file to forward requests from my gateway into
Add a wsgi app runner module and a systemd service to run this
Oops, inadvertantly caused a merge. This is probably just the client code.
Add list of packages needed to make this work.
Try to make sure this list is complete
The crontab I used to run the sensor on a Pi Zero W or a Pi 3B.
Being Resilient
Make this more resilient on startup:
Merge branch 'master' of ssh://git.code.sf.net/p/weatherpi/code
Add a sqlite3 implementation of the database code.
Make this more resilient on startup. Wait for the network to come
Cassandra and Mongo and SQLite and databases oh my!
Add a sqlite3 implementation of the database code.
The MongoDB version of the wxWeb application. Database abstractions
Oh, a special addition for everyone who wants to ask "Why not Windows?" My answer: "Why not? But not until you're familiar with the Pi." Windows 10 on a Raspberry Pi 4 with 4GB of RAM might almost be useful. The uSD card I/O is nowhere near as fast as the (now mostly fast solid-state) storage access we're used to in even cheap laptops. It's hundreds of times slower, so don't expect this to be a $55 business desktop. Also, relatively few Windows applications are compiled for the ARM architecture....
What's so special about the Raspberry Pi?
It's Alive!