banner
瑞瑞蓝

瑞瑞蓝

你的气质里,藏着你读过的书、走过的路和爱过的人。
email
x
tg_channel
github
jike
steam
douban

Armbian の設定 HomeAssistant 米家統合

一、インストールプロセス#


  • Docker で HomeAssistant をインストール
  • Git でHA - 米家集成をインストール
  • 内部ネットワークのトンネリングを設定してパブリックアクセスを実現
  • Hass Panel パネルをインストール
  • Apple HomeKit Bridge を設定

二、つまずき#


私の docker は 1panel でワンクリックインストールされたもので、HomeAssistant も 1panel アプリストアでワンクリックインストールされました。1panel のデフォルトパスは/opt/1panel/apps/home-assistant/home-assistant/dataです。

小米公式リポジトリのREADME.mdには次のように書かれています:

cd config
git clone https://github.com/XiaoMi/ha_xiaomi_home.git
cd ha_xiaomi_home
./install.sh /config

私はconfigフォルダが/opt/1panel/apps/home-assistant/home-assistant/dataフォルダ内に新しく作成することを指していると思っていましたが、インストール後にxiaomi_homeが表示されず、後で記事を読んでdataが記事で言及されているconfigフォルダであることを知りました。つまり、1panel でインストールされた HomeAssistant の場合、単にcdして/opt/1panel/apps/home-assistant/home-assistant/dataに移動し、インストールを実行すればよいのです。1panel のデフォルトアプリストアのインストールには本当に多くの落とし穴があり、多くのコンテナのインストールにはさまざまな問題があり、非常に面倒です。

この問題を解決した後、HA - 米家集成を正常にインストールできました。

1745513129320PixPin_2025-04-24_19-11-13.png

インストールが完了した後、Github のチュートリアルに従って手順を設定してログインすれば大丈夫です。現在、米家のほとんどの製品は直接インポートできますが、一部の Bluetooth などの接続デバイスはまだ対応していません。

三、パブリックアクセスの設定#


本来、このステップは最も簡単なステップだと思っていましたが、以前の操作に従って cloudflare zero trust パネルでドメインバインディングを設定した後、アクセスするとエラーが発生しました。その後、しばらく試行錯誤し、最終的に HA のコミュニティフォーラムで関連するディスカッションスレッドを見つけて、無事に解決しました。

設定中に遭遇した問題:#

  • 設定後にアクセスするとエラーが発生:400: Bad Request

    • 解決方法:設定ファイルを修正
    • 一般的には、HA のconfiguration.yamlファイルに次のコードを追加する必要があります:
    http:
    	use_x_forwarded_for: true
    	trusted_proxies:
    		- 192.168.31.137/32
    
    

    ここでのtrusted_proxiesフィールドの下の部分は、自分のデバイスの IP に変更する必要があります。

  • リカバリーモード(Recovery mode

    • https://community.home-assistant.io/t/cloudflare-400-bad-request-error/326047/24

    • 時々、configuration.yamlを修正した後に HA を再起動すると、HA がリカバリーモードに入ることがあります。

    • 原因は設定ファイルの形式に問題があるか、他の理由で設定ファイルを読み込めないため、システムがリカバリーモードに入ります。

    • 解決方法:configuration.yamlの形式を注意深く確認する必要があります。注意すべき点は、trusted_proxiesは IP アドレスまたは CIDR 形式のサブネットマスクのみを受け入れ、ドメイン名を直接使用することはできません。Home Assistant がこれらのドメイン名を解決しようとするとエラーが発生し、httpコンポーネントの起動に失敗します。

  • 関連問題:依存するhttpコンポーネントが読み込まれない

    • httpは多くのコアコンポーネントの基盤であり、frontend(フロントエンドインターフェース)、websocket_api(WebSocket 通信)、zeroconf(ゼロコンフィグネットワーク発見)などが含まれます。
    • httpコンポーネントが読み込まれない場合、それに依存するすべての機能が無効になり、大量のエラーが発生します。

四、Hass panel パネルのインストール#


1. 問題の概要:#

  • パブリックアクセスを設定した後、HA パネルに表示されるメッセージ:the operation is insecure

  • Failed to construct 'WebSocket': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.

2. 原因:#

これらの 2 つの問題、またはこの種の問題の原因は似ています。最初のデプロイが成功した後、初期化時に入力したhttpで始まるローカルアドレスが、HA がドメインをバインドした後に HA 内で Hasspanel にアクセスするとhttpsに変わり、httpにリダイレクトされるため、不安全な動作がブラウザによってブロックされます。

3. 解決方法:#

Hasspanel を再初期化し、URL を入力する際にhttpsアドレスを入力します。

五、Apple HomeKit Bridge#


HA パネル - 設定 - デバイスとサービス - インテグレーションを追加 - "Apple" を検索し、次に "HomeKit Bridge" を選択し、次へ進むと、HA からメッセージが表示されます。そのメッセージを開いて iPhone でメッセージ内の QR コードをスキャンしてペアリングを追加すれば大丈夫です。特に難しいことはありません。

Apple 家庭
コントロールセンター

コントロールセンターも追加できます!

ただし、現在米家集成でサポートされていないデバイスは Apple 家庭に追加できません。また、一部のデバイス、例えば空気清浄機には温湿度センサーがあり、HA パネルでも検出して追加できますが、Apple 家庭では使用できず、単純な空気清浄機のスイッチ機能しかありません。残念です。

五、まとめ#


ここまでで、HA の設定はほぼ完了しました。

夜に物事を研究するのは本当にインスピレーションが爆発し、問題解決能力が向上します。昼間は静かにできず、効率が非常に悪いと感じます。

解決完了、alexblueログアウト!

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。