www.homeseer.com    
 

Go Back   HomeSeer Message Board > Thermostat / HVAC Plug-ins > Thermostat / HVAC Discussion

Reply
 
Thread Tools Display Modes
  #1  
Old July 24th, 2006, 09:17 AM
RJ's Avatar
RJ RJ is offline
HomeSeer Technologies
 
Join Date: Dec 2004
Location: Bedford, NH
Posts: 516
Thermostat API Calls

Hello All,

As it seems to come up in discussion every so often in this forum, here is the official HomeSeer Thermostat API as of version 3 of the SDK. The tables are copied straight from the SDK, so I apologize if they are a bit sloppy.

Best Regards,

RJ Walsh
HomeSeer Technologies, LLC


Property / Function Name





ParametersReturn Data TypeDescription
NThermostats























Integer











1's based number representing the number of thermostats that the plug-in is managing.











ThermLoc












  • Thermostat number (NThermostats) as Integer
String











Call ThermLoc(x) for each thermostat to retrieve the location name for the thermostat – the location is part of the thermostat’s name, and if the plug-in does not name the thermostat using the HomeSeer “Location Name” syntax, then a null value (“”) should be returned.











ThermName












  • Thermostat number (NThermostats) as Integer
String











Call ThermName(x) for each thermostat to retrieve the name for the thermostat.











NTemps












  • Thermostat number (NThermostats) as Integer
Integer











Call NTemps(x) for each thermostat that the plug-in supports, and it should return a 1’s based integer representing the number of temperature readings that each thermostat supports (e.g. a thermostat might support an indoor and outdoor temperature reading)











SupportsStat












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsStat(x,y) for each temperature reading that each thermostat supports to determine if there is a full thermostat there or (Return=False) if it is only a temperature sensor.











SupportsCoolSet












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsCoolSet(x,y) for each SupportsStat=True to determine if the thermostat supports a separate cool setpoint. If the Boolean return is False, then the setpoint is referred to as “Setpoint”. If the return is True, then the primary setpoint is referred to as HEAT and the secondary setpoint is COOL.











SupportsDirect












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsDirect(x,y) for each SupportsStat=True to determine if the thermostat supports direct temperature setting. The return of False means that the thermostat supports setbacks rather than direct temperature setting.











SupportsHold












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsHold(x,y) for each SupportsStat=True, to determine if the thermostat supports a hold mode on the thermostat.











SupportsHoldOverride












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsHoldOverride(x,y) for each SupportsStat=True to determine if the thermostat supports overriding the settings of the thermostat when it is in the HOLD mode. The return value indicating True if commands sent while in Hold mode are carried out by the thermostat.











NumSetbacks












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Call NumSetbacks(x,y) for each SupportsDirect that returns False to determine how many setbacks the thermostat supports. The returned value is a 1’s based integer.











SupportsAux












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsAux(x,y) for each SupportsStat=True to determine if the thermostat supports an auxiliary (emergency) heat mode.











SupportsOperating












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











Call SupportsOperating(x,y) for each SupportsStat=True to determine if the thermostat supports a call to return whether the thermostat is currently calling for heat or cool. If the return is True, then you can ask the thermostat if it is currently heating or cooling.














Property / Function NameParameters


Return Data Type


Description
GetTemp














  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Double











Current Temperature











GetHeatSet














  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Double











Heating Setpoint Temperature











GetCoolSet














  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Double











Cooling Setpoint Temperature











GetModeSet












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Current Thermostat Mode Setting











GetFanMode












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Current Thermostat Fan Mode Setting











GetHoldMode












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Current Thermostat Hold Mode Setting











GetCurrentMode












  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Current Thermostat Operating Mode.






e.g. GetModeSet may return AUTO, and GetCurrentMode can then be used to determine if it is currently COOL, HEAT, or AUX)






GetOperating














  • Thermostat number (NThermostats) as Integer
  • Temperature Sensor (NTemps) as Integer
Boolean











True if the thermostat is currently calling for Heat or Cool














Property / Function Name ParametersReturn Data Type


Description
CmdSetHeat
















  • Thermostat number (NThermostats) as Integer
  • Temperature as Double
  • Temperature Sensor (NTemps) as Integer
Integer











Set the heat setpoint temperature.











CmdSetCool












  • Thermostat number (NThermostats) as Integer
  • Temperature as Double
  • Temperature Sensor (NTemps) as Integer
Integer











Set the cool setpoint temperature (If supported)











CmdSetMode














  • Thermostat number (NThermostats) as Integer
  • Mode as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Set the thermostat operating mode.











CmdSetFan












  • Thermostat number (NThermostats) as Integer
  • Mode as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Set the thermostat fan operating mode.











CmdSetHold












  • Thermostat number (NThermostats) as Integer
  • Mode as Integer
  • Temperature Sensor (NTemps) as Integer
Integer











Set the thermostat hold mode. (If supported)













Information Return Values

For the thermostat Mode:

0=Off, 1=Heat, 2=Cool, 3=Auto, 4=Aux (If Supported, a.k.a. Emergency Heat)



For the thermostat fan mode:

0=Auto, 1=On



For the thermostat hold mode:

0=Off Hold, 1=Hold (if Supported)



For the Cmd____ functions:

0=Success, n <> 0 =Failure Error Code
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 11:32 PM.


Copyright HomeSeer Technologies, LLC