Xiaomi Cloudまたはローカルの中央ハブゲートウェイ経由で、Xiaomi IoTスマートデバイスをHome Assistantに取り込む公式連携。
rytilahti/python-miio
miIO/MIoTプロトコルでXiaomiのスマートホーム機器を操作するPythonライブラリとmiiocliコマンドラインツール。
代替できる製品:Mi Home
- スター
- 4,331
- フォーク
- 601
- 未解決の Issue
- 317
- 最終コミット
- 3 か月前
これは何?
python-miioは、Xiaomiのスマートホーム機器を操作するためのPythonライブラリと、付属のコマンドラインツールmiiocliです。XiaomiのmiIOおよびMIoTプロトコルに対応しているため、IPアドレスとトークンが分かれば、ローカルネットワーク経由で機器の情報を取得したり操作したりできます。
新しいMIoT機器では、汎用MIoT連携が機器のspecファイルを読み込み、センサー、設定項目、アクションを一覧表示します。また、コマンドラインやPythonコードから設定を変更したり、アクションを実行したりできます。ロボット掃除機、空気清浄機、扇風機、加湿器、ランプなど、旧式のmiIO機器には専用のデバイスモジュールが用意されており、DeviceFactoryヘルパーがモデルを自動判定します。組み込みのcloudコマンドを使えば、Xiaomiのクラウドアカウントからトークンを取得できます。
このプロジェクトにはmiIOおよびMIoTの簡易シミュレーターも含まれており、実機なしでコードをテストできます。Xiaomiとは無関係のコミュニティプロジェクトで、Home AssistantのXiaomi連携の基盤としても使われています。
主な機能
- 01IPアドレスとトークンを使い、ローカルネットワーク経由でmiIOおよびMIoT機器を操作できます。
- 02汎用MIoT連携により、機器のspecファイルから状態、設定項目、アクションを確認できます。
- 03Xiaomiのロボット掃除機、空気清浄機、扇風機、加湿器、ランプ、プラグなど、多くの機器に専用モジュールを用意しています。
- 04miiocliコマンドで、機器情報や状態の確認、設定変更、アクションの実行ができます。
- 05cloudコマンドを使い、Xiaomiのクラウドアカウントから機器のトークンを取得できます。
- 06ハードウェアなしでテストできるmiIOおよびMIoTシミュレーターを同梱しています。
ユースケース
- PythonプログラムからXiaomi機器をスクリプト化または自動化する。
- Xiaomi家電向けのカスタムスマートホーム連携やダッシュボードを構築する。
- 実機を持たずにmiIOまたはMIoTクライアントをテストする。
- ターミナルから機器の状態を確認し、設定を変更する。
クイックスタート
- 1
PyPIからライブラリをインストールします
pip install python-miio - 2
デバイスのIPアドレスとトークンを取得します(例:cloudコマンドを使用)
miiocli cloud - 3
デバイスに問い合わせて、モデルと制御コマンドを確認します
miiocli device --ip <ip> --token <token> info
使う前に知っておきたいこと
- 最新のMIoTデバイスをサポートするには、バージョン0.6.0のリリースまではgit版またはプレリリース版が必要です。
- デバイスを制御するには、各デバイスのIPアドレスとトークンが必要です。
- これは有志によるコミュニティプロジェクトであり、デバイスメーカーとは提携していません。
- コピーレフトライセンスであるGPL-3.0の下でライセンスされています。
トピック
よくある質問
- python-miio とは?
- miIO/MIoTプロトコルでXiaomiのスマートホーム機器を操作するPythonライブラリとmiiocliコマンドラインツール。 python-miioは、Xiaomiのスマートホーム機器を操作するためのPythonライブラリと、付属のコマンドラインツールmiiocliです。XiaomiのmiIOおよびMIoTプロトコルに対応しているため、IPアドレスとトークンが分かれば、ローカルネットワーク経由で機器の情報を取得したり操作したりできます。
- python-miio は無料で使えますか?ライセンスは?
- python-miio は GPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- python-miio は今もメンテナンスされていますか?
- 半年以内に更新あり。python-miio の最終コミットは 2026年7月25日 です。
- python-miio は何に使えますか?
- PythonプログラムからXiaomi機器をスクリプト化または自動化する。 Xiaomi家電向けのカスタムスマートホーム連携やダッシュボードを構築する。 実機を持たずにmiIOまたはMIoTクライアントをテストする。 ターミナルから機器の状態を確認し、設定を変更する。
- python-miio のインストール方法は?
- PyPIからライブラリをインストールします: pip install python-miio デバイスのIPアドレスとトークンを取得します(例:cloudコマンドを使用): miiocli cloud デバイスに問い合わせて、モデルと制御コマンドを確認します: miiocli device --ip <ip> --token <token> info
- python-miio はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/rytilahti/python-miio
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
mijiaAPIをベースに、GUI、トレイ、デスクトップウィジェットを備えた、Xiaomi Mijiaスマートホーム機器を操作するWindowsデスクトップクライアントです。
自宅をライブ3Dモデルで表示し、Smart Life、Home Assistant、Hue、Apple Home経由で照明やエアコンを操作できるメニューバー/iPhoneアプリ。
ローカルで動作し、操作性とプライバシーを重視するオープンソースのホームオートメーションプラットフォーム。Raspberry Piやローカルサーバーで動かせます。
Zigbeeスマートホーム機器をMQTTに接続し、メーカー純正のハブやゲートウェイなしで使えるブリッジ。
スマート検知に対応し、HomeKit、Google Home、Alexaへカメラ映像を配信するセルフホスト型のホームビデオ連携プラットフォーム兼NVR。