Releases: thomasnorris/BoilerControl
Add Logging
The Node-Logger
submodule was added for easy logging of events, as there was no way of logging any information before.
Schedule Fixes
The program was set to add a minute to each schedule if a schedule was supposed to run when the system could be reading/writing to a file. Sometimes the schedule would be delayed more than 59 minutes, which is the maximum number for minutes for a chron scheduled job. Any more time added on would make the chron job invalid, and the schedule would never run. Simple hour parsing was added to add an hour to the cron job if it were delayed more than an hour.
General Cleanup
The project as a whole was generally cleaned up and improved.
Well Savings
Using the gas well saves money, so now a display has been implemented to display how much money has been saved.
File Organization and Renaming
Some hefty changes in this release include:
- Local file importing is easier than ever. Files can be anywhere in the
bin
folder and will be found automatically - Folders have been created for organization
- Files have been renamed
- CSV name has been changed to
Boiler Data
- Archive files have the name
archive name-month year
, i.e.Boiler Data-December 2017
- DB name has been changed to
db
- CSV name has been changed to
Blynk Error Logging
Catches Blynk errors and logs them to a text file instead of throwing an uncaught exception.
Also in this release:
- Blynk now waits for the local server to come online before attempting to connect
- This was causing a lot of errors to be thrown which is the main reason for catching and logging the errors
Blynk Timer Pretty Printing
Timers in the Blynk app now show in a HHh MMm format which is more pleasing on the eyes. The CSV now shows timers in a HH.MM format.
In addition:
- The reset system job was flawed and would return undefined. This has been fixed.
Local Server
A local server was configured to be used instead of connecting to Blynk's servers. The main purpose of this is unlimited energy, however the server can be fine-tuned and adjusted if needed.
In addition:
- A current call for heat timer was added that will show the real time duration of the current call for heat
Yearly Data Reset and Conflicting Schedules
Every year the data should be cleared at the end of the heating season, which is set to be July 1st. There is a new schedule that will run on this date to save and clear the data for the next season. In addition:
- Conflicting schedules were fixed
- Two schedules were attempting to delete the db at the same time
- Appending data to the CSV does not need to be file-safe, and as such it has been changed
- Other formatting changes for easier readability/manageability
Conditional Date Creation
A new date would be created and pushed to the db and old dates could be overwritten. Now date creation is conditional, so that the old dates are preserved when necessary.