Archive for January, 2009

If your like me who use Firefox on a daily basis most of your browsing.  You know it can be frustrating when you hit a Internal Sharepoint servers or a box which assumes your running IE and depends on NTLM, In our case as you know each time it will ask for your domain user-name / password.  We’ll Firefox does have NTLM just that you need to configure it which is really specify the boxes you will connect to.  Hey its not fully automatic but in my case works like a charm since I don’t connect to 1000 Sharepoint boxes.

NTLM stands for NT Lan Manager, but not the ol’ Lan manager software but instead Microsoft’s authentication protocol.    (These changes are done at your own risk)

Here we go, First launch Firefox and enter in the URL; about:config

This will expose all Firefox’s system settings

From there it will provide a long list of settings, on the ‘search’ bar type NTLM, you will see 3 entries, were just interested in one.

Double click on network.automatic-ntlm-auth.trusted-uris

From there you will enter the DNS name of your Server, in this case a Sharepoint server, since I only have one server Im suspecting you can enter more than one with a comma.

And presto, close firefox and re-open…

As promised here are some new screen shots of the Client.  Its totally revamped and I think in a cleaner format.  Its a combination of VB2008 / Flash Action Script 2.0

Sample Screens – Jan 2009

Comments and feedback is appreciated!

Lets say your like me and you wish to check the status of the contact on your garage.    But notice that regular polls only return the device itself not the status of the contact.

For example maybe at a given time you want to make sure the contact is closed.  Here is how

I’m going to use as reference the original articles of getting “Insteon to talking to your PC found below” Part #1,#2,

This is using VB .NET and assuming you already have some experience with the SDM/PLC commands.

For the Sensor Poll We are going to use the command #19 and a second command of ’01 to query the device.  For example

For this example Lets say for example my plc is AA.BB.CC
My I/O Linc is : 11.22.33


So in VB polling the device using the SDM would be like this,

sm.SendINSTEONRaw(”AA BB CC 11 22 33 05 19 01″, 3)

In return you will get the following bytes, notice the change in the last digit.
If the garage is closed (Contact closed)
 - 04 11 22 33 AA BB CC 25 03 01 

If the garage is closed (Contact OPEN)
 - 04 11 22 33 AA BB CC 25 03 00

If you get FF,FE or other numbers make sure you are using the last 01 on your command #19 as this will give you the state of the device which isnt the contact status.



Hurray, My I/O linc arrived on Saturday 10th!!!

The good news is that its setup and in place.  Setup was a breeze since I’m literally replacing two X10 products for one.  I love it!

So the wiring is the same

Here is my Garage contact I purchased separately before, now as part as a kit.


Since the top part is so light I ended up using Velcro so I didn’t need to drill holes.

Now the I/O Link

Here are the official instructions

As for the hook-up its very straight forward and the on-line manual has a very good description of this.  My recommendation is use the individual strands of a CAT 5 cable, they fit perfect.

Here i’ve connected in my garage door sensor. (Click to magnify) – Green cables

Below I’ve connected my ‘momentary’ switch to the back of the garage opener. (You do have to setup your I/O linc to do the momentary relay before which is the “C” setup).

This is done by pressing the ‘SET” button 3 times x 3 times for a total of 9 times. Double check on-line just to be sure.

Orange is my Open/Close wires to the Garage and the green are my sensors

Here is the box setup next to the Garage opener.  Since there is no space for the I/O linc I had to set it up next to the opener.  Plus I didn’t want to put it flush with the device since it vibrates a lot.

Now each time the device Open’s I get the “11 FF” message and when it closes the “13 FF” message. But i still haven’t figured out
how to read the sensor yet.  Once I get those details I’ll post part 2.

Here is how the linking process works.  It’s done both ways (like a 3-way switch)

* If you want to monitor the garage  status AND use a keylink button you NEED to link then both ways,

1.First open your garage door.

2.Starting linking your I/O link to the KeyLink Key or switch have the switch control your garage then Link Keylink key and then then I/O.

4. This way when you press the key it open/closes as well as the button lights up when you open the door and close it. 🙂

Here are the official instructions

Like many programs there is always more ways to do one thing.

Here is another way I found to talk to my PLC what I’ve been able to get is that i’m sending the direct HEX (PLM) commands to the PLC. Which in turn makes  the processing faster. In my environment it helped a little but had its down sides.

My initial articles using the regular Insteon commands are here.

Turn on a group (SM is your VB PLC Object) Using the PLCHEX command

Im suspecting the first HEX codes are the address and command we are sending to the PLC

Example #1,

My PLC ID is 0D.51.32
Group I want on is “1A
Groups use :C5
Command: Turn on (11=On,12=Fast On,13=Off,14 = Fast Off,19=Poll, 10=Ping)
Power:Full (The last FF for 255 HEX)


Sm.SendPLCHex("02 40 01 A1 00 09 FD CB 0D 51 32 00 00 1A C5 11 FF)
Sm.SendPLCHex("02 46 01 42 10 9F") ' - Execute Command?

Advantages is that there is no ‘sendtxt’ echo coming back or even a echo of my text going out, which for me makes the command process faster.  And you still get the ‘echo’ in the same format coming in so no change to your program is needed if you are already capturing th text comming back.

Cons:There is no place to define the HOPS?. Sometimes can fail is you send to many commands one right after the other, Im suspecting that since you we are cutting the initial ack on the start it choke after too many commands.  My solution to this was to pause between each command I sent to it.  A good 1 seconds did more than just fine.

* BTW, I like to send the group commands twice since I dont do Group clean-up’s so I basically execute the second line twice.

Turn on a single device (SM is your VB PLC Object) Using the PLCHEX command

Example #2,

My PLC ID is 0D.51.32
Device I want on is :0A.0B.0C
Single Devices use  :05
Command: Turn on (11=On,12=Fast On,13=Off,14 = Fast Off,19=Poll, 10=Ping)
Power:Full (The last FF for 255 HEX)


Sm.SendPLCHex("02 40 01 A1 00 09 FD CB 0D 51 32 0A 0B 0C  C5 11 FF)
Sm.SendPLCHex("02 46 01 42 10 9F") - ' - Execute Command?

Hope this helps in your development, and drop me a line if this helps you…

Well 2009 is here, hope it brings you all good things.  This years proves to be exiting for me since i’m now fine tuning the system.  What I mean by that is that now all switches are Insteon and I can get to nitty gritty to getting the little details done.

Tomorrow (Fingers crossed) the 6th Smart Home should be shipping my I/O Linc to replace my current Garage setup.  The current one works fine but many times may fail to report that its closed.  One thing for sure X10 devices suck up Insteon commands and vice/ versa.   For Christmas I got myself a Outlet Linc to replace the Appliance Linc I was using the for coffee Machine.  That device is worth every $.  ($45)  Not only does it look better it fits perfectly into any decora face plate.  Here is the before and after pics.



The top outlet is controlled by Insteon and the bottom one is always on. Perfect!  It even has a button below the top outlet to turn this on and off at will.  Besides here I dont think I can find any other place install one.  But who knows!

I’ve also purchased a additional Access Point for the outside setup which only strengthens the network inside now that Christmas is over . There are some black spots in my home so a extra access point or two doesn’t hurt.  I do admit as I have added in devices its hardly that the devices don’t respond.

My Task  for 2009

1. Garage switch to Insteon from X10

2. Remove X10 transceivers and install ONE directly into the serial port (Take off those Insteon signal suckers)

3. Revamp the Insteon Client

4. Show how purchase the Insteon Thermostat.  (I suspect a bit of the Tax return for this.)