Skip to content
Snippets Groups Projects
Commit 54ad1790 authored by jkerdreu's avatar jkerdreu
Browse files

Fix old schema + fix negative power + fix wrong power per plug



git-svn-id: https://redmine.imt-atlantique.fr/svn/xaal/code/Python/branches/0.7@2686 b32b6428-25c9-4566-ad07-03861ab6144f
parent 7a112987
No related branches found
No related tags found
No related merge requests found
......@@ -13,17 +13,19 @@ class PowerNode6(core.ZDevice):
relay = self.new_device("powerrelay.basic")
on = partial(self.rel_on,i)
off = partial(self.rel_off,i)
relay.add_method('on',on)
relay.add_method('off',off)
relay.add_method('turn_on',on)
relay.add_method('turn_off',off)
relay.new_attribute("power")
self.monitor_value('relay_%s' % i,core.COMMAND_CLASS.SWITCH_BINARY,i+1,0)
self.monitor_value('relay_%s' % i,core.COMMAND_CLASS.SWITCH_BINARY,i+2,0)
for i in range(0,6):
# powermeter
power = self.new_device("powermeter.basic")
power.new_attribute("power")
# map zwave var to
self.monitor_value('power_%s' % i,core.COMMAND_CLASS.METER,i+1,8)
value = 'power_%s' % i
self.monitor_value(value,core.COMMAND_CLASS.METER,i+2,8)
self.gw.engine.add_timer(self.get_value(value).refresh,30)
def rel_on(self,r_id):
self.set_value('relay_%s' % r_id,True)
......@@ -36,8 +38,12 @@ class PowerNode6(core.ZDevice):
tmp = self.get_value('relay_%s' % i)
if value == tmp:
self.devices[i].attributes['power']=value.data
# force a power refresh on state change
self.gw.engine.add_timer(self.get_value('power_%s' % i).refresh,2,2)
for i in range(0,6):
tmp = self.get_value('power_%s' % i)
if value == tmp:
self.devices[i+6].attributes['power']=round(value.data)
power = round(value.data)
if power >= 0:
self.devices[i+6].attributes['power']=power
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment