Upcoming 3rd Party Plugins

Posted on
Tue May 24, 2011 7:26 pm
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Upcoming 3rd Party Plugins

I've got a few Plugins I'm currently developing for Indigo 5's new Plugin architecture and thought I'd start a thread where we could list some upcoming plugins to avoid duplication or encourage collaboration.

On my current Indigo 4 setup, using Automogator, I currently have the following plugins running that I will be porting to Indigo 5:

DSC Alarm IT-100 Integration Module:
This module keeps Indigo informed of all my alarm zones, allows me to Arm/Disarm the alarm via Indigo, and also speaks the names of zones that cause the alarm to trip or fail to arm.

1 Wire Temperature Network:
I only have one phone line in the house but the rooms are all wired with CAT3, leaving me with 4 spare wires. Not wanting to waste that valuable copper, I created a network of DS1820 temperature sensors so I could track the temperature in each room. This allows me to graph all the temperatures over time, and also helps Indigo make more informed decisions about how to control my HVAC. At $5 plus 5 minutes of work per room, I was able to create a house-wide temperature network. I graph the data using Cacti.

iPhone Presence:
My network router allows me to remotely log the activity to a syslog server. This module acts like a syslog server and watches for activity from my wife's and my iPhone. Our iPhones are always with us, so if the iPhone isn't on the network we're not home. This plugin watches for updates from our phones and basically lets Indigo know if my wife and I are home, accurate to within 15 minutes. I use this information to let Indigo make decisions as to when to turn off the Porch and Driveway lights, when to adjust the HVAC because we haven't been home for a few hours, etc. This plugin would require the use of a router with remote syslog abilities. I run Tomato, DDWRT would also work, there are others.

There's a few more but these are the most useful for most people so I'll start with these. If anyone has any suggestions for features that they'd find useful with any of these feel free to chime in.

Travis

Posted on
Tue May 24, 2011 8:08 pm
jay (support) offline
Site Admin
User avatar
Posts: 18219
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Upcoming 3rd Party Plugins

Fantastic! I've actually created a wiki page just for this purpose. I added your items and linked your forum name to this thread so anyone who wants to help you out or find more information can get here easily. I really look forward to your stuff.

I've created a new forum under the Extending Indigo with Plugins and Python forum specifically to facilitate coordination of 3rd party plugin development efforts. What I'm envisioning is having one topic per plugin - and the coordinator can use that thread to coordinate various development, testing, and documentation efforts. If you only need help testing, then post there.

So, if you want, create a topic for each with as much detail as you can share. For instance, which 1-wire interface are you using? We've already had some requests for the HA7Net (which is on the wish list as well). Once they are created, I'll link your name on each of those to those topics.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Tue May 24, 2011 8:44 pm
artpics offline
Posts: 232
Joined: Feb 24, 2009
Location: Calabasas CA

Re: Upcoming 3rd Party Plugins

Nice Work travisc thanks. :D

Sorry Guys but i lack the wisdom for such plugins

Posted on
Wed May 25, 2011 7:51 pm
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Re: Upcoming 3rd Party Plugins

Hi Jay,

I'm working on porting the iPhone presence plugin now. As soon as I get something working I'll create a topic and add some documentation. I've already got the plugin's config setup mostly done, and I'm receiving data from the router. Shouldn't be too much longer. The API is pretty slick! :D

The 1-wire temperature adapter I've been using is the DS9097U adapter. I'll list all the details on how I've setup the network and what not once I get something working.

Thanks!

Posted on
Wed May 25, 2011 8:37 pm
jamus offline
Posts: 179
Joined: Dec 01, 2007

Re: Upcoming 3rd Party Plugins

travisc wrote:
The 1-wire temperature adapter I've been using is the DS9097U adapter. I'll list all the details on how I've setup the network and what not once I get something working.


I have a LinkUSB and four temperature sensors that I could help test out with. I'm currently using sample OneWire java driver code that I hacked up (http://github.com/jamusj/OneWire).

