Skip to content

About

Extra features for the HA Ecobee integration

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

Repository files navigation

Ecobee Extras

Ecobee Extras icon

Ecobee Extras is a read-only Home Assistant companion integration that exposes cached equipment runtime information already received by Home Assistant's built-in Ecobee integration. It does not authenticate with Ecobee, create an API client, or generate additional Ecobee cloud traffic.

Version 0.2.0 creates five running-state binary sensors and one deterministic raw equipment-status sensor for each thermostat. The raw sensor includes the exact parsed equipment tokens plus has_humidifier and has_dehumidifier attributes.

Requirements

The built-in Home Assistant Ecobee integration must already be configured and loaded. Ecobee Extras never asks for Ecobee credentials.

Installation

  1. In HACS, open Custom repositories.
  2. Add this repository URL with category Integration.
  3. Install Ecobee Extras.
  4. Restart Home Assistant.
  5. Go to Settings → Devices & Services → Add Integration.
  6. Search for Ecobee Extras.

One built-in Ecobee entry is selected automatically. If there are several, the UI asks which one to link. The next screen lets you select which thermostats receive the extra entities. The selection can be changed later with Configure on the Ecobee Extras integration. Each stock entry can be linked only once.

Architecture

Ecobee Cloud → built-in Ecobee integration → cached ConfigEntry.runtime_data
                                           → Ecobee Extras entities

Home Assistant Core currently stores an EcobeeData object in the built-in entry's runtime_data. Ecobee Extras rereads that object's cached thermostat dictionaries every 30 seconds. It intentionally never calls update(), so only the built-in integration controls authentication and its 180-second-throttled cloud refresh. The extra entities attach directly to the corresponding device owned by the built-in Ecobee entry, so setup does not create or ask you to name duplicate thermostat devices.

Entities

  • Dehumidifier running
  • Humidifier running
  • Fan running
  • Heating running
  • Cooling running
  • Equipment status

Heating recognizes heatPump, heatPump2, heatPump3, and auxHeat1 through auxHeat3. Cooling recognizes compCool1 and compCool2. Tokens are compared exactly; unknown future tokens remain visible on the equipment-status sensor and in diagnostics without breaking the integration.

The thermostat must explicitly report runtime.connected: true. Missing runtime or equipment status produces unavailable/unknown state rather than a misleading off state.

Confirming dehumidifier operation

While the accessory runs, open the thermostat device and inspect Equipment status, or download diagnostics for Ecobee Extras. A typical result is dehumidifier,fan, with has_dehumidifier: true. Targeted debug logging can be enabled with:

logger:
  default: info
  logs:
    custom_components.ecobee_extras: debug

Compatibility warning

Another integration's ConfigEntry.runtime_data is an internal Home Assistant implementation detail, not a public API. All access is isolated in ecobee_runtime.py and validated defensively. If Core changes this structure, Ecobee Extras fails its own refresh with an actionable error and makes only its entities unavailable; it does not modify or interfere with the stock integration.

Removal

Remove the Ecobee Extras config entry, then uninstall it through HACS. This removes only the extra entities; the built-in Ecobee integration and its devices remain.

About

Extra features for the HA Ecobee integration

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages