Jag tänkte dela med mig av min erfarenhet av Danfoss LC-13 termostat tillsammans med en Tellstick ZNet Lite V2. Jag ville schemalägga temperaturen: att den går ned på natten (18) och upp igen på morgonen (22). En funktion som tyvärr inte finns out-of-the-box.
1 Jag har skapat en Dummy device via Telldus Live som heter DummyLevel1 (resp DummyLevel2): en Telldus On/off självlearning switch. Vi har 2 våningar och vill styra dem separat
2 Jag kopplade ihop Danfoss och ZNet. Alla namn börjar med ElementLevel1 (resp ElementLevel2)
3 Gå på <Znet-ipadress>/lua och lägg till följande script: (resp Level2)
Code: Select all
- File: SetTempElementLevel1.lua
local deviceManager = require "telldus.DeviceManager"
local COMMAND_CLASS_THERMOSTAT_SETPOINT = 0x43
local SETPOINT_TYPE_HEATING = '1'
function onDeviceStateChanged(device, state, stateValue)
if device:name() ~= "DummyLevel1" then
return
end
if (device:state() == 1) then
print("DummyLevel1:on")
for index, device in python.enumerate(deviceManager:retrieveDevices()) do
if (string.find(device:name(),"ElementLevel1") ~= nil) then
print(device:name())
setDanfossTemperature(device, 18)
return
end
end
return
else
print("DummyLevel1:off")
for index, device in python.enumerate(deviceManager:retrieveDevices()) do
if (string.find(device:name(),"ElementLevel1") ~= nil) then
print(device:name())
setDanfossTemperature(device, 22)
return
end
end
return
end
end
function setDanfossTemperature(device, temperature)
if (device:typeString() ~= 'zwave') then
print("Device %s is not a Z-Wave device", device:name())
return
end
-- Get the raw zwave node
local zwaveNode = device:zwaveNode()
-- Extract the thermostat setpoint command class
local cmdClass = zwaveNode:cmdClass(COMMAND_CLASS_THERMOSTAT_SETPOINT)
if (cmdClass == nil) then
print("Device %s does not support THERMOSTAT_SETPOINT", device:name())
return
end
-- Set new value to be sent the next time the device is awake
cmdClass:setSetpoint(SETPOINT_TYPE_HEATING, temperature)
end
Återkom gärna med tankar och synpunkter! Kanske inte den snyggaste lösningen men jag har testat inatt och det funkade.
/PappaTi