millheater
A python3 library to communicate with Mill
Decision gist · record as of 2026-08-14
Yes, if you own Mill heater devices and need programmatic control or temperature monitoring. The library is stable, has no known vulnerabilities, and is already proven in Home Assistant. The aging maintenance status means you should not expect rapid updates, but the core functionality is solid for its narrow use case.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; uses async/await patterns via aiohttp, so callers must run within an async context.
- Low install friction with a pure-Python wheel.
- Maintenance status is aging—last commit was 2025-12-11 and the repository remains active but shows limited recent development velocity.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
last release 2025-12-11 (246 days) · last repo commit 2025-12-11 · 23 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 74,074 downloads/mo, #14,878 on PyPI
Alternatives
Verify before relying
pip install millheater
import millheater
# Create client and authenticate with Mill API credentials
# Use aiohttp-based async methods to control heaters and fetch temperatures- Specific Mill device models or API versions supported by version 0.15.0
- Whether PyJWT is used for authentication or token handling with Mill's API
- Rate limits or throttling behavior when polling multiple heater devices
What it is and what it does
millheater is a Python 3 library that communicates with Mill heater devices over the network to send control commands and retrieve temperature readings. It wraps Mill's API using aiohttp for async HTTP requests and PyJWT for authentication, making it suitable for integrating Mill heaters into home automation systems or custom control applications.
The library is actively used in Home Assistant's Mill climate component. It targets modern Python (3.10+) and offers a low-friction installation as a pure-wheel package. Maintenance is aging—the last commit was recent but development activity appears limited—so you should expect slower response to bug reports or feature requests.
Use it for
- Integrate Mill heaters into a Home Assistant or other home automation platform
- Build a custom dashboard to monitor and control multiple Mill heater devices remotely
- Automate heating schedules by querying current temperatures and adjusting device settings
- Log heater telemetry and temperature data for analysis or historical tracking
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you own Mill heater devices and need programmatic control or temperature monitoring.
The library is stable, has no known vulnerabilities, and is already proven in Home Assistant. The aging maintenance status means you should not expect rapid updates, but the core functionality is solid for its narrow use case.
Install
millheater on PyPI
Before you install
Low install friction with a pure-Python wheel. Maintenance status is aging—last commit was 2025-12-11 and the repository remains active but shows limited recent development velocity.
Requires Python 3.10 or later; uses async/await patterns via aiohttp, so callers must run within an async context.
License in practice
MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
Quickstart
pip install millheater
import millheater
# Create client and authenticate with Mill API credentials
# Use aiohttp-based async methods to control heaters and fetch temperatures
Verify before relying
- Specific Mill device models or API versions supported by version 0.15.0
- Whether PyJWT is used for authentication or token handling with Mill's API
- Rate limits or throttling behavior when polling multiple heater devices
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesaiohttpPyJWT |
| Maintenance | Aging 246 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 74,074 / month, #14,878 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Home AutomationTopic :: Software Development :: Libraries :: Python Modules |
Evidence: millheater-0.15.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “mill heater control python”
- millheaterPython library to control Mill heater devices and read their measured…
- pyeconetProvides an async Python interface to the unofficial Rheem EcoNet API…
- amberelectricProvides a Python interface to the Amber Electric API for querying…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also pyTibber · PyViCare · pyeconet · python-tado · pymiele · python-bsblan · homematicip · meross-iot · python-ecobee-api · pyhiveapi