Skip to content

dahlb/ha_carrier

Usage GitHub Release GitHub Activity License hacs

Project Maintenance BuyMeCoffee

Cloud-based Home Assistant integration for Carrier Infinity, Bryant Evolution, and other thermostats that use the Carrier Infinity / Côr cloud account (the same account used by the Carrier mobile app).

This integration talks to Carrier's cloud and requires internet access plus your Carrier account credentials.

Looking for a fully local option? Try infinitude instead.

Initially tested on SYSTXCCWIC01-B (firmware 4.31). Other Infinity / Evolution thermostats that work in the Carrier mobile app are expected to work as well.

Table of contents

Features

The integration adds a Home Assistant device per Carrier system, with entities for every zone

Climate (per zone)

  • Heat, Cool, Heat/Cool (Auto), Fan-only, and Off modes
  • Current temperature and humidity
  • Target temperature (single setpoint, or independent high/low setpoints in Heat/Cool mode)
  • Target humidity (when a humidifier is installed)
  • Fan speed: Auto, Low, Medium, High
  • Preset activities defined on your thermostat: Home, Away, Sleep, Wake, Manual, plus a special Resume preset that returns the zone to its scheduled program
  • Optional "infinite hold" behavior — when enabled (default), manual changes hold indefinitely; when disabled, holds end at the next scheduled activity transition

Sensors

Per zone:

  • Temperature
  • Humidity

Per system:

  • Outdoor temperature
  • Filter life remaining (%)
  • Humidifier life remaining (%, when installed)
  • UV lamp life remaining (%, when installed)
  • Airflow (CFM)
  • Static pressure
  • Outdoor unit (ODU) status, with detailed diagnostics
  • Indoor unit (IDU) status, with detailed diagnostics
  • Variable-capacity ODU output (%, on variable-capacity heat pumps and AC units)
  • Energy usage per source (heat pump, electric heat, gas, fan, cooling, reheat, loop pump): yesterday, last month, and year-to-date — wired up for Home Assistant's Energy dashboard
  • Gas / propane usage year-to-date (when applicable)
  • Last-update timestamps for full data refresh, websocket updates, and energy refresh

Binary sensors

  • System online / offline
  • Humidifier currently running (when installed)
  • Zone occupancy (when occupancy sensing is enabled on the thermostat)

Controls

  • Heat Source select: choose between gas heat only, heat pump only, or system-controlled (on dual-fuel and hybrid systems)

Other

  • Configuration entirely through the Home Assistant UI — no YAML required
  • Near real-time updates via Carrier's websocket push channel, with periodic polling as a fallback
  • Automatic re-authentication prompt if your Carrier password changes
  • Supports multiple Carrier systems on the same account

Installation

HACS

This integration is included in the default HACS store

  1. Make sure HACS is installed in your Home Assistant

  2. Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.
    (or manually search for Carrier Infinity Thermostat in HACS)

  3. Click Download in the bottom right

  4. Restart Home Assistant

  5. Continue with Configuration below.

Manual Installation

  1. Download the latest release from the Releases page.
  2. Copy the custom_components/ha_carrier folder into your Home Assistant config/custom_components/ directory. The final path should look like config/custom_components/ha_carrier/__init__.py.
  3. Restart Home Assistant.
  4. Continue with Configuration below.

Configuration

  1. Open your Home Assistant instance and start setting up a new integration.
    OR

    • In Home Assistant, go to Settings → Devices & Services
    • Click + Add Integration in the bottom-right
    • Search for Carrier Infinity Thermostat and select it
  2. Enter the username and password for your Carrier cloud account (the same login you use in the mobile app)

  3. Click Submit. Your thermostats and zones will appear as devices automatically

Options

After setup, click Configure on the integration to change:

  • Infinite holds (default: on) — when on, manual changes from Home Assistant hold until you choose Resume. When off, holds expire at the next scheduled activity transition on your thermostat.

Re-authentication

If you change your Carrier password, Home Assistant will display a Re-authenticate prompt next to the integration. Click it and enter your new password — no need to remove and re-add the integration.

Troubleshooting

If something isn't working as expected:

  1. Open Settings → Devices & Services → Carrier Infinity.
  2. Click Enable debug logging.
  3. Restart Home Assistant so initialization is captured with debug logs.
  4. Reproduce the issue.
  5. Click Disable debug logging — Home Assistant will download a log file.
  6. From the three-dot menu next to your Carrier device, click Download diagnostics.
  7. Open an issue and attach both the log file and the diagnostics file. Both files have personal information (serial numbers, account ID) automatically redacted.

Common issues

  • "Invalid authentication" — double-check your username and password in the Carrier mobile app. If the mobile app works but Home Assistant doesn't, open an issue with diagnostics.
  • Entities show as unavailable — check the Online binary sensor for the system. If it reports offline, the thermostat has lost its connection to Carrier's cloud (often a router or internet issue at the thermostat's location).
  • Slow updates — most state changes arrive within a few seconds via websocket; energy data is refreshed at most every 30 minutes.

Support


About

Carrier Infinity Integration for Home Assistant

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors