【スマートホーム】VirtualBox を使って Home Assistant をインストールする方法【Mac / Windows / Linux】

みなさんこんにちは、たいくんです。
みなさんは、「Home Assistant」をご存知ですか?
Home Assistantは、さまざまな種類のスマートデバイスを制御したり、スマートメーターを使って家中の電力情報を管理したりなど、スマートホームを構築するのに欠かせない機能が詰まったスマートホームハブです。
また、スマートホームのダッシュボードを作成することができ、ダッシュボードを壁掛けタブレット等に表示しておけば、簡単に家中のスマートデバイスを制御することができます。
今回は、Home AssistantをVirtualBoxを使ってインストールする方法と、おすすめのプラグイン(統合とテーマなど)を紹介します。



広告


Home Assistantでできること

さまざまなスマートデバイスを制御できる

Home Assistantを使えば、さまざまなメーカーから発売されているさまざまな種類のスマートデバイスを制御することができます。
また、対応していればクラウド経由ではなく、ローカル制御も行うことができます。そのため、メーカーからのサポートが終了してしまったり、クラウドサーバーがダウンして通信できなくなったりしても、引き続き制御することができます。
また、専用のハブがなくてもオートメーションを使うことができます。

スマートダッシュボードを作れる

スマートダッシュボードを作成すれば、壁掛けタブレットなどに表示しておくことで、家中のスマートデバイスの状況を確認したり、制御したりすることができるようになります。
スマートダッシュボードというのは、以下のようなものです。

これは、私が実際にHome Assistantを使って構築したスマートダッシュボードの一部です。
このようなスマートダッシュボードを作成するのはかなり大変ですが、様々なスマートデバイスを簡単に制御することができるようになるため、とても便利です。

高級ホテルなどではこのようなダッシュボードが設置してあるところもありますが、こういったものが家にあるというのは憧れますよね。
Home Assistantを使えば、このようなダッシュボードを作ることができるのです。

スマートメディアプレイヤーを作れる

Home Assistantには様々なプラグインが用意されており、Home Assistantをスマートデバイス用のメディアプレイヤーとして使うことができます。
例えば、Home Assistantサーバー内の動画をAndroid TVにキャストしたり、Home Assistantにアクセスしているデバイスで再生したりすることができます。

他にもたくさん

Home Assistantは、上記で紹介したもの以外にもたくさんできることがあります。
iCloudカレンダーとGoogleカレンダーを設定してスマートダッシュボードにまとめて表示したり、天気予報を表示したりなど、アイデアと知識さえあれば本当に何でもできます。
Home Assistantをインストールして使ってみて、興味が湧いたらいろいろ調べてみてください。なかなか興味深い情報もたくさんありますよ。



広告


Home Assistantのインストール

必要なもの

Home Assistantを使ったスマートホームの構築に必要なものは以下の通りです。
  • Home Assistantを動作させるためのサーバーPC(24時間稼働)
  • 登録するスマートデバイス
  • インターネット回線(完全ローカル運用の場合は不要)
たったこれだけです。

Home Assistantは、スマートデバイスを制御するためのハブなので、Home AssistantをインストールするPCは24時間起動させっぱなしにしておく必要があります。

必要なスペック

今回は、VirtualBox上に仮想環境を構築するため、仮想環境を実行できるようにBIOS設定を変更しなければならない場合があります。
必要なスペックは以下の通りです。
  • CPU: 2コア4スレッド以上(4コア以上推奨)
  • メモリ: 4GB以上(8GB以上推奨)
  • 空き容量: 40GB以上推奨
要求スペックはそこまで厳しくないため、古すぎたり、超ローエンドだったりしない限り問題ないはずです。
私はMacBook Pro (15-inch, Mid 2012)にインストールしましたが、動作に不満はありません。

VirtualBoxのインストール

ここからは、サーバーPC上で操作を行います。
まずは、こちらのリンクからVirtualBoxをダウンロードし、インストールします(詳細は割愛します)。
Extension Packも一緒にインストールしておくと、USB 2.0 / 3.0などが使えるようになるのでおすすめです。



広告


Home Assistantの準備

