Bypassed Status

johnj
New Member
New Member
Posts: 49
Joined: Thu Feb 02, 2006 10:48 pm
Location: Lehi, UT
Contact:

Bypassed Status

Postby johnj » Sun Jul 05, 2009 7:13 pm

I used MLServeCmd.MLELKM1|ZBR~10~1~1234 to bypass a zone in order to leave the window open at night. Now the bypass status does not update in the Server Variables it shows, mlelkm1_zone_010_bypassmsg=Bypassed. As a test I bypassed a different zone using a keypad. Then I armed and disarmed the system so the bypass status would go away. I used the ELk RP to view the bypass status and verified neither zone are currently bypassed but the Server Variables still show both zones as bypassed.

I have tried using the command, MLServeCmd.MLELKM1|ZBR~000~1~1234 but it does not work and the log reports,

Got [ZBR~000~1~1234]
TCP/IP Sending [10zb00010034560070]
Rcvd: 14 bytes [0AZB000000D3]
Event: [0AZB000000D3]
Rcvd: Zone Bypass Report Data
ProcessEvent Error #9 - Subscript out of range [0AZB000000D3]

Everything else seems to be working fine including zone status, it is just the bypass status.

ANYONE?????

johnj
New Member
New Member
Posts: 49
Joined: Thu Feb 02, 2006 10:48 pm
Location: Lehi, UT
Contact:

Re: Bypassed Status

Postby johnj » Tue Jul 21, 2009 8:35 am

Can someone help out here. I want to be able to arm the system leaving some of the second floor windows open/bypassed. I want to be able to see on the screen what windows are bypassed. I have a floor plan with the windows set up as green buttons when ready/closed and red when open. Then I set up a second button to overlay the first button to change the color to yellow and display, "zone bypassed". I pushed the button and everything worked as planed until the they said bypassed all the time. As I mentioned in my post above the server variable do not appear to be updating the bypass status correctly, how do I get the server variable to update correctly?

User avatar
mcascio
Founder
Founder
Posts: 8270
Joined: Tue Jan 28, 2003 4:03 pm
Location: Kenosha, Wi
Contact:

Re: Bypassed Status

Postby mcascio » Tue Jul 21, 2009 10:29 am

johnj wrote:I used MLServeCmd.MLELKM1|ZBR~10~1~1234 to bypass a zone in order to leave the window open at night. Now the bypass status does not update in the Server Variables it shows, mlelkm1_zone_010_bypassmsg=Bypassed. As a test I bypassed a different zone using a keypad. Then I armed and disarmed the system so the bypass status would go away. I used the ELk RP to view the bypass status and verified neither zone are currently bypassed but the Server Variables still show both zones as bypassed.

I have tried using the command, MLServeCmd.MLELKM1|ZBR~000~1~1234 but it does not work and the log reports,

Got [ZBR~000~1~1234]
TCP/IP Sending [10zb00010034560070]
Rcvd: 14 bytes [0AZB000000D3]
Event: [0AZB000000D3]
Rcvd: Zone Bypass Report Data
ProcessEvent Error #9 - Subscript out of range [0AZB000000D3]

Everything else seems to be working fine including zone status, it is just the bypass status.

ANYONE?????



Johnj,

If I'm not mistaken, the zones will remain bypassed (even if you arm/disarm the system) until you decide to toggle that ByPass for that zone.

The error above is most likely because you specified an invalid zone#: 000 in your command. "MLServeCmd.MLELKM1|ZBR~000~1~1234"
Mario Cascio
Cinemar, Inc.
http://www.cinemaronline.com

johnj
New Member
New Member
Posts: 49
Joined: Thu Feb 02, 2006 10:48 pm
Location: Lehi, UT
Contact:

Re: Bypassed Status

Postby johnj » Tue Jul 21, 2009 5:03 pm

I will double check this tonight.

However, I had this same thought but when disarmed and tried to rearm at the ELK Keypad I would have to bypass the same zones. That is why I tried to unbypass all command and I also double checked zone status using the ELK RP. I Watched the ELK RP zone status change as I bypassed a zone and then is armed and disarmed the system. The ELK RP showed bypassed and then changed back to violated but the MLServer Variable did not have not changed since I bypassed those zones. ( I disconnected the ELK RP before checking ML variables.)

Thanks for responding, I will let you know how my double check goes this evening.

johnj
New Member
New Member
Posts: 49
Joined: Thu Feb 02, 2006 10:48 pm
Location: Lehi, UT
Contact:

Re: Bypassed Status

Postby johnj » Tue Jul 21, 2009 8:20 pm

Mario,

I went through everything again and used the ELK RP to verify that everything was working as I described earlier. I used the ELK RP status to bypass and unbypass two zones. Zone 09 as shown below and 10 that has the permanently shows, "mlelkm1_zone_010_bypassmsg". To get the statusmsg of zone nine to go back to normal I had to shut down and restart MLServer. Otherwise it stayed as shown below.

