titon
Async Python client for Titon Aura-T heat recovery ventilation (HRV) units.
The unit does not expose a local API. It keeps an outbound connection to
Titon's relay at app.manageiaq.com:6275, and clients address a specific unit
by its MAC address over that relay. This library speaks that protocol.
Reverse engineered from the vendor app's traffic. Unofficial and unaffiliated with Titon. The protocol may change without notice.
Install
pip install titon
The interactive console needs one extra dependency:
pip install "titon[cli]"
Usage
import asyncio
from titon import TitonClient, TitonFanSpeed
async def main():
client = TitonClient("AA-BB-CC-11-22-33") # your unit's MAC
await client.connect()
fan = TitonFanSpeed(client)
print("current fan speed:", await fan.perform())
await fan.set_to(3)
client.disconnect()
asyncio.run(main())
Each capability is a small request object wrapping the client:
| Class | Reads | Writes |
|---|---|---|
TitonGeneralInfo |
temperatures, humidity, status flags | — |
TitonFanSpeed |
current fan speed | set_to(speed) |
TitonKitchenTimer |
kitchen boost timer | set_to(minutes) |
TitonHumidity |
humidity threshold | set_to(percent) |
TitonFilter |
filter change status | set_changed() |
TitonSummer |
read_boost_status() |
— |
TitonHandshake |
performed automatically by connect() |
— |
Console
python -m titon.cli AA-BB-CC-11-22-33
Or set TITON_HRV_MAC and omit the argument. Commands: info, fan,
set fan, kitchen, set kitchen, quit. Anything else is sent as a raw
DAT message.
Protocol notes
docs/HRV_PROTOCOL_REFERENCE.md is the
message reference; docs/protocol-notes.md holds
the raw capture notes.
Your unit's MAC is effectively its credential on Titon's relay — the protocol carries no other authentication. Don't publish it.
Home Assistant
The Home Assistant integration built on this library lives at ULazdins/titon-has.
License
MIT
Metadata
Release files for titon 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| titon-0.2.0.tar.gz | 10.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| titon-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.9 kB
Release files / titon-0.2.0.tar.gz
| Download URL | titon-0.2.0.tar.gz |
|---|---|
| Size | 10.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5a2736aa1ae89d28a66bff60cf886ee074004d0ebdec9164f4246a96c5773033
|
|
BLAKE2b-256 checksum How to use checksums |
51c3489176a7106002a5bfe0cb1da5543ecb58746dcaecbda121bcc03a7f0ef3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.0
|
Release files / titon-0.2.0-py3-none-any.whl
| Download URL | titon-0.2.0-py3-none-any.whl |
|---|---|
| Size | 12.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
78f2c81b1dd1b7979c2208de12652c180ad1c28388feecb3751941e6090f8420
|
|
BLAKE2b-256 checksum How to use checksums |
236aa582f5673c155154230dec38008b1d7cdddd908f9fa82aa229c33124e159
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.0
|