こちらのリンクへアクセスし、Windows / macOS / Linuxのどれかを選択後、「VirtualBox」というところをクリックして、Home Assistantのイメージをダウンロードします。
ダウンロードしたファイルは、間違えて消さないように仮想マシンと同じフォルダに入れておくことをおすすめします。

ダウンロードしたら、VirtualBoxを開いて、仮想マシンの準備を行います。

新規」をクリックします。

好きな名前を入力し、保存場所を選択します。
タイプは「Linux」、バージョンは「Linux 2.6 / 3.x / 4.x (64-bit)」を選択します。
その後「続き」をクリックして次に進みます。

メモリは、2GB (2048MB)以上を割り当てます。サーバーPCに搭載されているメモリを越えないようにしてください(多くてもサーバーPCの半分以下が望ましい)。
容量を割り当てたら、「続き」をクリックして次に進みます。

ハードディスクの選択画面では、「すでにある仮想ハードディスクファイルを使用する」を選択してください。
その後、右下にある黄色いフォルダアイコンをクリックします。

左上の「追加」をクリックして、先ほどダウンロードしたHome Assistantのイメージファイルを選択します。

ファイルを選択したら、右下の「選択」をクリックします。

ファイルが選択されたことを確認したら、「作成」をクリックして、仮想マシンを作成します。



広告


これで、仮想マシンが作成されました。
仮想マシンを起動する前に、仮想マシンの設定を変更する必要があります。「設定」をクリックします。

仮想マシンの設定を開いたら、上にある「システム」をクリックし、「マザーボード」タブ内の「EFIを有効化(一部のOSのみ)」をクリックして、オンにします。

次に、「プロセッサー」タブ内の「プロセッサー数」を2以上に設定します。
これも、サーバーPCのCPUコア(スレッド)数の半分以下が望ましいです。基本的には緑色の領域内であれば問題ありません。

次は、上にある「ネットワーク」をクリックし、「アダプター1」タブ内の「割り当て」を「ブリッジアダプター」に変更します。
名前」のところで、使用するネットワークの種類を選択します。基本的には何も変更しなくても問題ないはずです。Wi-Fiとイーサネット、どちらも接続されている場合は、Home Assistantで使用したい方を選びます(イーサネットを使用したい場合は「en0: Ethernet」を選ぶ)。ここで選択したものは、ホスト(仮想マシンを動かすPCのこと。今回の場合はサーバーPC)と共有されているため、ホスト側のインターネットが切断されることはありません。

最後に、上にある「オーディオ」をクリックし、「オーディオコントローラー」を「Intel HDオーディオ」に変更して、「OK」をクリックします。

仮想マシンの設定が終わったら、次はいよいよ仮想マシンを起動させます。「起動」をクリックします。

Home Assistantの起動中は、このように文字が流れていきます。

Macの場合、仮想マシンを初めて起動すると、マイクのアクセス許可が求められます。特に理由がない限りは許可しておきましょう。

Home Assistantが起動すると、このような画面になります。
ここからは、サーバーPCや、Home AssistantにアクセスするPCなどから操作を行います。

「http://X.X.X.X(表示されているIPv4アドレス):8123」または「http://homeassistant.local:8123」にアクセスします。
これらのURLは、サーバーPCが接続されているネットワークと同じネットワークでないと接続できません。そのため、外出先等からは接続することができないため、ご注意ください。



広告


Home Assistantの初期設定

アクセスすると、このような画面になるので、しばらく待ちます(最大20分)。

しばらくすると、ユーザーアカウントの作成画面が表示されます。
Home Assistantにログインするときに入力するパスワード等を設定したら、「アカウントの作成」をクリックします。

次に、Home Assistantを設定してある自宅の場所や、タイムゾーンなどを設定します。すべて設定したら、「」をクリックします。

Home Assistantの使用状況を、Home Assistantの開発元に送信するかどうかを設定できます。これにより、今後のHome Assistantの開発に役立てられます。送信したい情報をオンにしたら、「」をクリックします。すべてオフでも構いません。

Home Assistantに登録可能なスマートデバイスが表示されます。後で設定できるので、ここで登録しなくても構いません。「完了」をクリックして、Home Assistantの初期設定を完了させます。



広告


Home Assistantの設定

ほぼ必須のアドオンを追加する

