PyPlumIO


NamePyPlumIO JSON
Version 0.6.2 PyPI version JSON
download
home_pageNone
SummaryPyPlumIO is a native ecoNET library for Plum ecoMAX controllers.
upload_time2025-10-11 22:35:35
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT License
keywords home automation heating
VCS
bugtrack_url
requirements pyserial-asyncio
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # PyPlumIO is a native ecoNET library for Plum ecoMAX controllers

[![PyPI version](https://badge.fury.io/py/PyPlumIO.svg)](https://badge.fury.io/py/PyPlumIO)
[![PyPI Supported Python Versions](https://img.shields.io/pypi/pyversions/pyplumio.svg)](https://pypi.python.org/pypi/pyplumio/)
[![PyPlumIO CI](https://github.com/denpamusic/PyPlumIO/actions/workflows/ci.yml/badge.svg)](https://github.com/denpamusic/PyPlumIO/actions/workflows/ci.yml)
[![Maintainability](https://qlty.sh/gh/denpamusic/projects/PyPlumIO/maintainability.svg)](https://qlty.sh/gh/denpamusic/projects/PyPlumIO)
[![Code Coverage](https://qlty.sh/gh/denpamusic/projects/PyPlumIO/coverage.svg)](https://qlty.sh/gh/denpamusic/projects/PyPlumIO)
[![stability-release-candidate](https://img.shields.io/badge/stability-pre--release-48c9b0.svg)](https://guidelines.denpa.pro/stability#release-candidate)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)

## Overview

This package aims to provide complete and easy to use solution for
communicating with climate devices by [Plum Sp. z o.o.](https://www.plum.pl/)

![ecoMAX controllers](https://raw.githubusercontent.com/denpamusic/PyPlumIO/main/images/ecomax.png)

Currently it supports reading and writing parameters of ecoMAX controllers by
Plum Sp. z o.o., getting service password and sending network information to
show on controller's display.

Devices can be connected directly via RS-485 to USB adapter or
through network by using RS-485 to Ethernet/WiFi converter.

![RS-485 converters](https://raw.githubusercontent.com/denpamusic/PyPlumIO/main/images/rs485.png)

## Table of contents

- [Connecting](https://pyplumio.denpa.pro/connecting.html)
- [Reading](https://pyplumio.denpa.pro/reading.html)
- [Writing](https://pyplumio.denpa.pro/writing.html)
- [Callbacks](https://pyplumio.denpa.pro/callbacks.html)
- [Mixers/Thermostats](https://pyplumio.denpa.pro/mixers_thermostats.html)
- [Schedules](https://pyplumio.denpa.pro/schedules.html)
- [Protocol](https://pyplumio.denpa.pro/protocol.html)
  - [Frame Structure](https://pyplumio.denpa.pro/protocol.html#frame-structure)
  - [Requests and Responses](https://pyplumio.denpa.pro/protocol.html#requests-and-responses)
  - [Communication](https://pyplumio.denpa.pro/protocol.html#communication)
  - [Versioning](https://pyplumio.denpa.pro/protocol.html#versioning)
- [Supported frames](https://pyplumio.denpa.pro/frames.html)

## Quickstart

1. To use PyPlumIO, first install it using pip:

```bash
pip install pyplumio
```

2. Connect to the ecoMAX controller:

```python
>>> connection = pyplumio.open_serial_connection("/dev/ttyUSB0")
>>> await connection.connect()
>>> ecomax = await connection.get("ecomax")
```

3. Print some values:

```python
>>> print(await ecomax.get("heating_temp"))
```

4. Don’t forget to close the connection:

```python
>>> await connection.close()
```

## Home Assistant Integration

There is companion Home Assistant integration that is being co-developed with
this package and depends on it. Click button below to check it out.

[![Plum ecoMAX for Home Assistant](https://img.shields.io/badge/Plum%20ecoMAX%20for%20Home%20Assistant-41bdf5)](https://github.com/denpamusic/homeassistant-plum-ecomax)

## Attribution

Special thanks to [econetanalyze](https://github.com/twkrol/econetanalyze)
project by twkrol for initial information about protocol.

## License

This product is distributed under MIT license.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "PyPlumIO",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "home, automation, heating",
    "author": null,
    "author_email": "Denis Paavilainen <denpa@denpa.pro>",
    "download_url": "https://files.pythonhosted.org/packages/3c/7b/e018a8ae3a4606d90022b22a8f6f9638fd44ac0f81841dc718a8347cf4fa/pyplumio-0.6.2.tar.gz",
    "platform": "any",
    "description": "# PyPlumIO is a native ecoNET library for Plum ecoMAX controllers\n\n[![PyPI version](https://badge.fury.io/py/PyPlumIO.svg)](https://badge.fury.io/py/PyPlumIO)\n[![PyPI Supported Python Versions](https://img.shields.io/pypi/pyversions/pyplumio.svg)](https://pypi.python.org/pypi/pyplumio/)\n[![PyPlumIO CI](https://github.com/denpamusic/PyPlumIO/actions/workflows/ci.yml/badge.svg)](https://github.com/denpamusic/PyPlumIO/actions/workflows/ci.yml)\n[![Maintainability](https://qlty.sh/gh/denpamusic/projects/PyPlumIO/maintainability.svg)](https://qlty.sh/gh/denpamusic/projects/PyPlumIO)\n[![Code Coverage](https://qlty.sh/gh/denpamusic/projects/PyPlumIO/coverage.svg)](https://qlty.sh/gh/denpamusic/projects/PyPlumIO)\n[![stability-release-candidate](https://img.shields.io/badge/stability-pre--release-48c9b0.svg)](https://guidelines.denpa.pro/stability#release-candidate)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n\n## Overview\n\nThis package aims to provide complete and easy to use solution for\ncommunicating with climate devices by [Plum Sp. z o.o.](https://www.plum.pl/)\n\n![ecoMAX controllers](https://raw.githubusercontent.com/denpamusic/PyPlumIO/main/images/ecomax.png)\n\nCurrently it supports reading and writing parameters of ecoMAX controllers by\nPlum Sp. z o.o., getting service password and sending network information to\nshow on controller's display.\n\nDevices can be connected directly via RS-485 to USB adapter or\nthrough network by using RS-485 to Ethernet/WiFi converter.\n\n![RS-485 converters](https://raw.githubusercontent.com/denpamusic/PyPlumIO/main/images/rs485.png)\n\n## Table of contents\n\n- [Connecting](https://pyplumio.denpa.pro/connecting.html)\n- [Reading](https://pyplumio.denpa.pro/reading.html)\n- [Writing](https://pyplumio.denpa.pro/writing.html)\n- [Callbacks](https://pyplumio.denpa.pro/callbacks.html)\n- [Mixers/Thermostats](https://pyplumio.denpa.pro/mixers_thermostats.html)\n- [Schedules](https://pyplumio.denpa.pro/schedules.html)\n- [Protocol](https://pyplumio.denpa.pro/protocol.html)\n  - [Frame Structure](https://pyplumio.denpa.pro/protocol.html#frame-structure)\n  - [Requests and Responses](https://pyplumio.denpa.pro/protocol.html#requests-and-responses)\n  - [Communication](https://pyplumio.denpa.pro/protocol.html#communication)\n  - [Versioning](https://pyplumio.denpa.pro/protocol.html#versioning)\n- [Supported frames](https://pyplumio.denpa.pro/frames.html)\n\n## Quickstart\n\n1. To use PyPlumIO, first install it using pip:\n\n```bash\npip install pyplumio\n```\n\n2. Connect to the ecoMAX controller:\n\n```python\n>>> connection = pyplumio.open_serial_connection(\"/dev/ttyUSB0\")\n>>> await connection.connect()\n>>> ecomax = await connection.get(\"ecomax\")\n```\n\n3. Print some values:\n\n```python\n>>> print(await ecomax.get(\"heating_temp\"))\n```\n\n4. Don\u2019t forget to close the connection:\n\n```python\n>>> await connection.close()\n```\n\n## Home Assistant Integration\n\nThere is companion Home Assistant integration that is being co-developed with\nthis package and depends on it. Click button below to check it out.\n\n[![Plum ecoMAX for Home Assistant](https://img.shields.io/badge/Plum%20ecoMAX%20for%20Home%20Assistant-41bdf5)](https://github.com/denpamusic/homeassistant-plum-ecomax)\n\n## Attribution\n\nSpecial thanks to [econetanalyze](https://github.com/twkrol/econetanalyze)\nproject by twkrol for initial information about protocol.\n\n## License\n\nThis product is distributed under MIT license.\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "PyPlumIO is a native ecoNET library for Plum ecoMAX controllers.",
    "version": "0.6.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/denpamusic/PyPlumIO/issues",
        "Documentation": "https://pyplumio.denpa.pro",
        "Source Code": "https://github.com/denpamusic/PyPlumIO"
    },
    "split_keywords": [
        "home",
        " automation",
        " heating"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "28e104b92044eb49f32a651fd96dbf35f542b3c6bdf8a3e4e19e0b65124f07df",
                "md5": "4daf0e8d9ed2384e848f7aa96e0acae7",
                "sha256": "d829bf2323930fc5d4e7a82102de7d4bcb94426cdb4b141420a6ca957d03a820"
            },
            "downloads": -1,
            "filename": "pyplumio-0.6.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4daf0e8d9ed2384e848f7aa96e0acae7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 72380,
            "upload_time": "2025-10-11T22:35:34",
            "upload_time_iso_8601": "2025-10-11T22:35:34.067870Z",
            "url": "https://files.pythonhosted.org/packages/28/e1/04b92044eb49f32a651fd96dbf35f542b3c6bdf8a3e4e19e0b65124f07df/pyplumio-0.6.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3c7be018a8ae3a4606d90022b22a8f6f9638fd44ac0f81841dc718a8347cf4fa",
                "md5": "15d75ce4bfff5b264822539fbca7d59c",
                "sha256": "ad97715e4ed51678025ef9cf3d1108025bb76792079801b4345a5fd14fd20154"
            },
            "downloads": -1,
            "filename": "pyplumio-0.6.2.tar.gz",
            "has_sig": false,
            "md5_digest": "15d75ce4bfff5b264822539fbca7d59c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 285654,
            "upload_time": "2025-10-11T22:35:35",
            "upload_time_iso_8601": "2025-10-11T22:35:35.616259Z",
            "url": "https://files.pythonhosted.org/packages/3c/7b/e018a8ae3a4606d90022b22a8f6f9638fd44ac0f81841dc718a8347cf4fa/pyplumio-0.6.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-11 22:35:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "denpamusic",
    "github_project": "PyPlumIO",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "pyserial-asyncio",
            "specs": [
                [
                    "==",
                    "0.6"
                ]
            ]
        }
    ],
    "lcname": "pyplumio"
}
        
Elapsed time: 1.34594s