Insteon / X10 Home Automation project

Hi, Luis Garcia here, I’m a systems engineer at a telecommunications company in FL.   Among one of my many functions are programming, web-design and networking.

Over the last few months and with the purchase of my new home in 2005, I decided to go all out on the integration of software / hardware home automation which I’ll put here on how it was done.

After doing some research about Insteon and X10 I finally jumped in. Basically writing from scratch my own server, client.  This of course grew to include Web / Flash client and other goodies!  My hardware setup can be found Here. The main components are the Insteon PLC (Serial device) and supplementing it with x10 technology.  I use various languages such as VB 2008 ,, Flash Action Script 2.0, C#, PHP and MS SQL databases.

Here is a sample video of Insteon / mixed with X10 here .

Any feedback or comments are welcome.

The site/blog is split in various sections, please check them out many are related to Insteon, some are not but all are tied into my home automation project in a way or other. Hopefully they will guide and help you !

General (You can start here)

  • Day to day post, changes and other minor entries

Hardware Section

Which included installing Insteon / X10 devices and putting them to use.

Software Setup

Including VB / Script programming directly related to my Insteon / X10 program, mostly using the PLC device

Non Insteon Programming

Including VB code on things that my not relate directly to Insteon, for example Port monitoring, FTP sessions, etc. All which Ive used some way in my program but can be used for other purposes.


Tips and things ive done using Flash (CS3) / ActionScript, not necessary to Insteon

Photo Album

