ホーム > フィジカルコンピューティング > センサ値チラ見システムを作る ( ATmega328 + BLE(RN4020) + Androidスマートフォン ) > ステップ1-3.BLEプライベートサービスの作成と設定

ステップ1-3.BLEプライベートサービスの作成と設定

BLEのプライベートサービスの作成と、RN4020への設定。

プライベートサービスの仕様

プライベートサービスの仕様

UUIDの作成

作成するプライベートサービスのために1つ、作成するキャラクタリスティック1つ、都合2つのUUIDを作成します。
UUIDは、128ビットの値です(16進数表現で32桁)。

この値は自由に決めることができますが、他のサービスと競合しない値を設定します(たとえば、同じUUIDで、異なる仕様のサービスがあったとして(仮に仕様A、仕様Bとする)、送信側は仕様Aでデータを送り、受信側は仕様Bでデータを受け取ろうとすれば、正しい通信は行われません)

UUIDをウェブサイト「UUIDGenerator.net」で作成します。
https://www.uuidgenerator.net/
にアクセスします。


「Buld Version 1 UUID Generation」の「How Many?」欄に、作成するUUIDの個数である「2」を入力し、「Generate」ボタンをクリックします。

2つのUUIDが作成されます。

今回作成されたUUIDは、以下の2つ。
022e9a96-348a-11e8-b467-0ed5f89f718b
022ea09a-348a-11e8-b467-0ed5f89f718b

プライベートサービスの設定の準備

RN4020の配線

RN4020にプライベートサービスを設定するには、RN4020をUSBシリアル変換モジュールと接続し、USBシリアル変換モジュールをパソコンに接続します。

部品名 数量 商品名 参考価格 購入先例
USBシリアル変換モジュール 1 FT232RL USBシリアル変換モジュール 950円 秋月電子通商


ターミナルソフトのインストール

「ホーム > フィジカルコンピューティング > RN4020 > ターミナルソフトのインストール」に従い、ターミナルソフトをインストールします。

ターミナルソフトの設定とコマンド送信の確認

「ホーム > フィジカルコンピューティング > RN4020 > ターミナルソフトの設定とコマンド送信の確認」に従い、ターミナルソフトの設定とコマンド送信の確認をします。

プライベートサービスの設定

エコーを有効にします。
+」を入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「Echo On」と表示されます。

工場出荷時の規定値にリセットします。
SF,1」を入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「AOK」と表示されます。

サーバサービスを設定します。
SS,00000001」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「AOK」と表示されます。

サポート機能の設定をします。
SR,24002000」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「AOK」と表示されます。

プライベートサービスをクリアします。
PZ」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「AOK」と表示されます。

再起動します。
R,1」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「Reboot」「CMD」と表示されます。

(再起動によりエコーが無効に戻る)
エコーを有効にします。
+」を入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「Echo On」と表示されます。

サポートサービスを確認します。
LS」と入力し、エンターキーを押します。
RN4020がサポートするサーバサービスは何もないので、「END」とだけ表示されます。

プライベートサービスのUUIDを設定します。
PS,022E9A96348A11E8B4670ED5F89F718B」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「AOK」と表示されます。

プライベートキャラクタリスティックを設定します。
PC,022EA09A348A11E8B4670ED5F89F718B,12,02」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「AOK」と表示されます。

再起動します。
R,1」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「Reboot」「CMD」と表示されます。

(再起動によりエコーが無効に戻る)
エコーを有効にします。
+」を入力し、エンターキーを押します。
コマンドが正しく実行されると、画面に「Echo On」と表示されます。

サポートサービスを確認します。
LS」と入力し、エンターキーを押します。
コマンドが正しく実行されると、画面にRN4020がサポートするサーバサービスがリスト表示されます。

AndroidアプリでBLE通信

Androidアプリを用いてプライベートサービスの設定の確認をします。

Android OSでは、多くのBLEツールが配布されています。
ここでは、BLE通信Androidアプリとして、「BLE Scanner: Read,Write,Notify」を使用します。

「BLE Scanner: Read,Write,Notify」を起動します。

スキャンが開始され、RN4020が検出されます。

「CONNECT」ボタンをタップし、検出されたRN4020と接続します。

RN4020がサポートするサービスのリストが表示されます。

作成したプライベートサービスが「CUSTOM SERVICE」として表示されます。
UUIDは、 「PS」コマンドで設定したUUID、「LS」コマンドで確認したUUIDとも一致しています。

CUSTOM SERVICE」をタップします。

カスタムサービスがサポートするキャラクタリスティック(≒サービスの特性値)が表示されます。
プロパティが「Read」と「NOTIFY」で、「PC」コマンドで設定した内容となっています。


以上で、プライベートサービスの作成と設定と確認ができました。

関連ページ

前項目:ステップ1-2.ソフトウェア仕様

次項目:ステップ1-4.送信側ソフトウェア実装


ご意見、ご感想、ご質問、ご要望等は、「コメントを投稿する」もしくは「ホーム > コンタクト」よりお願いいたします。
内容の誤り、誤字脱字、リンクミスなどの問題点を発見された場合には「コメントを投稿する」もしくは「ホーム > コンタクト」より連絡していただけると幸いです。


Copyright (c) 2005-2018 Nobuki HIRAMINE All rights reserved.