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