Home Assistantを使用するにあたり、ほぼ必須とも言える2つのアドオンを追加します。

この2つのアドオンを追加するには、詳細モードを有効にする必要があります。左下のユーザー名をクリックし、「詳細モード」をオンにします。

アドオンを追加するには、アドオンストアにアクセスします。アドオンストアにアクセスするには、こちらのリンクをクリックするか、「設定」<「アドオン」<「アドオンストア」と進むことでアドオンストアにアクセスすることができます。

インストールするアドオンは、以下の2つです。
リンクをクリックすると、アドオンのページに移動できます。
以降の文字リンクは、クリックすると直接アクセスできるようになっているので、ぜひご活用ください。

アドオンを追加するには、アドオンのページに移動した後、「インストール」をクリックします。

その後、「起動時に開始」をオンにして「開始」をクリックすることで、アドオンが起動します。 「サイドバーに表示」をオンにしておくと、インストールしたアドオンにアクセスするのが楽になります。

2つのアドオンをインストールして起動させたら準備は完了です。

HACSのインストール

Home Assistantを使用するにあたり、様々なスマートデバイスに対応させるための統合を追加したり、Home Assistantのテーマを変更したりなど、様々な機能を追加するために、Home Assistant Community Store(HACS)をインストールしておくことをおすすめします。

HACSの利用には、GitHubアカウントとインターネット回線が必要です。

先ほどインストールしたTerminal & SSHを開き、次のコマンドを入力します。

wget -O - https://get.hacs.xyz | bash -

インストールが終わったら、Home Assistantを再起動します。
Home Assistantを再起動するには、「設定」<「システム」と進み、右上の「再起動」をクリックします。

再起動が終わったら、「統合」設定に移動します。
その後、ブラウザのキャッシュをクリアしてください。これを行わないと、次に進むことができません。

右下にある「統合を追加」をクリックしたら、「HACS」と検索し、追加します。

追加する際に、以下の4つに同意して、「送信(SUBMIT)」をクリックします。
  • Home Assistantのログへのアクセス方法を知っている
  • HACSにはアドオンがないことを知っている
  • HACSの中身は全てカスタムであり、Home Assistantによってテストされていないことを知っている
  • Home Assistantで問題が発生した場合、すべてのcustom_componentsを無効化しなければならないということを知っている

その後、こちらのリンクにアクセスし、GitHubでアクティベーションを行う必要があります。
アクセスしたら、Home Assistantに表示されている8桁のコードを入力します。

コードを入力したら、「Authorize hacs」をクリックして、HACSを認証します。

認証が完了したら、Home Assistantで「完了」をクリックします。「エリア」には何も入れなくても問題ありません。
これで、HACSがインストールされました。

サイドバーにHACSが追加されているので、そこをクリックすることでHACSにアクセスすることができます。サイドバーに表示されない場合は、もう一度ブラウザのキャッシュをクリアしてみてください。



広告


スマートデバイスを追加する

スマートデバイスの追加は、「統合」設定から行います。
発見」とあるものは、自動で検出されたものです。「設定」をクリックすることで、スマートデバイスを追加することができます。
また、自動で検出されたもの以外にも、右下の「統合を追加」をクリックすることで、その他のスマートデバイスを登録することができます。

HomeKit Controllerは、Home Assistantで検出されたHomeKitデバイスのことで、Home Assistant上でHomeKitデバイスを制御することができます。
一方、ただのHomeKitはその逆で、Home Assistantに追加したスマートデバイスをHomeKitで制御できるようにするブリッジ機能で、以前紹介したHomebridgeと似た機能です。
どちらも同じことが行えますが、単純にHomeKitに対応させるだけであれば、Homebridgeの方が管理が楽で動作も軽く、(Home Assistantにしか対応していないデバイスを登録するなどといった)特別な理由がなければHomebridgeの方がおすすめです。
もちろん、どちらも同時に使うことができるので、必要に応じて設定してください。

ダッシュボードを設定する

デフォルトのダッシュボードは、追加したスマートデバイスが一覧で並んでいるだけの味気ないものとなっています。冒頭で紹介したような高度なカスタマイズを行うには、カスタムダッシュボードを作成する必要があります。
カスタムダッシュボードを作成する1つ目の方法は、「ダッシュボード」設定に移動し、「ダッシュボードを追加」をクリックします。

