[OBSOLETE] Honeywell / Ademco Vista 20P Integration

While awaiting help with server disconnecting randomly, I figured I would share my integration of Actiontiles, SmartThings, Honeywell Vista 20p, Envisalink, and Raspberry Pi… It’s a LCARS look alike from Star Trek

1 Like

So I go it to the point of where I can arm and disarm but I cant see any of my zones. Any help?

pi@raspberrypi:~/downloads/smartthings-nodeproxy $ node server.js
[2018-01-27T20:51:06.716Z] [stnp] SmartThings Node Proxy listening at http://:::8081
[2018-01-27T20:51:06.763Z] [stnp] Loaded plugin: envisalink
[2018-01-27T20:51:06.772Z] [gnrc] Doing something interesting during init…
[2018-01-27T20:51:06.774Z] [stnp] Loaded plugin: generic
[2018-01-27T20:51:06.788Z] [evl3] Connected to Envisalink at 10.0.0.3:4025
[2018-01-27T20:51:15.563Z] [evl3] {“type”:“partition”,“partition”:1,“state”:“ready”,“alpha”:“DISARMED CHIME Ready to Arm”}
[2018-01-27T20:52:01.552Z] [stnp] ::ffff:10.0.0.35 GET /subscribe/10.0.0.35:39500
[2018-01-27T20:52:01.684Z] [stnp] ::ffff:10.0.0.35 GET /plugins/envisalink/config/10.0.0.3:4025:iser:8184
[2018-01-27T20:52:06.984Z] [stnp] ::ffff:10.0.0.35 GET /plugins/envisalink/discover
[2018-01-27T20:52:07.002Z] [evl3] Completed panel discovery

Let’s see the config.json file… I’ve had trouble myself, but kinda worked through it with trial and error, and with @Big_Webstas

My config.json

{
“port”: 8081,
“authCode”: “secret-key”,
“envisalink”: {
“address”: “10.0.0.3”,
“port”: “4025”,
“password”: “user”,
“securityCode”: “****”,
“dumpZoneTimer”: “0”,
“panelConfig”: {
"type ": “discover”,
“partitions”: [
{
"partition ": 1,
“name”: “Security Panel”
}
],
“zones”: [
{
“zone”: 9,
“type”: “contact”,
“name”: “Front Door”
},
{
“zone”: 10,
“type”: “contact”,
“name”: “Garage Entry Door”
},
{
“zone”: 11,
“type”: “contact”,
“name”: “Daughters Window”
},
{
“zone”: 12,
“type”: “contact”,
“name”: “Sons Window”
},
{
“zone”: 13,
“type”: “contact”,
“name”: “Living Room Window”
},
{
“zone”: 14,
“type”: “contact”,
“name”: “Living Room Window”
},
{
“zone”: 15,
“type”: “contact”,
“name”: “Dining Room Window”
},
{
“zone”: 16,
“type”: “contact”,
“name”: “Office Door”
},
{
“zone”: 17,
“type”: “contact”,
“name”: “Shed Door”
}
]
}
},
“notify”: {
“address”: “10.0.0.35”,
“port”: “39500”
}
}

Looks right. Did you use jsonmate too?

