The Mother of Necessity definitely has given me a reason to sit up and take notice.
I had a brainstorm as I was going through the Thermostat Enhancement plugin v1, and I realized that there was a simpler logic that I could follow that would simplify the design quite a bit.
I am still working on this a bit, but I believe that the core of plugin is solid and stable at this point.
I am waiting on a Zwave multi sensor, to ensure that the concept is extendible (since it has a temperature sensor). And working on creating a reporting system for this.
How is this different from v1?
- The new plugin has an infinite storage capacity, where the old system was limited by the allowed size of Indigo's states for the devices.
- that there is now only two different CSV files, the daily file which contains the statistics for each day. And a weekly file. Each entry is in the form of XXXX-YYYY, where XXXX is either the Gregorian day or week number of the year, and YYYY is the year. So January 5, 2014 would be 005-2014.
- Currently the data is stored in a pickle in ~/documents/Thermostat_data, and I have written a python script which will export it to a CSV file.
- Each CSV contains the same basic data.
- Thermostat (ID) - The Indigo ID # of the thermostat
- Day-Year - The Gregorian Day #, followed by the year in YYYY format. (eg. 5-2014 would be January 5th, 2014)
- Cooler - Minutes of AC / Cooler runtime
- Heater - Minutes of Heat / Furnace Runtime
- Fan - Minutes of Fan usage / Fan Runtime
- High temp - The Maximum detected temperature for that day from the thermostat
- Low Temp - The minimum detected temperature for that day from the thermostat
- High Humidity - ditto, for humidity
- Low Humidity - ditto, for humidity
The data files are comprehensive, and contain all the thermostat's in the single (daily or weekly) file. Thus the Thermostat ID, so that you can easily sort by the thermostat. But this also allows you to directly compare between days (e.g. 1/5/2014, 1/5/2013, 1/5/2012). But you can also then compare the weekly to see if the daily change may have been part of a trend.
The Monthly and Yearly date can be derived from the Daily and Weekly figures. Currently my concept is that the CSV would be imported into Excel / Numbers, etc, to allow more analysis.
Is there any additional information you think would be helpful?