skillfed

aioecowitt

Python wrapper for EcoWitt Protocol

aioecowitt v2026.6.0 74.1K downloads/30d#14,876 on PyPI23
Permissive license Apache-2.0 Active released

What it is and what it does

aioecowitt is an async Python library that implements the EcoWitt Protocol, a network-based interface for reading data from EcoWitt weather stations. It wraps the protocol in an async-friendly API built on aiohttp, making it suitable for integration into home automation systems and weather monitoring applications that need non-blocking I/O.

The library depends on aiohttp for HTTP communication and meteocalc for weather calculations. It targets Python 3.13 and is in Beta development status. With active maintenance and a repository showing recent commits, it appears to be a stable choice for developers building EcoWitt integrations, particularly in the Home Assistant ecosystem.

Use it for:

  • Fetch current temperature, humidity, and pressure readings from an EcoWitt weather station in a home automation system
  • Poll multiple EcoWitt devices asynchronously without blocking other application tasks
  • Build a weather data aggregator that combines EcoWitt station readings with other data sources
  • Create a local weather dashboard that displays real-time sensor data from an EcoWitt device

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides an async Python wrapper for the EcoWitt weather station protocol, enabling applications to read sensor data from EcoWitt devices over the network.

Yes. Low install friction, permissive Apache-2.0 license, active maintenance, no known vulnerabilities, and solid download numbers make this a straightforward choice for projects needing EcoWitt integration. The async design is well-suited to modern Python applications. Confirm your device model is supported before committing.

Install

aioecowitt on PyPI

pip

pip install aioecowitt

uv

uv add aioecowitt

poetry

poetry add aioecowitt

Installing aioecowitt

Before you install

Low friction install with only two runtime dependencies (aiohttp and meteocalc). Active maintenance with a recent release and ongoing repository activity.

License in practice

Licensed under Apache-2.0 (permissive), allowing use in commercial and private projects with minimal restrictions.

Quickstart

pip install aioecowitt

import asyncio
from aioecowitt import AioEcoWitt

async def main():
    async with AioEcoWitt(host) as client:
        data = await client.get_data()
        print(data)

asyncio.run(main())

Requires Python 3.13 or later; device must be on the same network and accessible at a known IP address.

Verify before relying

  • Whether the package handles all EcoWitt device models or only a subset
  • What specific weather metrics and sensor types are supported
  • Network protocol details (HTTP, UDP, or other) used to communicate with devices
  • Example usage patterns and typical initialization parameters for the client

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.13)
Install friction low — pure-Python wheel
Runtime dependencies 2 — aiohttp, meteocalc
Maintenance actively maintained — 51 days since the last release
Last repo commit
First released
Downloads 74,106/month — #14,876 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: aioecowitt-2026.6.0-py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: DevelopersNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.13Topic :: Home Automation

Tags

ecowitt weather station protocolasync ecowitt clientweather station data pythonecowitt sensor readinghome automation weather dataasyncio weather stationecowitt protocol wrapper
home-automationweather-dataasyncio

More Home Automation packages