マイクロビットは、ブロックエディタで子供でも簡単にプログラムがつくれる上、無線機能がついていたり、各種センサやLEDが搭載されていたりと、とても便利で使いやすいマイコンボードです。
ただ、マイクロビットをIoTデバイスとして利用しようとする場合、Wi-Fi通信機能がない点が弱点だと感じていました。
そんな中、「Grove UART WiFi V2」という製品を見つけました。
Groveシールドをつかってマイクロビットと「Grove UART WiFi V2」をつなぐことで、マイクロビットでWi-Fi通信ができるようになるようです。
また、Wi-Fi通信のためのブロックも用意されており、ブロックエディタを使って、Wi-Fi通信するプログラムをつくることができるようです。
そんな訳で、早速「Grove UART WiFi V2」を試してみることにしました。
なかなか販売しているお店を見つけることができませんでしたが、マルツオンラインで購入できました。

今回は、この製品の他に「Groveシールド」、「Grove光センサ」も使い、光センサで採取した明るさ情報を、IFTTT経由でGoogleスプレッドシートに保存してみたいと思います。
マイクロビットをGroveシールドに取り付け、「Grove光センサ」、「Grove UART WiFi V2」もGroveシールドにつなぎます。

IFTTTのアプレットは、こちら で作成した「Send_to_Table」を、そのまま使います。
それでは、マイクロビットでプログラムをつくっていきます。
- Webブラウザでブロックエディタ(こちら)にアクセスします。

- 「新しいプロジェクト」をクリック、プロジェクト名を入力してエディタ画面を開きます。

- 「高度なブロック」>「拡張機能」をクリック、検索窓に「grove」と入力します。

- 「grove」拡張ブロックが見つかるので、これを選択すると、ツールボックスに「Grove」というグループが追加されます。

- 「Grove」グループ内の「UartWiFi」に関するブロックを使って、以下のようなプログラムを作成します。「最初だけ」でWiFiのセットアップを行います。セットアップが終わったら笑顔マークを表示します。「ずっと」では、1分毎にP0端子の値(明るさ情報)をIFTTTに送信します。

プログラムができたら、マイクロビットにダウンロードします。
ダウンロードが完了するとプログラムが動き始めますが、USBケーブルをマイクロビットのUSBポートに挿している状態では、供給電力不足のためか正常に動作しません。Groveシールド横についているUSBポートにUSBケーブルを挿して電源供給すると、正常に動きはじめます。
Googleスプレッドシートを確認すると「device01_table」というファイルができています。
開くと、1分毎に明るさ情報が保存されていることが確認できます。

マイクロビットで、非常に簡単にWi-Fi通信することができました。
これで、さまざまな実用的な用途でマイクロビットを活用することができそうです。
なお、私がマイクロビットの使い方を習得するのにあたっては、以下の書籍を参考にさせていただきました。
初心者向けから、比較的高度なものまで、さまざまな情報が記載されているだけでなく、子供向けの作例も多数掲載されていますので、「プログラミング教育」のための題材さがしなどにもおすすめです。