PyPlumIO


NamePyPlumIO JSON
Version 0.5.56 PyPI version JSON
download
home_pageNone
SummaryPyPlumIO is a native ecoNET library for Plum ecoMAX controllers.
upload_time2025-09-04 15:28:30
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT License
keywords home automation heating
VCS
bugtrack_url
requirements dataslots pyserial-asyncio typing-extensions
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/badges/2455933c-6c18-45bc-a205-da5cc0b49d0b/maintainability.svg)](https://qlty.sh/gh/denpamusic/projects/PyPlumIO)
[![Code Coverage](https://qlty.sh/badges/2455933c-6c18-45bc-a205-da5cc0b49d0b/test_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)

## 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.9",
    "maintainer_email": null,
    "keywords": "home, automation, heating",
    "author": null,
    "author_email": "Denis Paavilainen <denpa@denpa.pro>",
    "download_url": "https://files.pythonhosted.org/packages/ea/16/952a6da6ed9b9446a9b82f1f6efae69832a16f62e0fce1751f1968ffb47b/pyplumio-0.5.56.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/badges/2455933c-6c18-45bc-a205-da5cc0b49d0b/maintainability.svg)](https://qlty.sh/gh/denpamusic/projects/PyPlumIO)\n[![Code Coverage](https://qlty.sh/badges/2455933c-6c18-45bc-a205-da5cc0b49d0b/test_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\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.5.56",
    "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": "b6df876c397adf993cd28914b7bb1c5e455a2b3ad2a0bf9b2de1c4c851e27bba",
                "md5": "2bb0465569b58eca475d221cb1f4c562",
                "sha256": "e6b6b308d8ac0cd2e0d0fe0fd4448ab736dc7202b177d2b229f6e10c4008ff37"
            },
            "downloads": -1,
            "filename": "pyplumio-0.5.56-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2bb0465569b58eca475d221cb1f4c562",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 79057,
            "upload_time": "2025-09-04T15:28:29",
            "upload_time_iso_8601": "2025-09-04T15:28:29.433248Z",
            "url": "https://files.pythonhosted.org/packages/b6/df/876c397adf993cd28914b7bb1c5e455a2b3ad2a0bf9b2de1c4c851e27bba/pyplumio-0.5.56-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ea16952a6da6ed9b9446a9b82f1f6efae69832a16f62e0fce1751f1968ffb47b",
                "md5": "0b72372392f60c62d9aca6ef327cc6bc",
                "sha256": "1c5b7e5ab388d1f07bb833b5e43dbe68bf167dbd61e88b6b855cf82dc32d3832"
            },
            "downloads": -1,
            "filename": "pyplumio-0.5.56.tar.gz",
            "has_sig": false,
            "md5_digest": "0b72372392f60c62d9aca6ef327cc6bc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 285878,
            "upload_time": "2025-09-04T15:28:30",
            "upload_time_iso_8601": "2025-09-04T15:28:30.855094Z",
            "url": "https://files.pythonhosted.org/packages/ea/16/952a6da6ed9b9446a9b82f1f6efae69832a16f62e0fce1751f1968ffb47b/pyplumio-0.5.56.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-04 15:28:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "denpamusic",
    "github_project": "PyPlumIO",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "dataslots",
            "specs": [
                [
                    "==",
                    "1.2.0"
                ]
            ]
        },
        {
            "name": "pyserial-asyncio",
            "specs": [
                [
                    "==",
                    "0.6"
                ]
            ]
        },
        {
            "name": "typing-extensions",
            "specs": [
                [
                    ">=",
                    "4.14.0"
                ],
                [
                    "<",
                    "5.0"
                ]
            ]
        }
    ],
    "lcname": "pyplumio"
}
        
Elapsed time: 0.53839s