I had made lua scene for rooms wich сontain mor then 1 radiator and heat controller
--[[
%% properties
aaa targetLevel
aaa mode
%% weather
%% events
%% globals
--]]
master = tonumber(aaa)
slave1 = tonumber(bbb)
slave2 = tonumber(ccc)
slave3 = tonumber(ddd)
t1 = tonumber(fibaro:getValue(master, "targetLevel"))
t2 = tonumber(fibaro:getValue(slave1, "value"))
t3 = tonumber(fibaro:getValue(slave2, "value"))
t4 = tonumber(fibaro:getValue(slave3, "value"))
local mm = tonumber(fibaro:getValue(aaa, "operatingMode"))
local ms1 = tonumber(fibaro:getValue(bbb, "operatingMode"))
local ms2 = tonumber(fibaro:getValue(ccc, "operatingMode"))
local ms3 = tonumber(fibaro:getValue(ddd, "operatingMode"))
if (t2 ~= t1 or t3 ~= t1 or t4 ~= t1 or ms1 ~= mm or ms2 ~= mm or ms3 ~= mm)
then fibaro:debug ("Temperatures and modes do not match")
fibaro:debug ("t1m = "..t1)
fibaro:debug ("t2s = "..t2)
fibaro:debug ("t3s = "..t3)
fibaro:debug ("t4s = "..t4)
fibaro:call(slave1, "setTargetLevel", t1)
fibaro:call(slave2, "setTargetLevel", t1)
fibaro:call(slave3, "setTargetLevel", t1)
fibaro:call(slave1, "setMode", mm)
fibaro:call(slave2, "setMode", mm)
fibaro:call(slave3, "setMode", mm)
else fibaro:debug ("Temperatures and modes are the same")
end
It works but you can offer your ideas