Hello there
I’m using Elgato StreamDeck Plus (the one with dials) and want to use it in conjunction with the Homeassistant Add-On to control the temperature of my climate device in my Home Assistant Core on Raspberry PI (Tuya integrated).
So far I got everything working with changing the climate modes and turning it off and on.
The only thing I don’t get to work is to increase or decrease the climate with the dial of the Streamdeck.
The description is as follows:
Available options
temperature Target temperature.
target_temp_high High target temperature.
target_temp_low Low target temperature.
hvac_mode HVAC operation mode.
Available variables
{{ ticks }} - The number of ticks the dial was rotated (negative value for left turn, positive value for right turn).
{{ rotationPercent }} - A number between 0 and 100 that represents the rotation percentage value of the dial.
{{ rotationAbsolute }} - A number between 0 and 255 that represents the absolute rotation value of the dial.
Dial rotation tick multiplier (x1)
Each tick of the dial will be multiplied with this value. This results in faster or slower value changes.
Dial rotation tick bucket size (300 ms)
If greater than zero, ticks are aggregated for the given amount of milliseconds and then passed to your service call. This results in less service calls. A value of zero will result in a service call for each tick, which may cause trouble with home assistant.
The only way to make it do anything at all is setting the service data JSON to the following:
{
"temperature": {{ ticks * 10 }}
}
However turning the dial one “tick” isn’t doing anything, turning it about 5 or more ticks I can then hear a beep from the climate and the temperature goes to random values (atleast seems like that to me).
Maybe it’s interpreting the ticks as a certain number and setting the temperature to the number.
I often get the temperature to values of 17 or 30(max limit) when turning the dial only to the right and starting from 22.
Do I have to change it so that I’m not using the climate entity but instead call a script?
I don’t know how to write that though, since it needs to understand if the knob has been turned left or right.
Does anybody know how to solve this or maybe already has a solution at hand?