タイトル」にはダッシュボードの名前を、「アイコン」には、サイドバーに表示されるダッシュボードのアイコンを、「URL」には、そのダッシュボードを識別するための英数字を入力してください(「-」を含める必要があります)。

例:
  • タイトル: ホーム
  • アイコン: mdi:home
  • URL: home-main
この場合、「ホーム」にアクセスするためには、「http://homeassistant.local:8123/home-main/」にアクセスする必要があります。

-----

カスタムダッシュボードを作成する2つ目の方法は、デフォルトのダッシュボードの右上にある「...」をクリックして、「ダッシュボードを編集」をクリックします。

新しいダッシュボードから開始する」をオンにして、「制御する」をクリックすることで、何もない空っぽのダッシュボードからカスタマイズを開始することができます。

HACSから「layout-card」などをインストールすることで、詳細にカスタマイズできるようになります。

追加したテーマを利用できるようにする

HACSからインストールしたテーマは、そのままでは利用することができません。テーマを利用するには、コンフィグに以下のコードを記述する必要があります。

frontend:
  themes: !include_dir_merge_named themes

コードを記述するためには、先ほどインストールしたFile editorを開き、左上のフォルダアイコンをクリックしたら、「configuration.yaml」をクリックします。すると、右側にコードを入力できる場所が現れるので、「default_config:」の下に上記コードを記述してください。
YAML形式のため、スペースの数に注意してください(他のコードとスペースの数を合わせる)。

記述が完了したら、Home Assistantを再起動してください。これで、インストールしたテーマが利用可能になるはずです。



広告


おすすめの統合

私が使用しているおすすめの統合は以下の通りです。

Android TV

名前の通り、Android TVを制御できるようにするものです。

Apple TV

これは、Apple TVやAirPlay 2スピーカーなどを制御できるようにするものです。
音量や再生・一時停止なども制御できます。

Chroma

HACSが必要です。
これは、Razer Chromaデバイスのライティングを制御できるようにするものです。
Chromaデバイスが接続されたPCのポート54236(TCP)を解放しておく必要があります。

FlashForge Adventurer 3

HACSが必要です。
これは、FlashForge製の3Dプリンター「Adventurer 3 / 3X(ファイル編集により4でも動作)」の現在の状態や、カメラの映像などを取得できるようにするものです。
注意としては、印刷中にスライサー(FlashPrint)との接続を切っておかないと、情報が反映されません。

Google Calenders

これは、Googleカレンダーを表示できるようにするものです。
Googleカレンダーに加えた変更がリアルタイムで同期されます。

IKEA TRÅDFRI

IKEAの電球やブラインドなどを制御できるようにするものです。
電球やブラインドのリモコンの電池残量なども表示されます。

Internet Printing Protocol (IPP)

ワイヤレスで接続できるプリンターと接続することで、現在のプリンターの状態やインク残量等を確認することができます。

Meross Integration

HACSが必要です。
これは、Merossのスマートプラグなどをクラウド経由で制御できるようにするものです。

Meross LAN

HACSが必要です。
これは、Merossのスマートプラグなどをローカルで制御できるようにするものです。
Merossクラウドがダウンした時や、APIの回数制限に引っかかった時などでも制御できます。



広告

MusicCast

YAMAHAのネットワークアンプを制御できるようにするものです。
音量変更だけでなく、サウンドモードを変更したり、エクストラベースやピュアダイレクトなどの設定を変更することもできます。

OpenWeatherMap

もともと有効になっている天気情報などの取得サービス「Meteorologisk institutt (Met.no)」では1週間ごとの天気しか表示できませんが、こちらは、1時間おきの天気を表示することができます。

Philips Hue

名前の通り、Philips Hue製品を制御できるようにするものです。

Sony Bravia TV

BRAVIAを制御できるようにするものです。
テレビ番組のチャンネル等を自動で取得してくれるので、手動で設定する必要がないのが楽です。

SwitchBot

SwitchBot製品をBluetoothで制御するためのものです。この統合を使用するには、「Bluetooth」統合*を追加しておく必要があります。
残念ながら、現時点ではクラウドAPIを使った制御はできません。そのため、対応機器もかなり限られます。
詳細は、こちらの記事で解説しているので、ご覧ください。

