[RELEASE] EZMultiPli - Plug-in Motion / Temp / Light Sensors + Night Light

you get an error in the logs for the device unless you comment out the delay lines in the following function

def setColor(value) {
if (debugEnable) log.debug "setColor() : ${value}"
def myred
def mygreen
def myblue
def hexValue
def cmds = []

if ( value.level == 1 && value.saturation > 20) {
	def rgb = huesatToRGB(value.hue as Integer, 100)
    myred = rgb[0] >=128 ? 255 : 0
    mygreen = rgb[1] >=128 ? 255 : 0
    myblue = rgb[2] >=128 ? 255 : 0
} 
else if ( value.level > 1 ) {
	def rgb = huesatToRGB(value.hue as Integer, value.saturation as Integer)
    myred = rgb[0] >=128 ? 255 : 0
    mygreen = rgb[1] >=128 ? 255 : 0
    myblue = rgb[2] >=128 ? 255 : 0
} 
else if (value.hex) {
	def rgb = value.hex.findAll(/[0-9a-fA-F]{2}/).collect { Integer.parseInt(it, 16) }
    myred = rgb[0] >=128 ? 255 : 0
    mygreen = rgb[1] >=128 ? 255 : 0
    myblue = rgb[2] >=128 ? 255 : 0
}
else {
    myred=value.red >=128 ? 255 : 0
    mygreen=value.green >=128 ? 255 : 0
    myblue=value.blue>=128 ? 255 : 0
}
cmds << "200100"

// cmds << " delay 250"
if (myred!=0) {
cmds << "33060002FF"
//cmds << "delay 150"
cmds << "330702"
}
if (mygreen!=0) {
cmds << "33060003FF"
//cmds << "delay 150"
cmds << "330703"
}
if (myblue!=0) {
cmds << "3306000400"
//cmds << "delay 150"
cmds << "330704"
}
// cmds << " delay 100"
cmds << zwave.basicV1.basicGet()

hexValue = rgbToHex([r:myred, g:mygreen, b:myblue])
if(hexValue) sendEvent(name: "color", value: hexValue, displayed: true)
commands(cmds)

}

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.