Climate / thermostat
Domain climate: states, services, device classes and features.
Entity ids in this domain look like climate.<object_id>.
Thermostats never report auto as a state — an auto-mode thermostat reports the leg it is driving (heat or cool). auto is only a command value for setHvacMode.
Use in preferences
{ key: 'device', label: 'Device', type: 'entity', domainFilter: 'climate', required: true }States
getState() returns the raw token. subscribe filters, entity.is() and matchesState() also accept the friendly label the app shows (any case; spaces, hyphens and underscores interchangeable).
| Device class | off | cool | heat | heat_cool | fan_only | dry |
|---|---|---|---|---|---|---|
| any | Off | Cool | Heat | Auto | — | — |
subscribe($g.device, { to: 'off' }, onChange);
subscribe($g.device, { to: 'Off' }, onChange); // same thing, by label
if ($g.device.is('Off')) { /* … */ }Services
Curated for smart apps (also offered by the wizard action catalog):
| Service | Parameters | Description |
|---|---|---|
setHvacMode | hvacMode (enum, off | heat | cool | auto | heat_cool | fan_only | dry, required) | Set HVAC mode |
setTemperature | temperature (number, required) | Set temperature |
await $g.device.setHvacMode({ hvacMode: 'off' });Also routable (ClimateServices), not in the wizard catalog — callable as entity.<service>(); the integration may reject unsupported ones at runtime:
setFanMode
HVAC modes (setHvacMode)
| Value | Label |
|---|---|
off | Off |
heat | Heat |
cool | Cool |
auto | Auto |
heat_cool | Heat / Cool |
fan_only | Fan only |
dry | Dry |
Fan modes (setFanMode)
| Value | Label |
|---|---|
auto | Auto |
on | On |
off | Off |
low | Low |
medium | Medium |
high | High |
diffuse | Diffuse |
Device classes
none, thermostat
Filter with deviceClassFilter in an entity input.
Features
Bitmask on the supportedFeatures attribute; read the values with getEntityFeatures().Climate.
| Feature | Bit |
|---|---|
TARGET_TEMPERATURE | 1 |
TARGET_TEMPERATURE_RANGE | 2 |
TARGET_HUMIDITY | 4 |
FAN_MODE | 8 |
PRESET_MODE | 16 |
SWING_MODE | 32 |
TURN_OFF | 128 |
TURN_ON | 256 |
SWING_HORIZONTAL_MODE | 512 |