Active TopicsActive Topics  Display List of Forum MembersMemberlist  Search The ForumSearch  HelpHelp
  RegisterRegister  LoginLogin
PowerHome Hardware
 PowerHome Messageboard : PowerHome Hardware
Subject Topic: INSTEON Thermostat Adapter Post ReplyPost New Topic
Author
Message << Prev Topic | Next Topic >>
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: March 05 2008 at 01:05 | IP Logged Quote martlist

Ok,

you need 3 entires:

(1)

ID=TSTATMODE
i/o=Input
Controller=VIRT
Unit=0
Point=2
Raw nto calculated= case([DATA] when 0 then "Off" when 1 then "Heat" when 2 then "Cool" when 3 then "Auto" when 4 then "Fan" when 5 then "Program" when 6 then "Program Heat" when 7 then "Program Cool" else "Unknown")

(2)
TSTATPOINT
i/o=Input
Controller=VIRT
Unit=0
Point=3
Message=Degrees

(4)
TSTATTEMP
i/o=Input
Controller=VIRT
Unit=0
Point=1
Message=Degrees


Back to Top View martlist's Profile Search for other posts by martlist
 
cmhardwick
Senior Member
Senior Member
Avatar

Joined: July 08 2006
Location: United States
Online Status: Offline
Posts: 290
Posted: March 05 2008 at 08:26 | IP Logged Quote cmhardwick

I'll try this tonight. I don't have an option for VIRT though for some reason, just the Insteon DM . I'll look at it in more detail tonight though. It was late (or early am) when I looked at it last night.

Thanks for spending the time on this!!

__________________
Cicero, Enjoying automation!
Back to Top View cmhardwick's Profile Search for other posts by cmhardwick Visit cmhardwick's Homepage
 
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: March 05 2008 at 13:20 | IP Logged Quote martlist

mmm. Dave did something to add the virtual controller that I am missing in my steps now you mention it.

I will need to look when I get home.
Back to Top View martlist's Profile Search for other posts by martlist
 
TonyNo
Moderator Group
Moderator Group
Avatar

Joined: December 05 2001
Location: United States
Online Status: Offline
Posts: 2889
Posted: March 05 2008 at 14:00 | IP Logged Quote TonyNo

You need to add it as a controller in Setup.
Back to Top View TonyNo's Profile Search for other posts by TonyNo Visit TonyNo's Homepage
 
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: March 05 2008 at 14:08 | IP Logged Quote martlist

Tony is correct. I remember now. Just add as a controller and make sure you reinitialize afterwards.

Dave clarified for me last night that you only need to reinitialize if you make change within the Setup section of the explorer. I have been reinitializing more often that that as I was never sure if changes I made were taking effect. Now I know they were and they were just wrong ;-)

Tony, I don't know the script importing well enough to know if I can combine all of these steps into a single script that someone could execute to "install" the thermostat. Do you know?
Back to Top View martlist's Profile Search for other posts by martlist
 
cmhardwick
Senior Member
Senior Member
Avatar

Joined: July 08 2006
Location: United States
Online Status: Offline
Posts: 290
Posted: March 05 2008 at 14:48 | IP Logged Quote cmhardwick

that's why mine's not working then. it has no idea what controller to use. Thanks Tony. I'll do that tonight. do I need to set it as any particular TYPE of controller? or special settings?

__________________
Cicero, Enjoying automation!
Back to Top View cmhardwick's Profile Search for other posts by cmhardwick Visit cmhardwick's Homepage
 
cmhardwick
Senior Member
Senior Member
Avatar

Joined: July 08 2006
Location: United States
Online Status: Offline
Posts: 290
Posted: March 05 2008 at 20:39 | IP Logged Quote cmhardwick

OK, I've tried with type of "Powerhome Virtual" still no go. Still plugging away though

__________________
Cicero, Enjoying automation!
Back to Top View cmhardwick's Profile Search for other posts by cmhardwick Visit cmhardwick's Homepage
 
cmhardwick
Senior Member
Senior Member
Avatar

