Skip to main content

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)

Source distribution for titon 0.2.0
File Size Uploaded
titon-0.2.0.tar.gz 10.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for titon 0.2.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

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