Unofficial Home Assistant integration for Quilt HVAC.
- Climate entities for each Quilt space (mode + setpoint + current temperature).
- Optional real-time-ish updates via Quilt’s notifier stream, with polling fallback.
- Light entities for the thermostat/dial LEDs:
- brightness + RGB color
- animation/effects (Sparkle Fade / Twinkle Fade / Dance / Chase)
- Fan entities for each space (kept HA-only by default; see HomeKit notes).
- Sensor entities for paired Quilt Bluetooth remote sensors, including temperature, humidity, and battery level.
- Privacy-limited config-entry diagnostics with room, indoor-unit, and controller remote-sensor source freshness, online-rule results, and remote sensor RSSI. It omits sensor/system IDs, MAC addresses, raw Quilt payloads, credentials, settings, readings, and actuator values.
This is a normal HACS custom integration repository.
Maintainer note: I have been using this integration in my own Home Assistant setup for a couple of months, and it has been working great.
Brand assets follow Home Assistant 2026.3+ custom integration guidance and are shipped in custom_components/quilt/brand/.
- HACS: search for “Quilt” under integrations, then download it.
- Manual: copy
custom_components/quilt/into your Home Assistant/config/custom_components/quilt/, then restart HA Core.
- In Home Assistant: Settings → Devices & Services → Add Integration → Quilt
- Enter your email, then the verification code Quilt emails you.
- Exposes kWh sensor entities per space so you can graph usage.
- The “Energy last 7 days” sensor includes hourly bucket data in attributes (mirrors what the Quilt app shows).
- HomeKit does not support “light effects” controls, so Quilt light animations will remain HA-only.
- HomeKit does not provide a clean way to expose fan speed/mode inside a thermostat tile. If you expose the fan entity, it will show up as a separate HomeKit accessory/tile.
See DISCLAIMER.md.
- Not affiliated with Quilt; no official support.
- Some advanced HVAC features may not map perfectly to HA/HomeKit UX (for example, fan speed/mode).
- This project was vibe coded with OpenAI Codex. Please treat it as an unofficial community integration and verify behavior in your environment before relying on it for critical automations.
- Run the complete local verification gate before publishing:
mise run ci- The gate runs the tests, coverage check, Home Assistant 2026.3 minimum and 2026.10 runtime smoke checks, and Hassfest.
- Run unit tests + coverage:
uv --directory . run --with-requirements requirements-dev.txt coverage run -m pytest -W erroruv --directory . run --with-requirements requirements-dev.txt coverage report --fail-under=86
- Check the real minimum Home Assistant API contracts:
uv --directory . run --isolated --python 3.14 --with homeassistant==2026.3.0 --with grpcio==1.78.0 python -m scripts.smoke_ha_2026_3- This is a narrow API smoke for the real Home Assistant 2026.3.0 floor, not a full Home Assistant runtime test.
- Check the Home Assistant 2026.10 runtime and its
grpcio==1.83.1dependency:uv --directory . run --isolated --python 3.14 --exclude-newer-package homeassistant=2026-10-08T00:00:00Z --with homeassistant==2026.10.0 --with grpcio==1.83.1 python -m scripts.smoke_ha_2026_10- The Quilt component encodes protobuf messages directly; it has no generated gRPC stubs that impose a separate generator-version floor.
- Use GitHub Issues for bug reports and feature requests.
- Please include logs, exact repro steps, and your Home Assistant version when reporting bugs.