Hi guys. Still having trouble getting anything to show up as Things. Looking at my logs, discovery is being sent and logs show a response showing partition and zone data. The logs also show when there is a change in state (zone # open/close, Partition 1 ready/not ready, etc).

Could the zones (devices) be created manually in the IDE as a workaround to the smartapp? If so, what ties device to the data being supplied by the smartapp? I’m guessing the “Device Network ID” field, but I’m not sure how to tie that back to the smartapp.

Any guidance would be greatly appreciated. This is my last major hurdle on Smartthings integration, then it’s time to dig into webcore to work on automation. Thanks.

Ok, so the device network ids go like this… Honeywell|zone34… so I guess it may be possible to add others that way… haven’t tried it

Thanks for the quick reply. That didn’t get it (would have been too easy anyway). I’ll keep at it, I’m sure I’m missing something simple.

I did. Ive poured through everything and cant find the problem.

I’m just. So. Frustrated. I ran through everything again, with someone looking over my shoulder to make sure I didn’t mistype anything. Everything appears to work - but I get no things. I have turned off and on “discover” in the smart app. Nothing. My current (after doing all this) config.json is below, someone give it a glance please??? I’m really, really frustrated, as this is really holding me back from doing most of my automating. I even made the authcode: “secret-key”. The only thing changed below is 8888 for my code. 8080 is the correct port for the server PC. 4025 is the correct port for the Envisalink.

{
“port”: 8080,
“authCode”: “secret-key”,

“rnet”: {
“c-series”: false,
“serialPort”: “/dev/usbser”,
“sources”: [
“Sonos”,
“Airplay”,
“Apple TV”,
“Source 4”,
“Source 5”,
“Source 6”
],
“controllerConfig”: {
“type”: “discover”,
“controllers”: [{
“controller”: 0,
“zones”: [
{“zone”: 0, “name”: “Family Room”},
{“zone”: 1, “name”: “Kitchen”},
{“zone”: 2, “name”: “Living Room”},
{“zone”: 3, “name”: “Patio”},
{“zone”: 4, “name”: “Dining Room”},
{“zone”: 5, “name”: “Office”}
]
}]
}
},

“mpr6z”: {
“serialPort”: “COM2”,
“baudRate”: 9600,
“sources”: [
“Sonos”,
“Airplay”,
“Apple TV”,
“Source 4”,
“Source 5”,
“Source 6”
],
“controllerConfig”: {
“type”: “discover”,
“controllers”: [{
“controller”: 1,
“zones”: [
{“zone”: 1, “name”: “Family Room”},
{“zone”: 2, “name”: “Kitchen”},
{“zone”: 3, “name”: “Living Room”},
{“zone”: 4, “name”: “Patio”},
{“zone”: 5, “name”: “Dining Room”},
{“zone”: 6, “name”: “Office”}
]
}]
}
},

“envisalink”: {
“address”: “192.168.1.254”,
“port”: “4025”,
“password”: “user”,
“securityCode”: “8888”,
“dumpZoneTimer”: “5”,

"panelConfig": {
  "type": "discover",
  "partitions": [
    {"partition": 1, "name": "Security Panel"}
  ],
  "zones": [
    {"zone": 1, "type": "smoke", "name": "Smoke Detector"},
    {"zone": 2, "type": "contact", "name": "Front Door"},
    {"zone": 3, "type": "contact", "name": "Back Door"},
    {"zone": 4, "type": "contact", "name": "Kitchen Door"},
    {"zone": 5, "type": "contact", "name": "Kitchen Window"}
  ]
}

},

“ad2usb”: {
“mode”: “serial”,
“securityCode”: “1234”,
“clearFaults”: true,

"serialPort": "COM2",

"address": "192.168.2.22",
"port": "9001",

"panelConfig": {
  "type": "discover",
  "partitions": [
    {"partition": 1, "name": "Security Panel"}
  ],
  "zones": [
    {"zone": 1, "type": "smoke", "name": "Smoke Detector", "serial": "0180036"},
    {"zone": 2, "type": "contact", "name": "Front Door", "serial": "0180037"},
    {"zone": 3, "type": "contact", "name": "Back Door", "serial": "0180038"},
    {"zone": 4, "type": "contact", "name": "Kitchen Door", "serial": "0180039"},
    {"zone": 5, "type": "contact", "name": "Kitchen Window", "serial": "0180040"}
  ]
}

},

“dash”: {
“buttons”: [“aa:bb:cc:dd:ee:f1”, “aa:bb:cc:dd:ee:f2”]
},

“notify”: {
“address”: “192.168.1.202”,
“port”: “39500”
}
}

@withay
Why do you have ad2usb and rnet in your config.json? Are you using those as well as the envisalink? And dumpzone you changed from 0 to 5?

@kajones02 as for the zones you’re trying to discover, are they in your config.json?

Once before I had removed ad2usb and rent - everything except envisalink (all I have) and only got errors after starting. I redid the .json as you see it and the envisalink properly communicates with the server pc.

The dumpzone change was done after reading every comment here and seeing several people mention it.

The zones… I haven’t touched the zones in the json - I don’t recall the installation saying anything about it. I assumed (oh, that word!) that they would be automatically configured.

@withay I put all my zones in the config file, left it at discover, and changed port to 8081 instead of 8080. And my zones showed up after putting my details into the smartthings app. To change port, you must change it in config.json, envisalink.js, and the smartthings app.

I’m no expert with this thing, but had same issue as you. Well, I got some zones to show, but not all. It was buggy, changing the port seemed to change it all. Also, make sure you have “shadowing” enabled on your envisalink. If you have an alarm service (ADT, etc)

My only issue is that the server shuts down all the time. And I have to run ./restart.me - I’ve tried crontab and forever with no luck. But I can manually restart it with the script. I don’t get it lol.

I have to admit - I don’t know how to put my zones in the config file. However I just DID go in and delete the stuff OTHER than the envisalink, did the npm run start, and it still works. So here’s my current config.json:

{
“port”: 8080,
“authCode”: “secret-key”,

“envisalink”: {
“address”: “192.168.1.254”,
“port”: “4025”,
“password”: “user”,
“securityCode”: “8888”,
“dumpZoneTimer”: “5”,

"panelConfig": {
  "type": "discover",
  "partitions": [
    {"partition": 1, "name": "Security Panel"}
  ],
  "zones": [
    {"zone": 1, "type": "smoke", "name": "Smoke Detector"},
    {"zone": 2, "type": "contact", "name": "Front Door"},
    {"zone": 3, "type": "contact", "name": "Back Door"},
    {"zone": 4, "type": "contact", "name": "Kitchen Door"},
    {"zone": 5, "type": "contact", "name": "Kitchen Window"}
  ]
}

},

“notify”: {
“address”: “192.168.1.202”,
“port”: “39500”
}
}

@withay ok, so the app is not even loading those zones that are configured… the Kitchen Door Back Door Etc?

But it’s recognizing it when you run ‘node server.js’ ?

So the “Kitchen Door, Back Door, etc” zones, those aren’t mine, those are from the example. And no, they’re not showing anyway. When you say “run ‘node server.js’” do you mean when I type “npm run start”?

And here are my actual zones, I just checked on Eyezone’s website:

Zone 1 Front Door
Zone 3 Basement Door
Zone 4 Basement Motion
Zone 9 Back door
Zone 10 Front Gate
Zone 15 Storeroom Motion

I don’t know how to format them correctly and put them in the .json. I think I believed that the smartapp reconfigured my config.json with the proper zones that it pulled from the envisalink - that it would edit the .json and enter the correct zone information.

Oh, and should I change my “dump timer” back to “0”?

My dump timer is 0. Not sure why they say to change it. As for your zones, we can do that later. Let me confirm… in the dashboard on app, you can disarm and arm alarm, correct?

PM me, and I’ll try to help.

Hold that thought. I revamped my config.json, and I’ll paste it below. Again, I can see in the CMD window on the PC that there IS communication between the EVL3 and the PC.

I can NOT disarm and arm alarm through the app on the dashboard. That is - I can press “armed (Home)” and it turns blue and the green dot to the right of “security” remains green OK - nothing happens to the actual alarm. And I still don’t see anything under “things”.

Here’s the config.json:

{
“port”: 8088,
“authCode”: “secret-key”,
“envisalink”: {
“address”: “192.168.1.254”,
“port”: “4025”,
“password”: “user”,
“securityCode”: “8888”,
“dumpZoneTimer”: “0”,
“panelConfig”: {
“type”: “discover”,
“partitions”: [
{
“partition”: 1,
“name”: “Security Panel”
}
],
“zones”: [
{
“zone”: 1,
“type”: “contact”,
“name”: “Front Door”
},
{
“zone”: 3,
“type”: “contact”,
“name”: “Basement Door”
},
{
“zone”: 4,
“type”: “motion”,
“name”: “Basement Motion”
},
{
“zone”: 9,
“type”: “contact”,
“name”: “Back Door”
},
{
“zone”: 10,
“type”: “contact”,
“name”: “Front Gate”
},
{
“zone”: 15,
“type”: “motion”,
“name”: “Storeroom Motion”
}
]
}
},
“notify”: {
“address”: “192.168.1.202”,
“port”: “39500”
}
}

LOL ok, NOW, take it from here… I can PM you if you like, now.

After revamping config file, did you beautify it using jsonmate.com? Can u screenshot your Honeywell smartthings app settings? The json looks right, but jsonmate will confirm or deny that for you lol. And to confirm, your alarm panel code is 8888 to disarm and arm from keypad?