元々は単なるWebプログラマーだったのですが、いつの間にかマイコンの組込みプログラミングをするまでになりました。サーバー、アプリ、マイコン含めていわゆる"ソフトウェア"と呼べる部分は全部書いているのですが、その辺の習得までの流れとかはおいおいブログに書いていきたいと思います。今回は普段仕事でBLE開発をする中で習得した、GATTの内容やアドバタイジングパケット内容をMacだけで確認する方法を書きたいと思います。やってみる何はともあれツールをインストールします。用いるものは以下の2つです。LightBluePacketLoggerLightBlueAppStoreからインストールしてください。LightBlueはiOSアプリとしてもあるのですが、Mac版もあるので今回はこれを使います。インストールして起動すると即座にスキャンを開始して周辺にあるBLE機器のリストを出してくれます。このままクリックするとGATT(ServiceとCharacteristic)が見えます。読み込み、書き込みも何でもできます!!本来はアプリを使わないと動作させることができない機器をこれで動かしてみてください。́)あと注意点としてGATTを書き換えながら開発してると、LightBlueが更新されていないときがあります。これはOSレベルでキャッシュしちゃってるのが原因なので、一度MacのBluetoothをOFF→ONして、LightBlueも再起動してください。すると直ります(たぶん)。Developersからダウンロードする必要があります。Dev登録をしてダウンロードしましょう。Xcodeってやつです。開けるとPacketLoggerが入ってることがわかります。起動してみましょう!ちなみにログを流すには管理者権限が必要です。あれ、何も出ない?それはMacがBLEのスキャンをしてないからです。スキャンを開始する方法は簡単です。LightBlueを起動するだけです!!(そのための伏線!!)色々なログが流れ始めますが、一番おもしろいのは青いログです。Beaconというアプリを使いました。実際にType2のログを展開してみましょう。以下のような記述があります。dBmDataの中にあるバイナリが、アドバタイジングパケットです。́)おわりに今回はBLEをデバッグするためのツールの話をしました。PacketLoggerを導入した直後は開発がちょっと加速しました。はやり推測よりも観測が重要ですね。requestStockLike106@kazuphはて風呂にはポエム、QiitaにはTipsを書くようにしています。Leadとなり現場でバリバリ開発してます。AWS、Rails、iOS、Android、組み込みらへんが守備範囲です。最近はVim派をやめてVScodeでNode書いてます。upLoginユーザーは見つかりませんでした。