ブロックを積みながら(18) BLE、ハンドル、UUID、CHARACTERISTICS

uartService
Joseph Halfmoon

前回は、micro:bitとRaspberry Pi 3 model B+をペアリングし、ラズパイ上のPython3からbluepyモジュールを使ってコネクトしました。そしてその様子をラズパイ上のWiresharkで観察してみました。そこで痛感したことは、Handle / UUID / Characteristic などというものを理解しないと何が何だかサッパリということであります。今回は、micro:bitの「それら」をダンプして何があるのか調べてみます。

“ブロックを積みながら(18) BLE、ハンドル、UUID、CHARACTERISTICS” の続きを読む

ブロックを積みながら(17) micro:bitとラズパイ、ペアリング+Wireshark

BBC micro:bit paired with Raspberry Pi
Joseph Halfmoon

前回はmicro:bitからの垂れ流し(broadcast)パケットをラズパイで一方的に受信してみました。今回は、micro:bitとラズパイをpairingいたし、双方向のBLE通信をラズパイ上のWiresharkで覗き見してみようと思います。とはいえ、BLEプロトコル素人なので、まずは遠くからやり取りの様子を眺めてみた、というところ。

“ブロックを積みながら(17) micro:bitとラズパイ、ペアリング+Wireshark” の続きを読む

ブロックを積みながら(16) 2台のラズパイのBLE受信信号強度をNodeRedで比較

MBG_EddystoneADV
Joseph Halfmoon

前回ラズパイのPython3で、micro:bitが送信するBluetooth LEのアドバタイズパケット、Eddystoneを受信することができました。今回は離れた場所においたラズパイ3とラズパイ4で同じパケットを受信、それぞれの受信信号強度をNodeREDダッシュボード上で比較してみました。ロケーション推定もどき。 “ブロックを積みながら(16) 2台のラズパイのBLE受信信号強度をNodeRedで比較” の続きを読む

ブロックを積みながら(15) micro:bitのBLEをラズパイPythonで捕捉

ADV_Pi
Joseph Halfmoon

ここまでmicro:bitからのBLEパケットを送受するのにスマホアプリを使用してきました。スマホは便利ですが、やりたい事によっては固定された場所で常時動作している「基地局」的なものが欲しくなります。そこで手元のラズパイ上でBLE通信プログラムの作成環境セットアップ。やはりPythonが楽だ。

“ブロックを積みながら(15) micro:bitのBLEをラズパイPythonで捕捉” の続きを読む

ブロックを積みながら(14) micro:bit V2、BLEで出力スピーカ切り替え

v2MusicBlocks
Joseph Halfmoon

BBC micro:bit V2は「お値段据え置き」ですがメインのSoCがアップグレードされてメモリも増強されています。それだけではなくてV1系で搭載されていなかったスピーカとマイクが搭載されています。でもね、V1では外付けスピーカ使ってました。その辺互換性はどうなるの?BLEからのコマンドで内蔵スピーカと外付けスピーカを鳴り分けるサンプル作ってみました。

“ブロックを積みながら(14) micro:bit V2、BLEで出力スピーカ切り替え” の続きを読む

ブロックを積みながら(13) micro:bit V2、BLEサービス「積んで」みたけれど

v23
Joseph Halfmoon

BBC micro:bit V2をゲットということで、V1.5の時にはRAM不足でできなかったBLEサービスの「だいたい全部載せ」やってみました。これが出来れば面倒なmicro:bitのペアリング作業を省略できる、と。しかしそうは問屋が卸しませんでした。結論から言えば、1個1個確かめないとね。毎度のペアリング作業ももう慣れましたわい。

“ブロックを積みながら(13) micro:bit V2、BLEサービス「積んで」みたけれど” の続きを読む

ブロックを積みながら(12) EddystoneでBLEビーコン、スマホアプリ作成第一歩

dump Eddystone
Joseph Halfmoon

前回はEddystone使ってmicro:bitをBLEビーコン化してみました。ビーコンのスキャンは「出来合い」のスマホアプリです。しかしビーコン使ってそれらしい「アプリもどき」を作るとなれば、自前のプログラムでEddystoneのパケットを解読できないとなりません。そこでDroidScriptで「アプリもどき」を作成。とりあえずmicro:bitからのパケットを「近くにいる」時だけ取り出したいです。

