Getting / Setting Insteon information from the Venstar T1700 thermostat
March 1, 2009 at 3:29 pm | In General, Hardware setup, Software Setup | 4 CommentsTags: cool on, fan off, Fan on, getting T1700 Insteon Data, heat on, Home Automation, Insteon, Insteon T1700, Insteon Thermostat, PLC, SDM, sdmserver, vb2008, X10
We’ll after receiving back some of my hard earned money thru 2008. I shelved out the $159 for the Insteon T1700 thermostat.
It can be found here.
The device is quite small, which is fine and thinner that my orginary Honeywell one which was a real plus. To install was also very simple.
And technical support was awesome!!! Who expects to call a company and receive a live person and be able to troubleshoot on the phone in less that 3 min. And to top it off the rep even called me back since he had to leave. At the end it was a simple dip switch due to my model. So if after you install it and when you turn on cool and heat comes out and vice-versa, just turn on dip switch two and your set! Thats Again Mike from Venstar!!!!
The only thing would be the ‘light’ on the side of the Insteon module. so in dark areas it does stand out.
Like mentioned above the device is very small and the insteon module even smaller.
For example check out the image in comparison to my hand
Setting Mode, Getting Temperature of Thermostat
Ok, enough Pictures and talk, lets see how to control this device.
First forget about sending ON/OFF commands, for me they didnt work, nor did they do anything. What we will be using is the 0×02 command instead of 0×11 for on or 0×13 for OFF. What I has able to find was the higher numbers after that worked. I’ll show you what
Ive got and show examples after. In my case I couldnt send request using the regular PLC commands so I ended using the low level calls using the sendhex function, that article can be found here
More ways to speak to your Insteon Devices
For the examples my PLC is # “0D 51 32” and my Thermostat is “01 02 03“.
0×6b – Bit 2 – Get Thermostat Mode (Returned is 00=off,01=Heat,02=Cool,03=Auto,04=Fan)
'Send Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 02") Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command 'You should get the reponse on the Last Bit of your reponse. For example 04 01 02 03 0D 51 32 26 6B 02 So in this case 0x02 Means the device is on COOL.
0×6b – Bit 3 - Get Temperature (Returned is the temperature, you convert to decimal and divide by two)
'Send Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 03") Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command 'You should get the reponse on the Last Bit of your reponse. For example 04 01 02 03 0D 51 32 26 6B 9A So in this case 0x9A Converted to decimal is 154 divide that by two and you get 77 degrees!!0x6b - Bit 4 - Set to Heat
'SendSm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 04")
Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command
0x6b - Bit 5 - Set to Cool
'SendSm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 05")
Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command
0×6b – Bit 6 – Set to Auto (To switch automatically from Cool to Heat depending on your settings)
'Send
Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 06")
Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command
0×6b – Bit 7 - Fan on
'Send
Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 07")
Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command
0×6b – Bit 8 – Fan off
'Send
Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 08")
Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command
0×6b – Bit 9 – All Off
'Send
Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6B 09")
Sm.SendPLCHex("02 46 01 42 10 9F") ' Execute my command
Setting the Cool / Heat Thermostat Temperature
Here insteon of 0×6B we will be using the 0×6C for Cool and 0×6D for HEAT. So lets say you’ve set your device to Cool and want to lower it to 75 Degrees. Just like when we read the temperature, when we set it we need to multiply the requested value * 2 and convert it to HEX. In the sample below the variable Set_Temp holds what we want it to. The next statement converts it to HEX and *2 and presto!
'This is the temperature we want to set Cool to!
Set_Temp="75"
Dim Temp As String = Hex(Set_Temp * 2)
Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6C " + Temp)
Sm.SendPLCHex("02 46 01 42 10 9F")
'This is the temperature we want to set heat to!
Set_Temp="70"
Dim Temp As String = Hex(Set_Temp * 2)
Sm.SendPLCHex("02 40 01 A1 00 09 FD 9B 0D 51 32 01 02 03 05 6D " + Temp)
Sm.SendPLCHex("02 46 01 42 10 9F")
Hope this works for you and its working great for me. Each hour I poll the temperature and as part of that routine I poll my thermostat to keey the information up to date. I’ll post more as I find out!
My first KeypadLinc Setup and Functions
March 1, 2009 at 2:47 pm | In General, Hardware setup | Leave a CommentTags: .net, 3-way, Insteon, insteon keypad linc, keypad, sdmserver, vb 2008, vb2008
So after weeks of playing,printing, and busting buttons I think what I ended up is with some acceptable buttons, here are the layout of my first KeyPad Linc
These were done using a InkJet, I still need to try using a Color Laser to see. Since I got this one off of ebay it was only the 6 key’s which I got the conversion kit off of SmartHome for $5 to 8 bottons.
The Etched buttons do look better but a bit costly. Here is the breakdown
Color Kit, which changes the color of the LED behind the button
6 to 8 Button Conversion kit or new buttons if you break one.
Here is the low down,
1st – Controls the load on the switch which is in my hallway
2nd – The Kitchen Main light
3rd – The Lights inside the Garage
4th – A group which controls all outside lights, (Garage, flood lights, back lights, entrance etc.)
5th- Not linked to any device but when pressed the PC will turn off all the lights in 2 min’s and set the house state to off, which includes bumping up the thermostat to 80 Degrees.
6th- Linked to my I/O Link to open/monitor the garage.
7th -My Children s room both have a main light and a night light switch, this button is linked to both of them, only thing is the Main Switch has a on – level of 0 which causes only the night light to turn on. The best way for this is to link them manually then go back the the program for Smarthomenet’s and change the turn on code to 0.
8th -Linked to my T1700 Thermostat. Its linked by setting your thermostat to the desiered state then link like any other switch. Very simple and clean. I also link this button back to my PLC so I know its been pressed.
Blog at WordPress.com. | Theme: Pool by Borja Fernandez.
Entries and comments feeds.



