Active TopicsActive Topics  Display List of Forum MembersMemberlist  Search The ForumSearch  HelpHelp
  RegisterRegister  LoginLogin
PowerHome Programming
 PowerHome Messageboard : PowerHome Programming
Subject Topic: 2441TH Stat Data Discrpency Post ReplyPost New Topic
Author
Message << Prev Topic | Next Topic >>
GadgetGuy
Super User
Super User
Avatar

Joined: June 01 2008
Location: United States
Online Status: Offline
Posts: 924
Posted: January 08 2015 at 18:02 | IP Logged Quote GadgetGuy

Just installed a new 2441TH stat to replace my older 2441V that was failing.

Got everything going but the readings I am getting in the PH Device Status Window and data returned by Triggers for this stat's temp do not agree with what appears on the Stat's Display.

The display reads 73 but PH is reporting 75 (and 20 minutes later a 74.5).

I have always has agreement between my stat display and PH reported values. I've let things sit for 3 hours, so far, and things aren't tracking yet.

If I do a ph_getanalog(); ph_getanalogstat(); or ph_getanalogcalcstat() they all agree but do not match the stat display.    

__________________
Ken B - Live every day like it's your last. Eventually, you'll get it right!
Back to Top View GadgetGuy's Profile Search for other posts by GadgetGuy
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4421
Posted: January 08 2015 at 23:15 | IP Logged Quote dhoward

Ken,

The thing that concerns me about your post is that you say that PowerHome displayed a value of 74.5 for your thermostat.

This tells me that you've got a raw to calc formula or trigger or something that is manipulating the value as its impossible for the stock PowerHome code to have a decimal in a thermostat type.

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
GadgetGuy
Super User
Super User
Avatar

Joined: June 01 2008
Location: United States
Online Status: Offline
Posts: 924
Posted: January 09 2015 at 07:08 | IP Logged Quote GadgetGuy

Dave-
My Analog Device Definition has no formulas. Everything is PH Default.

My Trigger does have a formula that averages the prior and current readings in an effort to obtain ~0.5 temperature increments, but that begs the question as the ph_getanalogcalcstat ("TS1TEMP") [or any of the ph_getanalog() variations] ALL get the same reading, which is 3 degrees lower that what is shown on the STAT display.

PS - noting that in my initial post PH read higher than the stat, and this morning it is now lower kinda makes it look like the stat has a "sticky" display value issue!

PH says 69 at the moment and the stat display is showing 71.

Based on another temperature gauge, and the feeling in the room, I believe that PH is presenting the correct data.

The question is really, thus why doesn't the stat show it correctly?

I could swap it out for a backup I have but hate to have to redo all the connections, if I don't have to. Thus hoping I have just missed something. My same model stat upstairs works fine, so this issue is related to this new stat.   

BTW - the SmartHome deals on STAT packages are awesome. The 2 and 4 pak prices are phenomenal.

PS - Noting that in my initial post that PH was reading higher than the stat and this morning the readings are lower, it kinda appears the stat may be suffering from "sticky" display values.


Edited by GadgetGuy - January 09 2015 at 07:12


__________________
Ken B - Live every day like it's your last. Eventually, you'll get it right!
Back to Top View GadgetGuy's Profile Search for other posts by GadgetGuy
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4421
Posted: January 09 2015 at 11:32 | IP Logged Quote dhoward

Ken,

Concerning the tstat temperature, not sure about trying to do some type of averaging since the thermostat does not seem to have any resolution greater than a degree. It seems to me that you'll always be off from the actual stat reading. I know you asked me about the tstats having a resolution of .5 degrees and Ive gone through the specs again and ran quite a few tests. Even though the very early docs for the thermostat state something about .5 degree resolution and the insteon commands support it, it doesnt appear that they ever implemented it. The old standard length commands return and set the temperature and setpoints as value x 2 but they never return anything but whole numbers. For example:

ph_insteonwithret("DWN STAT",109,131)

This will set your heat setpoint to 65.5 (131 / 2). If you turn right around and run:

ph_insteonwithret("DWN STAT",106,32)

You'll get a value of 132 which will be 66 degrees. This is further borne out by the newer extended thermostat commands which set and return these values only in a whole number (no division or multiplication by 2). So not really sure it makes sense to try and average any thermostat values.

