ファームウェアエンジニアの中林 (id:tomo-wait-for-it-yuki) です。 本日より Nature Remo BLE マクロのベータテストを開始いたしました 🎉 本エントリは、ベータテスト参加者の方を対象とした BLE マクロのチュートリアルです。 ベータテスト参加者以外の方にも BLE マクロ機能の雰囲気を感じていただきたく、内容を公開しています。
2023年12月現在、ベータテスターの方のみ、ご利用いただける機能となっています。 UI は正式リリース時には異なったものになります。
本チュートリアルの内容は以下の通りです。
- 事前準備
- nRF Connect でマクロを作成
- GitHub にマクロをアップロード
- Nature Remo アプリで BLE デバイスを登録
- Nature Remo アプリで BLE デバイスにボタンを登録
- Nature Remo アプリで BLE デバイスを操作
可能な限り少ない手順で BLE マクロを試せる方法を紹介しているつもりですが、より便利な方法やツールがあれば、開発者コミュニティで教えてもらえるとうれしいです。
1. 事前準備
Nature Remo 3 / Nature Remo mini 2 / Nature Remo mini 2 Premium のいずれかを Nature Remo アプリでセットアップして、オンラインの状態にしてください。
利用ツール一覧
本チュートリアルで利用するツールの一覧は以下のとおりです。
スマートフォン
iPhone 版の nRF Connect はマクロ機能がないため、Andoird 版を推奨しています。 また、nRF Connect でエスクポートしたマクロ (XML) ファイルを GitHub にアップロードしますが、GitHub のモバイルアプリはファイルアップロードができないため、GitHub はスマートフォンの Web ブラウザでの利用をおすすめします。
ホストPC
- adb
対象 BLE デバイスの検出条件や、マクロの置いてある GitHub URL を入力する際、adb から入力すると便利です。 次のコマンドで、フォーカスしているテキスト領域に、テキストを入力できます。
$ adb shell input text hogefuga
GitHub リポジトリの作成
public なリポジトリを1つ作成してください。 連携する BLE デバイスごとにディレクトリを作成しておくと良いでしょう。
本チュートリアルで使っているサンプルリポジトリを参考にしてみてください。
2. nRF Connect でマクロを作成
下記の記事を参考に、nRF Connect で BLE デバイスを操作して、マクロを作成してください。
作成したマクロは、3点リーダーメニューの Export to XML
をタップして XML 形式でエクスポートし、スマートフォンのローカルストレージに保存します。
3. GitHub にマクロをアップロード
nRF Connect でエクスポートしたマクロ (XML) を GitHub にアップロードします。
作成したリポジトリに Web ブラウザでアクセスして、 Upload files
でファイルをアップロードします。
ドラッグ&ドロップはできないので、choose your files
から XML ファイルを選択します。
のちほど、アップロードしたマクロの URL を使うので、スマートフォンもしくはホストPCのブラウザで GitHub リポジトリを開いたままにしておきましょう。
4. Nature Remo アプリで BLE デバイスを登録
ここからは Nature Remo アプリで BLE マクロを登録、利用していきます。 コントロール画面の「+」ボタンをタップして登録を開始します。
「新しい家電」画面で一番下にある BLE Macro
を選択します。
「デバイスの選択」画面で BLE デバイスを登録する Remo を選択します。
ここで、Nature Remo 周辺に登録する BLE デバイスがあるかどうかをスキャンします。 スキャンは次のフィルターを設定できます。
- ローカルネーム
- Bluetooth Device アドレス
- 条件なし (最大5件)
ローカルネームはアドバタイジングに乗っていない場合もあるので、確実な方法は Bluetooth Device アドレスを指定する方法となります。
以下ではスキャン対象がわかりやすいようにローカルネームが Hue ambiance lamp
のデバイスをスキャンしています。
Scan BLE Devices with Filters
ボタンをタップすると、Remo が周辺の BLE デバイスをスキャンします。
adb を利用する場合
フォーカスが BLE DEVICE LOCAL NAME
のテキスト領域になっていることを確認して、ホストPCから次のコマンドを実行します。
$ adb shell input text "Hue\ ambiance\ lamp"
最大10秒ほどでスキャンが完了し、条件に一致したデバイス一覧が最大5件表示されます。 登録するデバイスをタップします。
「新しい家電を確認する」で名前とアイコンを設定すると、登録完了です。
登録するデバイスがペアリングを必要とする場合、ここでペアリングします。
Philips Hue もペアリングが必要なので、Philips Hue アプリからペアリング状態にしたあと、Pairing
ボタンをタップします。
ペアリングが不要な場合は Skip
ボタンをタップして次に進みます。
5. Nature Remo アプリで BLE デバイスにボタンを登録
次に登録した BLE デバイスにボタンを登録します。 コントロール画面から登録した BLE デバイスをタップすると、何もボタンがないコントロール画面に遷移します。 右上の「+」をタップして、ボタンの登録を開始します。
次のようなボタン登録画面が表示されます。
PUBLIC GITHUB URL
の部分に GitHub にアップロードしたマクロ (XML) の URL を入力してください。
URL は例えば次のようなものです (permalink でも大丈夫です) 。
https://github.com/tomoyuki-nakabayashi/blemacro_examples/blob/main/hue/blink.xml
Test
ボタンをタップすると、マクロをテスト実行することができます。
テストが問題なければ Add
ボタンをタップします。
ボタンを登録すると、BLE デバイスのコントロール画面にボタンが追加されていきます (現状、配置は自由に変えられません) 。
6. Nature Remo アプリで BLE デバイスを操作
登録したボタンをタップすると、マクロが実行されます。
BLE マクロベータテスト実施中
もし本エントリを見て Nature Remo BLE マクロに興味を持った場合は、Nature Developer Community にてベータテストの様子を見ることができます。 ぜひ覗きにきてください。