memphis2k Posted January 4, 2015 Posted January 4, 2015 Hello, Roughly once a week this issue happens, when ISY994i v4.2.18 run its 3AM query, it sets off an alert because the status I/O Linc changes during the Query. I can fix this by Querying the device again once I notice the issue in the morning. The IO Linc sensor is hooked up to a Normally Closed device or N/C. Its a looped wire, and I am sending a alert if the wire ever gets cut hence changing to "OFF" status or N/O. So the I/O Linc always shows an "ON" status in ISY994i. As far as I can tell, there is no way to change or flip-flop the N/C - N/O status in ISY994i. -So my question is, can I switch the normally closed or normally open in ISY? -Is this normally for this to happen? I wanted to ask before I create a program that "re-queries" the Gate Loop Sensor at 3:05am... I guess a person could hook an Arduino up to the Gate Loop wire and reverse it that way... Thanks, ~Aaron
Teken Posted January 4, 2015 Posted January 4, 2015 (edited) Are you using trigger reverse option? Also are you monitoring the relay or the sensor? The relay should not be monitored only the sensor. Sent from my iPhone using Tapatalk Edited January 4, 2015 by Teken
memphis2k Posted January 4, 2015 Author Posted January 4, 2015 I tried it before and it made no difference and I just tried it now. Change it and queried it again. Still says "ON" and the RELAY now says "ON" as well. Any other thoughts?
Jimbo.Automates Posted January 4, 2015 Posted January 4, 2015 (edited) I have had the issue as well, and resolved it by adding another query in the program that sends the alert. I need to have a level 3 event viewer running and send the log to support, but I haven't done that yet. The suspicion is that it's related to bad communication, but haven't been able to prove that... I do not have trigger reverse enabled, and I am monitoring the sensor, not the relay. Sent from my Nexus 7 using Tapatalk Edited January 4, 2015 by Jimbo
Teken Posted January 4, 2015 Posted January 4, 2015 I tried it before and it made no difference and I just tried it now. Change it and queried it again. Still says "ON" and the RELAY now says "ON" as well. Any other thoughts? Just to be clear: You're seeing a flip flop of the relay status when queried, correct? If so this is the expected behavior. If you use trigger reverse and query this will cause nothing but headaches and also is not recommended. If your problem is that your sensor status is NOT showing an accurate state. This is likely a COM issue in the network. Sent from my iPhone using Tapatalk
memphis2k Posted January 4, 2015 Author Posted January 4, 2015 Just to be clear: You're seeing a flip flop of the relay status when queried, correct? If so this is the expected behavior. If you use trigger reverse and query this will cause nothing but headaches and also is not recommended. If your problem is that your sensor status is NOT showing an accurate state. This is likely a COM issue in the network. Sent from my iPhone using Tapatalk Nope, just the sensor. I'm sensing if the wire gets cut, so its normally closed, which ISY reports as "ON". I'll change triggered reverse as that appears to be only for the Relay. I have had the issue as well, and resolved it by adding another query in the program that sends the alert. I need to have a level 3 event viewer running and send the log to support, but I haven't done that yet. The suspicion is that it's related to bad communication, but haven't been able to prove that... I do not have trigger reverse enabled, and I am monitoring the sensor, not the relay. Sent from my Nexus 7 using Tapatalk Yep, my idea was to do a program too. Thought I would ask first before I perform a "fix" cause something isn't acting right. I have around 4 I/O Linc's but the Gate Loop Sensor is the only one that is Normally Closed, the rest are normally open I.E. the gates and the garage door etc.f Thanks.
LeeG Posted January 4, 2015 Posted January 4, 2015 (edited) The "Trigger Reverse" option applies to the I/O Linc Sensor only. Without Trigger Reverse being used, the I/O Linc Sensor is On when the switch (or wire in this case) is closed, Off when the switch or wire is open. The Trigger Reverse option reverses that. The Sensor is Off when the switch or wire is closed, On when the switch or wire is open. The problem with Trigger Reverse is that it does not reverse Query results. The 3AM Query will change the Sensor state because Query returns the True state of the Sensor, not the reversed state from Trigger Reverse. There is another problem with Query results. The I/O Linc will sometimes send multiple messages with the Query results. This causes the Relay state to be applied against the Sensor or the Sensor state applied against the Relay. In a garage door application using a switch that is Open when the door is closed solves the duplicate message issue because the Sensor and Relay are both Off at 3AM. Having the Event Trace running at LEVEL 3 during the 3 AM Query will identify which issue exists. Edited January 4, 2015 by LeeG
memphis2k Posted January 5, 2015 Author Posted January 5, 2015 Thanks for the explanation. Helps a lot. What does everyone think about these 2 programs to combat the Triggered Reverse issue? Since I just turned on the Triggered Reverse, I can see what happens at 3AM. Previously, I would reboot the ISY994i when I received the incorrect reading at 3AM, and that would solve it for about a week. But Yesterday, I manually queried just the I/OLinc Sensor and that solved it. Then this morning, the same issue happened, and says its "off" when it's actually "on". But since I enabled the Triggered Reverse, here are the programs: Fence Wire Cut - 3AM Query If From 3:02:00AM To 3:04:30AM (same day) And Status 'Gate Loop-Sensor' is On Then Set 'Gate Loop-Sensor' Off Set 'Gate Loop-Relay' Off Send Notification to 'Aaron's iPhone Text' content 'Fence Wire Cut - Fix' Else - No Actions - (To add one, press 'Action') Fence Wire Cut If From 12:00:00AM To 2:59:50AM (same day) And From 3:05:00AM To 11:59:59PM (same day) And Status 'Gate Loop-Sensor' is On Then Send Notification to 'Aaron's iPhone Text' content 'Fence Wire Cut' Else - No Actions - (To add one, press 'Action') Triggered Reverse set
LeeG Posted January 5, 2015 Posted January 5, 2015 There are multiple problems. The following Program cannot change I/O Linc Sensor Status with a Set .... Off, at least from the actual I/O Linc perspective. IfFrom 3:02:00AMTo 3:04:30AM (same day)And Status 'Gate Loop-Sensor' is OnThenSet 'Gate Loop-Sensor' OffSet 'Gate Loop-Relay' OffSend Notification to 'Aaron's iPhone Text' content 'Fence Wire Cut - Fix'Else- No Actions - (To add one, press 'Action') This Program cannot generate a True evaluation. The two time ranges do not overlap yet they are Anded together. The time ranges should be Or'ed, paren'ed then Anded with Sensor Status check. If ( From 12:00:00AMTo 2:59:50AM (same day)Or From 3:05:00AMTo 11:59:59PM (same day) )And Status 'Gate Loop-Sensor' is OnThenSend Notification to 'Aaron's iPhone Text' content 'Fence Wire Cut'Else- No Actions - (To add one, press 'Action')
memphis2k Posted January 5, 2015 Author Posted January 5, 2015 Again, your completely right. Cannot set the status of the I/OLinc sensor. So, I'll have to do a Level 3 event trace after I reset everything back to the original way, disable Triggered Reverse. Because with Triggered Reverse enabled, every 3AM query will always change it from "off" to "on" since there is no way to changing "on" to "off".
memphis2k Posted January 10, 2015 Author Posted January 10, 2015 I ended up using an Arduino to reverse the sensor status. Works perfect and no more querying errors. :-/ #include <SPI.h> void setup(){ Serial.begin(9600); pinMode(10, OUTPUT); //To I/O Linc Sensor pinMode(12, INPUT); //From Gate Loop Sensor pinMode(13, OUTPUT); //LED } void loop() { if(digitalRead(12) == HIGH){ digitalWrite(10, LOW); digitalWrite(13, HIGH); } else if(digitalRead(12) == LOW){ digitalWrite(10, HIGH); digitalWrite(13, LOW); } } // void loop
Recommended Posts