Now about your new tstat. The raw standard length insteon command to retrieve the temperature is:

ph_insteonwithret("DWN STAT",106,0)

You'll divide this value by 2. This is what the thermostat is returning as the current temperature and if the display doesnt agree, I would say something is wrong with the tstat unless there is some internal "offset" type setting within the stat (which doesnt really make sense as any offset should be applied to both the display and the returned value).

If you run:

ph_insteonwithretext1("DWN STAT",46,0,"00 00 01")

You should receive an extended length message which should contain your heat and cool setpoints. I believe for a 2441TH, these would be the 7th and 8th bytes of the extended message (keep in mind that the returned byte string from this command starts with the returned cmd2 followed by the 14 byte extended return). You won't divide these values to get the correct setpoint.

The ph_getanalog function does an actual insteon retrieve of the value, performs the raw to calc formula, and then returns the calculated value. In the case of the tstat, the default internal raw to calc formula is to set the calc the same as the raw.

The ph_getanalogstat function returns the raw value stored in the analog I/O table. It does not cause the controller to actually retrieve the value first.

The ph_getanalogcalcstat function returns the calc value stored in the analog I/O table. It does not cause the controller to retrieve the value first.

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
GadgetGuy
Super User
Super User
Avatar

Joined: June 01 2008
Location: United States
Online Status: Offline
Posts: 924
Posted: January 09 2015 at 13:16 | IP Logged Quote GadgetGuy

Thanks for the detailed answer Dave. I'm sure it will be a help to others too, looking for similar answers.

I set up a 2 period average on my stats, as I chart the results and the 1 degree steps looked pretty "klunky" on the graphs. Since the stats, unlike the 1-wire support, are handled on a timed poll or reported change from the stat itself, then averaging the last reading and the new reading (eg, 70-->71) gives me <1 increments (eg, a change to 70.5)for a smoother graph.

Thanks for the reminder that the old Insteon formulas still worked with the new I2CS stats. Using the ph_insteonwithret("DWN STAT",106,0) function gives me what the stat display is reading.

Strangely the stat display is now reading in sync with the values that PH is also sensing.

This is about the 3rd time in the last few weeks when I have experienced unexplainable delays in device performance settling down, and taking a day or two to produce results in line with expectations.

I'm at a loss as to what is happening, as things have been starting out weird and then seem to stabilize after a day of being in service. Yesterday I couldn't get the new stat display temperature reading to track PH readings, no matter what I tried.

All the set points worked fine, but the Temp seemed to have a mind of its own.

Now it is behaving.

Go figure.


__________________
Ken B - Live every day like it's your last. Eventually, you'll get it right!
Back to Top View GadgetGuy's Profile Search for other posts by GadgetGuy
 
GadgetGuy
Super User
Super User
Avatar

Joined: June 01 2008
Location: United States
Online Status: Offline
Posts: 924
Posted: September 04 2016 at 12:17 | IP Logged Quote GadgetGuy

dhoward wrote:
Now about your new tstat. The
raw standard length insteon command to retrieve the
temperature is: ph_insteonwithret("DWN STAT",106,0)
You'll divide this value by 2. This is what the
thermostat is returning as the current temperature and
if the display doesn't agree, I would say something is
wrong with the tstat unless there is some internal
"offset" type setting within the stat (which doesn't
really make sense as any offset should be applied to
both the display and the returned value).



Jumping ahead now to Sep 2016, as I am installing a
new STAT and ran into the same issues that created
this post. What it appears to me now is that the stat
display and PH round their numbers differently thus
leading to differences in observed versus reported
values. The stat display seems to round up while PH
seems to truncate the decimal portion of the value to
get to an Integer value. That is an observation based
on limited data, and may not be totally accurate but
it is clear that the interface and display values can
differ by 1 degree.

Note that internally the stat works in 0.5 degree
increments (as evidenced when observing the stat temp
calibration process and noting that corrections are in
half-degree increments).


Edited by GadgetGuy - September 04 2016 at 12:19


__________________
Ken B - Live every day like it's your last. Eventually, you'll get it right!
Back to Top View GadgetGuy's Profile Search for other posts by GadgetGuy
 

If you wish to post a reply to this topic you must first login
If you are not already registered you must first register

  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