Slow Updating Analog Zones on Expander Zones

BraveSirRobbin

Moderator
I have a very strange problem driving me nuts here!

I have an Elk M1 Gold and two 16-zone expander units and two keypads. I connected them all via an M1DBHR Data Base Hub as shown HERE.

I am playing around with the Elk M1 Analog Zone input capability while beta testing software. I was originally using Zone number one on the main board for this testing and all was well with initial tests. I wanted then to test the zone expander analog input capability and removed the pull-up resistor from the last zone on one expander module. I then connected a variable DC voltage source and noted that when the zone's voltage changed that it would take a long time (over 30 seconds) for the analog zone to update that reading.

At first I thought I somehow damaged the zone expander by removing the surface mount pull-up resistor, so I did some more testing.

I tested an analog zone on the expander board that I did not modify and noticed the same thing. I then tested zone eight on the main board and it updated as it should (under three seconds).

So I determined there was a problem with the analog zones on JUST the zone expanders.

I had my idol, Guy Lavoie try to duplicate this error with his Elk M1, Keyboard and single zone expander. He was not able to do so.

I then was starting to wonder about the differences in our systems. Guy used a 6.8K paralleled with a 2.2K resistor which gave about 6.1 volts on the analog zone. When you remove the 6.8K resistor you get about 7.1 volts.

I did the same setup and my system needed between 30 to 40 seconds to update to the new voltage when I removed the parallel 6.8K resistor. I was verifying the voltage to the zone with an analog meter as well, so I know the voltage did indeed change immediately to the zone.

I then removed the data hub thinking that was the problem. I also reduced my system down to its "bare bones". I rewired the system so only one keypad and zone expander was connected to the main board (i.e. no data hub). The RS-485 port went like this:

Main Board (terminated) - Zone Expander (Not terminated) - Keypad (terminated)

I then reset the panel to its original factory results (the entire panel).

I then created a new account with the RP software and configured the last zone on the expander channel as analog. I STILL had the problem of the slow zone updating.

I did note that if I went from 7.1 volts to ground (just short the 2.2K resistor), then remove that short, the system would update immediately. It was only when you were in-between the rails did I notice this bizarre update behavior.

I created a couple of rules (Guy's suggestion) as follows:

Every two seconds:
Check if Analog Voltage in Zone 31 is greater then 6.5
If it is speak "yes"

Check if Analog Voltage in Zone 31 is less than 6.5
If it is speak "no".

I uploaded these rules then disconnected the Elk from the computer.

I still had to wait about thirty to forty seconds for the voice to update from "YES" to "NO" after I removed the 6.8K resistor (also checked with a multimeter that I was getting that voltage as well as Elk software (keypad Status) before I disconnected.

So the system was down to its most basic elements. The digital "open" "close" (security) zones worked great. There is just something about those analog zones. Why would they work on the Main Board, but not on the expansion modules??

I tried everything I could think of. Double checked the wiring (and wound up rewiring it as I did not want to use the data bus hub for this testing).

Here are my system specifications;

Elk M1 Gold Main Panel:
Firmware 4.3.12, Hardware 0.10, Bootware 3.1.13

Elk Keypad:
Firmware 2.1.40, Hardware 0.7, Bootware 3.0.4

Expansion Module:
Firmware 1.2.13
Hardware 0.3
Bootware 2.0.3

Elk RP Software ver 1.6.6

To make a very looooooooooong story short I wanted to take software out of the picture and just rely on the Elk (i.e. no computer attached).

I rechecked the wiring to see if a ground reference perhaps came loose but that is not the case.

I DID notice that if I shorted the 2.2K and removed that short the zone WOULD update immediately. Just nothing in between (voltage levels) seemed to work very well.

I don’t' know what else to try. I took software out of the picture, took the Hub out of the picture, rewired just the keypad and one zone expander in series (didn't terminate the zone expander as it was in the middle. I DID terminate the keypad and the Elk M1 Gold though)!!
 
Expander operation:

The input expander sends a zone status update to the M1 when a zone input voltage crosses the low threshold (3.9 volts) or the high threshold (8.9 volts). If the input voltage does not cross a threshold, an automatic zone status update is sent to the M1 about every 30 seconds.

The zones on the M1 Main Control Board are constantly scanned and the current status will be available.

You need to write a Rule that fires from an event or timer so that the Rule Engine will evaluate the Rule. Otherwise the zone input may not cross one of the threshold levels and cause a zone input triggered Rule to fire.

I see your problem when using an input expander zone in the analog mode. How often do you want the zone input status updated?
 
BSR:
Here is a cluge fix, but it should work.

Connect a relay contact to one of the zone inputs on the expander board and define the zone as a do nothing zone. Control the relay from one of the J16 outputs or you can use the Output 3 Relay on the M1. Write a Rule to toggle the relay say every second. As you change the input of the unused zone, the analog status of all the zones on the input expander will be sent back to the M1.

You can also trigger that zone with an NPN transistor to make it silent.


;) straining my brain.
 
Spanky said:
Expander operation:

The input expander sends a zone status update to the M1 when a zone input voltage crosses the low threshold (3.9 volts) or the high threshold (8.9 volts).  If the input voltage does not cross a threshold, an automatic zone status update is sent to the M1 about every 30 seconds.
Hey David;