Joined: July 08 2006
Location: United States
Online Status: Offline
Posts: 290
Posted: March 05 2008 at 21:07 | IP Logged Quote cmhardwick

Finally ... stupid forum put spaces in some of the macros, right in the middle of commands. Working great now!

__________________
Cicero, Enjoying automation!
Back to Top View cmhardwick's Profile Search for other posts by cmhardwick Visit cmhardwick's Homepage
 
TonyNo
Moderator Group
Moderator Group
Avatar

Joined: December 05 2001
Location: United States
Online Status: Offline
Posts: 2889
Posted: March 05 2008 at 21:43 | IP Logged Quote TonyNo

Quote:
Tony, I don't know the script importing well enough to know if I can combine all of these steps into a single script that someone could execute to "install" the thermostat. Do you know?

Dave can say for sure, but it seems like it should work.
Back to Top View TonyNo's Profile Search for other posts by TonyNo Visit TonyNo's Homepage
 
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: March 08 2008 at 02:08 | IP Logged Quote martlist

I just added a macro to update a set of global variables as well as the virtual analog in the original post:

Code:

insert into macroheader values ('GETTSTAT_GLOBAL','Get Thermostat Data',0,0,1);
insert into macrodetail values ('GETTSTAT_GLOBAL',1,38,'',0,'ph_setglobal_a("THERMOSTAT_TEM P", (ph_insteonwithret("THERMOSTAT",107,3) / 2))',0,'');
insert into macrodetail values ('GETTSTAT_GLOBAL',2,38,'',0,'ph_setglobal_a("THERMOSTAT_MOD E", case(ph_insteonwithret("THERMOSTAT",107,2) when 0 then "Off" when 1 then "Heat" when 2 then "Cool" when 3 then "Auto" when 4 then "Fan" when 5 then "Program" when 6 then "Program Heat" when 7 then "Program Cool" else "Unknown"))',0,'');
insert into macrodetail values ('GETTSTAT_GLOBAL',3,38,'',0,'ph_setglobal_a("THERMOSTAT_SP" , ph_insteonwithret("THERMOSTAT",106,32) / 2)',0,'');


Don't forget to create the Global Variables too.

The main reason for this was to have easier access to them in eHome.

Now I just need to work out how to get the Fan settings and Humidity reading out of the thermostat.

BTW, I ordered the humidity module from Amazon. $5 cheaper than smarthome directly but is still shipped by smarthome. Go figure....
Back to Top View martlist's Profile Search for other posts by martlist
 
cmhardwick
Senior Member
Senior Member
Avatar

Joined: July 08 2006
Location: United States
Online Status: Offline
Posts: 290
Posted: March 08 2008 at 22:54 | IP Logged Quote cmhardwick

I'm sure emergency heat and auxiliary heat modes are also reported, which would be nice. Nice to have an alert email, sound, whatever, when either of these kick in, especially emergency heat, as that cuts off the heatpump whereas auxiliary is just a boost. Of course, if you're using a traditional package unit, these don't apply.

__________________
Cicero, Enjoying automation!
Back to Top View cmhardwick's Profile Search for other posts by cmhardwick Visit cmhardwick's Homepage
 
jtrevill
Newbie
Newbie


Joined: April 11 2008
Online Status: Offline
Posts: 2
Posted: April 20 2008 at 02:44 | IP Logged Quote jtrevill

Okay, so I'm new here - I've been running Houselinc, but am trying to get into something with more flexability. Testing PH and just need to get my thermostat working to be convinced... However, I don't have the programing knowledge, or the PH knowledge to be able to figure this out. Can someone "Dumb down" these instructions for me :)

THanks!


Jason
Back to Top View jtrevill's Profile Search for other posts by jtrevill
 
TonyNo
Moderator Group
Moderator Group
Avatar

Joined: December 05 2001
Location: United States
Online Status: Offline
Posts: 2889
Posted: April 20 2008 at 10:24 | IP Logged Quote TonyNo

Welcome!

Start with martlist's post. I'll fill in what he leaves out...

