ThermostatEco Schema

sdm.devices.traits.ThermostatEco

This trait belongs to device types of THERMOSTAT that support ECO modes.

Fields

Field Description Data Type
availableModes List of supported Eco modes. array(string)
Value: ["MANUAL_ECO", "OFF"]
mode The current Eco mode of the thermostat. string
Values: "MANUAL_ECO", "OFF"
heatCelsius Lowest temperature in Celsius at which the thermostat begins heating in Eco mode. number
Example: 20.0
coolCelsius Highest temperature in Celsius at which the thermostat begins cooling in Eco mode. number
Example: 22.0

Sample GET request and response

Request

GET /enterprises/project-id/devices/device-id

Response

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatEco" : {
      "availableModes" : ["MANUAL_ECO", "OFF"],
      "mode" : "MANUAL_ECO",
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  }
}

Commands

SetMode

Change the thermostat Eco mode.

To change the thermostat mode to HEAT, COOL, or HEATCOOL, use the SetMode command of the ThermostatMode trait.

This command impacts other traits, based on the current status of, or changes to, the Eco mode:

  • If Eco mode is OFF, the thermostat mode will default to the last standard mode (HEAT, COOL, HEATCOOL, or OFF) that was active.
  • If Eco mode is MANUAL_ECO:

SetMode request and response

Request

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatEco.SetMode",
  "params" : {
    "mode" : "MANUAL_ECO"
  }
}

Response

{}

SetMode request fields

Field Description Data Type
mode The Eco mode to change the thermostat to. string
Values: "MANUAL_ECO", "OFF"

Errors

The following error code(s) may be returned in relation to this trait:

Error Message RPC Troubleshooting
Command not allowed in current thermostat mode. FAILED_PRECONDITION Certain commands are not applicable in certain thermostat modes.
Command not allowed when thermostat in MANUAL_ECO mode. FAILED_PRECONDITION The temperature setpoint cannot be set when the thermostat is in manual Eco mode.

See the API Error Code Reference for the full list of Device Access error codes.