使用するアプリを選ぶことでAmazfit Band 5(自分専用の写真アルバム)が見守り目的に使えるか考える。Amazfit Band 5に限らず同じHuami製のXiaomi Mi (Smart) Band 5やそれ以前のバージョンのバンドでも基本同じことが当てはまるはず。AmazfitやMiブランドのスマートウォッチ(バンドではなく)にもかなり共通するはずだが,ハードウェアが貧弱なバンドのほうが制約が強い。
心拍数計アプリは使用できるが効果は限定的
そう設定すれば,Amazfit Band 5が取得する心拍数データは他のBLE心拍数計アプリからもアクセスできるように設定できる。心拍数計アプリでその心拍数データを何らかの手段で外部に送信できるものがあれば限定的に見守り目的に使えるが,後で述べるサードパーティ製アプリでは他のセンサーデータも扱えるのでそちらを利用する。
Gadgetbridgeは見守りにはほぼ役に立たない
オープンソースのサードパーティアプリのGadgetbridge for Androidは基本的にはXiaomiなどの自分の個人データが保存されるのを嫌う人たち向けに作られたアプリであり,見守り目的のために必須のデータを他に同期するといった機能はない。
Gadgetbridgeアプリで定期的にデータのエキスポートができるようだから,そこから必要データを抽出してどこかのサーバーにあげるようにしたらよいのだろう。”Mi-Band steps on node-RED Dashboard – servo-server” では実際にGadgetbridge for Androidに定期的にエキスポートさせたデータをNode-REDに移している。
そもそも,使用にauth keyを取得する必要があり面倒。Root化済み端末が使えるのなら手間ではない。非Root化端末でもPythonスクリプトでauth keyは得られるらしい。← 以下のNotifyの項でより簡単な方法を紹介する。
Notify for Mi Band/Amazfit/Zepp等のサードパーティアプリ
Notify for Mi Band/Amazfit/Zepp
Notify for Mi Band / Amazfit / Zeppはサードパーティアプリで,驚くばかりの追加機能を数多く用意している。自分がやりたいことを実現するには有償機能が必要(現時点で360円)。実は極めて似通ったアプリTools & Amazfitのことを先に知った。 これについては後で述べる。
Mi FitアプリないしZeppアプリと併用という形での運用も,これら公式アプリなしでの単独使用にも対応しているという少し不思議なアプリ。単独使用するためには,Gadgetbridge同様 auth keyの取得が必要だが,Free My Bandサイトにて様々な簡便な方法が提供されている。”How To Use Mi Band 5 Without The Mi Fit App | TechWiser” にFree My Hand由来の改変済みMi Fitアプリを使ってauth keyを取得する方法が出ている。
“Best Mi Band 5 Tips & Tricks – YouTube” は一般的なイントロビデオ。訛りがきつくて聴き取りづらいが…。
あまりに機能が豊富でいたし方ない面もあるが,アプリの設定メニューは実に複雑でどこに何があるかがなかなかわからない。また,アプリ名を単に “Notify” と表現していることも多いようなのだが,一般名詞として使っているのかアプリ名の固有名詞として使っているのかわからないことが多く,なおのこと混乱する。
アプリ内からヘルプとして表示されるページがWeb上でもアクセスできる。ファイル名が出てるだけなのでわかりづらいが。FAQを含むフォーラムが用意はされているが,検索機能がないのが致命的。また今ひとつ活気がない感じ。その意味ではサポートに不安が残る。
受動的見守り
さて,一人暮らしの老人の見守りに対するアプローチは一般的に以下の2段構えだ:
- 受動的手段: 各種センサーで被見守り者の様子をモニターする。
- 能動的手段: 被見守り者自身に何かがおかしいという自覚があったときにすぐさま,確実に外部に助けを求められるようにする。
Amazfit Band 5を着用した人を見守りするのに活用するとするなら,受動的手段の方は,バンドから得られる各種センサーデータを,こちらが思うような処理ができるように例えばMQTTブローカに送るなどができればいい。このアプリからのデータ取得は,ブロードキャスト・インテントを受け取ることでできる(以下参照)。
これはもちろんTaskerのような自動化アプリでもできるが,これだけではNotifyが特にTaskerのプラグインとして動作することを要求するわけではない(ただし後で述べるようにNotifyはTaskerのプラグインとしても動作するため,Taskerの類からアクションを起こすことができる)。だが,Notifyでは「Tasker拡張機能」としてくくりられており,これは有償のPro機能。右画面にあるように,Notifyアプリが心拍数データを受け取れるように設定する必要あり。
LlamaLabのAutomateアプリを使ってテストしてみたところ,心拍数データは受け取れている。AutomateはTaskerプラグインが使えるので,Taskerプラグインとしても動作するMQTT Clientアプリなどと組み合わせれば,MQTTブローカに値を送ることができる。
ただ,10分間隔で心拍数を取得するようになっているのに,実際その間隔でデータが取れてるかは確信がない。また,ちゃんとバンドを着用しているのに,”0″ と通知されることもある。通常の使用中にバンドを着用していない時間帯も発生するので(風呂中,水仕事中,充電中,など)そういったことも考慮に入れなければならないが,幸い豊富なイベントを受け取ることができるので,きちんとプログラムすれば様々なパターンに対応できよう。
とはいえいろいろやればやるほど電池使用量が増えるのは確実でそれは不安要素。
能動的見守り
「能動的見守り」と便宜上読んでいるのは,何か非常事態になったときに,ご本人が自力で簡便かつ確実に外部に助けを求められるような状態にしておくこと(ちなみに「能動的」は見守られる側の視点からの形容なのに,「見守り」という見守る側の視点の言葉と組み合わせるのは賢明ではなかった)。
Amazfit Band 5でこれを行う方法として考えられるのは,画面操作,ないしはジェスチャー操作でSOS発信がなされるようにすること。Notifyにはこれから述べるようにこれらを可能にする機能はあるのだが,今想定している目的には使い物にはならないと結論づけた。理由は以下。
Notifyを使って画面操作でSOS発信を行うには,「ボタン」操作を利用することになる。さらに詳しくは,①音楽プレーヤ画面のボタンを使用するか,②「Amazfitボタン」を使用するかのどちらか。①はまず音楽プレーヤ画面を表示させる必要があるが,これ自身に画面のスワイプ操作が必要な上,恐ろしく小さく表示されるボタンを正確に操作することが非常時に期待できるとはとても思えない。
Amazofit Band 5の場合は,「Amazfitボタン」なるものはなく,音楽プレーヤ画面に入るのと出るのとで「Amazfitボタン」の押し下げをシミュレートする,ということのよう。やはりスワイプ操作を何回もやることになる。ヘルプで表示される以下のビデオ “miband 4 button 1 notify – YouTube” の意味がしばらく理解できなかったが,わかってみるとそういうことのよう。
ジェスチャー操作といっても,少なくともAmazfit Band 5では結局「バンドを巻いた腕を持ち上げる」の1種類にしか対応していない。通常これは画面を点灯させるのに使われるのと,これにSOS発信をマップして,なんかの拍子にうかつにそれが起動されてしまうのは怖いのとで,それを2回以上続けてやった場合に起動するようにするのが常識的判断だろう。実際そう設定して試してみたところ,タイミングが微妙すぎてとても安定して思うように動作させられるように思えなかった。平時ですらそうなのだから非常時にはなおのこと。
なお,ジェスチャー操作なんだが,Notifyではこれはボタン操作の一部として扱われており,設定もその一環として行われるのに注意。また,この持ち上げジェスチャーに機能をマップするには,ボタンモードがパフォーマンスモードになっている必要がある(図)。
設定画面で直接2回持ち上げジェスチャーが行われた際のアクションを指定できる(下図)。この設定項目はボタンモードがパフォーマンスモードになっていないと表示すらされない。ここらへんのUIの設計は正直悪い。
持ち上げジェスチャーが行われたことをブロードキャスト・インテントとして受け取ることもできるはずなのだが,自分が試してみた範囲ではついぞ成功しなかった。
(下に続く)
接続されたスマホの紛失防止機能
Amazfitウォッチには接続されたスマホの紛失防止機能があるようなのだが,Amazfit Band 5にはこの設定はできないようだ。非力なので削られたか。
Notifyはバンドが接続されたスマホの紛失防止機能があることになっている。これがAmazfit Band 5で使えるのか現在わからないが(有償機能なため),使えれば外出時スマホを持ち出すことを防ぐことに使える。iTag BLEトラッカーをそういう目的に使うことは考えたし実際そのようにするつもりだが,それに加えてAmafit Band 5も合わせて使えればなおよい。この機能のオン・オフを外部からインテントで操作できる。
⇐その後ライセンスを(再)購入して試そうとしたら,電力消費が激しいとの注意が。現在最終的には一人暮らしのご老人を守るための複数の目的のためにiTag BLEトラッカーをモニターするためiTracing2というアプリを常時起動しているが,それだけでも電池消費が激しくなったと感じている。Notifyも常時起動させる必要があり,確かに追加の電力消費は大きな問題になりそう。
外部からNotifyにアクションを起こさせる
“Tasker integration” の前半にある外部から起動できるNotifyの機能は,実はインテントをNotify向けに発信することで実行するもので,特にTaskerに限った話ではない。Taskerから送信する場合のヘルプ。
では,Taskerプラグインとしてできるアクションはないのかというとそうではなく,ちゃんと用意されている。しかしそれを包括的に説明する独立したヘルプが用意されていない。自分が確認した範囲では以下がある:
- Heart monitor
- Incoming call
- Incoming call stop
- Measure heart
- Notify
- Picture
- Restore default w…
- Start workout
- Stop workout
- Switch mode
これら全てを詳細に調べたわけではないが,notifyとpictureは有用かもしれない。こちらはどちらもNotifyがバンドに画像を送りつけることができること(画像サイズ等に対する制約)に依存している。想定している使用者は高齢者なので,Amazfit Band 5に表示される文字は一般に小さすぎて読んでもらえることはあまり期待できない。しかし,大きい文字のごく短い句を画像にして送るようにすればずっと読みやすく,実際に読んでもらえることが期待できる。
アクションnotifyは細かに設定できる。3枚の設定画像のスクリーンショット参照。
⇐ その後テストしたところ,notifyでは画像が2~3秒表示された後,文字メッセージを表示する画面に切り替わってしまう…。これではあまり有用ではないか…。Pictureは待受画面を変えてしまうのでこれではその後の使用に支障が出るだろう。
スマート体重計
Notifyはスマート体重計もサポートしているようだが,取得したデータをブロードキャストしてくれたりはしないもよう。
Mi Scaleのプロトコルは既に解析されており,OpenScale: Open-source weight and body metrics tracker, with support for Bluetooth scalesというMi Fitの代替アプリがあるだけでなく,そのデータをGoogle FitやMQTTに同期するOpenScale Syncというアプリが存在する。こちらを利用するようにしたほうが楽かもしれない。⇐ 実際に購入して試してみたがうまくいかない。
特定Googleアカウントからのインストール
このアプリはいつも自分が使っているのとは違うGoogleアカウントからインストールする必要があったが,そのためには “google play store – Change Gmail account to make in-app purchase? – Android Enthusiasts Stack Exchange” を参照。ポイントは,Play Storeアプリから直接インストールするのではなく,そのWeb画面から,希望するGoogleアカウントにログインしている状態であることを確認の上,遠隔でインストールする。
Tools & Amazfit
実はNotify for Mi Band / Amazfit / Zeppと極めて似通ったターゲットと機能を持つ380円の有償アプリTools & Amazfitがあり,こちらのことを先に知った。どちらが優れているか気になるところだが,”Amazfit Tools or Notify and Fitness? : amazfit” によればAmazfit Toolsの作者は “douche” でPlay Storeのレビューに対してコメントもひどい,と。自分も見てみたが,そこまでひどいとは思わなかったものの,明らかな上から目線で対応しており,決してプロフェッショナルな態度とは思えない。それはいいとしても,GadgetBridge.orgに対して根拠のないDMCA違反の申し立てをしたというのはいただけない。これを知るまではTools & Amazfitで行こうかと考えていたが,これで考えを変えた。
この項の残りの部分はメモのままで整理していない。
Tools & AmazfitはGoogle Play Family Libraryに対応している。 “Do you support Amazfit Band 5? | Amazfit Tools” によればAmazfit Band 5がフルにサポートされているだけでなく,ジェスチャーでTaskerと連携することも可能なよう。Plugins (Tasker, Automagic, …) | Amazfit Tools あまり大したことできない。
Amazfitブランドのものにしか対応していないのかと思いきや,同様で同じく380円の同じ著者によるTools & Mi Bandもある。どちらのアプリとも “This application works very well with original Zepp / Mi Fit application” としているので,一方のアプリだけ入手すればMi BandともAmazfit Bandともに対応するのか?サポートサイトは完全に同じでそうだと思われる。
Video Tutorials for Amazfit Tools | Amazfit Tools
クラウドからの取得
本稿ではAmazfit Band 5に接続されたスマホのアプリでセンサーデータを得る方法を探ったが,そうではなく,Huamiのサーバから直接センサーデータを取得することも検討してみた。結論としては技術的には可能でも実際には困難そう。
「Amazfit Band 5はサードパーティアプリで見守りに使えるか」への5件のフィードバック