“ブロックを積みながら(12) EddystoneでBLEビーコン、スマホアプリ作成第一歩” の続きを読む

ブロックを積みながら(11) micro:bit、EddystoneでBLE Beaconを

BBC micro:bit Eddystone UID
Joseph Halfmoon

前回前々回とBBC micro:bit上で実行可能なBluetoothサービスをスマホから使ってみました。今回からは「垂れ流し」「一方通行」のアドバタイズ・パケットに戻ってBLEのローレベルな動作を観察したいと思います。「ブロックを積み」はするのですが、ブロック1個おけばとりあえずOKっと。最近そればかり。

“ブロックを積みながら(11) micro:bit、EddystoneでBLE Beaconを” の続きを読む

ブロックを積みながら(10) micro:bit、複数BLE serviceの共存の限界

BLEservices2
Joseph Halfmoon

前回は BBC micro:bitのbluetooth led serviceというものを走らせ、スマートフォンからDroidScriptで点灯制御してみました。今回は、複数のservicesをmicro:bit上で共存させ、その機能をスマホから使ってみたいと思います。しかし今回、micro:bit v2を購入できていないのが、ボディーブローのように効いてきました。 “ブロックを積みながら(10) micro:bit、複数BLE serviceの共存の限界” の続きを読む

ブロックを積みながら(9) BLE LED service、スマホアプリ作成

ble LEDservice DEMO
Joseph Halfmoon

前回、micro:bit上でサポートされるBLEのサービスの一つであるLED serviceを走らせ、スマホから操作してみました。しかしスマホ側のアプリが「ショボい」上に LED serviceの「売り」である任意のパターンをマトリックスLED上に表示させる機能に対応していませんでした。今回はスマホアプリの方にてこ入れをしてマトリックスLEDに対応させます。

“ブロックを積みながら(9) BLE LED service、スマホアプリ作成” の続きを読む

ブロックを積みながら(8) micro:bitのBluetooth serviceの使用。

ledServiceBLK
Joseph Halfmoon

昨日は Bluetooth ではない Radio の方で終わっていたので、本日こそ Bluetooth を使ってみたいと思います。MakeCodeでは、いくつかのBluetoothサービスのBlockが用意されています。それを利用してみたいと思います。今回は led serviceというものを使用、micro:bit と スマホをペアリングし、スマホからの指示で micro:bit に Hello World させようという趣向です。

“ブロックを積みながら(8) micro:bitのBluetooth serviceの使用。” の続きを読む

ブロックを積みながら(7) micro:bitの無線、RadioとBLE、整理してみました

MBgreen Blocks
Joseph Halfmoon

Pi PICOに続きmicro:bit v2も品薄ということで買えません。それで最近 MicroPythonで運用してきたmicro:bit v1.5 をMakeCode環境に引き戻し「ブロックで」プログラムすることにいたしました。Bluetooth LEを使いたかったから。しかし、気付いてみれば知らなかった事多数。世の中の進歩は速い。今回は micro:bit の無線に関わるプログラミングについて整理してみました。 “ブロックを積みながら(7) micro:bitの無線、RadioとBLE、整理してみました” の続きを読む

ブロックを積みながら(6) ArduBlock、ちゃんと動くファイルはどこ?

ArduBlock OLD version
Joseph Halfmoon

「ブロックを積みながら」前回の投稿が4月であったので、半年以上も間が空いてしまいました。前回までBlocklyの処理系をいじりながらVPLの「心」に近づきたいなどと思ってきましたが、方針を改めました。「使う側」から迫ろうと。ついては、最近ハードの方も原点回帰でArduino使うことが多いので、Arduino用のVPLの一つArduBlockを使ってみます。

“ブロックを積みながら(6) ArduBlock、ちゃんと動くファイルはどこ?” の続きを読む

ブロックを積みながら(5) Blockly、ローカルSave追加ス

JosephHalfmoon

本物のVirusではない、荒ぶる「コロナ」の言霊のとばっちりを受けたように見受けられるものの一つに「コロナビール」あり。メキシカンと言えばコロナビールであります。緑のライムの小片が、透明ボトルの金色のビールに映えるのでありますな。メキシカンなど食べに出られる筈もなく、サルサもなく、コンビニで手にいれたトルティーヤ風小袋をつまみにいただきます。こういう日々はブロックでも積んでいるしかないか。 “ブロックを積みながら(5) Blockly、ローカルSave追加ス” の続きを読む