Author |
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 16 2009 at 09:36 | IP Logged
|
|
|
I ordered my 2441V about a month ago and qualified for
the free upgrade to the v2.0 version. Just got it today. So
far I have found that it sends on and off commands on
scene 1,2 and 3 for A/C, Heat and Fan.
What else does it do?
Does SmartHome publish anything to help or do we just
have to figure everything out on our own?
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
shoop Newbie
Joined: December 18 2008 Location: United States
Online Status: Offline Posts: 10
|
Posted: December 16 2009 at 11:58 | IP Logged
|
|
|
Mine should be arriving today as well. There is some limitted information here: 2441V (Rev 2.0+) Manual
The most interesting part seems to be where it describes how it can report its temperature and setpoint automatically to an automation controller. It does not document how that information is passed back, but I'm guessing it will probably be in the same format as the v1's response to being polled for that information.
Mark
|
Back to Top |
|
|
shoop Newbie
Joined: December 18 2008 Location: United States
Online Status: Offline Posts: 10
|
Posted: December 17 2009 at 22:17 | IP Logged
|
|
|
In addition to what Kevin has discovered, the adapter will send out the following information to the last responder linked to it in the manor described here. It will send out the update if its settings are changed either locally at the thermostat or by another controller linked to it.
CMD1 = 110 CMD2 = Current Temperature
CMD1 = 111 CMD2 = Humidity (Divide number returned by 255 for percentage)
CMD1 = 112 CMD2 = Mode (responses listed below)
CMD1 = 113 CMD2 = A/C Set point
CMD1 = 114 CMD2 = Heat Set Point
It only sends out what has changed, not all of the information above each time. For instance, if you change the heat set point, it will just send out 114 followed by what it was changed to. It won't tell you the mode unless that has also changed from its previous value.
The Modes Responses are:
0 = Off, Fan Auto
1 = Heat, Fan Auto
2 = Cool, Fan Auto
3 = Auto, Fan Auto
4 = Program, Fan Auto
16 = Off, Fan ON
17 = Heat, Fan ON
18 = Cool, Fan ON
19 = Auto, Fan ON
20 = Program, Fan ON
Although I haven't tried all my macros, it appears to behave the same way as the V1 to the ones that I have tried, so I believe it is completely backwards compatible as well.
Hope this helps
Mark
|
Back to Top |
|
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 18 2009 at 09:15 | IP Logged
|
|
|
shoop wrote:
CMD1 = 110 CMD2 = Current
Temperature
CMD1 = 111 CMD2 = Humidity (Divide number returned
by 255 for percentage)
CMD1 = 112 CMD2 = Mode (responses listed below)
CMD1 = 113 CMD2 = A/C Set point
CMD1 = 114 CMD2 = Heat Set Point
|
|
|
This is great information. How would I go about
capturing it though?
I have noticed mine keeps dropping into auto (both a a/c
and heat set point). I had never seen this before so it
appears to be a compatibility issue. I will put some time
into debugging it over the weekend.
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
grif091 Super User
Joined: March 26 2008 Location: United States
Online Status: Offline Posts: 1357
|
Posted: December 18 2009 at 10:40 | IP Logged
|
|
|
I don’t have a 2441 but the normal way to retrieve information from any Insteon device is to issue a ph_insteonwithret function which returns the cmd2 value returned by the device being queried.
ph_insteonwithret("DEVICEID", 110,0)
would return Current Temperature based on the earlier post.
Edited by grif091 - December 18 2009 at 10:41
__________________ Lee G
|
Back to Top |
|
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 18 2009 at 10:44 | IP Logged
|
|
|
grif091 wrote:
I don’t have a 2441 but the normal
way to retrieve information from any Insteon device is to
issue a ph_insteonwithret function which returns the
cmd2 value returned by the device being queried.
ph_insteonwithret("DEVICEID", 110,0)
would return Current Temperature based on the earlier
post. |
|
|
This is how I am currently polling for data but the v2.0 is
supposed to push changes. I would think it has
something todo with triggers and [TEMPx] vars. I can't
get a trigger to fire on a change so I must not have it
linked correctly.
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
grif091 Super User
Joined: March 26 2008 Location: United States
Online Status: Offline Posts: 1357
|
Posted: December 18 2009 at 11:06 | IP Logged
|
|
|
Based on the first post, different Group numbers (Scenes) are used for different functions (AC, Heat,Fan). The Wiki does not discuss which Group number that may be used for Reporting Changes. First you will have to look at the link record in the PLM that was generated when the PH PLM was linked as a responder using the process described in the Wiki. That should give you the Group number as the Controller (2441 in this case) establishes the Group number when a link is created.
The next step is to examine the Insteon command that is received on that Group number when the 2441 reports a change. Once the Group number and Command number are known it should be possible to define a trigger for that combination. Smartlabs must publish this information for developers. It is too bad they don’t make that information public.
__________________ Lee G
|
Back to Top |
|
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 18 2009 at 11:44 | IP Logged
|
|
|
grif091 wrote:
First you will have to look at the link
record in the PLM that was generated when the PH PLM was
linked as a responder using the process described in the
Wiki. |
|
|
I thought links with all wireless insteon devices would never
show up in PH. Is this not the case?
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
shoop Newbie
Joined: December 18 2008 Location: United States
Online Status: Offline Posts: 10
|
Posted: December 18 2009 at 11:47 | IP Logged
|
|
|
Lee,
For the changes it pushes, it actually sends a direct command, not a group command when the parameters above change. It will only send this to the last device linked to it while the thermostat is in the off mode. At least that is my understanding from the wiki post.
For instance, here is the humidity changing from my event log:
Incoming Insteon received on Insteon DM controller PLM. From Address:[TSTAT] To Address:[PLM] Flags:[7] Cmd1:[111] Cmd2:[80]. Decode: Direct. From: THERMOSTAT To: PLMCTLR1, Unmapped Command
Kevin, I had a hard time getting my trigger to fire until I did a little digging. It looks like Dave has powerhome configured to only trigger on Insteon commands that are "known" and they are defined in the insteoncmds sql table. Notice the Unmapped Command in the event log above.
Running this in the multi editor in SQL mode will allow you to trigger off of the updates from the thermostat:
update insteoncmds set Cmdtext = 'Tstat Push Temp', Allowtrig = 1 where Cmdnum = 110
update insteoncmds set Cmdtext = 'Tstat Push Humid', Allowtrig = 1 where Cmdnum = 111
update insteoncmds set Cmdtext = 'Tstat Push Mode', Allowtrig = 1 where Cmdnum = 112
update insteoncmds set Cmdtext = 'Tstat Push Cool SP', Allowtrig = 1 where Cmdnum = 113
update insteoncmds set Cmdtext = 'Tstat Push Heat SP', Allowtrig = 1 where Cmdnum = 114
Then you can use a trigger to react to them. I have mine setup as trigger type "Insteon Direct In", the trigger ID set to my Thermostat and the Trigger value set to any.
Mark
|
Back to Top |
|
|
shoop Newbie
Joined: December 18 2008 Location: United States
Online Status: Offline Posts: 10
|
Posted: December 18 2009 at 12:01 | IP Logged
|
|
|
Here is the macro that I am running with the trigger above:
You will need to make sure that you have the Global Variables defined that it uses.
Code:
insert into macroheader values ('THERMOSTATCHANGE_MACRO','Update Thermostat Variables',0,0,1);
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',1,16,'',NULL,'if([TEMP9]=110,1,2)',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',2,10,'THERMOSTAT_TEMP',NULL,'[TEMP3]',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',3,16,'',NULL,'if([TEMP9]=111,1,2)',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',4,10,'THERMOSTAT_HUM',NULL,'[TEMP3]/255 * 100',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',5,16,'',NULL,'if([TEMP9]=112,1,2)',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',6,38,'',0,'ph_setglobal_a("THERMOS TAT_MODE", case([TEMP2] when 0 then
"Off" when 1 then "Heat" when 2 then "Cool" when 3 then "Auto" when 4
then "Program" when 16 then "Off - Fan On" when 17 then "Heat - Fan On" when 18
then "Cool - Fan On" when 19 then "Auto - Fan On" when 20 then "Program - Fan On" else "Unknown"))',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',7,16,'',NULL,'if([TEMP9]=113,1,2)',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',8,10,'THERMOSTAT_SP_COOL',NULL,'[TEMP3]',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',9,16,'',NULL,'if([TEMP9]=114,1,2)',0,'');
insert into macrodetail values ('THERMOSTATCHANGE_MACRO',10,10,'THERMOSTAT_SP_HEAT',NULL,'[TEMP3]',0,'');
|
|
|
Mark
|
Back to Top |
|
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 18 2009 at 12:18 | IP Logged
|
|
|
Thanks shoop. This all makes sense. My only question is
with the trigger value, is it "Direct - To Any" or "Direct -
From Any"?
I didn't hold down the mode button before linking it so I
think my link is missing. When I get home Ill try linking it
again.
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
grif091 Super User
Joined: March 26 2008 Location: United States
Online Status: Offline Posts: 1357
|
Posted: December 18 2009 at 12:32 | IP Logged
|
|
|
Kevin, Powerhome cannot read/write link records in a Motion Sensor and TriggerLinc because these devices did not implement the depreciated Peek/Poke commands that Powerhome currently uses to access link database information. The RemoteLinc RF device does support Peek/Poke commands so Powerhome can read/write link records in a RemoteLinc (device has to be awake, in linking mode). Do not know if the 2441 supports Peek/Poke. It is old enough that it may support Peek/Poke. The link record in the Powerhome PLM that is the responder side of a Motion Sensor or TriggerLinc Controller link is/can be known by Powerhome. It should be known by Powerhome so that if the PLM link database is every rebuilt by Powerhome it will not lose those responder links.
Since shoop has posted the information that the 2441 uses Direct commands to communicate the information in question, Group numbers are no longer in question as Direct commands do not specify a Group number. The 2441 is using the link record in the 2441 only to obtain the Insteon address of the responder rather than using the link for Group commands.
Edited by grif091 - December 18 2009 at 12:34
__________________ Lee G
|
Back to Top |
|
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 18 2009 at 12:40 | IP Logged
|
|
|
So shouldn't the PLM show the links to Motion Sensors and
TriggerLincs since the PLM does use Peek/Poke?
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
BeachBum Super User
Joined: April 11 2007 Location: United States
Online Status: Offline Posts: 1880
|
Posted: December 18 2009 at 17:10 | IP Logged
|
|
|
When I link my Motion Sensors and my TriggerLinc I put them in manual mode (Set Button) and they link fine to the PLM.
__________________ Pete - X10 Oldie
|
Back to Top |
|
|
shoop Newbie
Joined: December 18 2008 Location: United States
Online Status: Offline Posts: 10
|
Posted: December 18 2009 at 19:25 | IP Logged
|
|
|
kev21986 wrote:
My only question is
with the trigger value, is it "Direct - To Any" or "Direct -
From Any"?
|
|
|
Sorry - I am using "Direct - To Any". I am honestly not sure of the difference though, but that seems to be working for me.
Mark
|
Back to Top |
|
|
kev21986 Senior Member
Joined: April 04 2007 Location: United States
Online Status: Offline Posts: 199
|
Posted: December 21 2009 at 16:53 | IP Logged
|
|
|
shoop wrote:
kev21986 wrote:
My only question
is
with the trigger value, is it "Direct - To Any" or "Direct -
From Any"?
|
|
|
Sorry - I am using "Direct - To Any". I am honestly not
sure of the difference though, but that seems to be
working for me.
Mark |
|
|
That did it.
I am getting a lot of messages that look like this.
Incoming Insteon received on Insteon DM controller PLM.
From Address:[11.C0.B1] To Address:[0E.DD.A4] Flags:[3]
Cmd1:[111] Cmd2:[83]. Decode: Direct. From:
THERMOSTAT To: PLM, Tstat Push Humid
But I have the lower end thermostat that doesn't have a
humidity sensor.
__________________ Kevin Smith
@respectTheCode
|
Back to Top |
|
|
shoop Newbie
Joined: December 18 2008 Location: United States
Online Status: Offline Posts: 10
|
Posted: December 21 2009 at 19:13 | IP Logged
|
|
|
I also have the low end thermostat (1700) with out the humidity sensor, so I am not 100% sure on the decode of that command. The reason why I think that command is returning humidity is that I get similar values for humidity when polling with the legacy method. And those would change slightly as well. I am not sure if the adapter can actually tell what model thermostat you have, and it might return bogus info for humidity if you don't have a model that is capable of returning it. At least thats my theory, but I get the same events in my event log.
Mark
|
Back to Top |
|
|
pingmustard Newbie
Joined: September 13 2010
Online Status: Offline Posts: 18
|
Posted: September 09 2012 at 23:59 | IP Logged
|
|
|
Hi I'm having similar problem. I have v2 of the thermostat as well.
I ran the sql to update the triggers so the PH stat shows the commands instead of unknown, but I don't see the Trigger Value matching the new tstat triggers. Am I missing something?
Thanks!
Update: Dave helped out to solve my prob; I managed to get PH recognizing the temps using polling triggers from the TSTAT (triggertype = thermostat) using built in trigger ids instead of the custom ones here.
Edited by pingmustard - September 15 2012 at 02:00
|
Back to Top |
|
|
|
|