I tried for a long time to keep humidity in my cigar humidor at constant level. No luck. I have humidity beads from Heartfelt Industries designed to keep 65% humidity but still there was too much fluctuation in humidity, one loss of all cigars because of mold and too much work to check the humidity levels often enough.
That was before my humidor was connected to the Internet of Cigars.
My humidor has Zwave humidity sensor Everspring ST814 that sends report to my home automation system every time humidity changes 5% and temperature by 0,1C. I would like to have a sensor that reports humidity even more often but the market is small.
Home automation system itself doesn't do anything for data because it has limited capabilities for graphing the historical values so I've configured it that is only receives the Zwave reports. Home Automation software I use (OSA) has also RESTful interface so it's easy to make queries of current humidity in humidor.
The monitoring and graphing
For graphing and alerts I use Cacti, widely-used monitoring and graphing tool. Cacti is open-source which means it's not the user-friendliest software in the world but like many OS software it is powerful and versatile. It is easy to write scripts to Cacti that then acts as sensors. The Cacti is written in Perl so the native language for monitoring scripts is also Perl. The Cacti script for Zwave humidity sensor simply fetches the RESTful data in JSON and reads the temperature and humidity values to Cacti. With Perl it's only a 10-20 lines of code.
Cacti uses RRD database for sensor data and RRD stands for Round Robin Database. RRD saves values in pre-created constant-sized database files and when it reaches the end of file it starts over in Round Robin fashion. There can be many files in that way that one file contains data in week level, one in month level and one in year level each with different temporal resolutions.
Here's a hourly view.
Daily view, same straight line so let's skip the Weekly and Monthly views and go straight to Yearly view.
Cacti has a plugin architecture and it being open source, it has lots of plugins. Plugin I use to alert me is Threshold. When the humidor humidity is too high(>75%) or too low(<60%), the Threshold plugin sends me an email every four hours. As you can see from the yearly view I have to add some water to humidor once in a month. I could tighten the warning levels a little bit but this is not too much work for a lazy smoker I am. The alerts are send with sendmail so some additional configuration was needed that Cygwin environment was able to send mails via SSMTP.
My Internet of Cigars keeps a constant watch of my cigars well-being and gives orders to water boy (me) to refill the beads with water. Now I can enjoy my cigars with no stress and wait for IoC to appear in Gartner reports :)