Just some first reactions. My 2¢. Take it or leave it.Press any button and it acknowledges the person e.g. “Hello Ken” (Note 1)
A simple cheery tone would be good enough and not require any reprogramming for different users. I recommend lighting all the buttons when any of them is first pressed. In this regard there would be no difference between the buttons - pressing any one of them triggers the same chime and lights-on.
Both the target and actual should be read, and maybe the HVAC status ("furnace running").“It’s currently 21.5 degrees.”
Too much talking. The arrangement and lit color of the buttons should be more than clear and not need explanation over and over. As for the multi-button press command, I'm confused and I'm not elderly. Why the complexity? If you want automated features (cooling at night, less HVAC when user is gone), then automate it. I thought the whole idea was to enable easy manual control.The stat then continues, “Press the upper button to make it warmer and the lower button to make it cooler. If you are going out, or off to bed, press both buttons together until the beep sounds to make it cooler for that time.”
No need for speech, just go dark and shut up.No input for 50 secs, ‘Going back to sleep…”
This is fine. Most thermostats offer some control over the amount of hysteresis.1 – Reads temp every 1 sec.
Hysterisis. Plus/minus 0.5 degree to give a 1 degree band. So, when set at 21.0 the boiler will not fire until the temp drops to 20.5 but then it stays firing until 21.5 degrees is reached.
I'm not qualified to comment on what the micro is capable of but my first reaction is that this is too slow to respond to a button.2 - Basically, sits there:
a) polling buttons in ‘asleep mode’ every 0.5 sec till it picks up an input. BLUE LED solid on to show ‘listening’
b) runs the temp and control loop every second. Part of running the control loop could be the red LED on the button being solid on when the boiler is firing. Like solid blue to indicate listening this changes to hard alternate flashes when thing 'woken'.
I'm not sure it makes sense for the thermostat to do anything on its own, to undo what the user has set. Picture the old fashioned dial thermometer on the wall. Set it and forget it. Maybe that's a fundamental thing to resolve, what this thing will automate and what it will not. Don't forget that even the old fashioned thermostats had a seasonal mode switch, heat or cool, furnace only or A/C only. Newer ones add "auto".If both pressed before two seconds is up, ignore previous ‘adjustments’ and announce, “The temperature is now set at XX for XX hours.” This also sets a flag called ‘setback’ which then looks up the time and temperature setting assigned to it.
If the setback flag is still set when it senses a single press to wake up, it could say, “Currently xx degrees. Setting temperatures back to normal.”
The setback temp, and the number of hours it is setback for, must be pre-programmable by users support.
Does this make sense ? Is it doable ? Any suggestions to improve ? Where do I start ?