0

I am using action.devices.types.THERMOSTAT with action.devices.traits.TemperatureSetting, i want to set custom range for Celsius from 16 to 28 is it possible ? i have tried using bufferRangeCelsius attribute but it did not produced any effect on range and default Celsius range from 10 to 32 appearing , i have tried as given below,

app.onSync((body, headers) => {
 return {
  requestId: body.requestId,
   payload: {
    agentUserId: '1836.15267389',
    devices: [{
     id: '123',
     type: 'action.devices.types.THERMOSTAT',
     traits: [
      'action.devices.traits.TemperatureSetting'
     ],
     name: {
     defaultNames: ['Honeywell Thermostat T-1000'],
     name: 'Homer Simpson Thermostat',
     nicknames: ['living room thermostat']
     },
     willReportState: false,
     attributes: {
      availableThermostatModes: 'off,heat,cool,on',
      thermostatTemperatureUnit: 'C',
      bufferRangeCelsius : 16-28
     },
     deviceInfo: {
      manufacturer: 'honeywell',
      model: 't-1000',
      hwVersion: '3.2',
      swVersion: '11.4'
     },
     customData: {
      fooValue: 74,
      barValue: true,
      bazValue: 'lambtwirl'
      }
    }]
   }
 };
});
devunwired
  • 62,780
  • 12
  • 127
  • 139
zaheer ahmed
  • 69
  • 1
  • 5

1 Answers1

0

The bufferRangeCelsius attribute is intended to report the minimum difference between two setpoints in heatcool mode, and doesn't affect the min/max range where setpoints are allowed (when the docs mention range they are generally referring to the distance between a current low and high setpoint).

Reporting the full supported range of your thermostat's temperature control is not currently supported by the API. If your service receives a request to set the temperature outside of the supported range, return a valueOutOfRange error response:

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [
      {
        "ids": ["123"],
        "status": "ERROR",
        "errorCode": "valueOutOfRange"
      }
    ]
  }
}
devunwired
  • 62,780
  • 12
  • 127
  • 139
  • is there any other trait by which we can set custom range ? i was used this for ac (action.devices.types.AC_UNIT), but ac trait has not triggering event on sliding range so we can get changed value. – zaheer ahmed Dec 10 '19 at 04:40
  • Not at the moment, but I would welcome you to file a feature request on the public issue tracker detailing your needs: https://issuetracker.google.com/issues/new?component=655104&template=1284148 – devunwired Dec 10 '19 at 05:38