2015/09/23

[bds]Full UUIDは出力できた

昨日、Bluetooth Developer StudioでnRF51のソースを出力させたが、Base UUIDが128bitになってなかった。
http://hiro99ma.blogspot.com/2015/09/bluetooth-developer-studio-beta-program.html

ソース生成はプラグインの役目なので、ちょっとだけ眺めてみた。
そうすると「if (!_.isNull(FullUuid))」みたいなコードが入っていて、Full UUIDを出力する準備はできていそうなのだ。

<%=~%>の区間を変数で置換しているのは、なんとなくわかる。
<%~%>の区間は、たぶん中の式を評価して、エラーが発生しないとか、条件が真の時とかで出力するんじゃなかろうか。
Full UUIDは、<%~%>の区間だから、後者。
じゃあ、使い方が間違っていたというだけかな?


サービスを編集するときの、これ。

image

FULLにチェックすると、こうなる。

image

これが、上記のFullUuidに相当しそうだ。

が、ここからがちょっとよくわからない動きをしていて・・・。

まず、UUIDの一番右に「-」がついている。
これは、最初からそうだったのか、私が間違って入力してしまったのかが今となってはわからない。
とりあえず邪魔だから、削除してSAVE。

image

もう一度開いて、FULLのチェックを外すと、また0x3B86になる。
なるのだが、SAVEボタンが有効にならない。
とりあえず何か変更させよう、と、「TRANSPORT CONFIGURATIONS」のLOW ENERGYにチェックして(意味はわからんが)、SAVEが有効になったので押す。
んで、LOW ENERGYのチェックをはずしてSAVE、とすると、なぜかUUIDが変わる・・・。
何度かやってみたけど、チェックを外したときにUUIDが変わるようだ。

その状態でコード生成すると、Base UUIDが入っていた。
一件落着。。。

うーん、あまり納得がいかない動きだ。
このFULLチェックボックスにチェックが入っていようといまいと、コード生成したときにはBase UUIDが入るようになったからだ。
つまり、このチェックボックスが原因ではなく、おそらく末尾に「-」がついていた方が問題だったんじゃなかろうか。

ならば打ち間違えが原因か、となりそうだが、やってみても文字数制限のためか、手で「-」を打てなかった。
ということはツールが出力したということなのか。
しかし、別のServiceを作成しても、新たにProfileを作成しても、同じことが起きなかった。
うーーーーーん・・・・

納得は行かんが、正しいUUIDが書いてあれば反映される、ということにしておこう。
バグ報告するチャンスだったんだが、残念だ。

 

Base UUIDまで出力できたときのプロジェクトを置いた。
といいつつ、ビルドまでで動作確認はしてないのだけどね。
https://sites.google.com/site/hiro99ma/ble/files/bds_test.zip?attredirects=0&d=1


もう一度プロジェクトを作ったら、また同じことが起きた。
英語は苦手ではあるが、せっかくなのでIssueとして挙げてみた。
が、ログインしないと読めないみたい・・・。

image

こんな感じ。
変な英語かもしれないが、伝わってくれればいいなー、くらいの気持ちで書いた。

いま、Bluetooth SIGからメールが来てビクッとしたが、単なる自動メールだった。
やりとりが発生すると英語についていけない気がするから、するっと終わってくれんかのう。

0 件のコメント:

コメントを投稿

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

注: コメントを投稿できるのは、このブログのメンバーだけです。