Premise ELK M1 Device Driver

Motorola Premise
How is your PC connected to your M1? Is it a serial or network connection?

Network (M1-XEP)
If the M1's address is 192.168.0.251, you can connect to it like so: telnet 192.168.0.251 2101
You can also use Hyperterminal. Set "Connect using" to TCP/IP, "Host Address" to 192.168.0.251, and "Port" to 2101.

Serial
Use Hyperterminal and set "Connect using" to the appropriate COM port. Ensure the serial port settings match those used by the M1.

If you're using an M1-XEP, you should see the "XK" command broadcasted every 30 seconds. Arm/disarm the M1 and the corresponding commands will be displayed in the telnet/hyperterminal session.

Let me know your results and we'll take it from there.
I'm using the serial port, i will try Hyperterminal when I get home.

Thanks
 
I'm using the serial port, i will try Hyperterminal when I get home.
Well, there you go ... I've never tested it with a serial connection but, theoretically, it should be a slam-dunk.

After you've confirmed you can talk to the M1 using Hyperterminal, double-check the following M1_Panel properties:
  1. Serial Communciation | SerialSettings
    Set it to the same port settings found on the M1. The driver defaults to 9600 baud, 8 bits, no parity, 1 stopbit. You may need to change the baud rate to 115200.
  2. Serial Communciation | Network
    Set it to the serial COM port that connects the PC to your M1.
  3. Base Transport | PortStatus
    Check it's status to confirm the port is open and alive.
You can use Premise Builder's Port Spy ("View|Port Spy" or "Alt+7") to monitor communications on a serial or network port. The data is color-coded as follows:
  • Brown
    Data waiting to be sent to the Device on the particular port.
  • Green
    Data that was sent from Premise Server to the Device on the port.
  • Black
    Data that was received by Premise Server from the port.
 

Attachments

  • M1_SerialSettings.png
    M1_SerialSettings.png
    31 KB · Views: 27
If you're receiving the "XK" traffic on Hyperterminal then the plumbing between your PC and the M1 is in good shape. Apply the serial port settings you used with Hyperterminal to the driver (see above) then use Port Spy to watch the incoming traffic.
 
If you're receiving the "XK" traffic on Hyperterminal then the plumbing between your PC and the M1 is in good shape. Apply the serial port settings you used with Hyperterminal to the driver (see above) then use Port Spy to watch the incoming traffic.
123,
I tried and got, no black signals back, only brown and green lines in the port spy.

In looking into this further, i've watched my port monitor, and with HT and Elk RP, they both had signals on RTS, CTS and DTR and none on DSR, CD and RI. With Premise, only has CTS high.


Ok, scratch everything I tried again and it worked, not sure what was stuck because all I did was check the lines again while Premise ran, and it worked
 
What can be said other than "Hmm, that's odd". But I'm glad to hear that it is working.

Just out of curiosity, what kind of serial cable are you using? Does it simply provide Receive(pin 2)/Transmit(pin 3)/Ground(pin 5) or is it more complex?
 
What can be said other than "Hmm, that's odd". But I'm glad to hear that it is working.

Just out of curiosity, what kind of serial cable are you using? Does it simply provide Receive(pin 2)/Transmit(pin 3)/Ground(pin 5) or is it more complex?
I would have to put a meter on it to check, as I just pulled it out of my cable pile, but IIRC it most likely has all the pins
 
123,

I am having the same problem as project_x and i know this has not been update for a while. I have a new install of M1G and of ElkRP. I tried many different settings but could never get premise to connect to M1. I see the last TX messsage shows valid info but the last RX message field show junk. I look at the port watch and see what looks to be the clock info coming in but the names never work with discovery and nothing ever updates. I am using the com port on the computer connected serial directly to the com port on the M1. Any help would be great. The system says port open and no failures but never shows any changes and area 1 stay disconnected at all times.
 
Did you close ElkRP? On mine, no serial data shows up in Premise when using ElkRP... Other than that, try the troubleshooting steps 123 gives above (e.g. hyperterminal testing to verify cable and port settings are good).
 
I closed everything and it was not working. Over the weekend I uninstalled everything and started again. Now I am able to get commands to send and to receive using port spy but the system still will not arm and the status never changes. It’s almost like the M1G see the command and simply replies with its current state instead of changing the state. I have been able to get it to work sometimes if I interact with the keypad manually and then try a change on the premise interface. I am only using the building to interface by toggling the ticks on the area for arm stay and others. They show no error and I have tried many different user codes. I was going to troubleshoot more tonight but it is driving me a bit crazy.

Here is what I get in Port Spy:
I get the time message then I ticked the StayArm on the right and then the ExitArm on the right.

16XK27590821510121100069
0Da2100xxxx002E
0Da2100xxxx002E
17IC00000000000000101007A
1EAS00000000111111110000000000F9
0Da1100xxxx002F
0Da1100xxxx002F
17IC00000000000000101007A
1EAS00000000111111110000000000F9

The "SecurityHistory" in the properties pane shows a "LastFunction" of ExitArm but a "StatusLastFunction" of Disarmed at a time stamp of 7:28 am this morning when i opened the door to leave.

I am at a loss. I think this Premise system is nice but my primary need is to control my M1G at this time.
 
From the Elk protocol manual:


4.17.1 Send Valid Or Invalid User Code Format (IC)
17 – Length as ASCII hex. 12 in M1 software versions before 4.3.2
IC – Send Invalid User Code digits
DDDDDDDDDDDD – 12 characters of ASCII Hex (0 to F) user code data. High nibble and low nibble of each code data byte. 4 & 6 digit codes are left padded with zeros. Set to all zeros if code is valid.
UUU - 3 characters of ASCII decimal User Code Number 001 to 103, indicating which valid user code was entered. Version 4.3.2 and later.
NN - Keypad number, 01 to 16, that generated the code.
00 – future use
CC – Checksum
Version 4.4.2 and later, user code 201 = Program Code, 202 = ELK RP Code, 203 = Quick Arm, no code.

The Elk is receiving the correct code from Premise, it is not Premise that is the issue (e.g. 17IC00000000000000101007A is replied back by the Elk system). Check in ElkRP to see if there is some global you are not enabling for network/serial arming.
 
Try the tips in this thread: http://forum.univers...php?f=25&t=7376

Specifically, disable the "Access" option in ElkRP for the user and also ensure G11 is set to 4 digit user code (I haven't tested six digit codes with Premise, but just in case). I am 100% sure this isn't Premise and it's a setting you have in ElkRP though due to the confirmation packet from the M1.
 
Thanks ETC. I found that I had to force the baud to 9600, I am thinking its the old computer I am using. I also defaulted my M1G to defaults and started over. I now have all working. I did notice that the access setting appears to be the only difference and I see that suggestion in your last post. I thank you for your help and now i get to start really p;aying with this as i really like automation and systems like this. I installed a Cortexa system in a house once and since then i have been looking for something like this i could get for free.

Thanks again for the help.
 
I would definitely have suspected the access setting after reading the other thread. I didn't know about it until I researched your issue... Apparently the Access setting is not described in the documentation very well. Glad to hear you got it working!
 
Had some similar issues. I just discovered that the M1XEP had lost its sync to the time server? Once I changed the time server URL, and ran a test, I am now able to get Premise to talk to the ELK.
 
Back
Top