skisteep Posted August 8, 2015 Posted August 8, 2015 Wondering if I can use the EZIO2X4 IO module in analogue mode, ie. I want to attach an Analogue light sensor to the EZIO and get a digital value recorded in ISY. Note: according to EZ this controller can output a value from 0-1024 from an analogue input Wayne
LeeG Posted August 8, 2015 Posted August 8, 2015 The ISY does not have support for reading analogue values from I3 and I4.
skisteep Posted August 8, 2015 Author Posted August 8, 2015 Thanks for the info, hmmm, any ideas on how get this to work. I know a Raspberry PI or similar could get the job done, but more futzing than I have time for right now, would like a complete commercial solution. Wayne
LeeG Posted August 8, 2015 Posted August 8, 2015 I used Powerhome for years where you can issue just about any command but moved to the ISY about 8 years ago. The Simplehomenet Utility can set up analog ranges where the I3 and I4 Inputs will send On or off commands based on analog value but the ISY does not access the actual analog value.
larryllix Posted August 8, 2015 Posted August 8, 2015 Dang! I want it now!! People spend oodles of time attempting to get analogue values into ISY. Autellis, RPi and WebControl, using 1wire sensors, are the common ways to get analogues in.
Scott847 Posted August 9, 2015 Posted August 9, 2015 Thanks for the info, hmmm, any ideas on how get this to work. I know a Raspberry PI or similar could get the job done, but more futzing than I have time for right now, would like a complete commercial solution. Wayne Have you considered a Z-Wave device with a light sensor like the Aeotec MultiSensor 6? Depending on what you want to accomplish it could be a good solution. Someone asked about its light sensor capabilities and I posted a chart showing some data it reported to the ISY at http://forum.universal-devices.com/topic/16323-setup-and-usage-of-aeotec-multisensor-6/?p=145514
skisteep Posted August 10, 2015 Author Posted August 10, 2015 Scott...Thanks for the tip, I'll check out Z-Wave...Wayne
skisteep Posted August 14, 2015 Author Posted August 14, 2015 Scott Thanks for the great tip, the MultiSensor 6 works wonders, I had to buy the Z-Wave board for the ISY, but was planning to already. One question, the STATUS variable is a mystery, what does it represent??? Wayne
Scott847 Posted August 15, 2015 Posted August 15, 2015 Scott Thanks for the great tip, the MultiSensor 6 works wonders, I had to buy the Z-Wave board for the ISY, but was planning to already. One question, the STATUS variable is a mystery, what does it represent??? Wayne My MultiSensor 6 created four devices: - ZW017_104 Binary Sensor - ZW017_155 Motion Sensor - ZW017_1 Multilevel Sensor - ZW017_157 Tamper Alarm Looking at the event viewer it appears when motion is sensed the Motion Sensor is set to Status = On and the Multilevel Sensor is set to Status = 100%.
skisteep Posted August 23, 2015 Author Posted August 23, 2015 (edited) Scott and others, Is there a way to get the luminance value into an ISY variable?? Wayne Edited August 23, 2015 by skisteep
Scott847 Posted August 24, 2015 Posted August 24, 2015 Scott and others, Is there a way to get the luminance value into an ISY variable?? Wayne Until Version 5.0 is available I believe there are indirect ways to get values into variables. But this may not be necessary depending on what you want to accomplish. Following for example is a set of three programs that will turn on/off device "Stairway Night Light" based on the luminance value. "s_Stairway_Light" is a state variable that is set to turn the light on or off. The 5 minute timer keeps the light on for at least that many minutes in case lighting is variable and can be adjusted as needed. And the 15 lux turn off level and 10 lux turn on level can also be adjusted as needed. *********** PROGRAM #1: Control Stairway Light If $s_Stairway_Light is 1 Then Set 'Stairway Night Light' On Else Wait 5 minutes Set 'Stairway Night Light' Off PROGRAM #2: Check Light High If Status 'Stairway Sensor' >= 15 lux (Luminance) Then $s_Stairway_Light = 0 PROGRAM #3: Check Light Low If Status 'Stairway Sensor' <= 10 lux (Luminance) Then $s_Stairway_Light = 1
skisteep Posted August 24, 2015 Author Posted August 24, 2015 Thanks Scott, I'm trying to create a moving average of the Luminance value from the MultiSensor 6(as you know from your Luminance values over time graph, it is very sensitive), so I need to either get the Luminance value into a ISY variable, or use an external program like PHP or Powershell to capture the current Luminance via REST, process it into a moving average, and then REST it back to the ISY. It's Looking like the later method is the only way to do this, until V5 Wayne
Scott847 Posted August 24, 2015 Posted August 24, 2015 (edited) Thanks Scott, I'm trying to create a moving average of the Luminance value from the MultiSensor 6(as you know from your Luminance values over time graph, it is very sensitive), so I need to either get the Luminance value into a ISY variable, or use an external program like PHP or Powershell to capture the current Luminance via REST, process it into a moving average, and then REST it back to the ISY. It's Looking like the later method is the only way to do this, until V5 Wayne How will you be using the moving average? The chart I created was from data I sent from ISY to Smart Energy Groups. Data can be exported from there to calculate moving averages but I assume you may be interested in something more real time. Edited August 24, 2015 by Scott847
MWareman Posted August 24, 2015 Posted August 24, 2015 Scott and others, Is there a way to get the luminance value into an ISY variable?? Wayne If you have 4.3.10 and the network module, you can have anything that's substitutable in email set as a variable by using a network resource and variable substitution calling the rest interface directly on the ISY to set the variable.
skisteep Posted August 24, 2015 Author Posted August 24, 2015 (edited) How will you be using the moving average? The chart I created was from data I sent from ISY to Smart Energy Groups. Data can be exported from there to calculate moving averages but I assume you may be interested in something more real time. Yes, I'm using Luminance to control my Hunter Douglas Powerview shades, so I need realtime, but also smoothing so that they aren't constantly going up and down, MWareman has an interesting suggestion so I might not need to use my server and Powershell If you have 4.3.10 and the network module, you can have anything that's substitutable in email set as a variable by using a network resource and variable substitution calling the rest interface directly on the ISY to set the variable. Thanks, this looks interesting, would you expand on how-to do this, I can't find any threads or documentation. Note: I'm getting Luminance values from a MultiSensor Z-wave device, so not sure that I can even get to the Luminance values via EMail Variables Wayne Edited August 24, 2015 by skisteep
MWareman Posted August 25, 2015 Posted August 25, 2015 Thanks, this looks interesting, would you expand on how-to do this, I can't find any threads or documentation. As I mentioned, you'll need the network resource... 'http' 'GET' 'Host' [iP of ISY] Port [80 or non-ssl port of ISY] Path Example: /rest/vars/set/2/128/${sys.node.27 FA 4D 1.ST.raw} Encode URL: Unchecked Timeout: 500ms In the Headers, add: Authorization Set the username and password to your ISY username and password Save it, and test. Details of the Path: /rest/vars/set/ tells ISY 'I want to set a variable' 2 tells ISY 'set a state variable' (use 1 for an integer) 128 is the variable number (look this up on your ISY admin console variables tab) ${sys.node.27 FA 4D 1.ST.raw} is the substitution variable for the device. Watch out - this needs to be an integer - Insteon devices are normally ranged 0-255. The .raw means 'an unformatted raw value'. Note: Do *not* use 127.0.0.1 for the IP address! There is a limitation in the networking stack of ISY that means this will not only not work - it can actually hang the ISY. Michael.
skisteep Posted August 25, 2015 Author Posted August 25, 2015 Thanks for the explanation, got the Network Resource module, but ran into a dead-end on capturing the value I need from the Z-Wave MultiSensor. Below is the XML file when I do a REST get using http://MYISYIP/rest/nodes/ZW002_1/ The value I'm trying to capture is towards the end of the file, named "LUMIN", it has a value of 7100, any ideas on how to do this?? >>> My XML file -<nodeInfo> -<node flag="128"> <address>ZW002_1</address> <name>ZW 002 Multilevel Sensor</name> <family>4</family> <parent type="3">45379</parent> <type>4.33.1.0</type> <enabled>true</enabled> <deviceClass>0</deviceClass> <wattage>0</wattage> <dcPeriod>0</dcPeriod> <pnode>ZW002_1</pnode> <sgid>1</sgid> -<devtype> <gen>4.33.1</gen> <mfg>134.258.100</mfg> <cat>118</cat> </devtype> <ELK_ID>D05</ELK_ID> <property uom="51" formatted=" " value=" " id="ST"/> </node> -<properties> <property uom="51" formatted="100%" value="100" id="BATLVL"/> <property uom="22" formatted="21%" value="21" id="CLIHUM"/> <property uom="17" formatted="85.10° F" value="8510" id="CLITEMP" prec="2"/> <property uom="51" formatted=" " value=" " id="DOF"/> <property uom="51" formatted=" " value=" " id="DON"/> <property uom="36" formatted="71.00 lux" value="7100" id="LUMIN" prec="2"/> <property uom="51" formatted=" " value=" " id="ST"/> <property uom="71" formatted="0.00 UV Index" value="0" id="UV" prec="2"/> </properties> </nodeInfo> <
Scott847 Posted August 25, 2015 Posted August 25, 2015 (edited) Yes, I'm using Luminance to control my Hunter Douglas Powerview shades, so I need realtime, but also smoothing so that they aren't constantly going up and down, MWareman has an interesting suggestion so I might not need to use my server and Powershell Wayne, the general approach I mentioned above might work more reliably than calculating a moving average. In the following program example you would adjust the high light level of 75 lux, low light level of 15 lux and time delays to open or close to meet your needs. Most important is that the low light level of 15 lux be lower than the light level right after your shades close to avoid them starting the time delay to open the blinds right after they've closed. Michael, thanks for the info about updating ISY variables from ISY. I was just going to be trying to figure this out for another project I'm working on. **************************** *** PROGRAM #1: Open Blinds If $s_Blinds_Open_Request is 1 And $s_Blinds_Open is 0 Then Wait 45 minutes [send command to open blinds] $s_Blinds_Open = 1 *** PROGRAM #2: Close Blinds If $s_Blinds_Open_Request is 0 And $s_Blinds_Open is 1 Then Wait 10 minutes [send command to close blinds] $s_Blinds_Open = 0 *** PROGRAM #3: Check Light High If Status 'MultiSensor' >= 75 lux (Luminance) Then $s_Blinds_Open_Request = 0 *** PROGRAM #4: Check Light Low If Status 'MultiSensor' <= 15 lux (Luminance) Then $s_Blinds_Open_Request = 1 [Edited: I had delays for open and close reversed - you probably want to close the blinds with less delay than opening] Edited August 25, 2015 by Scott847
Recommended Posts