1. Add a new device type: Go to the Insteon Explorer (Insteon logo button), Types tab, click Append, type in Insteon Thermostat for the Description, follow rest of #1.

2. Auto Discovery: On Setup tab.

3. Devices tab.

4a. Create a Virtual Analog controller (see his 2nd post): PowerHome explorer, Setup, Controllers, right-click in right pane, Insert, follow his post for values.

4b. Reinit PH (File, Reinitialize).

4c. Copy and paste his Code sections into the Multi-Editor (pencil icon; make sure it says SQL, if not, click on 4th icon from right and select SQL), click Run icon (right most icon).

5-8. Same as #4.
Back to Top View TonyNo's Profile Search for other posts by TonyNo Visit TonyNo's Homepage
 
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: April 20 2008 at 13:50 | IP Logged Quote martlist

Jason,

your post prompted me to finally get this all into a single clean import,
plus I added some additional support and some macros to make things
easier.

Everything you need should be below and I am no longer using the virtual
device as I all I need for eHome integration is my global variables.

(1) Add a new device type for your Thermostat in the Insteon explorer.
Leave the checkboxes blank and make Groups 254.

(2) Turn on auto discovery and just hold the button on the thermostat
adapter as you usually would with a lamplinc.

(3) Rename the new added device to THERMOSTAT so that all the
following macros work.

(4) Copy and paste this Code sections into the Multi-Editor (pencil icon;
make sure it says SQL, if not, click on 4th icon from right and select SQL),
click Run icon (right most icon). (thanks Tony)

***** NOTE: CORRECTED CODE SINCE ORIGINAL POST *****
***** NOTE: CORRECTED AGAIN FOR LOOP CONDITION 4/29/08 ***

Code:

