以下の表が追加されていた。これが、ホワイトペーパーに載っていた表ですな。BR/EDRのようにclassができたということか?v4.2までの最大は、class1.5に相当するのだろう。仕様上(かつスペック上)、v4.2と比べて4倍の距離が出せるような送信パワーを許容した、というところか。距離を出したければ頑張れ、ということだろう。前回のbandwidthもそうだけど、技術的革新で!というわけではなく、仕様の枠を広げたというところだ。いや、難癖を付けているわけじゃないし、これはこれでよいと思うのだ。同じハードを持ってきて「Bluetooth5にして距離を伸ばせ!」とか言われても、いやいやそうじゃないんですよ、という話はできないといかんので、実装する人は概要を把握しておいた方がよいだろう。周波数帯とかパワーが変わるとなると、技適も取り直しになるのかな?そこら辺は詳しくないのだが、出力する内容が変わるのだったら、再提出くらいはいりそうな気がする。ble[py]sqlite3のNoneは文字列のNone久々のpythonで、ちょっとはまってしまった。コードを先に示した方がよいだろう。str(items[0][1]).encode('hex')id1とid2というカラム(でよいのかな?)を作り、id1にだけ値を設定する。SELECTして、id1とid2をencode('hex')して見てみる、というだけだ。encode('hex')だから、ASCII文字はASCIIコードで出力される。4e6f6e65さあ、予想通りだっただろうか?item[0]はよそうどおりだったけど、item[1]は「そうくるか!」というのが正直な感想だ。"None"を文字列としてASCIIコードにするとはなぁ。おかげで、"None"と出てくるか、エラーになるだろうと思ってやっていたので、発見が遅れてしまった。bandwidthFAQって、発音の仕方に悩むよねぇ、というのはさておき、Bluetooth5.0のFAQがあったので眺めてみよう。いえば、もともとBluetooth4は、BLEだけじゃなく、今までのBR/EDRが入っていたのだが、それが5になってどうなったのだろうか?変わらないのね。共通になっている内容もあるのだけど、検索して読むと同じキーワードで使われ方が違ったりすることもあって、面倒なのよねぇ。bandwidth、ということが出てくる。B]1.4.1の表を見ると、少なくともBLEについては40chのままのようだ。Advertisingって??まあ、そういう細かいところは見ないようにしないと、終わらん。そもそも、bandwidthと書いているが、出ているのは速度についてだ。2M」という言葉が出てくる。1Mの方はshallだから必須。2Mだけで、これは必須かどうかはここに書いていなさそうだ。1Mという用語がない。Rate=1Mb/sという言葉が出てくる程度だ。PHYが2Mb/sとなっている。2Mというのが、bandwidthがx2になったというやつなんじゃなかろうか。私は変調方式とかそういうのはさっぱりわからんのだ。いうときは、silexさんのブログを読むに限る。はなし|Wireless・のおと|サイレックス・テクノロジー株式会社このブログ自体は5.0が出る前なので情報をたどる形になっているが、速度2倍については、変調方式がPSK変調ではなくGFSK変調のままにすることで実現した、ということらしい。なんとなく、PSK変調というのはGFSK変調の2倍大変だから、GFSK変調だったら2倍送れるやん、ということのように読み取ったのだが、どうだろうか。Core_v5.0の4.6章の最初に、確かに「変調方式はGFSK」と書かれている!・・・と思ったが、Core_v4.2にもGFSKと書いてあった。sym/sの場合は375kHz以上でやらんといかんよ、と書いているようだが、何の条件なのかがわからん。GFSKとかのことが少しわからないとまずかろうと思い、検索すると出てきたのはやはりsilexさんのところだった。周波数の違いで1/0を表すのがFSKで、その一種がGFSKらしい。A]3.1章に図があるが、なんかよくわからんね。A/D変換するときのように、プラスとマイナスが切り替わる瞬間、つまりゼロクロス間隔を見ることで1か0か見分けて、その間隔の監視周期が185kHzだの375kHzだのと言っているのではなかろうか。無線やってると、ゼロクロスって言葉はよく聞くよねぇ。2Mの場合は今までの倍の速度で変調を扱うから2倍の速度を出せる、ということじゃなかろうか。2倍の速度を出したければ、2倍頑張れ、ということか。bandwidthがx2というのは、GFSK変調で1/0を表す周波数が倍まで許容されるようになったという意味か。気になるのは、ここが倍の速度になることによる消費電力の増加と、転送時間が半分になることの省電力効果のどちらが大きいか、ということだ。チップで違うのだろうけど。それに、今までBLEで送っていた程度のデータ量を倍の速度で送りたいかというと、あんまりそういう気持ちがしないかもしれん。どちらかといえば、電源はプラグから取っているからガンガン送るぜ!みたいなときに使うのかも。ble2016/12/07CryptoCell発表されたnRF52840に載っているCryptoCell-310。CryptoCell-310なのか、CryptoCell-CC310なのかわからないが、長いのでCC310としよう。ものとしては、ARMのCryptoCell-300シリーズというものがあるらしい。これは、暗号化のコプロセッサらしい。コプロセッサということは、データを突っ込めば、マイコン側は使わずに計算してくれるということだろう。JTAGデバッガなどで強引にデータを見られても大丈夫、というよりも、暗号化してデータ保存するのが容易になるよ、というところだろうか?しかし、暗号化するキーを埋め込んでいたら、それを読み取られると意味がないしなぁ。Infrastructure」という項目がある。このKeyは、暗号化キーのことだろうか。agreementという項目もあるが、この方面に詳しくないので、ぱっと見てわからん。DHは鍵交換のやり方だったと思うので、これのことを指しているのか。Watchこの辺りを読むと、ARMv8-Mにならないとメモリの暗号化までは行かないようだ。そこまでやりたければ、Cortex-M23/33を使ったマイコンの登場を待つしかないか。nRF52[nrf52]nRF52840まだnRF52832をあまり使っていないのだが、それに+8したnRF52840というチップがリリースされたようだ。SEMICONDUCTORCortex-M4Fで64MHzというところは同じで、Flashが512KB→1MB、RAMが64KB→256KBと増えている。電圧は、1.7~3.6V→1.7V~5.5Vと広がっている。TrustZoneと書いてある。データを引っこ抜かれるときの対策をどうしようか?というときに話題として出てくるのだけど、最近Cortex-M23やM33が出てきたというくらいしか知らない。一部の機能が使えるとかだろうか?USBもちょっと気になる。自分でUSB対応することはないだろうけど、USBシリアル変換のケーブル無しでデバッグできたりするとちょっと楽かもしれない。SoftDeviceだが、S140になるらしい。SDKもv12.2.0がリリースされていたが、その中には入っていないようだ。早くも、Preview-DKができている。SEMICONDUCTORまあ、早くもというか、Preview-DKが無いとモジュールメーカーが困るからだろうかね。nRF52832のときは買ったけど、やっぱり一般人が買うものではないな。チップもまだ1.0じゃないので、改版によってすぐ使えなくなるし。nRF522016/12/06[esp8266]esp-open-sdkのmake後あれだけ時間がかかったesp-open-sdkのmakeだが、いったい何ができたのだろうか?追いかけるつもりはないので、ディレクトリの中身だけ眺めておこう。SDKを取り込んでいたのね。他にも、crosstool-NGやxtensa-lx-106-elfなどコンパイラっぽいディレクトリがあるが、make後に出てきたメッセージではsdkディレクトリ以下に-Iや-Lするディレクトリがあると書かれていた。sdkディレクトリの中は、Non-OS版と同じようなフォルダ構成になっていた。いうときは、WinMergeで比較だ。