2013/11/10

[ble]知りたいところだけ調べる (2)

忘れず、続けよう。

BLEの構成は、こんな感じみたいだ。
仕様として、物理層との接続にHCIを使うようになっているとかなんとか。
ワンチップでBLEを実現したマイコンがあれば、あんまり関係ないかも。

image


うちには、Nexus7(2013)とiPad miniでBLEが使える。
なんでも、Androidは親だけで、iOSは親にも子にもなれるとか。
ならば、iOSで子を作って、Androidでそれを見てみるのがいいのかもしれん。
が、まだ知識が浅いので、BLEの子製品と、アプリでBLEのアクセスができるものがあるので、それでやってみよう。
うちにあるBLEの子製品は、RC-S390だけなので、これを見る。

iOSにLightBlueというアプリがあり、これがいいそうだ。
使い方はよくわからないけど、デバイスを見つけて、サービスを見て、そのキャラクタリスティックを見る、という扱いのようだ。

デバイスとしては、PaSoRiが1つ見える。
サービスは2つあり、1つは「Device Information」、もう一つは数字だけしか出てこない。
このDevice Informationサービスは、標準サービス?みたいなもののようで、略称は「DIS」らしい。

ちなみに、上の図は雑誌Interfaceを読みながら描いたのだが、さっきのリンク先にも図があるな。
少し違うけど、まあ深くは考えまい。

 

さて、DISの技術書があるので見てみよう。
これを読むと、DISには8つのCharacteristicがあることになっている。
RC-S390には4つだけCharacteristicsがあった。ということは、全部載せないといけないというものでもないのか?
でもPDFには「C.1 (Mandatory to support at least one)」となっているから、載ってないといかんのではないだろうか。
あるいは「この中の最低1つは」というat least oneなのかしら。
英語が弱いのが哀しい・・・。

でも、後者の意味なら、表としては書き方がよくない。
8つのCharacteristicの1つ1つに「C.1」と書くのではなく、セルを1つに結合してから書かないとわからん。
表の上にある英文に「one or more of the characteristics」とあるから、やっぱり後者なのか。

気を取り直して。
LightBlueには、Device Informationサービスと一緒に0x180AというUUIDが書かれていた。
この数字は「Bluetooth Core Specification v4.0」で規定しているそうだ。
ページがあった。割り当てられた数字のページがあるのはありがたい。

クリックすると、その詳細が見られた。
Readが"Mandatory"になっとるやん・・・。
いや、これは「Characteristicとして存在するなら、ReadはMandatoryだよ」という意味なんだろう。
きっとそうなんだ。

このあたりは、秘匿する情報ではないようなので、RC-S390の値を載せておこう。

  • Manufactuerer Name String : AirPaSoRi
  • Model Number String : ModelNumber01
  • Firmware Revision String : Firmware01
  • Software Revision String : Software01

まあ、特にどうということのない文字列だ。
そういえばiPad miniとペアリングしたとき、名前が「PaSoRi」と出てきた。
これは、Device Informationサービスから取得した名前ではないということだ。
ペアリングしないと使えないから、ペアリング作業の前に検索したら見える名前なんだろう。
深入りすまい。

先ほどサービスが2つ、と書いたが、そのもう1つの方がRC-S390を扱うためのサービスなのだろう。
この中には、7つのCharacteristicがある。
サービスが標準じゃないので、このCharacteristicも標準じゃない。
つまり、なんだかわからない、ということだ。
ははは。

これで終わっては寂しいので、もう少しCharacteristicについて調べましょうかね。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。