mlelkm1_zone_009_bypassmsg=Unbypassed
mlelkm1_zone_009_bypassstate=0
mlelkm1_zone_009_definitionmsg=Disabled
mlelkm1_zone_009_definitionval=0
mlelkm1_zone_009_name=Front Bedroom Wi
mlelkm1_zone_009_partitionval=1
mlelkm1_zone_009_statusmsg=Bypassed - EOL
mlelkm1_zone_009_statusmsg=Bypassed - EOL

Let me know if you have any suggestions.

Thanks!

User avatar
mcascio
Founder
Founder
Posts: 8270
Joined: Tue Jan 28, 2003 4:03 pm
Location: Kenosha, Wi
Contact:

Re: Bypassed Status

Postby mcascio » Wed Jul 22, 2009 9:23 am

JohnJ,

How are you connected to the ELK? Via serial or TCP/IP?
Mario Cascio

Cinemar, Inc.

http://www.cinemaronline.com

johnj
New Member
New Member
Posts: 49
Joined: Thu Feb 02, 2006 10:48 pm
Location: Lehi, UT
Contact:

Re: Bypassed Status

Postby johnj » Wed Jul 22, 2009 10:58 am

TCP/IP

RZajcew
Intermediate
Intermediate
Posts: 257
Joined: Mon Jul 21, 2008 6:31 pm
Contact:

Re: Bypassed Status

Postby RZajcew » Sat Jan 23, 2010 12:22 pm

I encountered the issue of the "Subscript out of range" error (which is caused by using 000 as the zone to bypass). A couple of notes about this:

1. Both the MLElkM1 plugin help documentation and the Elk ASCII protocol manual say that "000" is legitimate -- it unbypasses all the zones in the area. And indeed ZBR~000~1~3456 sends the correct string to the Elk and the Elk unbypasses all the zones. The MLServer Elk plugin gets its error processing the reply from the Elk. And, because the plugin cannot process the reply, the MLServer variables for bypass status are not updated.

2. The plugin documentation for the ZBR command says that the ZBR command is used to bypass a zone. Actually, it is used to both bypass and unbypass a zone (it toggles the state). The Elk ASCII protocol documentation is clear about the behavior. The only reason that I was using ZBR~000~1~3456 is because I thought that the only way to unbypass a zone was to unbypass all the zones.

It would be nice if the "Help" documentation for the ZBR command had a few words added about using the command for unbypassing a zone. And also to update the "Help" documentation so that there is no recommendation to use "000" as a zone.

- Roman

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Re: Bypassed Status

Postby CinemarDave » Sat Jan 23, 2010 4:27 pm

Can you install version 3.0.3 of the Elk plugin and see if this fixes the issue. If it doesn't the event log should give us more detail as to where the problem lies.

RZajcew
Intermediate
Intermediate
Posts: 257
Joined: Mon Jul 21, 2008 6:31 pm
Contact:

Re: Bypassed Status

Postby RZajcew » Sat Jan 23, 2010 6:55 pm

The new version does prevent the subscript out of range error. However, the MLServer variables are not tracking bypassed state correctly. Here is the log file with running commentary from myself...

Zone 6 is a normal window zone, currently unbypassed. I open the window.

1/23/2010 3:33:27 PM - Rcvd: 14 bytes [0AZC006900C3]
1/23/2010 3:33:27 PM - Event: [0AZC006900C3]
1/23/2010 3:33:27 PM - Rcvd: Zone Change Update Data
1/23/2010 3:33:27 PM - Rcvd: 34 bytes [1EAS000000000111111100000000000F]
1/23/2010 3:33:27 PM - Event: [1EAS000000000111111100000000000F]
1/23/2010 3:33:27 PM - Rcvd: Arming Status Report Data

I now put zone 6 (still violated) into the bypass state.

1/23/2010 3:33:48 PM - Got [ZBR~6~1~3456]
1/23/2010 3:33:48 PM - TCP/IP Sending [10zb0061003456006A]
1/23/2010 3:33:48 PM - Rcvd: 14 bytes [0AZC006D00B8]
1/23/2010 3:33:48 PM - Event: [0AZC006D00B8]
1/23/2010 3:33:48 PM - Rcvd: Zone Change Update Data
1/23/2010 3:33:48 PM - Rcvd: 48 bytes [0AZB006100CC1EAS000000002111111100000000000D]
1/23/2010 3:33:48 PM - Event: [0AZB006100CC]
1/23/2010 3:33:48 PM - Rcvd: Zone Bypass Report Data
1/23/2010 3:33:49 PM - Event: [1EAS000000002111111100000000000D]
1/23/2010 3:33:49 PM - Rcvd: Arming Status Report Data
1/23/2010 3:33:55 PM - Rcvd: 26 bytes [16XK56331572301100100070]
1/23/2010 3:33:55 PM - Event: [16XK56331572301100100070]
1/23/2010 3:33:55 PM - Rcvd: Network Heartbeat

After all of the above everything is fine. zone_006_bypasstate and zone_006_bypassmsg indicate the zone is bypassed, as does zone_006_statusval.
So now I bypass all the zones.

