jrk1963 Posted November 23, 2011 Posted November 23, 2011 Hi A couple of newbie question. I've had instances where the device did not turn on when the program ran, but the PLM seemed to think the device was on. When you use the query function in a program, does it just check what the PLM thinks the status is, or does it actually check with the device. If you query a scene with multiple modules where not all are on, what status would you get? My hope is to write a program in such a way that it will keep running until the device actually turns on/off - depending on what the program is doing. Please see below for an example.. This program is named "Christmas On" If From 5:00:00PM To 5:30:00PM (same day) And ( Status 'Christmas / Candles 1' is Off Or Status 'Christmas / Candles 2' is Off Or Status 'Christmas / Candles 3' is Off Or Status 'Christmas / Christmas Outside' is Off Or Status 'Christmas / Christmas Projector' is Off Or Status 'Christmas / Christmas Tree Module' is Off ) Then Set Scene 'Christmas / Inside' On Set Scene 'Christmas / Outside' On Set Scene 'Christmas / Christmas Tree' On Wait 2 seconds Set 'Christmas / Candles 1' Query Set 'Christmas / Candles 2' Query Set 'Christmas / Candles 3' Query Set 'Christmas / Christmas Outside' Query Set 'Christmas / Christmas Projector' Query Set 'Christmas / Christmas Tree Module' Query Wait 30 seconds Run Program 'Christmas On' (If) Else - No Actions - (To add one, press 'Action') Thanks Jerry
oberkc Posted November 23, 2011 Posted November 23, 2011 If you query a scene with multiple modules where not all are on, what status would you get? I am not sure that one can query a "scene". I've had instances where the device did not turn on when the program ran, but the PLM seemed to think the device was on. Sounds like the program ran, but the device failed to respond. Make sure your PLM is not plugged into surge suppressors or UPS. Make sure your PLM is not plugged into the same outlet or circuit with lots of computer stuff, including surge suppressors and UPS, power supplies, etc.... I understand that the PLM status and actual device status can be different during times of communication difficulties.
LeeG Posted November 23, 2011 Posted November 23, 2011 “does it just check what the PLM thinks the status is, or does it actually check with the device†A device Query communicates with the device. The ISY maintains what it thinks is the current device status. When a Scene is turned On the ISY marks devices in the Scene as they are defined to react, not necessarily how devices actually react. The PLM does not track device status. “If you query a scene with multiple modules where not all are on, what status would you get†oberkc is quite right, a Scene does not have a status of its own. Not part of the Insteon architecture. A Query of a Scene does not produce device status updates. It will be necessary to Query each device.
IndyMike Posted November 29, 2011 Posted November 29, 2011 Lee and Oberkc, I'm sorry, but I must respectfully disagree - A scene can be queried and it will produce status updates for each device within the scene. The scene itself does not have a status. I use the following two programs to ensure that my outdoor lights are not inadvertently turned on during the day. The Outside Daytime program will trigger anytime the ISY recognizes that one of my outdoor lamps has been turned on. Program Outside Daytime If From Sunrise + 1 minute To Sunset - 10 minutes (same day) And ( Status 'Outdoor / Entry Deck' > Off Or Status '1st Floor / Mud KPL 1 - Entry Garage' > Off Or Status 'Outdoor / Entry Patio' > Off Or Status 'Outdoor / Entry Porch' > Off ) Then Wait 2 minutes Set Scene 'SC Ouside Night' Off Else - No Actions - (To add one, press 'Action') The Poll program is only necessary if the ISY "missed" an outdoor lamp being turned on. The query will interrogate each device in the scene. If there is a status change in one of the devices ( > off) the Outside Daytime program will trigger to turn off the scene. Program Outside Daytime Poll If From Sunrise + 1 minute To Sunset - 10 minutes (same day) And Time is Last Run Time for 'Outside Daytime Poll' + 30 minutes Then Set Scene 'SC Ouside Night' Query Else - No Actions - (To add one, press 'Action') The following is the Event Viewer output after running the Query program on the Scene. It shows each device in the scene being interrogated and responding with it's status. Tue 11/29/2011 04:14:30 PM : [iNST-ACK ] 02 62 0C.7A.38 0F 19 00 06 LTSREQ (LIGHT) Tue 11/29/2011 04:14:30 PM : [iNST-SRX ] 02 50 0C.7A.38 13.22.F9 2B 00 FF (FF) Tue 11/29/2011 04:14:30 PM : [standard-Direct Ack][0C.7A.38-->ISY/PLM Group=0] Max Hops=3, Hops Left=2 Tue 11/29/2011 04:14:30 PM : [iNST-ACK ] 02 62 03.42.48 0F 19 00 06 LTSREQ (LIGHT) Tue 11/29/2011 04:14:31 PM : [iNST-SRX ] 02 50 03.42.48 13.22.F9 2B 00 00 (00) Tue 11/29/2011 04:14:31 PM : [standard-Direct Ack][03.42.48-->ISY/PLM Group=0] Max Hops=3, Hops Left=2 Tue 11/29/2011 04:14:31 PM : [iNST-ACK ] 02 62 0C.77.D2 0F 19 00 06 LTSREQ (LIGHT) Tue 11/29/2011 04:14:31 PM : [iNST-SRX ] 02 50 0C.77.D2 13.22.F9 2B 00 00 (00) Tue 11/29/2011 04:14:31 PM : [standard-Direct Ack][0C.77.D2-->ISY/PLM Group=0] Max Hops=3, Hops Left=2 Tue 11/29/2011 04:14:31 PM : [iNST-ACK ] 02 62 09.8C.CD 0F 19 00 06 LTSREQ (LIGHT) Tue 11/29/2011 04:14:32 PM : [iNST-SRX ] 02 50 09.8C.CD 13.22.F9 2B 00 00 (00) Tue 11/29/2011 04:14:32 PM : [standard-Direct Ack][09.8C.CD-->ISY/PLM Group=0] Max Hops=3, Hops Left=2 Tue 11/29/2011 04:14:32 PM : [iNST-ACK ] 02 62 09.8C.CD 0F 19 01 06 LTSREQ (01) Tue 11/29/2011 04:14:32 PM : [iNST-SRX ] 02 50 09.8C.CD 13.22.F9 2B 00 D4 (D4) Tue 11/29/2011 04:14:32 PM : [standard-Direct Ack][09.8C.CD-->ISY/PLM Group=0] Max Hops=3, Hops Left=2
LeeG Posted November 29, 2011 Posted November 29, 2011 IndyMike Disagree all you want. You are absolutely right! Must have changed a Program to a Set scene Query and not done a Save. I thought I had traced a Set Scene Query that issued a Group Broadcast with a Query command but running the same test with a new Program each device in the Scene is queried individually as your test clearly shows. My bad. Thanks IM Lee
Recommended Posts