Current Hardware/Software Setup


  1. itai says:

    great work on the insteon setup. I just created my first application to control my lights and power on devices and it works very well. I was really interested in how you combined outlook to monitor and send messages to insteon.

    I am getting an error when I try to compile around the “Public function Checkemail() as Boolean” it says its not in the right namespace.

    do you have any tips on how to integrate the outlook capabilites to my simple program. I would love to send an email with the message “turn lights on” and it will turn on all the lights in a command.


  2. lgarcia4617 says:

    Great, I’ll post more as I go along!!

  3. WDB says:

    Did you look at available HA software before deciding to roll your own?
    I use the formally commercial but now free Motorola Premise home control.
    If you have not checked it out visit for the Premise forums,
    lots of good pay programs discussed there also.

  4. lgarcia4617 says:

    Hi, I had looked at a couple of them out there but as flexible as they are and look I still felt limited.

    For example I wasn’t able to do the following ‘macro’ on any software. My walk in closet is inside the master bathroom. I wanted to be able to when I walk out of the bathroom turn off the main bathroom light and have it turn off the master closet as well. But at also when I turn on the master bathroom light the closet will not turn on, unless motion is detected. Another simple one was. My Appliance link on a coffee machine is sitting next to the sink switch. I wanted to be able to double hit the sink switch and turn off the appliance link. Also I do what I call re-programming’ of buttons, for example on my desklinc I catch any button (on/off) of the 5 available and redirect them as toggle (on/off) so at the end of the day I have 10. Its the little things like that.

    I’ll visit that spot now and check it out…

  5. WDB says:

    Thanks for the reply,I know in Premise you can do a lot with VB scripting as far as having thing reacts to state changes. Premise used to be quite expensive before Motorola stopped supporting it, when they stopped support they let people have it for free. The GUI for Premise is not as nice as some of the newer systems like CQC or Main Lobby but it is possible to update it.

    As for the pay programs CQC is very powerful but also quite expensive. Here is a link to the CQC site.

  6. Steen says:

    Hey Luis,
    Impressive compilation, good work done…

  7. Ron Kane says:

    Hi Luis,

    I am trying to get inot home automation stuff. I used a tiny bit of X10 stuff and on browsing the web I stumbled into Insteon products. As I dug more and more I continue to get confused as to where to start especially being budget conscious in this tight economy.

    I am not a programmer but I can “mess” with stuff even if it keeps me up all night long. Now here comes you in the picture. Man oh man, I read through a lot of your stuff. They are absolutely incredible. I love gadgets and one day would love to have some of the automation to enjoy with my family.

    Any way, I wanted to see if you would advise me where to start for simplicity. Here is what I would like to do for starter:
    1) control/dim a few lights in the living room, hallway light upstairs that reflect downstairs, outdoor lights i.e. garage, front porch and back, master bedroom for now.
    2) be able to setup scenes or macros to do different things
    3) be able to interface with my iphone and to show off to friends
    4) to able to control the lights while away from home
    5) to able to incorporate the lighting with my home theater system. I have a universal remote which use IR (MX-3000). Currently, I am using a little bit of the feature with my X10 products
    6) Possibility of setting up a software using Apple or Microsoft computer.

    This may not seem to be basic. However, I think this is where I would love to begin and expand later.

    I would certainly appreciate your advise. I am overwhelmed at this point.

    By the way,keep up the good work. Also I am in Florida as well.

    While I wait for your response…..



    NB: I could not find Part 2 of your Insteon Project. I read part 1. Remarkable!

    • lgarcia4617 says:

      Hi, and thanks for the comments. In my case I started with the $99 starter kit which includes the desktop controller, two access pointers (Which you really need) and one lamp linc.(This goes between the lamp outlet and the lamp, also great for Christmas decorations or other places) The cool thing of insteon is that each device can be a transmitter or responder so really the setup is up to you. Just with this you can dim and set lights to certain levels at the press of a button, even without a computer. I do admit the more devices I put the better and faster it got. So don get frustrated at first it sometimes it fails. Now a days I have 4 access points (Since I use them outside for the decorations) and I ALWAYS get a response from the devices. its just a mater of fine tunning the placement in your house.

      Response to your questions,
      #1 continued… To reflect changes on a keypad you would need to use the keylinc which is a bit costly $79 but its like 8 buttons in one, and again no computer is needed. 🙂 Ebay is always a good spot to check.
      #2 Each transmitter can have various responders so you can ‘link’ a single button to many switches.
      #3 You will need to get into programming, in my case I use a PC which runs all the time and hosts a web page outside on the internet. From there its a VB 2008 program that does all the backwork. The pages are PHP but you can really use any language.
      #4 In my case my PC loops thru many commands every second. I’ve tied in Email, databases and other goodies in there. I works like a charm but its’ microsoft so sometimes it requires a reboot, but hardly never since many times Im working on it.
      #5 Insteon has a IR to Insteon and a Insteon to IR so its really a mater of reading the signal and doing what you want, in this case you will need the computer.
      #6 I have what they call a PLC which is the device which connects to the PC via a serial, the PLC is very easy to program but isnt as fast (You cant run a light show or anything) and requires that you use special windows software which is a Com object. They also have what they call a PLM which is true serial conncetion so you send commands like hyperterminal. I know there are a couple of peolpe who have done mac interfaces for these types. they are harder to config but are really down to that network level. there is also a company called universal-devices which has a mix of the PLM/XML language which is maybe what you are looking for.

      Thanks hope to see what you set up. I took it slow and have been purchasing little by little.

  8. Steve says:

    Hi I am currently using ActivePro Home with cm15 interface, and am considering slowly changing to insteon for the better reliability. I have a couple of questions? 1) How effective is the system when you are using both X10 and insteon device at the same time? 2) What is the best interface (Controller) to use. (I would prefer to NOT have to leave the computer on 24/7. I am currently using timed on/off’s for switches and modules and difffernt macros.

    Thanks for any advice or help the you could give me!

  9. Mohamed says:

    Dear Mr. Luis Garcia,

    I am Mohammed and i’m writing this since u have used the insteon technology as u mentioned in ur article. im a student in Sultan Qaboos
    university in Oman and my group and I are doing a final year project based on developing the insteon tech. and i will be so grateful if u gave us some help.
    regarding this technology what code (programming language) can we use to develop it.. is it only the C code or we can use another language??
    the other question is how can we implement the wireless in this tech. ?
    and the last question is : is insteon availabe with *50Hz/220VAC or 240??***
    i tried to read some articles but most of them recommend to buy the insteon kit so that i understand the code. would u plz give me an idea what does the codes mean?
    thats all my concerns and i will be very happy to get a reply from u..
    I am looking forward to hearing from u very soon..


    • lgarcia4617 says:

      Hi, we’ll the SDM object that the PLC uses, can use any programming language that uses com objects like C#, VB,.NET, java etc. To my knowledge it doesn’t work in 240V. And to your final question yes they ask that you buy the SDK to get the info ($100+), im not a member myself since for what ive heard there is not much from what you can pickup from the web. Also once you become a member you have to sign a Non-disclosure agreement which means you can share any information there, and that is why I put this site up.

      Check out for another set of examples.

  10. tverlihay says:

    Luis, this is some great stuff. I was using X10 years ago more for the wow factor with friends but I’m buying my first house and would love to see touchscreens on the wall with weather updates and scene settings. Absolutely an inspiration, keep up the great work!

  11. tverlihay says:

    Hi Luis, I’m trying to get my project up and running. I’ve got it working when debugging in VB 08 but when I go to try to run it through my browser it fails with a generic error: “Retrieving the COM class factory for component with CLSID {53A47403-34CF-412A-87E6-CEA3482CEF2A} failed due to the following error: 80080005”. Google doesn’t help out too much, very generic answers, all of which I have tried. Any help would be greatly appreciated!



    • lgarcia4617 says:

      you may need to Reference the SDM object on your web pages just like if you were doing a internal application. For me I found the easiest to just from your ‘web’ application shoot to the SDM Web 9020 port. Something like this.

      Using some of the code shown on the site, this is a quick example

      Public IWEB As String = “”
      Webclient1.DownloadString(IWEB + “00 00 00 ” + InD(Device).MacSP + ” 0A 11 ” + Rate

  12. Keith says:

    Question, how did you use insteon devices outside during Christmas? Did you enclose them? Does Smarthome make a module for exterior? Thanks

  13. Fantastic POST.

    Is it possible to buy Insteon for the European market?

  14. lgarcia4617 says:

    No sorry, I am only using Insteon on this project.

  15. I like the style you took with this subject. It is not typical that you discover a subject so to the point and informative.

  16. beachbody says:

    I have found this amazing blog post ,and I must say to you thank you very much for providing this post to us.

  17. jigsaw says:

    Oh my goodness! a tremendous article dude. Thank you However I’m experiencing subject with ur rss . Don’t know why Unable to subscribe to it. Is there anyone getting similar rss downside? Anybody who is aware of kindly respond. Thnkx

  18. Thank you for sharing your info. I really appreciate your
    efforts and I am waiting for your next write
    ups thank you once again.

  19. Jimmy says:

    Thanks for this, really fantastic!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s