Skip to main content

MirAIe-AC API for Python — actively maintained fork of miraie-ac

Project description

MirAIe AC API Client (miraie-ac-in)

PyPI version Python Version

A Python API client wrapper for controlling Panasonic MirAIe-enabled Air Conditioners. This library handles MQTT message parsing, connection loops, and telemetry status decoding.

This repository is a feature fork of rkzofficial/miraie-ac to provide updates for newer firmware versions, expand capacity control options, and improve connection stability.

[!IMPORTANT] This project is designed exclusively for Panasonic Air Conditioners that use the MirAIe application. It is not compatible with Panasonic ACs that use the global Comfort Cloud application.


Enhancements in This Fork

  • Firmware 3.02+ Room Temperature Fix: Panasonic AC units running firmware 3.02+ report ambient room temperature in a packed decimal format. This fork introduces version-aware decoding to display this value correctly, while retaining traditional decoding for older firmware.
  • Converti 8-in-1 Support: Expands compressor capacity control options by mapping the 60% and 50% steps, enabling full 8-in-1 capacity features on supported models.
  • MQTT & Resource Lifecycle Cleanup: Adds an explicit close() method to cleanly cancel and await active MQTT tasks and terminate the underlying HTTP client session, preventing resource leaks.
  • Telemetry Parsing: Adds status parsing for Nanoe™ air purifiers (acng), Filter Clean alerts (acfc), Wi-Fi RSSI signal strength (rssi), and last control source (cnt).
  • Input Validation: Upgraded user credential validation with improved regex supporting subdomains and hyphenated domains.

Installation

Install the package via pip:

pip install miraie-ac-in

Quick Start

import asyncio
from miraie_ac import MirAIeHub, MirAIeBroker

async def main():
    broker = MirAIeBroker()
    hub = MirAIeHub()

    # Initialize the hub (phone number format: +91XXXXXXXXXX)
    await hub.init("+919999999999", "your_password", broker)
    
    # List discovered devices
    print("Discovered Devices:", hub.home.devices)
    
    # Wait for the MQTT connection to establish
    while not hasattr(broker, "client") or getattr(broker, "client") is None:
        await asyncio.sleep(1)

    # Example: Turn off the first device
    if hub.home.devices:
        device = hub.home.devices[0]
        await device.turn_off()
        
    await hub.close()

asyncio.run(main())

Credits & License

Upstream Authors & Contributors

Fork Authors & Contributors

  • Fork enhancements (firmware 3.02+ temperature fix, Converti 8-in-1, and MQTT resource leak resolutions) developed by @selvakk2k with assistance from Claude (Anthropic) and Gemini/Antigravity (Google DeepMind).

Licensed under the MIT License. See the LICENSE file for the original license text.

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

miraie_ac_in-1.0.7.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

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

miraie_ac_in-1.0.7-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

Details for the file miraie_ac_in-1.0.7.tar.gz.

File metadata

  • Download URL: miraie_ac_in-1.0.7.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for miraie_ac_in-1.0.7.tar.gz
Algorithm Hash digest
SHA256 15d8c834c65d1f18102a018f92afc9bbac093944944e18292e88b05476c9baab
MD5 027cd0d14d5469614753704f354c0ef4
BLAKE2b-256 9b64157e34f61ca1dc7222b5815e60931fd18b1cb74de52adefbedcc4c3df955

See more details on using hashes here.

Provenance

The following attestation bundles were made for miraie_ac_in-1.0.7.tar.gz:

Publisher: publish.yml on selvakk2k/miraie-ac-in

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file miraie_ac_in-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: miraie_ac_in-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 14.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for miraie_ac_in-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 757e9a61f06b1ff1d9150d2c0c4dadb8b014c80d7901b79c2e3431fb9ede35f7
MD5 2e6580f0afd47c725144c1f51e0927ce
BLAKE2b-256 38cadf3d9bea11bbe7f411a7f29a269ca2a8e87f23ba4dd782a1a393aef785f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for miraie_ac_in-1.0.7-py3-none-any.whl:

Publisher: publish.yml on selvakk2k/miraie-ac-in

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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