insert into global_variables values ('THERMOSTAT_DEADBAND','255');
insert into global_variables values ('THERMOSTAT_HUM','31');
insert into global_variables values ('THERMOSTAT_MODE','Unknown');
insert into global_variables values ('THERMOSTAT_SP','-1');
insert into global_variables values ('THERMOSTAT_TEMP','68');
insert into macroheader values ('TSTAT_ALL_OFF','All Off',0,0,1);
insert into macrodetail values
('TSTAT_ALL_OFF',1,38,'',0,'ph_insteon("THERMOSTAT",107,9)', 0,'');
insert into macroheader values ('TSTAT_FAN_OFF','Turn Off House
Fan',0,0,1);
insert into macrodetail values
('TSTAT_FAN_OFF',1,38,'',0,'ph_insteon("THERMOSTAT",107,8)', 0,'');
insert into macroheader values ('TSTAT_FAN_ON','Turn On House
Fan',0,0,1);
insert into macrodetail values
('TSTAT_FAN_ON',1,38,'',0,'ph_insteon("THERMOSTAT",107,7)',0 ,'');
insert into macroheader values ('TSTAT_GETTSTAT_GLOBAL','Get
Thermostat Data',0,0,1);
insert into macrodetail values
('TSTAT_GETTSTAT_GLOBAL',1,31,'',NULL,'5',1,'');
insert into macrodetail values
('TSTAT_GETTSTAT_GLOBAL',2,38,'',0,'ph_setglobal_a("THERMOST
AT_TEMP", (ph_insteonwithret("THERMOSTAT",107,3) / 2))',0,'');
insert into macrodetail values
('TSTAT_GETTSTAT_GLOBAL',3,38,'',0,'ph_setglobal_a("THERMOST
AT_MODE", case(ph_insteonwithret("THERMOSTAT",107,2) when 0 then
"Off" when 1 then "Heat" when 2 then "Cool" when 3 then "Auto" when 4
then "Fan" when 5 then "Program" when 6 then "Program Heat" when 7
then "Program Cool" else "Unknown"))',0,'');
insert into macrodetail values
('TSTAT_GETTSTAT_GLOBAL',4,38,'',0,'ph_setglobal_a("THERMOST AT_SP",
ph_insteonwithret("THERMOSTAT",106,32) / 2)',0,'');
insert into macrodetail values
('TSTAT_GETTSTAT_GLOBAL',5,38,'',0,'ph_setglobal_a("THERMOST
AT_HUM", ph_insteonwithret("THERMOSTAT",106,96))',0,'');
insert into macrodetail values
('TSTAT_GETTSTAT_GLOBAL',6,38,'',0,'ph_setglobal_a("THERMOST
AT_DEADBAND", ph_insteonwithret("THERMOSTAT",106,64))',0,'');
insert into macroheader values ('TSTAT_SETMODE_AUTO','Auto
Mode',0,0,1);
insert into macrodetail values
('TSTAT_SETMODE_AUTO',1,38,'',0,'ph_insteon("THERMOSTAT",107
,6)',0,'');
insert into macrodetail values
('TSTAT_SETMODE_AUTO',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SETMODE_AUTO',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0,'') ;
insert into macroheader values ('TSTAT_SETMODE_COOL','Cool
Mode',0,0,1);
insert into macrodetail values
('TSTAT_SETMODE_COOL',1,38,'',0,'ph_insteon("THERMOSTAT",107
,5)',0,'');
insert into macrodetail values
('TSTAT_SETMODE_COOL',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SETMODE_COOL',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0,'') ;
insert into macroheader values ('TSTAT_SETMODE_HEAT','Heat
Mode',0,0,1);
insert into macrodetail values
('TSTAT_SETMODE_HEAT',1,38,'',0,'ph_insteon("THERMOSTAT",107
,4)',0,'');
insert into macrodetail values
('TSTAT_SETMODE_HEAT',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SETMODE_HEAT',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0,'') ;
insert into macroheader values ('TSTAT_SETMODE_PGM_AUTO','Program
Auto Mode',0,0,1);
insert into macrodetail values
('TSTAT_SETMODE_PGM_AUTO',1,38,'',0,'ph_insteon("THERMOSTAT"
,107,12)',0,'');
insert into macrodetail values
('TSTAT_SETMODE_PGM_AUTO',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SETMODE_PGM_AUTO',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0 ,'');
insert into macroheader values ('TSTAT_SETMODE_PGM_COOL','Cool
Mode',0,0,1);
insert into macrodetail values
('TSTAT_SETMODE_PGM_COOL',1,38,'',0,'ph_insteon("THERMOSTAT"
,107,11)',0,'');
insert into macrodetail values
('TSTAT_SETMODE_PGM_COOL',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SETMODE_PGM_COOL',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0 ,'');
insert into macroheader values ('TSTAT_SETMODE_PGM_HEAT','Program
Heat Mode',0,0,1);
insert into macrodetail values
('TSTAT_SETMODE_PGM_HEAT',1,38,'',0,'ph_insteon("THERMOSTAT"
,107,10)',0,'');
insert into macrodetail values
('TSTAT_SETMODE_PGM_HEAT',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SETMODE_PGM_HEAT',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0 ,'');
insert into macroheader values ('TSTAT_SP_DOWN','Current setpoint do 1
deg',0,0,1);
insert into macrodetail values
('TSTAT_SP_DOWN',1,38,'',0,'ph_insteon("THERMOSTAT",105,2)', 0,'');
insert into macrodetail values ('TSTAT_SP_DOWN',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SP_DOWN',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0,'');
insert into macroheader values ('TSTAT_SP_UP','Current setpoint up 1
deg',0,0,1);
insert into macrodetail values
('TSTAT_SP_UP',1,38,'',0,'ph_insteon("THERMOSTAT",104,2)',0, '');
insert into macrodetail values ('TSTAT_SP_UP',2,31,'',NULL,'2',0,'');
insert into macrodetail values
('TSTAT_SP_UP',3,1,'TSTAT_GETTSTAT_GLOBAL',0,'',0,'');
insert into timedevents values ('2008-04-20
10:34:34.000',5,0,'TSTAT_GETTSTAT_GLOBAL',0,'2008-04-20
10:34:34.000',0,0);


(5) You now have several macros for reading status and setting modes, a
timed event to run the status update, and the corresponding global
variables to store them.

One issue. I have found that after some period of time, days or weeks,
the insteon adapter stops responding to requests for both status and
updates. I have to unplug it to reset.

Edited by martlist - April 29 2008 at 11:47
Back to Top View martlist's Profile Search for other posts by martlist
 
nadler
Super User
Super User


Joined: February 25 2006
Location: United States
Online Status: Offline
Posts: 354
Posted: April 20 2008 at 14:24 | IP Logged Quote nadler

Martlist, Thanks for the code. I just ordered the thermostat and await it with great anticipation. There might be a slight error in the code. Line 6 and 7 is repeated in lines 8 and 9 thus causing the SQL to fail on execution. Elimination of the lines does the trick.

Thanks again.
Back to Top View nadler's Profile Search for other posts by nadler
 
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: April 20 2008 at 19:21 | IP Logged Quote martlist

Thanks. I updated the original post to remove the duplicate lines.

This is my Thermostat screen in eHome which uses the macros and variables:

Back to Top View martlist's Profile Search for other posts by martlist
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: April 21 2008 at 11:47 | IP Logged Quote dhoward

Ive also received my Insteon Thermostat adaptor and have created some new macros to control it. I currently don't have any Control Center screens (nice eHome screens Martlist. Hats off to you and Steve (eHome creator) working with it yet, but I can monitor and change settings via the Device Status screen.

I'll try to upload my settings later tonight.

Also, when the next beta is released, support should be built in, eliminating the need for the special macro's.

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
jtrevill
Newbie
Newbie


Joined: April 11 2008
Online Status: Offline
Posts: 2
Posted: April 21 2008 at 23:37 | IP Logged Quote jtrevill

Thank you very much! I do have a question. I got all of your code working and can turn the thermostat off, and change the program modes. However, the macro that adjusts the temp up and down 1 degree doesn't do anything. Is that specific to one particular program mode? I just run in program mode all the time.

Thoughts?

Thanks!

Jason
Back to Top View jtrevill's Profile Search for other posts by jtrevill
 
martlist
Newbie
Newbie


Joined: January 07 2007
Online Status: Offline
Posts: 31
Posted: April 21 2008 at 23:57 | IP Logged Quote martlist

Hmmmmmmm....

I rechecked the code and it looks right in the import. However I just rechecked my system and it is no longer working. I think it may only work in certain modes but I cannot test as I am now getting weird responses from the thermostat. I will reboot and try again in the morning and let you know.
Back to Top View martlist's Profile Search for other posts by martlist
 
nadler
Super User
Super User


Joined: February 25 2006
Location: United States
Online Status: Offline
Posts: 354
Posted: April 28 2008 at 16:02 | IP Logged Quote nadler

I just got my thermostat installed. I had to rewire my air handler in the attic to get a common and then rewire my heating in the basement with a second relay on 1 zone because I had 'dual 24V transformers' and the venstar only handles a single 24V. But it all works and I learned a lot about heating and ac control systems.

Martlist, I used your macros and they were aces. Saved me hours of work and figured everything out in minutes. Your screen is terrific as well. I haven't used ehome yet and do everything in the control center but I'll have to check ehome out.

There are 2 slight errors in the macro. In the TSTAT_SETSTAT_GLOBAL macro the last line (line 70) calls the macro again thus making an endless loop. This line can be deleted or check boxed out.

In the same macro the global variables have an extra space. I believe this is put in by this board and you won't be able to get them about in the post, but it would be good for other to know. Cicero commented on it above. Here are the effected global variables:
THERMOST AT_TEMP
THERMOST AT_MODE
THERMOST AT_SP
THERMOST AT_HUM
THERMOST AT_DEADBAND

To all using Insteon and PH - I recommend the thermostat, it does what it's supposed to do and with PH, even more.

Back to Top View nadler's Profile Search for other posts by nadler
 

<< Prev Page of 4 Next >>
  Post ReplyPost New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum