home-assistant / home-assistant/android

Can't turn on/off AC with Device Control

Open
#6,953 1 comment 1 reaction 0 assignees View on GitHub
bug
Dominant language
Kotlin
Stars
3.9k
Forks
1.1k
Avg merge
1d 12h
Merged PRs (30d)
81

Description

**Home Assistant Android app version(s):** 2026.4.4-full

**Android version(s):** 16.0

**Device model(s):** Xiaomi 17 Pro

**Home Assistant version:** 2026.5.4

**Last working Home Assistant release (if known):** Unknown

**Description of problem, include YAML if issue is related to notifications:**
If a climate entity supports more modes than `cool`, `heat`, `heat_cool`, and `off`, one can't switch the entity on or off using the device control card, which is very confusing.

```kotlin
// True if the entity only supports the 4 modes, any other mode (e.g. `dry`) means false
if (entityShouldBePresentedAsThermostat(entity)) {
// ...
} else {
// `RangeTemplate` does not offer toggling, the user can only adjust temperature
control.setControlTemplate(rangeTemplate)
}
```

I'm trying to make a PR on this, which one would be preferred (or none)?
1. Map other available modes in core `HVACMode` to Android's `TemperatureControlTemplate` (I have no idea why this is so limited). For example, both `fan_only` and `dry` can map to `MODE_COOL` or `MODE_HEAT_COOL`.
2. If the entity supports modes not in `TemperatureControlTemplate`, use a `ToggleRangeTemplate` and send `climate.turn_on` or `climate.turn_off` when toggled. This has the disadvantage that temperature will not be visible and adjustable when the entity is off.
3. Ignore unsupported modes and support cycling between supported modes. Unsupported modes get `MODE_UNKNOWN`.

**Companion App Logs:**

```
N/A
```

**Screenshot or video of problem:**
N/A

**Additional information:**
N/A

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.