Raspberry PiにHome Assistantをインストール

Raspberry PiにHome Assistantをインストール

我が家ではHome Assistantを使ってスマートホームを構築しています。Home Assistantはインテグレーションやプラグインが充実しているので、たいていのメーカーのデバイスを統合して管理できるのが便利です。

最近Raspberry Pi 4の環境を更新したのを機に、新たにHome Assistantをインストールし直したので、手順をご紹介します。

Home Assistant
Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.

インストール方法の選択

Home Assistantのインストール方法は以下の4つがあります。

  • Home Assistant Operating System (HAOS)
    • Home Assistant専用OS
    • 一番簡単にフル機能が使える
  • Home Assistant Container
    • Dockerを使ってHome Assistant Coreをインストール
    • 簡単にインストールできるが、Supervisorが利用できない
  • Home Assistant Supervised
    • 既存のOSにHome Assistant + Supervisorをインストールすることで、HAOSと同等の機能を利用できる
    • 必要なパッケージ等を自分で準備する必要がある
  • Home Assistant Core
    • Home Assistantのコア機能のみをインストール
Installation
Install Home Assistant

Supervisorはアドオン・システム全体の管理・自動更新・バックアップなど、Home Assistantの機能を拡張してくれるものです。これを利用するにはHAOSかHome Assistant Supervisedを選択する必要があります。

筆者はRaspberry PiをHome Assistant専用にせず他の用途でも利用するため、Home Assistant Supervisedを選択しました。

Home Assistant Supervisedのインストール

下記リンク先に記載の方法に沿って、Home Assistant Supervisedをインストールしていきます。

GitHub - home-assistant/supervised-installer: Installer for a generic Linux system
Installer for a generic Linux system. Contribute to home-assistant/supervised-installer development by creating an account on GitHub.

1. 依存パッケージのインストール

$ sudo apt install apparmor cifs-utils curl dbus jq libglib2.0-bin lsb-release network-manager nfs-common systemd-journal-remote systemd-resolved udisks2 wget -y

2. Dockerのインストール

$ curl -fsSL get.docker.com | sh

3. OS Agentのインストール

SupervisorがホストOSと連携するためのエージェントです。まずはOSのアーキテクチャを確認し、そのシステムに合ったパッケージをダウンロードしてインストールする必要があります。

# アーキテクチャを確認
$ uname -m
aarch64

筆者の環境はaarch64 なので、GitHubから os-agent_1.6.0_linux_aarch64.debをダウンロードします(バージョンは執筆当時の最新のもの)。

$ wget https://github.com/home-assistant/os-agent/releases/download/1.6.0/os-agent_1.6.0_linux_aarch64.deb
$ sudo dpkg -I os-agent_1.6.0_linux_aarch64.deb

4. Home Assistant Supervisedのインストール

$ wget -O homeassistant-supervised.deb https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
$ sudo apt install ./homeassistant-supervised.deb

ここまで進めると以下のような画面になります。筆者は raspberrypi4-64 を選択しました。

最終的に以下のような内容が出力されれば成功です。Home AssistantにアクセスするためのURLも記載されています。

[info] Install supervisor startup scripts
[info] Install AppArmor scripts
[info] Start Home Assistant Supervised
[info] Installing the 'ha' cli
[info] Switching to cgroup v1
[info] Within a few minutes you will be able to reach Home Assistant at:
[info] http://homeassistant.local:8123 or using the IP address of your
[info] machine: http://192.168.1.99:8123
[warn] A reboot is required to apply changes to grub.

リブートが必要とのことなので再起動します。

$ sudo reboot

Dockerのコンテナ一覧を見てみます。Home AssistantやSupervisorが立ち上がっていることが確認できます。

$ docker ps -a
CONTAINER ID   IMAGE                                                              COMMAND                  CREATED          STATUS          PORTS                                   NAMES
6804115ac026   ghcr.io/home-assistant/aarch64-hassio-multicast:2023.06.2          "/init"                  41 seconds ago   Up 39 seconds                                           hassio_multicast
d4e14969e6fb   ghcr.io/home-assistant/aarch64-hassio-audio:2023.10.0              "/init"                  44 seconds ago   Up 41 seconds                                           hassio_audio
35da857b55c9   ghcr.io/home-assistant/aarch64-hassio-dns:2023.06.2                "/init"                  46 seconds ago   Up 44 seconds                                           hassio_dns
0ff8a22bb194   ghcr.io/home-assistant/aarch64-hassio-cli:2023.11.0                "/init"                  49 seconds ago   Up 46 seconds                                           hassio_cli
586f7448cf4f   ghcr.io/home-assistant/raspberrypi4-64-homeassistant:landingpage   "/usr/bin/landingpage"   3 minutes ago    Up 38 seconds                                           homeassistant
9aece7307818   ghcr.io/home-assistant/aarch64-hassio-observer:2023.06.0           "/usr/bin/observer"      3 minutes ago    Up 54 seconds   0.0.0.0:4357->80/tcp, :::4357->80/tcp   hassio_observer
03f2423bbf69   ghcr.io/home-assistant/aarch64-hassio-supervisor:latest            "/init"                  6 minutes ago    Up 52 seconds                                           hassio_supervisor

ダッシュボードにアクセス

インストール完了時に記載されていたURLにアクセスします。セットアップが完了するまで少し待ちます。

少し待つと画面が変わりました。私のスマートホームを作成します。

必要な情報を入力。

自宅の場所を設定します。天気予報などに反映されます。

任意でデータを共有します。

同一ネットワークにあるデバイスやBLEデバイスが一部認識されたようです。

これでセットアップは完了です!次回以降の記事で、自宅にあるデバイスをHome Assistantに統合する作業を進めていきます。