* Macでは内臓のBluetoothアダプタを仮想マシンに割り当てることができないため、USB接続のBluetoothアダプタを割り当てる必要があります。私はこちらのアダプタを使用しました。
Bluetoothアダプタを割り当てる前に、以下のコマンドをターミナルに入力して、Macが使用するBluetoothアダプタを内蔵のみに変更する必要があります。

sudo nvram bluetoothHostControllerSwitchBehavior=never

元に戻す場合:
sudo nvram bluetoothHostControllerSwitchBehavior=always

また、仮想マシンの設定で、仮想マシンの起動時に自動でBluetoothアダプタが割り当てられるように、こちらの記事を参考にして「USBデバイスフィルター」の設定をしておくことをおすすめします。

Xiaomi Miio

Xiaomiのスマートデバイスを制御できるようにするものです。
私は加湿器の制御に使用していますが、目標湿度やモードの変更、温湿度情報の確認などができます。



広告


おすすめのテーマ・カスタムカード

ここからは、HACSの「Frontend」からインストールできるテーマやカスタムカードなどを紹介します。

Atomic Calendar Revive

カレンダーに登録されているイベントを一覧で表示することができるカードを追加します。

Auto Reload

壁掛けタブレットなどに長い時間ダッシュボードを表示していると、ダッシュボードに変更を加えた際などに自動で再読み込みされません。そのため、このカスタムカードを使って指定した分数が経過後、定期的に再読み込みされるようになります。

Blind Card

ブラインドの状態を確認したり、ブラインドの操作をしたりなどが行えるカードを追加します。
ブラインドの下側をマウスでドラッグすることで、好きな位置にブラインドを設定することができます。また、ブラインドの動きがリアルタイムで反映されるので、見ていても楽しいです。

Hass Hue Icons

Philips Hue製品のアイコンを追加します。

Hourly Weather Card

1時間ごとの天気予報を表示することができるカードを追加します。1時間ごとの天気予報が取得できるサービスが必要です。

Kiosk Mode

サイドバーやトップバー等を非表示にすることができるURLを追加します。壁掛けタブレットなどに最適です。

layout-card

ダッシュボードのレイアウトを高度にカスタマイズすることができるようになります。

Mini Media Player

コンパクトでミニマムなデザインのメディアプレイヤーカードを追加します。

Mushroom

様々な種類のミニマムなデザインのカードを追加します。記事執筆時点での追加される種類は以下の通りです。
  • アラーム
  • カバー
  • エンティティ
  • ファン
  • ライト
  • ユーザー(パーソン)
  • テンプレート
  • チップ
  • タイトル
  • アップデート
  • 掃除機
  • メディア
  • ロック
  • 加湿器
  • エアコン

Mushroom Themes

Mushroomカードのデザインに合うテーマです。少し角が取れて優しい印象のテーマです。

Simple Clock Card

本当にシンプルなただの時計です。

WallPanel

Home Assistantのダッシュボードで、しばらく待っているとスクリーンセーバーになる機能です。スクリーンセーバーに好きなカードを配置することもできます。
このWallPanelを使えば、Kiosk Modeのようにサイドバーやトップバーを非表示にすることができますが、この機能は使わずに、Kiosk Modeで制御したほうが楽なので、こちらは無効化しています。
背景の画像はこちらです。

Weather Radar Card

過去1時間の雨雲レーダーを表示するカードを追加します。5分おきの雨雲の位置が動いていく様子が見れるので、見ているだけでも楽しいです。



広告


さいごに

Home Assistantを使えば、メーカーからのサポートが終了してしまい、制御ができなくなってしまったスマートデバイスを復活させることができたり、完全ローカル環境で制御したりなどができます。
また、スマートメーター等と連携させて毎月の電気使用量を見たり、ソーラーパネルからの発電量を確認したりなども行うことができるので、これを機に最強のスマートホームハブを構築して、理想のスマートホームへの大きな第一歩を踏み出してみてはいかがでしょうか?

最後まで読んでくださり、ありがとうございました!それではまた!


広告

コメント

広告