Jump to content

variable counter questions


bjhanson3

Recommended Posts

Posted

Can anyone tell me why I have to hit the switch on twice to get the counter to increase once? The "apartment bathroom fan" is a switchlink switch. So, in short the first time it's turned on it raises to 1, then the third time it goes to 2, the fifth time it goes to 3 and so on.

 

If

Control 'Apartment Bathroom Fan' is switched On

 

Then

$iBathroom_Fan_Counter += 1

 

Else

- No Actions - (To add one, press 'Action')

Posted
When switched from Control to Status it only counts to 1 when first toggled on, but won't go higher than 1 with repeated presses of on.

 

Status only triggers with a change in status. So once it is on, it would have to be changed to some other status then back to on to run the program.

 

Control on should work. I can't really think of any reason why it is only running every other time.

 

Try changing the program to a different switch and see if it also only runs every other time.

Posted

I just did another test where I changed to a keypad linc. In that configuration with every press of the button the counter went up one as you would expect. So, it seems to be isolated to switchlinc dimmers. I am still confused because that doesn't seem consistant with other folks on the forums experiences.

 

If

Control 'Apartment Six Button.1' is switched On

 

Then

$iBathroom_Fan_Counter += 1

 

Else

- No Actions - (To add one, press 'Action')

Posted

bjhanson3

 

It is not only inconsistent, the KeypadLinc makes no sense either as a KPL button toggles On and Off which would normally generate an On command with one press, and Off command with the next press, and so on.

 

I suggest running Tools | Diagnostics | Event Viewer with LEVEL 3. Press the SwitchLinc paddle On and see what/if commands are traced by the Event Viewer. Press the On paddle again and see if the same commands are traced. There is an unknown here that has not yet been discovered which will explain the Program behavior.

 

EDIT: actually the KeypadLinc is working as expected as that is a 6 button KPL (from the naming convention) and the ON button is used as the test button. This button always issues an On command for each button press so the observed results are the expected results for that KPL.

Posted

The keypad linc I did the test on was a six button and I was using the main on button, which doesn't toggle on and off if I am not mistaken. Therefore I think that test reacted as it should, so it is still the switchlincs that have a problem. I have tried other switches and other counter variables with the same results. There are no folders or folder conditions that I set up. I have pretty basic programs. Unforturenately I don't know what I am looking for in that log. I did however discover that is I wait long enough between on commands the counter will go up with each toggle on. It takes about a five second delay between toggles for this to happen.

Posted

Hmmm,

 

Well, if the keypad linc executes with every "on" press, this would seem to indicate the ISY's execution of the program is not where the problem is.

 

A switchlinc should also send an "on" command with each press without having to wait 5 seconds (also realize that 2 presses very quickly will send a "fast on" rather than an "on", but to do that you have to double click in a fraction of a second).

 

If you open event viewer and set it to level 3, you should see an entry every time you push the button. If every press does not produce an "on" event in the viewer, it is either not being sent by the switch, or not being received by ISY.

Posted

bjhanson3

 

No problem with the event log analysis. Run a few tests with the SwitchLinc, counting the number of paddle presses so we can know what to look for. Save the event log and post it with copy/paste to a forum post with how may paddle presses were done.

 

Thanks for pointing out that 6 button KPL was being used. I had updated my previous post when I saw from the button name it was a 6 button KPL.

Posted

Thanks for the help with this. The attached event log is for six presses of the paddle on with about a second between each press. The counter variable went up three.

 

Thu 12/20/2012 11:38:19 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

 

Thu 12/20/2012 11:38:19 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:19 AM : [ 1B 23 94 1] DON 0

 

Thu 12/20/2012 11:38:19 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

 

Thu 12/20/2012 11:38:19 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:19 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

 

Thu 12/20/2012 11:38:19 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

 

Thu 12/20/2012 11:38:20 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00): Process Message: Ignored

 

Thu 12/20/2012 11:38:20 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

 

Thu 12/20/2012 11:38:20 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

 

