doctorjerry Posted February 3, 2012 Posted February 3, 2012 I need help writing a program that captures a change in the status of an input on an EZIO2X4 and sends an email notification.
LeeG Posted February 3, 2012 Posted February 3, 2012 This Program triggers when EZIO2X4 Input 1 turns On and sends a Notify If Status 'EZIO2X4 - 9' is On Then Send Notification to 'ALL' Else - No Actions - (To add one, press 'Action')
doctorjerry Posted February 3, 2012 Author Posted February 3, 2012 Lee, Thanks. The program works for me partially. If I run the program it detects the On state and sends a notification. But it does not trigger by itself. Perhaps I better explain how I'm using the EZIO2x4. I use the EZIO2x4 to control a WaterCop solenoid system. With the MobiLinc app I can send the WaterCop an on or Off command from my Iphone. Now, with the program you suggested I have it send me a confirming text message that the WaterCop did indeed turn On or Off. That part is satisfactory. The WaterCop is also triggered at home by leak detectors. When the WaterCop changes state it is wired so that EZIO inputs 1 and 2 change. Using the administrative console I can query the EZIO2x4 and detect these changes. I want the ISY to send the notification whenever these changes occur. The program as is does not do this. How do you have the ISY continually monitor for such changes?
LeeG Posted February 3, 2012 Posted February 3, 2012 Does the Admin Console show Inputs 1 and 2 changing state? How was the EZIO2X4 added to the ISY? Was the Device Type pulldown used to indicate an EZIO2X4?
LeeG Posted February 3, 2012 Posted February 3, 2012 If both Input 1 and Input 2 have to be On to send the Notify the following Program will do that. If either Input being On should send the Notify change the And to an Or. If Status 'EZIO2X4 - 9' is On And Status 'EZIO2X4 - A' is On Then Send Notification to 'ALL' Else - No Actions - (To add one, press 'Action')
doctorjerry Posted February 5, 2012 Author Posted February 5, 2012 I'll explain everything I've done These are the directions I followed to install the EZIO2x4 From the Administrative Console... 1) Click on Link Management from the menu bar 2) Select New INSTEON Device 3) Enter the INSTEON ID of the SHN device you want to add (01.DC.39) 4) Give the device a name (Ex. EZIO1) 5) Select the device from the "Device Type" drop down menu 6) Select whether you want to remove existing links, add devices and remove links, or add devices and keep links to other INSTEON devices. 7) Click OK The ISY will begin populating the device information (inputs, outputs, links, etc...) This worked perfectly. In the administrative console I see 6 ports under EZIO1. EZIO1 - Relay1 EZIO1-2 Relay2 EZIO1-9 Input1 EZIO1-A Input2 EZIO1-B Input3 EZIO1-C Input4 Using the simplehomenet utility, the EZIO output timers were enabled and set to 2 seconds to act as momentary switches. The WaterCop interface has separate On and Off inputs that are controlled by momentary switches. Relay1 is used to control the On switch and Relay2 the OFF switch (+5vdc is supplied by the WaterCop and routed through the relays). Initiating Relay1 or Relay2 using either the Simplehomenet utility or ISY will turn the WaterCop on or off appropriately. The WaterCop interface has separate indicators for On and OFF (+5vdc also). The On indicator is connected to Input1 (EZIO1-9). The Off indicator is connected to Input2 (EZIO1-A). WaterCop Status On = Input1(EZIO1-9) On and Input2 (EZIO1-A) Off WaterCop Status Off = Input1(EZIO1-9) Off and Input2 (EZIO1-A) On I use these programs to check the Watercop Status. 1. WaterCop Notification On If Status 'IOLincs/EZIO1/EZIO1-9' is On and Status 'IOLincs/EZIO1/EZIO1-A' is Off Then Send Notification WaterCop On 2. WaterCop Notification Off If Status 'IOLincs/EZIO1/EZIO1-9' is Off and Status 'IOLincs/EZIO1/EZIO1-A' is On Then Send Notification WaterCop Off 3. WaterCop Status If Status 'IOLincs/EZIO1/EZIO1-9' is On or Status 'IOLincs/EZIO1/EZIO1-A' is On Then Set 'IOLIncs/EZIO1/EZIO1' Query Wait 2 seconds Run Program 'WaterCop Notification On' (IF) Run Program 'WaterCop Notification Off' (IF) No matter how I turn the watercop on or off - with Simplehomenet, ISY or manually, the Adminstrative console shows the proper input changes after a query. These programs work. If I run program 3, I get the appropriate notification. The problem is getting program 3 to trigger itself. It doesn't happen. I tried using Control instead of Status, but it makes no difference.
LeeG Posted February 5, 2012 Posted February 5, 2012 Without the Query the Admin Console does not show changes in state of nodea 9 & A? How old is the EZIO2X4?
doctorjerry Posted February 5, 2012 Author Posted February 5, 2012 No it doesn't. That's why I had to add it to the programs. But if I run a query now the notifications seems to be working. I purchased the EZIO unit 11/21/2010.
LeeG Posted February 5, 2012 Posted February 5, 2012 That purchase date should eliminate a potential problem with internal PLM configuration, Invoke Tools | Diagnostics | Event Viewer with Level 3-Device communications events selected. Then run Tools | Diagnostics | Show Device Links Table for the EZIO2X4 and send me the event trace file at lwgwork@embarqmail.com. I think the trace file will be too big to post In the link record display produced by the Show Device Links Table verify there are E2 09 xx.yy.zz where xx.yy.zz is the ISY PLM address E2 0A xx.yy.zz Was the EZIO2X4 Input information accessed through the SHN Utility? What ISY firmware is being used?
doctorjerry Posted February 6, 2012 Author Posted February 6, 2012 I don't see a selection for Event Viewer with Level 3-Device communications events selected under Tools|Diagnostics
LeeG Posted February 6, 2012 Posted February 6, 2012 What ISY firmware is installed? 3.1.17 is the latest official release. Earlier versions will say Device communications events in the Level pulldown (no 3-). The Event Viewer is invoked. The Event Viewer popup has a Level pulldown that has the Device communication events
LeeG Posted February 6, 2012 Posted February 6, 2012 The ISY is not receiving the EZIO2X4 Input state change messages. This can be caused by a number of things. The EZIO2X4 configuration data has been lost or corrupted. The link records in the EZIO2X4 have been lost or corrupted. Both the configuration data and link records are established when the EZIO2X4 is added to the ISY. Could also be a communication problem between the EZIO2X4 location and the ISY PLM. I’m leaning away from this for now. If the link records are correct then either the configuration data will have to be verified with the SHN Utility or the EZIO2X4 deleted and added back to the ISY so it can be rewritten from scratch. There was a series of EZIOxx devices that were shipped with an internal PLM that had a combination of memory and firmware that are not compatible with the ISY. I believe these were before the time when your EZIO2X4 was purchased. It may be necessary to verify this EZIO2X4 is not in that group of devices. However, the configuration data and link records are higher on the list of possibilities for now. The Event Viewer trace will show what link records are in the EZIO2X4 and where they were written. If they are correct then the configuration data will be the next thing to look at. Because both are established during device add anything that affects their integrity will prevent the EZIO2X4 state change messages from being generated or received.
doctorjerry Posted February 6, 2012 Author Posted February 6, 2012 Firmware v.2.8.16 (2011-02-18) UI v3.1.17 I'm confused with the statement: In the link record display produced by the Show Device Links Table verify there are E2 09 xx.yy.zz where xx.yy.zz is the ISY PLM address E2 0A xx.yy.zz I sent you a compare view of the information. I don't understand what the mismatch between the ISY links and the Device table links means. I can access the input information through the SHN Utility. That utility always requires a query to see a change in status. But the status always coincides with the administrative console.
LeeG Posted February 6, 2012 Posted February 6, 2012 The EZIO2X4 link database in the device itself has been corrupted. You can try a Restore Device and then another Show Device Links Table (event viewer not needed). Was the EZIO2X4 upgraded by SHN?
doctorjerry Posted February 9, 2012 Author Posted February 9, 2012 That worked Lee. I did a restore and the Show Device Links Table comparison is now identical. Now I see the input change immediately. But only only Input 2 seems to change reliably. Not input 1. I now use the change in input 2 to trigger a Query and that shows the changes to both inputs and triggers the notification. So I've have a working model. But I wonder why I'm not getting both inputs to show the change. Any more suggestions?
LeeG Posted February 9, 2012 Posted February 9, 2012 Can you post another Show Device Links Table for the EZIO2X4. For an Input to signal a state change three things have to exist. The Input must have the configuration data set which is Group 9 for Input 1 with the ISY. That same Group 9 must have an E2 09 "plm address" link record in the EZIO2X4 and the PLM must have an A2 09 "EZIO2X4 address" link record. Sounds like one of those pieces of information is missing if Input 2 will signal a state change and Input 1 will not. Since how the link database was corrupted is an unknown it might be best to delete the EZIO2X4 from the ISY and add it back. This should establish all three pieces of data for each input. If you decide to do this I would Factory Reset the EZIO2X4 after the Delete and before adding it back. Be sure to specify the EZIO2X4 Device Type. Auto Discover does not work with SHN devices. Was this EZIO2X4 updated by SHN? EDIT: another thing that can be tried is to swap the connections to Input 1 and Input 2. This will eliminate any possibility of the Input source being associated.
doctorjerry Posted February 10, 2012 Author Posted February 10, 2012 I sent you a copy of the Link table after a restore. Is there a way to embed it into this reply without emailing it? The unit was never updated by the SHN. I did not delete the Iolinc and reinstall. For the most part both sensors are responding as expected, and sending the proper notification. I've been watching the inputs (using MobilLinc on my iphone) and I can see that the inputs seem to flicker a bit during the changeover. I assume this is from the WaterCop. I did read about the use of debounce circuitry when using the IOlinc for a garage door opener, but I have connected the two units directly. I also get multiple notifications occassionally. I assume this has to do with the flickering of the inputs too. Also, if I let a couple minutes pass between switching the Watercop on or off it is much more reliable.
LeeG Posted February 10, 2012 Posted February 10, 2012 The Water Cop is known for its lack of digital signal quality. Did we not go through this when you were using PH? The link database looks good. Below the post text window and posting options there is section for files.
doctorjerry Posted February 11, 2012 Author Posted February 11, 2012 Yes we did. Hello grif091. I never was successful with a debouncing circuit. As you see, I've come to use the ISY. I found it unreliable to run software 24/7 on a computer. Too many power outages here locking up the computer, and always when I was out of town. I had success for years using an Ocelot with X-10 and find a dedicated unit like the ISY preferable. Now that I've got the EZIO working properly I came up with a few programs to give me a reliable status change and avoid multiple notifications. It may be crude, but it works. WaterCop Control If Control 'IOLincs / EZIO1 / EZIO1 - 9' is switched On Or Control 'IOLincs / EZIO1 / EZIO1 - A' is switched On Or Control 'IOLincs / EZIO1 / EZIO1 - 9' is switched Off Or Control 'IOLincs / EZIO1 / EZIO1 - A' is switched Off Then Set 'IOLincs / EZIO1 / EZIO1' Query Wait 1 second Enable Program 'WaterCop Txt Off' Enable Program 'WaterCop Txt On' Else - No Actions - (To add one, press 'Action') ------------------------------------------------------ WaterCop Text Off If Status 'IOLincs / EZIO1 / EZIO1 - A' is On And Status 'IOLincs / EZIO1 / EZIO1 - 9' is Off Then Send Notification to 'Name.2' content 'Name.2' (WaterCop Off) Wait 1 second Disable Program 'WaterCop Txt Off' Else Disable Program 'WaterCop Txt Off' ------------------------------------------------------- WaterCop Text On If Status 'IOLincs / EZIO1 / EZIO1 - 9' is On And Status 'IOLincs / EZIO1 / EZIO1 - A' is Off Then Send Notification to 'Name.2' content 'Name.3' (WaterCop On) Wait 1 second Disable Program 'WaterCop Txt On' Else Disable Program 'WaterCop Txt On' ------------------------------------------------------
Recommended Posts