1/23/2010 3:34:20 PM - Got [ZBR~000~1~3456]
1/23/2010 3:34:20 PM - TCP/IP Sending [10zb00010034560070]
1/23/2010 3:34:20 PM - Rcvd: 28 bytes [0AZC006100CB0AZB000000D3]
1/23/2010 3:34:20 PM - Event: [0AZC006100CB]
1/23/2010 3:34:20 PM - Rcvd: Zone Change Update Data
1/23/2010 3:34:20 PM - Event: [0AZB000000D3]
1/23/2010 3:34:20 PM - Rcvd: Zone Bypass Report Data
1/23/2010 3:34:20 PM - Rcvd: 48 bytes [0AZC006900C31EAS000000000111111100000000000F]
1/23/2010 3:34:20 PM - Event: [0AZC006900C3]
1/23/2010 3:34:20 PM - Rcvd: Zone Change Update Data
1/23/2010 3:34:20 PM - Event: [1EAS000000000111111100000000000F]
1/23/2010 3:34:20 PM - Rcvd: Arming Status Report Data
1/23/2010 3:34:25 PM - Rcvd: 26 bytes [16XK26341572301100100072]
1/23/2010 3:34:25 PM - Event: [16XK26341572301100100072]
1/23/2010 3:34:25 PM - Rcvd: Network Heartbeat

And now things are in an inconsistent state. mlelkm1_zone_006_bypassmsg and mlelkm1_zone_006_bypassstate indicate that the zone is bypassed, but mlelkm1_zone_006_statusmsg and mlelkm1_zone_006_statusval know the zone is not bypassed. The Elk controller also knows the zone is not bypassed. So it looks like the variables mlelkm1_zone_006_bypassmsg and mlelkm1_zone_oo6_bypassstate are not being removed (the Elk plugin tends to want to delete the bypass state variables rather than change them).

The fact that the zone is no longer bypassed can be extracted from the Elk zone change string 0AZC006100CB, where the "1" indicates the zone is open but not bypassed (if it was open and bypassed, the "1" would be a "D"). Or the Elk zone change string 0AZC006900C3 tells the same story -- the "9" indicates the zone is violated, and if it is violated it is not bypassed. So the plugin has enough information to do the right thing.

- Roman

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Re: Bypassed Status

Postby CinemarDave » Sat Jan 23, 2010 7:00 pm

Ok i wanted to see if I would get rid of the error. next let me look at these log snippets. I'll be back.

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Re: Bypassed Status

Postby CinemarDave » Sun Jan 24, 2010 1:02 pm

Can you perform the same experiment with version 3.0.4 of the plugin and let me know the outcome?

RZajcew
Intermediate
Intermediate
Posts: 257
Joined: Mon Jul 21, 2008 6:31 pm
Contact:

Re: Bypassed Status

Postby RZajcew » Sun Jan 24, 2010 3:39 pm

Quick summary -- while you sort-of fixed ZBR~000~1~3456, you have made ZBR~6~1~3456 behave unacceptably now.

Let me try to explain. Prior to 3.0.4, when I issued something like ZBR~6~1~3456, the MLServer variables were updated immediately, and therefore my screens stayed accurate. What seems to happen now is that ZBR~6~1~3456 changes the bypass state on the Elk. However, the MLServer variables are not updated until some other event -- for example, as soon as I violate zone 26 the MLServer variables for the bypass state for zone 6 become accurate.

As for ZBR~000~1~3456, it behaves the same way that ZBR~6~1~3456 behaves -- the MLServer variables are updated only on some later event.

I far prefered prior versions -- even though ZBR~000~1~3456 didn't do the right thing at all, ZBR~6~1~3456 behaved perfectly.

If the above information is insufficient for you, I can repeat my experiments with traces (that's a bit more work).

- Roman

User avatar
CinemarDave
Site Admin
Site Admin
Posts: 10535
Joined: Fri Feb 07, 2003 8:56 am
Location: Planet Earth
Contact:

Re: Bypassed Status

Postby CinemarDave » Sun Jan 24, 2010 4:08 pm

Since I cannot test the plugin here I will need more detail. It sounds like the panel does not generate an event when you issue the ZBR~000~1~3456 command. Only the event log will confirm that. Since the plugin never polls the panel we have to make sure we are getting the proper events.

RZajcew
Intermediate
Intermediate
Posts: 257
Joined: Mon Jul 21, 2008 6:31 pm
Contact:

Re: Bypassed Status

Postby RZajcew » Sun Jan 24, 2010 6:56 pm

I started again from scratch -- restarted the Elk, rebooted my server, and went through my sequences. And, this time everything behaved as it should -- the bypassstate variable got created at the right time, both statusval and bypassstate were updated at the correct moment every time I executed a "ZBR" command. And this applied to commands of the form ZBR~6~1~3456 and ZBR~000~1~3456. In other words, 3.0.4 seems to be working well right now. So, at least for now, I agree that 3.0.4 has solved the problem.

[I really swear I saw the 3.0.4 behavior that I said I saw in my note. But now everything is fine.]

Thanks for the fix.
- Roman


Return to “Elk Products”

Who is online

Users browsing this forum: No registered users and 1 guest