First many thanks for the reply. This problem has me going postal and I have already spent FIVE hours trying to troubleshoot it (and I'm getting a little tired of this "science project") ;) .

One thing that I disagree on is why would Guy Lavoie's system not exhibit the same update behavior? He was using an expansion input as an analog zone and it updated immediately.

I am really getting both tired and tried trying to make the Elk work with analog inputs! :(

I (and so will most people) would like the update to the zone every five seconds or so. It's important to get the zone expander working as an analog input because it is VERY easy to remove the pull up resistor on those boards (i.e. vs. the main board).

When I removed the pullup resistor I noticed that my LM34 temp sensor started to work. But when I dipped it in ice water it wasn't updating, thus the start of this problem. I abandoned testing the analog input of the LM34 and started troubleshooting this update problem, thinking it was something in my system! ;)

Thanks,

BSR
 
Spanky said:
Expander operation:

The input expander sends a zone status update to the M1 when a zone input voltage crosses the low threshold (3.9 volts) or the high threshold (8.9 volts). If the input voltage does not cross a threshold, an automatic zone status update is sent to the M1 about every 30 seconds.
Interesting operational explanation Spanky, but how come it works ok on mine? I configured the zone defined as: "34 = Analog Zone" and added the 2.2k EOL resistor to get about 7.5 volts (as shown on the ELKRP keypad monitor screen). I used a resistor substitution box and tried various resistors in parallel with the EOL resistor in order to get a modest drop, and found that a 6.8k resistor dropped the voltage by about 1 volt to 6.5 volts (2.2k in parallel with 6.8k = 1.66 k). I tried this on both a main board zone (#1) and an expansion board zone (#17) and both responded within 2 seconds on the screen. The rule also worked fine in both tests. I had the rule look at the input "every 1 second" and it would repeat ON, ON, ON... or OFF, OFF, OFF... depending on whether the resistor was added or not, and it would switch over within two seconds too. As my voltages indicate above, these were well within the threshold voltages.

Why doesn't this work for BSR? One thing I just noticed is that BSR listed his expander's firmware version as:

Expansion Module:
Firmware 1.2.13
Hardware 0.3
Bootware 2.0.3

Mine show as:
Firmware 1.3.8
Hardware 0.5
Bootware 3.0.6

Could this explain the difference?
 
Oh another small troublesome observation. The Elk analog zone value is only given to one significant digit to the right of the decimal (x.x). This makes sensors like the LM34 worthless as you will only see temperature readings in "decades" (70, 80, 90, etc...). Is there anyway to get TWO significant digits (x.xx)???
 
Yes, I see my idol was posting at the same time I was.

David, can this be something Elk Technologies can look into and troubleshoot? Can a firmware revision be made so the zones are updated whenever the user "asks" for them via software (request an analog zone value via the RS232 interface)??

I'll try a couple more things, but like I said earlier the charm of this problem has passed. Hey, you could always put me on the Elk payroll for the weekends... ;)
 
Guy Lavoie said:
BSR, have you tried downloading and updating your expander's firmware?
Maybe it's just me (seem to be having one of those weekends) but I can't find the latest firmware/bootware for the M1XIN module.

I did find THIS technical document describing how to update the firmware, but that's all.

I'm also a little nervous since I also read two posts on their forums on how this procedure hung during installation rendering their boards useless.
 
Hmm good point. Hadn't noticed that there were no downlads available for the input expanders. Yet ELKRP shows us the versions just like the other module types. Interesting.

Lets see what Spanky can come up with.
 
I will check into the version updates. As I stated in an earlier post, moving the input past a threshold level will cause all zone's status to update from the input expander.
 
BraveSirRobbin said:
Oh another small troublesome observation. The Elk analog zone value is only given to one significant digit to the right of the decimal (x.x). This makes sensors like the LM34 worthless as you will only see temperature readings in "decades" (70, 80, 90, etc...). Is there anyway to get TWO significant digits (x.xx)???
The problem is that even if it did send two digits, the 8 bit resolution of the zone input over 14 volts would give you a sequence of values like 0.10, 0.16, 0.22 as the voltage slowly rises. The resolution just isn't fine enough.

This is assuming that the inputs do in fact have 8 bit resolution. It seems I remember seeing this being stated somewhere.
 
I understand that Guy. Obviously the LM34 is a terrible temp sensor interface for the Elk. I was just stating in general the it would be nice to have the extra digit since it is within the capability of the Elk's eight bit input!

I'm STILL wondering why your setup didn't display this problem with updating an analog input on an expander zone Guy!!

Can you go over in detail your setup (keypads, zone expanders, how connected, etc...).

I want to try to recreate your exact setup here. I'm wondering if this is a limitation to only the older zone expanders as I see yours is newer.
 
My guess at this point is that the expander firmware version is making all the difference. Its the only real difference between our setups and this is exactly the type of thing that a firmware change would do.

My setup is really straightforward: from main board to input expander, then to serial expander, and finally to keypad. Termination is installed at main board and at keypad.

I would wait to see what Spanky comes up with regarding the firmware versions. When you get that expander? I got mine last December (I ordered everything at the end of November in time to beat the price increase).
 
Back
Top