Posted on
Wed May 25, 2011 8:56 pm
jay (support) offline
Site Admin
User avatar
Posts: 18219
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Upcoming 3rd Party Plugins

Do all those serial 1-wire devices use the same protocol? That would be great if they did. I really haven't done any 1-wire investigation.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Wed May 25, 2011 8:57 pm
jay (support) offline
Site Admin
User avatar
Posts: 18219
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Upcoming 3rd Party Plugins

travisc wrote:
The API is pretty slick!


Thanks! A TON of effort has gone into it - we really hope that it works out well for you guys - we've been having fun writing our plugins so far - frankly, much more fun than building functionality directly into the Server. I think a lot of it is Python - it's just a great language.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Wed May 25, 2011 9:07 pm
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Re: Upcoming 3rd Party Plugins

@jamus
I have a LinkUSB and four temperature sensors that I could help test out with. I'm currently using sample OneWire java driver code that I hacked up (http://github.com/jamusj/OneWire).


Great! I currently use Digitemp http://www.digitemp.com/ wrapped in some Perl code. Digitemp works with your LinkUSB adapter too so we should be all set. I'll let you know as soon as I have something worth testing.

@jay
Do all those serial 1-wire devices use the same protocol? That would be great if they did. I really haven't done any 1-wire investigation.


For the most part yes. They all share the same protocol and basic command set for enumeration, reading and writing memory locations etc. Some specialized devices with unique features have special commands. Since I've mostly only been interested in temperature with Indigo I've been using Digitemp which makes it really easy to enumerate the bus and read temperatures and humidity. But I have also worked with 1 wire iButtons for access and control applications.

Thanks

Posted on
Fri May 27, 2011 8:59 am
jay (support) offline
Site Admin
User avatar
Posts: 18219
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Upcoming 3rd Party Plugins

I went ahead and just moved this topic over to the new forum - it'll be easier for people to find it here... ;)

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Sat May 28, 2011 10:09 pm
jay (support) offline
Site Admin
User avatar
Posts: 18219
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Upcoming 3rd Party Plugins

Just ran across this python one-wire library - maybe it'll help.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Wed Jun 01, 2011 5:20 pm
peppop offline
User avatar
Posts: 104
Joined: Oct 18, 2006
Location: Mas

Re: Upcoming 3rd Party Plugins

travisc, I am really interested in the DSC alarm plugin. right now im using the DSC script with serial bridge which works fine, but i would like to get away from serial commands. Have you had any experience with the DSC TL-150? It is a network module and it has an onboard server that tells you your zone status and allows you to arm and disarm the alarm. Keep me informed of any progress you make with DSC, I am very interested.

Posted on
Thu Jun 02, 2011 7:22 am
travisc offline
User avatar
Posts: 346
Joined: Sep 07, 2010
Location: Toronto, Canada

Re: Upcoming 3rd Party Plugins

travisc, I am really interested in the DSC alarm plugin. right now im using the DSC script with serial bridge which works fine, but i would like to get away from serial commands. Have you had any experience with the DSC TL-150? It is a network module and it has an onboard server that tells you your zone status and allows you to arm and disarm the alarm. Keep me informed of any progress you make with DSC, I am very interested.


I haven't had any experience using the TL-150. I'm not sure if that was available when I implemented this. I'd be curious if that provides an easy interface for a script to read zone info and send commands, or if it just throws all the info up on a standard web page that would have to be cleverly parsed.

My plugin will be based on the serial IT-100 serial module, at least at first. I've given up on trying to get away from serial just yet. The ports are too common for small interfaces like Dallas/Maxim 1 Wire, RS-485, DSC, etc. All of which I use. I'm going to buy a few of those four port usb to serial converters to neaten things up and call it a day.

I'm going to start on it first thing next week. Shouldn't be too long after that. I've already had it running under Perl for almost a year, I just have to port the code.

Travis

