Skip to main content

A package to control Midea CCM15 data converter modules

Project description

py-ccm15

Python Library to access a Midea CCM15 data converter

This package provides an asynchronous interface to communicate with Midea CCM15 data converter modules. It allows you to control and monitor air conditioning units via the CCM15 gateway using Python.

Features

  • Read and set temperature
  • Control fan mode and AC mode
  • Async support for non-blocking operations
  • Communicate with CCM15 over HTTP

Installation

pip install py-ccm15

Usage

import asyncio
from py_ccm15 import CCM15Client

async def main():
    client = CCM15Client(host="192.168.1.100", token="your_token_here")
    status = await client.get_status()
    print(status)

    await client.set_state(ac_mode="cool", fan_mode="auto", temperature=24)

asyncio.run(main())

Requirements

  • Python 3.7+
  • httpx>=0.24.1
  • xmltodict>=0.13.0

Documentation

For full API reference and advanced usage, visit the GitHub repository.

Contributing

Pull requests are welcome. If you find a bug or have a feature request, feel free to open an issue.

Acknowledgements

The CCM15 wire protocol implemented here — the status.xml byte decoding and the HVAC/fan mode command mappings — was originally derived from the houselabs/home-assistant-mideaccm Home Assistant custom component (originally authored by Chao Shen). This library re-implements that protocol as a standalone, async package. Thanks to the original authors for reverse-engineering the controller protocol.

Thanks also to daxingplay/home-assistant-midea-ccm15, an independent CCM15 Home Assistant component whose status.xml decoding and ctrl.xml command handling were a valuable second reference for validating this library's wire protocol.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Made by Oscar Calvo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_ccm15-0.3.0.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_ccm15-0.3.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file py_ccm15-0.3.0.tar.gz.

File metadata

  • Download URL: py_ccm15-0.3.0.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for py_ccm15-0.3.0.tar.gz
Algorithm Hash digest
SHA256 72be639e0aa98c099eb87081afb5063bd99298cc4b9df9d9f14d6ca5a7446474
MD5 e9f7735e2fd7456d5c1d4505ef8919dd
BLAKE2b-256 b463cbfe2be56da419fed1e3a1b59bb3c9608c0acf0459f2390a6af83fdb7bb9

See more details on using hashes here.

File details

Details for the file py_ccm15-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: py_ccm15-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for py_ccm15-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a8cd21b76274d2350def748c86f0876d723cd4cda2c3e266e268e866b7da0d69
MD5 3b57f931daa638abfce7a1a57038969d
BLAKE2b-256 739fc6df008e862d029363699e51324bc5ad5835938441d96bdeddbbd573d096

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page