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)
| 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)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| 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.