Posted on
Fri Jun 03, 2011 9:47 am
raneil offline
User avatar
Posts: 90
Joined: Feb 11, 2011
Location: Grapevine, Texas

Re: Upcoming 3rd Party Plugins

travisc wrote:
travisc, I am really interested in the DSC alarm plugin. right now im using the DSC script with serial bridge which works fine, but i would like to get away from serial commands. Have you had any experience with the DSC TL-150? It is a network module and it has an onboard server that tells you your zone status and allows you to arm and disarm the alarm. Keep me informed of any progress you make with DSC, I am very interested.


I haven't had any experience using the TL-150. I'm not sure if that was available when I implemented this. I'd be curious if that provides an easy interface for a script to read zone info and send commands, or if it just throws all the info up on a standard web page that would have to be cleverly parsed.

My plugin will be based on the serial IT-100 serial module, at least at first. I've given up on trying to get away from serial just yet. The ports are too common for small interfaces like Dallas/Maxim 1 Wire, RS-485, DSC, etc. All of which I use. I'm going to buy a few of those four port usb to serial converters to neaten things up and call it a day.

I'm going to start on it first thing next week. Shouldn't be too long after that. I've already had it running under Perl for almost a year, I just have to port the code.

Travis


@peppop, and @travisc:

I have been using the DSC TL-150 with Indigo for several months now. It works quite well. I have no experience with the TL-100, so I can't really make any comparisons.

The TL-150 does indeed simply present a simple web page as its interface. It does not facilitate issuing commands/queries directly to the alarm panel. Screen shot:

Image

The grid represents the 64 hard-wired zones supported by the panel -- in this case, the DSC 1832 with a PC-5208 Expander module (I'm only using 16 zones at the moment). In this example, zones 1 and 2 are doors that have been recently closed and zone 3 is a door that is currently open.

I have cobbled together an AppleScript and several Control Pages (specifically for the iPhone 4) that allow remotely monitoring the system's status, as well as arming and disarming the system via Indigo Touch. As such, I never actually see the above web page.

If there are others out there that would be interested in making use of the TL-150 with Indigo 5, I could attempt to convert the AppleScript webpage page parser to a plugin. I wouldn't know Python if it came up and bit me (see what I did there?), but it looks like I'm going to need to learn it if I hope to convert all of my Indigo 4 AppleScript goodies into Indigo 5 plugins.

Posted on
Fri Jun 03, 2011 10:23 am
jay (support) offline
Site Admin
User avatar
Posts: 18219
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Upcoming 3rd Party Plugins

IMO, you guys should collaborate so that there's a single DSC plugin that uses either interface - that would really be slick!

If you've ever done any programming in a C-like language you shouldn't have any trouble at all - the hardest things I think are:

1) no line ending chars needed (;)
2) indentation is how you identify blocks rather than brackets
3) colons start a block (e.g. "if x == 1:") followed by the indented code

But, even if you don't have much/any experience in a C-like language it's really not hard to learn.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Fri Jun 03, 2011 10:55 am
raneil offline
User avatar
Posts: 90
Joined: Feb 11, 2011
Location: Grapevine, Texas

Re: Upcoming 3rd Party Plugins

jay wrote:
IMO, you guys should collaborate so that there's a single DSC plugin that uses either interface - that would really be slick!


I'm happy to contribute where I can. The two devices are so dissimilar that I'm not sure a single plugin would make sense; though from a user's point of view, I suppose it might... I'm open to any and all suggestions.

jay wrote:
If you've ever done any programming in a C-like language you shouldn't have any trouble at all - the hardest things I think are:

1) no line ending chars needed (;)
2) indentation is how you identify blocks rather than brackets
3) colons start a block (e.g. "if x == 1:") followed by the indented code

But, even if you don't have much/any experience in a C-like language it's really not hard to learn.


I'll start playing around with it and get my feet wet.

Who is online

Users browsing this forum: No registered users and 10 guests