skillfed

nexia

Python library for connecting to nexia

nexia v2.13.0 75.9K downloads/30d#14,672 on PyPI37
Permissive license Apache-2.0 Active released

What it is and what it does

Nexia is an async Python client for Nexia-connected thermostats (Trane/American Standard models). It provides programmatic access to thermostat state, zone control, and RoomIQ sensor management via the Nexia Home API. The library uses aiohttp for async HTTP communication and orjson for efficient JSON parsing, making it suitable for integration into home automation systems or monitoring applications that need non-blocking I/O.

The package exposes thermostats and zones as objects with attributes like current temperature, humidity, fan mode, and operation mode, plus methods to refresh sensor data, manage hold modes, and configure which RoomIQ sensors contribute to zone averages. It is in pre-alpha development (version 2.13.0) and officially supports Python 3.10–3.14.

Use it for:

  • Integrate Nexia thermostats into a home automation platform (e.g., Home Assistant) for remote temperature and humidity control.
  • Monitor zone temperatures and sensor readings across multiple thermostats in a multi-zone HVAC system.
  • Automate thermostat adjustments based on external events or schedules via async coroutines.
  • Query and manage RoomIQ sensor participation in zone temperature averaging.
  • Build a dashboard or API that exposes thermostat state and control to other applications.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Async Python library for controlling Nexia (Trane/American Standard) thermostats and their zones, including temperature, humidity, fan modes, and RoomIQ sensor management.

Yes, if you own a supported Nexia thermostat (XL950, XL1050, XL824) and need async Python control. Low install friction, active maintenance, no known vulnerabilities, and permissive licensing are all favorable. Pre-alpha status means the API may change; verify that your thermostat model and desired features are fully implemented before committing to production use.

Install

nexia on PyPI

pip

pip install nexia

uv

uv add nexia

poetry

poetry add nexia

Installing nexia

Before you install

Low install friction with a pure-Python wheel and only three runtime dependencies (aiohttp, orjson, propcache). Actively maintained with a recent commit on 2026-08-10 and pre-alpha status indicating ongoing development.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions.

Quickstart

pip install nexia

import asyncio
from nexia import NexiaHome

async def main():
    home = NexiaHome(username, password)
    await home.update()
    for thermostat in home.thermostats:
        print(thermostat.current_temperature)

asyncio.run(main())

Requires Python 3.10 or later; asyncio event loop required for all operations.

Verify before relying

  • Whether XL950, XL1050, XL824 models are fully tested or represent aspirational support.
  • Current state of Nexia API stability and whether breaking changes are expected during pre-alpha.
  • Whether all thermostat attributes and services documented in the excerpt are fully implemented.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — aiohttp, orjson, propcache
Maintenance actively maintained — 51 days since the last release
Last repo commit
First released
Downloads 75,889/month — #14,672 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: nexia-2.13.0-py3-none-any.whl

Keywords: nexia

Development Status :: 2 - Pre-AlphaIntended Audience :: DevelopersNatural Language :: EnglishProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

nexia thermostat controltrane american standard apiasync hvac thermostat librarynexia home automationthermostat zone managementroomiq sensor integrationnexia python client
hvac-controlasync-iohome-automation

More Monitoring packages

tqdm

Wraps any iterable to display a real-time…

copyleft · top 100 on PyPI

opentelemetry-semantic-conventions

Provides generated Python code for…

permissive · top 100 on PyPI

opentelemetry-sdk

Provides the reference implementation of the…

permissive · top 100 on PyPI

opentelemetry-api

Provides the abstract API and interfaces for…

permissive · top 100 on PyPI

opentelemetry-exporter-otlp-proto-http

Exports OpenTelemetry observability data to an…

permissive · top 1,000 on PyPI

opentelemetry-instrumentation

Provides automatic instrumentation commands and…

permissive · top 1,000 on PyPI

AIOSomecomfort

AsyncIO client for querying and controlling…

permissive · top 15,000 on PyPI

venstarcolortouch

Provides a Python interface to query and…

permissive · top 15,000 on PyPI

simplisafe-python

An async Python interface to the SimpliSafe API…

permissive · top 15,000 on PyPI

myPyllant

A Python library for interacting with the…

permissive · top 15,000 on PyPI

maxcube-api

Provides a Python API to query and control…

unclear · top 15,000 on PyPI

aiolyric

aiolyric provides async Python bindings to the…

permissive · top 15,000 on PyPI

iaqualink

Asynchronous Python library for monitoring and…

permissive · top 15,000 on PyPI

pyotgw

pyotgw is a Python library that communicates…

copyleft · top 15,000 on PyPI

python-ecobee-api

A Python library for communicating with Ecobee3…

permissive · top 15,000 on PyPI

airtouch4pyapi

Controls Airtouch 4 and 5 air conditioning…

permissive · top 15,000 on PyPI