Thu 12/20/2012 11:38:20 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

 

Thu 12/20/2012 11:38:22 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:22 AM : [ 1B 23 94 1] DON 0

 

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

 

Thu 12/20/2012 11:38:22 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

 

Thu 12/20/2012 11:38:22 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 21 DD 81 (81)

 

Thu 12/20/2012 11:38:22 AM : [standard-Direct Ack][1B.23.94-->ISY/PLM Group=0] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:23 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

 

Thu 12/20/2012 11:38:23 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:23 AM : [ 1B 23 94 1] DON 0

 

Thu 12/20/2012 11:38:23 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

 

Thu 12/20/2012 11:38:23 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:23 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

 

Thu 12/20/2012 11:38:23 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

 

Thu 12/20/2012 11:38:25 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00): Process Message: Ignored

 

Thu 12/20/2012 11:38:25 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

 

Thu 12/20/2012 11:38:25 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

 

Thu 12/20/2012 11:38:25 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Thu 12/20/2012 11:38:26 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

 

Thu 12/20/2012 11:38:26 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

 

Thu 12/20/2012 11:38:26 AM : [ 1B 23 94 1] DON 0

 

Thu 12/20/2012 11:38:26 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 42 11 01 LTONRR (01)

 

Thu 12/20/2012 11:38:26 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=2, Hops Left=0

 

Thu 12/20/2012 11:38:26 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 42 11 01 LTONRR (01): Process Message: Ignored

 

Thu 12/20/2012 11:38:26 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=2, Hops Left=0

Posted

bjhanson3

 

First paddle On press

 

Thu 12/20/2012 11:38:19 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

Thu 12/20/2012 11:38:19 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:19 AM : [ 1B 23 94 1] DON 0

Thu 12/20/2012 11:38:19 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

Thu 12/20/2012 11:38:19 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

Thu 12/20/2012 11:38:19 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

Thu 12/20/2012 11:38:19 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Second paddle On press

 

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

Thu 12/20/2012 11:38:20 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00): Process Message: Ignored

Thu 12/20/2012 11:38:20 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

Thu 12/20/2012 11:38:20 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

Thu 12/20/2012 11:38:20 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

Thu 12/20/2012 11:38:20 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Third paddle On press

 

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

Thu 12/20/2012 11:38:22 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:22 AM : [ 1B 23 94 1] DON 0

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

Thu 12/20/2012 11:38:22 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

Thu 12/20/2012 11:38:22 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

Thu 12/20/2012 11:38:22 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 21 DD 81 (81)

Thu 12/20/2012 11:38:22 AM : [standard-Direct Ack][1B.23.94-->ISY/PLM Group=0] Max Hops=1, Hops Left=0

 

Forth paddle On press

 

Thu 12/20/2012 11:38:23 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

Thu 12/20/2012 11:38:23 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:23 AM : [ 1B 23 94 1] DON 0

Thu 12/20/2012 11:38:23 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

Thu 12/20/2012 11:38:23 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

Thu 12/20/2012 11:38:23 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

Thu 12/20/2012 11:38:23 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Fifth paddle On press

 

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

Thu 12/20/2012 11:38:25 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00): Process Message: Ignored

Thu 12/20/2012 11:38:25 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01)

Thu 12/20/2012 11:38:25 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

Thu 12/20/2012 11:38:25 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 41 11 01 LTONRR (01): Process Message: Ignored

Thu 12/20/2012 11:38:25 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=1, Hops Left=0

 

Sixth paddle On press

 

Thu 12/20/2012 11:38:26 AM : [iNST-SRX ] 02 50 1B.23.94 00.00.01 C7 11 00 LTONRR (00)

Thu 12/20/2012 11:38:26 AM : [standard-Group][1B.23.94-->Group=1] Max Hops=3, Hops Left=1

Thu 12/20/2012 11:38:26 AM : [ 1B 23 94 1] DON 0

Thu 12/20/2012 11:38:26 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 42 11 01 LTONRR (01)

Thu 12/20/2012 11:38:26 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=2, Hops Left=0

Thu 12/20/2012 11:38:26 AM : [iNST-SRX ] 02 50 1B.23.94 19.71.04 42 11 01 LTONRR (01): Process Message: Ignored

Thu 12/20/2012 11:38:26 AM : [standard-Cleanup][1B.23.94-->ISY/PLM Group=1] Max Hops=2, Hops Left=0

 

 

Note that the ISY displays a device On message

 

“Thu 12/20/2012 11:38:26 AM : [ 1B 23 94 1] DON 0â€

 

every other time. The ISY display this message only when the device status has changed to ON from something else which means there is some other activity going on which has not been identified as yet. This unidentified activity is affecting the device Status as well as affecting the variable count I suspect.

 

I suggest marking all other Programs Disabled and see if the Variable count goes up as expected. The SwitchLinc is telling the ISY about each paddle On press.

Posted

I agree with what Lee is saying in principle, but am having a hard time thinking of what other program would interfere like that. Perhaps the variable is going up but another program runs off the same trigger and drops it back down. With two programs running nearly simultaneous, you would not see the up, down, it would appear to stay the same.

 

Well, when all other programs are disabled, we will know soon enough.

 

Also, you can look at the last run time on all of your programs and see if any other program runs at the same time this one runs.

 

Also, that program should always run "true". It might be worth checking that indeed it is always stating "true". A program whose only "if" line is "control on" can never be anything but true (at least not without some other program doing a force run of the else clause).

Posted

I am also intrigued by the fact that every other "ON" command appears to be followed by the log note:

 

"Process Message: Ignored"

 

Is this related to that yet-to-be-discovered unidentified activity?

Posted

I have no theoretical explanation for how this is happening. First I do not think the ISY has a defect. That leaves me with some outside activity, another Program, some other application using an ISY plug-in issuing REST commands that has not been mentioned to this point, something about this specific environment that has not been discussed yet.

 

oberkc

 

The duplicate messages that have been labeled ignored are not uncommon with all the Dual Band activity that is in place now days. They are redundant Group Broadcast or Group Cleanup Direct messages which the ISY has detected as being duplicates and ignored them. I don't think they are causing the change in device state or interfering with variable counting.

Posted

I shut of all other programs and got the same results. Could there just be a communication delay? It does work right is a wait a full five seconds between toggles. I tried two more swichlinc switches that are close to the PLM and ISY and still got the same results. I also tried a new a variable and nothing changed. I also tried a second keylinc and it worked fine. baffled.....

Posted

We all are baffled. Are there other products being used that communicate with the ISY? That Program counting paddle presses does not in and of itself serve much of a purpose. There has to be some other factor, some other product, something that is involved here that has not been identified.

Posted

I just wrote that same program for one of my switchlincs and it works perfectly. It's v38 2476D.

 

So, I don't know whats up.

 

What switchlinc are you using? If I have any of the same ones I'll test them.

Posted

Any more suggestions? Shut off the ElK? Reboot the ISY or PLM? Something is slowing down the communication because it works if you pause long enough between toggles of the switch.

Posted

No harm in rebooting the ISY and PLM. I suspect that this won't fix it, but nothing lost by trying.

 

I don't know why the Elk would be causing this. But again, no harm in temporarily taking it out of the equation and testing. Since my system runs the program fine, and since I also have an Elk with the Elk module, if Elk is somehow the problem for you, it is not an inherent problem of the Elk/ISY system.

 

If this proves fruitless, I suspect you would need to start an official service ticket with Michel.

 

The fact that you can run the program fine with your 6 button kpl makes me doubt it is any kind of general system issue such as an overloaded processor from something running in a loop or getting overwhelmed by some Elk bombardment. It also makes me doubt it is an ISY issue since ISY doesn't really handle a "control on" command any different on a switchlinc vs a kpl.

Guest
This topic is now closed to further replies.

×
×
  • Create New...