Skip to main content

pyaprilaire

pyaprilaire is a library to interact with Aprilaire thermostats.

Compatibility

aprilaire-ha is generally compatible with Aprilaire Home Automation 8800-series and Zone Control 6000-series thermostats. However, due to the number of physical models, it has not been tested on all models.

Prerequisites

In order to connect to the thermostat, you will need to enable automation mode. This involves going into the Contractor Menu on your thermostat and changing the Connection Type to Automation. Please look up the instructions for your model, as this can vary between models.

Development

Mock server

During development, it is necessary to connect to a thermostat, but this can be problematic as a thermostat only allows a single connection at a time. There is a mock server that can be run to expose a local server for development that emulates a thermostat.

python -m pyaprilaire.mock_server

The port can be specified with -p PORT_NUMBER. The default port is 7001.

Caution regarding device limitations

Due to limitations of the thermostats, only one home automation connection to a device is permitted at one time (the Aprilaire app is not included in this limitation as it uses a separate protocol). Attempting to connecting multiple times to the same thermostat simultaneously can cause various issues, including the thermostat becoming unresponsive and shutting down. If this does occur, power cycling the thermostat should restore functionality.

The socket that is exposed by the thermostat can be unreliable in general. In some cases, it can silently drop the connection or otherwise stop responding. The integration handles this by quietly disconnecting and reconnecting every hour, which generally improves stability. In some cases, however, there may be periods where the change of state (COS) packets aren't received, potentially causing stale data to be shown until the connection is reset. If this happens to you frequently and you are able to capture the packets at the time via Wireshark showing the state of the socket, this data would be valuable to share.

Metadata

Release files for pyaprilaire 0.9.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyaprilaire 0.9.1
File Size Uploaded Provenance Actions
pyaprilaire-0.9.1.tar.gz 20.8 kB Without provenance Details for pyaprilaire-0.9.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pyaprilaire 0.9.1
File Interpreter ABI Platform Actions
pyaprilaire-0.9.1-py3-none-any.whl Python 3 none any Details for pyaprilaire-0.9.1-py3-none-any.whl

Total release size: 38.2 kB

Release files / pyaprilaire-0.9.1.tar.gz

Download URL pyaprilaire-0.9.1.tar.gz
Size 20.8 kB
Tags Source
SHA-256 checksum
How to use checksums
3610747a4776799a0be3d0b73fa0811c96362e7f06fbc3a0e5c8f88f30739ce9
BLAKE2b-256 checksum
How to use checksums
47cf2ee837bb2c6afdc74769e0c55a8d09c34f0af7fa0d670bee2212ce57c6c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.22

Release files / pyaprilaire-0.9.1-py3-none-any.whl

Download URL pyaprilaire-0.9.1-py3-none-any.whl
Size 17.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
584dbf8e6f8fcabf009c3ac4aac5ca3539392db61468ed28ca68a26c3d42f426
BLAKE2b-256 checksum
How to use checksums
01ba3245f05afb44f5efa6abff81e29e62560f5a05bf2703d9d8345d1d4cfa47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.22

Security for pyaprilaire 0.9.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.9.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page