DSC Alarm SmartApp and Device using IT-100 and Raspberry Pi

Hi,



I was previously using an old PC home automation software to control zwave devices and my DSC alarm system. As the PC hosting the HA software was getting very old, I decided to make the switch to SmartThings.

My old software integrated with the DSC alarm panel using a IT-100 board, so I wanted to do the same. I found one project (NodeAlarm) that was using the IT-100 so I decided to give it a shot. The software didn’t work out of the box for me (I think because I have a 3rd gen hub and I think it was written for 2nd gen hubs), so I made some changes and it seems to be working very well. Screenshots below.




I split the functionality between a SmartApp and a virtual device. The SmartApp uses a REST api to the Raspberry Pi which is connected to the IT-100 via a serial connection. The SmartApp allows you to create devices for zones you wish to monitor for automation purposes (there are 3 device handlers - ‘Contact’, ‘Motion’, and ‘Smoke’). The SmartApp will update any zones that are define. You can also optionally add a virtual keypad panel device. After creating a virtual device using this handler you can add it in the settings for the SmartApp and the SmartApp will keep it updated. The panel will also display the zone number of any open zones.

If anyone is interested in trying out the code let me know. The source is at https://github.com/MMaschin/DSC-IT100-Alarm.git While the SmartThings code is very easy to get going, setting up the Raspberry Pi was quite a bit harder. I have mine running as a service using a static IP address. I always create backups of Raspberry Pi sim cards, if anyone is interested I can send them a loaded SIM card (for a Raspberry Pi 3), so they will simply need to pop it into the Raspberry Pi and will be good to go (I’m using IP address of 192.168.1.210 if that is on your subnet and outside DHCP range you are good, otherwise if you give me an IP address you want to use I can update the code before I send the SIM card).

1 Like