Wrong status
Posted: Wednesday 28 October 2020 13:35
Hello,
I have an issue with Domoticz. Somehow the status in Domoticz is sometimes different then the real status. Over a few days I had it with a windowsensor a Fibaroswitch (attached to my badroom extraction) and thermostat. When I discover it and change it in domoticz it's fine again.
Especially the thermostat (Eurotronic Spirit)is wrong multiple times a week.
I switch it to 8 degrees in the morning and to 18 in the evening.
At first sometimes both in domoticz and the device were both not set after the script ran. So I changed my script and let it check every minute the setpoint, if it's wrong resend the right setpoint. Now the setpoint in Domoticz is right always but the device itself is wrong sometime.
The script seem to work because it's fine most of the time, but to be sure here is my script:
I have an issue with Domoticz. Somehow the status in Domoticz is sometimes different then the real status. Over a few days I had it with a windowsensor a Fibaroswitch (attached to my badroom extraction) and thermostat. When I discover it and change it in domoticz it's fine again.
Especially the thermostat (Eurotronic Spirit)is wrong multiple times a week.
I switch it to 8 degrees in the morning and to 18 in the evening.
At first sometimes both in domoticz and the device were both not set after the script ran. So I changed my script and let it check every minute the setpoint, if it's wrong resend the right setpoint. Now the setpoint in Domoticz is right always but the device itself is wrong sometime.
The script seem to work because it's fine most of the time, but to be sure here is my script:
Code: Select all
return {
on = {
timer = {'every minute between 06:00-07:30', 'every minute between 17:00-17:30', 'every minute between 20:00-20:30'}
},
execute = function(dz, item)
local ThermoPim = dz.devices('Thermo Heat Pim').setPoint
local ThermoIvo = dz.devices('Thermo Heat Ivo').setPoint
local ThermoOns = dz.devices('Thermo Heat Ons').setPoint
local ThermoRobin = dz.devices('Thermo Heat Robin').setPoint
if dz.time.matchesRule('at 06:00-06:30') and
ThermoPim ~= 8 then
dz.devices('Thermo Heat Pim').updateSetPoint(8)
-- dz.notify('Thermo Pim stond niet uit, nieuwe poging')
end
if dz.time.matchesRule('at 06:00-06:30') and
ThermoIvo ~= 8 then
dz.devices('Thermo Heat Ivo').updateSetPoint(8)
-- dz.notify('Thermo Ivo stond niet uit, nieuwe poging')
end
if dz.time.matchesRule('at 06:00-06:30') and
ThermoOns ~= 8 then
dz.devices('Thermo Heat Ons').updateSetPoint(8)
-- dz.notify('Thermo Ons stond niet uit, nieuwe poging')
end
if dz.time.matchesRule('at 06:00-06:30') and
ThermoRobin ~= 8 then
dz.devices('Thermo Heat Robin').updateSetPoint(8)
-- dz.notify('Thermo Robin stond niet uit, nieuwe poging')
end
if dz.time.matchesRule('at 17:00-17:30') and
ThermoPim ~= 18 then
dz.devices('Thermo Heat Pim').updateSetPoint(18)
-- dz.notify('Thermo Pim stond niet aan, nieuwe poging')
end
if dz.time.matchesRule('at 17:00-17:30') and
ThermoIvo ~= 18 then
dz.devices('Thermo Heat Ivo').updateSetPoint(18)
-- dz.notify('Thermo Ivo stond niet aan, nieuwe poging')
end
if dz.time.matchesRule('at 20:00-20:30') and
ThermoOns ~= 16 then
dz.devices('Thermo Heat Ons').updateSetPoint(16)
-- dz.notify('Thermo Ons stond niet aan, nieuwe poging')
end
if dz.time.matchesRule('at 17:00-17:30') and
ThermoRobin ~= 19 then
dz.devices('Thermo Heat Robin').updateSetPoint(19)
-- dz.notify('Thermo Robin stond niet aan, nieuwe poging')
end
end
}