hehe, yeah that UI is 'grafana', the company I work for is one of their sponsors. It's a really solid graphing system, we use it everywhere at our corporate offices, got TVs hanging around everywhere with various teams system stats etc.
So ultimately I have grafana set up to take data from graphite (more like carbon-relay, but graphite stack basically). I have a statsd server set up that takes simple UDP based stats, and that bundles em up and sends em to graphite.
statsd makes logging new data really easy, takes UDP datagrams in a really simple ascii format:
<metric name>:<value>|g
So for the raspberry PI, I'm running node.js and thats interfacing with
* 3 "1-wire" digital therms (DS18B20), you can get 3 for like $10 and they're waterproof.
* MH-Z16 CO2 sensor with UART -> I2C breakout board. This is pretty cheap but kinda janky. The breakout board I got with it lets me reboot the meter so it wont auto-calibrate and stuff
* SI7005 - Really janky little i2c humidistat (get the si7020 over the '05 any day). Works, but it pisses off other i2c devices.
* IoT enclosed relay (these things are fucking sweet). Basically a power strip you can control with any sort of digital circuit. Used to turn CO2 on/off.
So node.js basically just babies the sensors, does some smoothing on the data, and just sends it off to statsd for the metrics, plus uses the Co2 data to turn the relay on/off. Initially I wanted to do controlled venting and stuff to control humidity, but honestly im doing everything i can currently to keep any humidity in there at all.
Here's some of the hardware:
CO2 sensor 'assembly', had to move a few jumpers, which was just a cruel joke in the end. Board works, but its mostly melted.
Jumper i was supposed to 'move' lol cruel joke at best.
Finished soldering on the 'hat'. I started off with a breadboard, but every time i bumped the enclosure something stopped working =\
I am realllllly bad at soldering
That surface mount chip was supposed to drive the therms, but I ended up using GPIO and the linux 'one wire over gpio' driver, which works ok.