Tstat10 Reading buttons in a user program

I’m looking on how to read the button events on the tstat10. I want to use the middle 2 butons for a temporary setpoint override control, IE ‘bump the heat’, while retaining the ability to change the setpoint via selecting set by the outside buttons, and adjusting accordingly. Is there a place to monitor keypresses so that I can progarm a temporary timed event?


1 Like

Yes, in the background these buttons are connected to the first three VARS of the Tstat10. The middle two buttons will increment and decrement these vars by one. The outer pair of buttons will select which VAR is in focus for the adjustments up & down. There’s an example program in the Tstat10 by default which has this set up. Two of the vars are multi state variables for modes like fan, heat, cool and so on. The other var is the user setpoint.

I get that functionality. I want to add more. I want to use the middle two buttons without choosing a mode to control a temporary override, so that I CAN choose a mode and make a program change to Var 1,2,3.

We’re always game to add useful features but could you explain that a little clearer though. I think you are saying you’d like to let the middle two buttons adjust the last used parameter without having to first hit one of the outer pair to re-focus.

Not necessarily the last parameter. What I really want is to temporarily override the setpoint with the middle buttons, selecting setpoint with the outers and changin will cause a permanent setpoint change. That way, bump the heat on (or A/C) with the middle buttons, and after a set time (that could easily be set as a program parameter) the setpoint returns to what it was. Clear as mud? All I think i really need is a variable that reads whether or not the button is pressed, and the rest could be coded in a program. That variable ONLY reads a press when NOT in a selected mode via the outer buttons.

I could just write the program so that the temperature setpoint is not changeable, only a temporary override via the thermostat, but would rather have it so that only one button press is necessary to bump the heat.


Hmm, sounds like you would like a temporary setpoint adjustment, that’s pretty simple to do in a program. Store a copy of the setpoint in a VAR20 for instance. Whenever the user hits a button the setpoint in VAR1 is changed, we compare that to the copy in VAR20 and see that they are different. This triggers a timer which allows the A/C to come on after hours, when that timer hits zero we restore the default unoccupied setpoints. If this is what you mean I can program the example up in more detail and post it here.

That I can handle, but I want to use the center two buttons without changing the mode via the outer buttons. Yes, to make a temporary setpoint. Can i detect a center button press independent of VAR 1,2,or 3?


Vars 1, 2 and 3 are tied in firmware to the buttons as mentioned and that’s how things work at present. One thing I noticed when using the Tstat10 buttons is it would be nicer if the first hit should re-focus automatically on the last used parameter on the first hit, that’s one small change we should make.

I read and re-read the posts here but I’m still having trouble to understand the feature you’re thinking of though.

I’ve been thinking of how to explain it better…
I want my wife to be able to use ONLY the middle buttons to bump the heat or A/C, and not have to fiddle or touch the outer buttons. Easier that way. Currently, when the tstat10 times out, the middle buttone become inactive until a mode is chosen. I want to make them temporary override temperature. If the outer buttons are used to choose a mode, then functionality would remain as is now. Clear as mud?


Yep, that’s the thing I was talking about there with the ‘auto focus’ on the last used parameter. We’ll work on this soon.

Except, that when no selection has been made, the centers always focus on setpoint, and possibly adjust a different variable? My thought was for it to always be setpoint, unless specified otherwise.