結論から
はい、使えます。Amazfit ウォッチ向けの Home Assistant アプリ AmazHA は、Zepp OS を搭載した25機種で動作し、照明、空調、カバー、ロック、メディア、シーンなどを手首から操作できます。Zepp OS 向けの公式 Home Assistant アプリはありません。ウォッチは Bluetooth でスマートフォンと通信し、スマートフォンが Home Assistant と通信します。自宅では、ローカルアドレスさえあれば動きます。
| ひと目でわかる概要 | |
|---|---|
| ウォッチ | Zepp OS を搭載した Amazfit の25機種(角型と丸型) |
| デバイスの種類 | 17種類、それぞれに専用の操作画面 |
| 接続 | ウォッチ ↔ スマートフォンは Bluetooth、スマートフォン ↔ Home Assistant は HTTP |
| アドレス | 自宅ではローカルURL、外出先では任意でリモートURL |
| トークン | 管理者の長期アクセストークン(スマートフォンに保存) |
| 更新 | アプリを開いている間、8秒ごと |
| ウォッチのデバイス数 | 最大100件。数十件なら快適に動作 |
| 文字盤のウィジェット | 最大4台のデバイス |
| ウォッチのデータを Home Assistant へ | 任意の18センサー(Mobile App 連携を使用) |
| 料金体系 | 無料のデモ、その後は一度だけの購入でロック解除。サブスクリプションなし |
Zepp OS ウォッチが Home Assistant と通信する仕組み
ウォッチ自体が Home Assistant と通信することはなく、通信するのはスマートフォンです。Zepp OS のウォッチアプリは Web リクエストを送れないため、AmazHA は2つの部分に分かれています。一方はウォッチ上で動いて画面を描き、もう一方はスマートフォンの Zepp アプリの中で動きます。Home Assistant サーバーとやり取りするのは、このスマートフォン側だけです。
ウォッチ ↔ スマートフォンは Bluetooth、スマートフォン ↔ Home Assistant は HTTP
ウォッチで部屋を開くと、ウォッチは Bluetooth でスマートフォンに問い合わせます。スマートフォンはアドレスとトークンを使って Home Assistant の REST API を呼び出し、応答をウォッチに必要な分だけに絞り込んで送り返します。照明をタップしたときは逆の流れです。ウォッチがスマートフォンに伝え、スマートフォンが Home Assistant のサービスを呼び出します。
この設計から、次の2つのことが言えます。
- ウォッチに届くのは、自分で選んだものだけです。 スマートフォンが読み込むのは設定でオンにしたデバイスだけなので、Bluetooth の通信量は小さく抑えられます。
- ウォッチの画面は、データの出どころに左右されません。 無料のデモでも実際の家でも同じ画面を使い、変わるのはデータの取得元だけです。
ウォッチに届かないもの
Home Assistant のアドレスと長期アクセストークンは、スマートフォンに残ります。ウォッチが受け取るのは、デバイスの名前、状態、表示する値だけです。トークンは Home Assistant サーバーにしか送信されず、保存したあとのスマートフォンの設定画面では、トークンそのものではなく点が表示されます。AmazHA には、アカウントも、利用状況の分析も、あなたや家についての情報を保存する開発者のサーバーもありません。
スマートフォンが近くに必要な理由と、ウォッチに Wi-Fi が不要な理由
ウォッチはスマートフォンを経由して Home Assistant にアクセスするので、スマートフォンが Bluetooth の届く範囲にあり、Bluetooth がオンで、Zepp アプリがバックグラウンドで動いている必要があります。ウォッチ自体には Wi-Fi もモバイルデータも不要で、スマートフォンとの Bluetooth 接続だけが唯一の経路です。
一方、スマートフォンはサーバーにアクセスできる必要があります。自宅ならローカルネットワークで足ります。外出先ではリモートアドレスが必要ですが、自宅の外でウォッチを使わないなら、なくてもかまいません。
自宅ではローカル、外出先ではリモート
アドレスは2つ入力できます。ローカルURL (LAN)(例:http://192.168.1.50:8123)と、外出時用の リモートURL です。どちらの欄も空欄のままでかまいません。両方を設定すると、AmazHA はローカルを優先し、ローカルが応答しないときは自動でリモートに切り替えます。トークンは1つで両方に使えます。Home Assistant Cloud、VPN、独自ドメインの比較は、リモートアクセスの記事で紹介しています。
手首から操作できるもの
AmazHA は Home Assistant の17種類のデバイスに対応し、それぞれに専用の操作画面があります。ホームには Home Assistant での名前のままエリアが並び、部屋を開くとデバイスが種類別に表示され、タイルをタップすると詳細な操作画面が開きます。照明、スイッチ、ファンはタイルにもスイッチがあり、シーン、スクリプト、オートメーション、ボタンはタイルから実行できます。
| デバイスの種類 | Home Assistant のドメイン | ウォッチの画面でできること |
|---|---|---|
| 照明 | light |
明るさのスライダー。リューズで4%ずつ変わります。調光できない照明は、シンプルなオン/オフのダイヤルになります |
| スイッチ | switch |
大きなオン/オフの操作部が1つ |
| ファン | fan |
速度のスライダーと電源ボタン。速度設定のないファンはオン/オフの操作部だけになります |
| 空調 | climate |
ダイヤルで目標温度を設定。リューズ1段階で0.5度。オフ、暖房、冷房、自動のモード |
| カバー | cover |
開く、停止、閉じる。位置に対応したカバーでは、位置のスライダーとリューズも使えます |
| ロック | lock |
1回のタップで施錠。解錠は確認のため2回目のタップが必要です |
| 警報パネル | alarm_control_panel |
パネルが対応するモード(在宅、外出)で警戒を開始。解除はキーパッドでコードを入力します |
| メディア | media_player |
再生、一時停止、前へ、次へ、音量スライダー(リューズで音量を調整)、電源。プレーヤーが対応している場合に表示されます |
| ロボット掃除機 | vacuum |
開始、一時停止、停止、ドックへの帰還 |
| シーン | scene |
1回のタップで実行 |
| スクリプト | script |
1回のタップで実行 |
| オートメーション | automation |
1回のタップで実行 |
| ボタン | button、input_button |
1回のタップで押す |
| セレクター | select、input_select |
選択肢の一覧。タップして選びます |
| センサー | sensor |
現在の値を大きな文字で表示。クラスのないセンサーはテキストで表示します(郵便受けの状態、ごみの収集日など) |
| カメラ | camera |
スマートフォンが取得した静止画。更新 と ライブ 付き |
| トラッカー | device_tracker、person |
読み取り専用。在宅、外出、またはゾーンを表示し、Home Assistant にあれば最終更新とバッテリーも表示します |
センサーは、ウォッチで意味のあるクラスに絞り込まれます。温度、湿度、電力、エネルギー、バッテリー、空気質、照度、気圧などです。信号強度や電圧のような診断用のセンサーや、タイムスタンプは意図的に除外しています。
操作は楽観的に反映されます。タップした瞬間にタイルが切り替わり、Home Assistant への呼び出しはバックグラウンドで行われ、Home Assistant の状態と違っていれば次の更新で画面が修正されます。
対応するウォッチ
AmazHA は Zepp OS を搭載した Amazfit の25機種で動作し、角型と丸型の画面それぞれにレイアウトを用意しています。丸型のウォッチでは、タイトルが中央に配置され、リストは画面全体を使います。
| 形状 | 機種 |
|---|---|
| 角型 | Active、Active 2、Bip 6、Bip Max、Cheetah Square、GTS 4 |
| 丸型 | Active 2、Active 2 Golf、Active 3 Premium、Active Max、Balance、Balance 2、Balance 2 XT、Balance 3、Balance 3 Ti、Balance Ultra、Cheetah 2 Pro、Cheetah 2 Ultra、Cheetah Pro、Cheetah Round、Falcon、GTR 4、T-Rex 3、T-Rex 3 Pro、T-Rex Ultra、T-Rex Ultra 2 |
3機種は意図的に対象外にしています。Active Edge と Bip 5 はレイアウトに対して画面が小さすぎ、T-Rex 2 はメモリが足りません。API レベル 3.0 未満の古い Zepp OS 機種も対象外です。機種ごとの対応可否は、Home Assistant に対応する Amazfit ウォッチをご覧ください。
いちばん手早い確認方法は、ストアそのものです。Zepp アプリで App Store を開き、AmazHA を検索します。ウォッチがペアリング済みで対応機種なら、インストールしてデモを試せます。
始める前に必要なもの
必要なのは4つです。スマートフォンからアクセスできる Home Assistant サーバー、管理者の長期アクセストークン、Zepp アプリ、そして Zepp アプリとペアリングしたウォッチです。
| 必要なもの | 理由 |
|---|---|
| スマートフォンからアクセスできる Home Assistant | リクエストはすべてスマートフォンが送ります。自宅ではローカルアドレスで十分です |
| 管理者の長期アクセストークン | AmazHA はテンプレート API でエリアを読み取り、Home Assistant はこの API を管理者専用にしています |
| Android または iPhone の Zepp アプリ | AmazHA の設定とスマートフォン側の処理は、このアプリの中にあります |
| Bluetooth でペアリングした対応ウォッチ | ウォッチは、Zepp アプリと同じ方法でスマートフォンにつながります |
デバイスを操作するために、Home Assistant に何かをインストールする必要はありません。AmazHA は、どの Home Assistant サーバーにもある REST API を使います。トークンは Home Assistant のプロファイルの セキュリティ タブで作成します。手順と、一般ユーザーのトークンでは足りない理由は、長期アクセストークンの記事で説明しています。
6つのステップで設定
設定はすべて数分で終わり、最初の2ステップは無料です。各ステップには短い動画チュートリアルがあります。
1. AmazHA をインストール
スマートフォンの Zepp アプリで App Store を開き、検索アイコンをタップして AmazHA と入力します。AmazHA — Home Assistant Companion App を開いて インストール をタップすると、そのままウォッチに送られます。続いてウォッチでアプリの一覧を開き、AmazHA をタップします。(AmazHA をインストール)
2. デモを試す
AmazHA は、部屋とデバイスがそろったデモホームで起動します。どの画面もサンプルデータで動き、期間の制限もありません。部屋を開いたり、スイッチを切り替えたり、照明の画面でリューズを回したりしてみてください。お金を払う前に、自分のウォッチでの使い心地を正直に確かめられる方法です。(ウォッチでの基本操作)
3. 一度だけロックを解除
ウォッチで、ホーム上部にあるオレンジの デモモード · ライセンスなし のバナーをタップします。ウォッチに5桁のコードが表示されます。スマートフォンのブラウザで kzl.io/code を開き、コードを入力して Continue をタップし、支払いを完了します。ウォッチに Purchase Successful! と表示され、自動的にアプリに戻ります。詳しくは後述します。(フル版のロックを解除)
4. Home Assistant に接続
Zepp アプリで プロフィール › お使いのウォッチ › アプリ › AmazHA › 設定 に進み、Home Assistant をタップします。ローカルURL (LAN) を入力し、外出先でもウォッチを使いたい場合は リモートURL も入力します。トークンを 長期アクセストークン に貼り付けて、接続 をタップします。アドレスが1つなら結果は 接続済み と表示され、2つなら LAN とリモートがそれぞれ表示されます。(Home Assistant に接続、ステップ4以降)
5. デバイスを選ぶ
AmazHA の設定で デバイス をタップします。部屋が並んでいて、デバイスは最初はすべて非表示です。部屋を開いて、使うものをオンにします。部屋のないデバイスが入る その他 のような長いリストには 検索 欄があり、すべて表示 と すべて非表示 は一致したデバイスだけに適用されます。人物とスマートフォンには、専用のエリア トラッカー があります。(デバイスを選ぶ)
6. ウォッチで AmazHA を開く
ウォッチに部屋とデバイスが表示されます。これ以降、ウォッチは前回のデータですぐに起動し、アプリを開いている間は Home Assistant から更新します。
自分好みにする
ウォッチの見た目を変える設定はすべてスマートフォンの設定画面で行い、ウォッチはそこから設定を受け取ります。
お気に入りと、お気に入りのホーム画面
デバイス › お気に入り で ウォッチに表示 をオンにし、どの部屋のデバイスでも選びます。部屋のほうで有効にしていないデバイスでもかまいません。お気に入りを並べ替え で順番を決めます。すると、ウォッチのホームの先頭にお気に入りが表示されます。お気に入りをホーム画面にする をオンにすると、ウォッチのホームはそのリストだけになり、読み込まれるのもそのデバイスだけになります。オフにするとエリアが元どおり表示されます。(お気に入りとエネルギー、ステップ4)
エネルギーパネル
デバイス › エネルギー で エネルギーパネルを表示 をオンにし、系統電力(符号付き)、ソーラー、バッテリー、今日の消費とコストなど、お持ちの役割ごとにセンサーを選びます。一覧には、その役割に合うセンサーだけが表示されます。ウォッチのホームに エネルギー エリアが加わり、現在の系統電力(買電中か売電中か)、続いてソーラー、バッテリー、今日の合計が表示されます。(お気に入りとエネルギー)
ホームチップ、部屋の並び順、部屋のアイコン
外観 › ホームチップ では、ホーム上部の3つのチップそれぞれに、照明、スイッチ、カバー、空調、メディア、ロック、カメラ、トラッカーの数を表示させるか、警報パネルの状態やエネルギーを表示させるか、何も表示しないかを選べます。ホームレイアウト でエリアの順番を決め、部屋のアイコンをタップすると別のアイコンを選べます。デバイス の中で、温度センサーや湿度センサーのある部屋では、その部屋のチップにどのセンサーを使うかを選べるので、デバイス内部の測定値が部屋のセンサーより優先されることはありません。(自分好みにカスタマイズ)
デバイス名の変更
Home Assistant の長い名前は、ウォッチのタイルに収まらないことがよくあります。デバイス では、ウォッチに表示されるすべてのデバイスの名前の後ろに鉛筆が付いています。名前をタップし、時計での表示名 に新しい名前を入力します(最大32文字)。ウォッチはすべての画面とウィジェットでこの名前を使い、Home Assistant 側の名前はそのまま残ります。元の名前に戻す で元に戻せます。付けた名前はスマートフォンに保存され、キャッシュをリセット しても消えません。(名前の変更とウィジェット)
文字サイズ、カードサイズ、振動、画面の消灯時間
環境設定 では次の設定ができます。
- 文字サイズ:ウォッチのすべての文字を110%、120%、130%に拡大します。次にウォッチで AmazHA を開いたときから反映されます。
- カードサイズ:ホームのエリアカードとデバイスのタイルを115%、130%、145%に拡大します。
- 操作時に振動:デバイスをタップしたとき、アクションを実行したとき、操作画面でリューズを回したときに、短く振動します。初期設定ではオフです。
- 画面の消灯時間:AmazHA を開いている間に画面が点灯し続ける時間を、30秒、1分、5分、または初期設定の オフにしない から選びます。「オフにしない」では手首を下ろしても画面が消えません。便利ですが、バッテリーの消費は増えます。
ウォッチの言語は本体のシステム言語に従います。設定の 言語 で変わるのは、設定ページの言語だけです。(環境設定)
文字盤のウィジェット
ウィジェットを使うと、最大4台のデバイスをウォッチのショートカットカードに置いて、アプリを開かずにワンタップで操作できます。フル版の機能で、無料版ではかわりにロック解除の案内が表示されます。
設定するには、スマートフォンの設定で デバイス › ウォッチウィジェット を開き、デバイスを最大4台まで、並べたい順(左から右、上から下)にタップします。続いてウォッチの文字盤から右にスワイプしてショートカットカードを開き、編集 をタップして AmazHA を追加します。アプリを一度開くまで、ウィジェットには AmazHA を開く と表示されます。開いたあとは、選んだデバイスが並びます。(名前の変更とウィジェット、ステップ4)
ウィジェットをタップしたときの動作は、デバイスによって異なります。
| ウィジェット上のデバイス | タップすると |
|---|---|
| 照明、スイッチ、ファン | オン・オフが切り替わり、ウィジェットに新しい状態が表示されます |
| シーン、スクリプト、ボタン、オートメーション | 実行されます |
| それ以外(ロック、カバー、センサー、カメラ) | AmazHA の専用画面が開きます。ロックはその画面で引き続き確認を求めます |
コマンドが通らなかったときは、画面にその理由が 再試行 と AmazHA を開く とともに表示されます。再試行でアクションが2回実行されることはありません。ウィジェットのヘッダーには、状態がどれくらい前のものかが常に表示されます(例:AmazHA · 1分前)。ウォッチがオフラインのとき、または状態が12時間前のものになると、ウィジェットはグレーになり、タップするとアプリが開いて最新の状態に更新されます。スマートフォンでの変更は、次に AmazHA を開いたときにウィジェットに反映されます。
実用上の注意がひとつあります。新しいウォッチでは、ウィジェットを文字盤に置いたまま AmazHA の更新をインストールすると、ウォッチを再起動するまで古いバージョンの一部が動き続けます。その間、ホームには ウォッチを再起動 と表示されます。
ウォッチのデータを Home Assistant に
AmazHA は逆方向にも使えます。ウォッチの18種類の測定値を、Home Assistant にセンサーエンティティとして送信できます。データは Home Assistant 自身の Mobile App 連携を通じて、センサーを持つ1つのデバイスとして届き、sensor.<prefix>_<key> という名前になります。
測定値は、アクティビティ(歩数、距離、カロリー、スタンド時間、高強度運動時間、PAI)、健康(心拍数、安静時心拍数、SpO2、ストレス、体温、睡眠スコア、睡眠時間、睡眠状態)、環境(気圧、高度)、デバイス(ウォッチのバッテリー、装着状態)です。最初はすべてオフで、ウォッチセンサー › Home Assistantに送信 で必要なものだけをオンにします。
ウォッチは AmazHA を開くたびにデータを送信します。アプリを閉じている間も更新したい場合は、更新間隔(1〜6分)を設定し、ウォッチが求めてきたら バックグラウンド活動 を許可します。更新のたびに、スマートフォンが近くにある必要があります。Home Assistant では、設定 › デバイスとサービス › Mobile App でウォッチを確認できます。センサーの一覧とオートメーションの例は、ウォッチセンサーの記事にまとめています。(ウォッチセンサー)
知っておきたい制限
スマートフォンを経由するウォッチアプリには、設計上いくつかの制限があります。購入前に知っておくほうが安心です。
| 制限 | 実際にはどういうことか |
|---|---|
| スマートフォンが近くに必要 | スマートフォンとの Bluetooth 接続がなければ操作できません。ウォッチには オフライン · スマホから応答がありません と表示されます |
| 状態の更新はアプリを開いている間だけ | 8秒ごとに更新されるので、ほかの場所で行った変更も数秒で表示されます。アプリを閉じている間は何も更新されません |
| Home Assistant からのプッシュはない | 状態はウォッチが問い合わせます。Home Assistant から AmazHA を通じてウォッチに通知や更新を送ることはできません |
| デバイスは最大100件 | 数十件なら快適に動作します。デバイスの画面では、エリアごとに40件以下を推奨しています。一部のウォッチでは、70件以上のエリアでメモリが不足し、画面が黒いままになることがあります |
| 外出先ではリモートアドレスが必要 | 外で使いたい場合だけです。自宅ではローカルアドレスで足ります |
| センサーのバックグラウンド更新 | バックグラウンド活動の許可と、スマートフォンが範囲内にあることが必要です。そうでなければ、アプリを開いたときにウォッチがデータを送信します |
| Zepp OS のみ | Wear OS 版を開発中ですが、時期は未定です |
最初の2行で、ほとんどの「あれ?」は説明できます。スマートフォンを別の部屋に置いたまま Bluetooth の範囲外に出ると、ウォッチは最後のデータを表示し続けますが、何も変更できません。また、AmazHA を閉じている間に照明の状態が変わった場合、次にアプリを開いたときに新しい状態が表示されます。
うまくいかないとき
うまく動かないときは、ウォッチが原因を表示し、それぞれのメッセージにはよくある原因が1つあります。この表は、メッセージごとにステップがある困ったときはのチュートリアルに沿っています。
| ウォッチの表示 | 原因 | 対処法 |
|---|---|---|
| デバイス未選択 | デバイスは最初はすべて非表示です | AmazHA の設定の デバイス で、表示したいものをオンにします(ステップ1) |
| オフライン · スマホから応答がありません | ウォッチがスマートフォンと通信できません | スマートフォンを近くに置き、Bluetooth をオンにして、Zepp アプリを起動したままにします(ステップ2) |
| オフライン · Home Assistant に接続できません | スマートフォンが Home Assistant に接続できません | スマートフォンのブラウザでアドレスを開いてみます。スマートフォンのある場所から開ける必要があり、外出先では有効な証明書のある HTTPS が必要です(ステップ3) |
| アドレスが違います | アドレスは応答しますが、Home Assistant の API ではありません | サーバーのアドレスだけを入力し、後ろには何も付けません(/lovelace は不要)(ステップ4) |
| 管理者トークンが必要 | トークンが管理者権限のないユーザーのものです | 管理者として新しい長期アクセストークンを作成し、貼り付けます(ステップ5) |
| トークンを確認 | トークンに、本来トークンには含まれない文字が入っています。多くの場合、途中で省略されたコピー(…)が原因です | トークン全体をもう一度コピーして貼り付けます(ステップ6) |
| ウォッチが遅い、または再起動する | デバイスが多すぎます | 選択は少なめにします。数十件なら快適に動作し、上限は100件です(ステップ7) |
| デモモード · ライセンスなし | アプリのロックが解除されていません | バナーをタップしてロックを解除します(フル版のロックを解除) |
| デモモード · スマホアプリでHAサーバーを設定 | ロックは解除済みですが、サーバーがまだ設定されていません | 設定の Home Assistant でアドレスとトークンを入力します(Home Assistant に接続) |
| ウォッチを再起動 | ウィジェットを文字盤に置いたまま更新をインストールしました | ウォッチを再起動します |
オフライン のバナーの下には 8 秒ごとに再試行 と表示されるので、原因が解消すれば何もする必要はありません。その下には、何が失敗したのかをサポートが正確に把握できる小さなコードの行も表示されます。お問い合わせの際は、ウォッチの写真がいちばん役に立ちます。
一覧に当てはまるものがない場合は、環境設定 で キャッシュをリセット をタップし、続けて もう一度タップして確認 をタップします。ウォッチとスマートフォンのキャッシュが消去され、接続、デバイス、ライセンスはそのまま残ります。そのあと、ウォッチで AmazHA を開き直してください(ステップ8)。それでも解決しない場合は、設定の サポート フォームから、メッセージとともにレポートを送れます。レポートには、Home Assistant のアドレス、トークン、デバイス名は一切含まれません。
実例:テストは緑なのに、ウォッチは空っぽ
初日によくある報告です。接続 は緑になるのに、ウォッチには何も表示されません。原因はほぼ2つに限られます。デバイスがまだ1つもオンになっておらず、ウォッチに デバイス未選択 と表示されている場合か、トークンが管理者ではないユーザーのもので、ウォッチに 管理者トークンが必要 と表示されている場合です。後者に驚く人が多いのは、接続テストでは状態を問題なく読み取れるからです。Home Assistant が一般ユーザーに拒否するのは、テンプレート API を使ったエリアの読み取りです。管理者としてログインした状態で新しいトークンを作成すれば解決します。
フル版のロックを解除
ロック解除は、ウォッチから KiezelPay を通じて行う一度だけの支払いです。アカウントも、サブスクリプションも、広告もありません。ロックを解除すると、AmazHA をご自身の Home Assistant にローカルとリモートで接続できるようになり、ウォッチセンサーとウィジェットも使えるようになります。それまではサンプルデータによるデモで、実際のサーバーには何も届きません。
- ウォッチで、オレンジの デモモード · ライセンスなし のバナーをタップします。ウォッチに5桁のコードが表示されます。
- スマートフォンのブラウザで kzl.io/code を開きます。
- コードを入力して Continue をタップします。
- カードまたは PayPal で一度だけ支払います。永久ライセンスです。
- ウォッチに Purchase Successful! と表示され、自動的にアプリに戻ります。
各画面はフル版のロックを解除のチュートリアルで紹介しており、各バージョンに含まれる機能はホームページの料金セクションで確認できます。