# マイクロビット(micro:bit) v2の間無線通信について
本ドキュメントは、初めてmicro:bitの無線通信を利用する際に必要な機材や事前準備、動作イメージを端末の画面上で確認できるシミュレーター、プログラムサンプル等を記載しています。また、中上級者向けの製品詳細仕様情報も確認できます。
# 1. 本ドキュメントの目的
- micro:bit(マイクロビット)の無線通信の仕様の把握
- micro:bit(マイクロビット)の無線通信に関するプログラミング方法の基本の把握
# 2. 製品の詳細仕様
# 2.1. micro:bit無線通信(Low level radio communications)の詳細仕様
micro:bit(マイクロビット)は、オンボードの2.4GHzトランシーバーが内蔵されており、micro:bit間専用の無線通信機能もそれによって機能します。
無線通信機能を使用して複数のmicro:bit間での通信ができ、メッセージを送信したり、マルチプレイヤーゲームを作成したりできます。
無線通信は、「Micro:bit Radio」プロトコルが利用され、micro:bit間では、非常にシンプルなパケットブロードキャストを行います。
さらに、micro:bitランタイムソフトウェアでは、各データペイロードに「グループコード」を追加し、簡単なユーザー管理デバイスのアドレス指定やフィルタリングができます。
micro:bit無線通信の詳細仕様は以下です。
数値、文字列等を送受信することができます。
ブロードキャストメッセージ設定可能な長さ:最大251バイト
メッセージはブロードキャストされ、あらかじめ選択されたチャネル(0〜83)で受信されます。 MakeCodeでは、「無線の電波帯域を設定する」ブロックで設定ができます。
ブロードキャストの送信出力パワー(0〜7)を設定ができます。パワーが増えるほど送信できる範囲が広がります(通信できる距離が長くなります)。
メッセージは、シリアル番号(microbit個別の番号)とグループ(0〜255)でフィルタリングすることができます。
シリアル番号を送信するかどうかを設定することができます。
受信したメッセージは、構成可能なサイズのキューから読み取られます(キューが大きいほど、より多くのRAMが使用されます)。 キューが満杯になった場合、新しいメッセージは無視されます。 メッセージをリードすると、そのメッセージはキューから削除されます。
受信するパケットに、受信信号強度、メッセージを受信した時刻、シリアル番号も含まれています。
micro:bit(マイクロビット)のバージョンv2とv1.5の無線通信の仕様は以下です。
項目 | v2 | v1.5 |
---|---|---|
プロトコル | micro:bit Radio (opens new window) | micro:bit Radio (opens new window) |
周波数帯 | 2.4GHz | 2.4GHz |
チャネルレート | 1Mbps or 2Mbps | 1Mbps or 2Mbps |
暗号化 | None | None |
チャンネル | 80 (0..80) | 101 (0..100) |
グループコード | 255 | 255 |
送信出力パワー | 設定可能な8段階 0(-30dbm) から 7 (+4dbm) まで | 設定可能な8段階 0(-30dbm) から 7 (+4dbm) まで |
ペイロードサイズ | 32 (standard) 255 (if reconfigured) | 32 (standard) 255 (if reconfigured) |
より詳細な情報 | micro:bit Radio (opens new window) | micro:bit Radio (opens new window) |
# 3. 必要な機材
# 3.1. PC利用時に必要な機材
No. | 名称 | 個数 | HW/SW | 用途 |
---|---|---|---|---|
01 | マイクロビット ベースキット (opens new window) または、 マイクロビット ベーシック (opens new window) | 2 | HW | micro:bit本体、micro:bit保護ケース、micro:bit用電池ボックス、マルチUSBケーブル |
02 | 単4型乾電池 | 4 | HW | micro:bitへの電源供給 |
03 | Chromebook、MacOS、WindowsのPC | 1 | HW | MakeCode操作用 |
04 | Google Chrome | 1 | SW | MakeCodeアクセス用 |
# 3.2. タブレット・スマートフォン利用時に必要な機材
No. | 名称 | 個数 | HW/SW | 用途 |
---|---|---|---|---|
01 | マイクロビット ベースキット (opens new window) または、 マイクロビット ベーシック (opens new window) | 2 | HW | micro:bit本体、micro:bit保護ケース、micro:bit用電池ボックス、マルチUSBケーブル |
02 | 単4型乾電池 | 4 | HW | micro:bitへの電源供給 |
03 | タブレット・スマートフォン | 1 | HW | micro:bitアプリ操作用 |
04 | micro:bit アプリ | 1 | SW | micro:bitのプログラミング |
※ HW:ハードウェア、SW:ソフトウェア
※ Google Chromeは、Google社が提供しているブラウザ。ダウンロードはGoogle Chromeの公式ウェブページ (opens new window)で可能です。Chromebookでは、標準でインストールされています。
※ MakeCodeは、MicroSoft社が提供しているmicro:bitプログラミングできるオンラインソフトウェアです。詳細は「micro:bitのプログラミングで利用するソフトウェア」をご参照ください。
参考:micro:bitは、イフティニー ストアでお買い求めいただけます
当社はmicro:bitの公認正規販売店です。国内のmicro:bit利用推進を行っております。
micro:bit専門ストア「イフティニー ストア(iftiny store)」 (opens new window)にて、各種micro:bit関連製品の販売をしております。
# 4. 概要と所用時間
実施項目 | 概要 | 所用時間 |
---|---|---|
事前準備 | 事前に必要な準備と確認 | 5分 |
プログラミング | 用意されている表示ブロックを使ってプログラミングし、micro:bitに動作させる | 10分 |
利用後 | プログラミング完了後の作業 | 3分 |
合計時間 | ー | 18分 |
# 5. 事前準備
注意事項
操作する前に「micro:bitの扱い方と注意事項」をご覧ください。
参考情報
初めてmicro:bitを利用する方は、事前に以下のドキュメントをご覧ください。
- Mac PCをご利用の方は、「micro:bitの利用方法(MacOS)」をご覧ください。
- Windows PCをご利用の方は、「micro:bitの利用方法(Windows)」をご覧ください。
- タブレット・スマートフォンをご利用の方は、「micro:bitの利用方法(iOS,Android)」をご覧ください。
micro:bit(マイクロビット)、電池ボックス、USBケーブルの準備
PCの場合、PCとブラウザを起動し、MakeCodeでプログラミングできる状態に準備
タブレット・スマートフォンの場合、アプリを起動し、プログラミングできる状態に準備
# 6. プログラミング
# 6.1. 実現したいこと
自分の今の気持ちを、近くにいるお友達に伝えます。
- 楽しく感じている時に、Aボタンを押せば、近くにいるお友達のmicro:bitに嬉しい顔が表示されます
- 悲しく感じている時に、Bボタンを押せば、近くにいるお友達のmicro:bitに悲しい顔が表示されます
- メッセージが届いたことがわかるように、嬉しい顔と悲しい顔の表示と共に、お知らせの音を鳴らします
- どのmicro:bitからの発信かを特定するために、発信したmicro:bitのシリアル番号を受信したmicro:bitのLEDディスプレイに表示します
- 関係のないメッセージを受信しないように設定します
# 6.2. プログラミングのサンプル
以下は、上記プログラミング実施結果のサンプルです。
※ 以下を利用して、直接ご使用のmicro:bitにダウンロード(書き込み)することもできます。
また、ご自分のMakecodeに保存することもできます。
※ 通信する双方のmicro:bitにダウンロード(書き込み)する必要があります。
# 6.2.1. MakeCode ブロック
# 6.2.2. MakeCode javascriptコード
input.onButtonPressed(Button.A, function () {
basic.clearScreen()
radio.sendValue("feeling", 0)
})
input.onButtonPressed(Button.B, function () {
basic.clearScreen()
radio.sendValue("feeling", 1)
})
radio.onReceivedValue(function (name, value) {
if (name == "feeling") {
if (value == 0) {
basic.showIcon(IconNames.Happy)
soundExpression.happy.play()
} else if (value == 1) {
basic.showIcon(IconNames.Sad)
soundExpression.sad.play()
} else {
basic.showIcon(IconNames.No)
}
} else {
basic.showIcon(IconNames.No)
}
basic.pause(5000)
basic.showString("" + (radio.receivedPacket(RadioPacketProperty.SerialNumber)))
basic.clearScreen()
})
radio.setGroup(1)
radio.setFrequencyBand(10)
radio.setTransmitPower(2)
radio.setTransmitSerialNumber(true)
# 6.2.3. MakeCode pythonコード
radio.set_group(1)
radio.set_frequency_band(10)
radio.set_transmit_power(2)
radio.set_transmit_serial_number(True)
def on_button_pressed_a():
basic.clear_screen()
radio.send_value("feeling", 0)
input.on_button_pressed(Button.A, on_button_pressed_a)
def on_button_pressed_b():
basic.clear_screen()
radio.send_value("feeling", 1)
input.on_button_pressed(Button.B, on_button_pressed_b)
def on_received_value(name, value):
if name == "feeling":
if value == 0:
basic.show_icon(IconNames.HAPPY)
soundExpression.happy.play()
elif value == 1:
basic.show_icon(IconNames.SAD)
soundExpression.sad.play()
else:
basic.show_icon(IconNames.NO)
else:
basic.show_icon(IconNames.NO)
basic.pause(5000)
basic.show_string("" + str((radio.received_packet(RadioPacketProperty.SERIAL_NUMBER))))
basic.clear_screen()
radio.on_received_value(on_received_value)
# 7. 利用後
# 7.1. マイクロビット(micro:bit)の接続解除について
# 7.1.1. USBケーブル接続の場合(Windows、Mac、Chromebook)
- PCやChromebookとUSBケーブルを使って接続しご利用の場合、MakeCodeを使った直後の段階では、ブラウザーがmicro:bitと接続(WebUSB)しており、また、PCやChromebookのOSでは、micro:bitを外部ストレージとして認識し、接続されたままの状態です。
このままPCやChromebookからUSBケーブルを取り外すとデータの破損や次回接続時のトラブルに繋がる恐れがあります。
また、学校など、不確定多数のmicro:bitを同じ端末に接続する場合、過去の接続情報を残ったままで新規接続が増えるため、高い確率でトラブルが起きることがあります。
そのため、取り外す前に、安全に接続を解除する必要があります。
下記該当する手順にて、ご利用されているブラウザーでMakeCodeエディターのWebUSB接続を切断した後、PC及びChromebookのOSレベルでmicro:bitの接続解除を行ってください。
# 7.1.2. Blutooth接続の場合(iOS、Android)
- Bluetooth接続で接続し、スマートデバイスをご利用の場合、micro:bitアプリを使った直後の段階では、micro:bitとスマートデバイスはBlutoothで接続された状態です。
このまま放置すると次回の接続トラブルに繋がる恐れがあります。
そのため、下記該当する手順にて、micro:bitアプリにて安全に接続解除を行ってください。
# 7.2. マイクロビット(micro:bit)接続の解除方法
# 7.2.1. USBケーブル接続の場合の接続解除方法(Windows、Mac、Chromebook)
# 7.2.1.1. WindowsのPCでの接続解除方法
- MakeCodeとmicro:bitの接続(WebUSB)の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | Chromeブラウザアドレスバーの鍵マークをクリックし、「BBC micro:bit CMSIS-DAP」の右の「✖️」をクリックすることで、ブラウザとデバイスのWebUSB接続を切断させます。 | ※ 「更新後の設定をこのサイトに適用するには、このページを再読み込みしてください。」と表示された場合、「再読み込み」ボタンをクリックしてください。 ※ 画像のプロジェクト名やブロック(プログラミングコード)の内容は、上記手順と異なる部分があります。無視してください。 |
- Windows OSとmicro:bitの接続(USB)の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | ここからは、PCとmicro:bitの接続を安全に切断するための操作を行う。デスクトップの「PC」アイコンをクリックし、「エクスプローラー」を起動する。 | 左側のメニューより「MICROBIT」が接続されたことを確認し、それをクリックすると、現在micro:bit内に保存されているファイルが表示される。 |
02 | ![]() | 左側のメニューより「MICROBIT」を右クリックすると、メニューが表示される。「取り出し」を左クリックし、PCとmicro:bitの接続を切断。 | ー |
03 | ![]() | 「ハードウェアの取り外し」ポップアップが表示される。 | 「'MICROBOIT'はコンピューターから安全に取り外すことができます。」と表示されるため、これより、USBケーブルをPCから取り外すことが可能となった。 |
04 | ー | PCとmicro:bit接続用USBケーブルを取り外す。 | 接続切断作業が完了。 |
# 7.2.1.2. MacOSのPCでの接続解除方法
- MakeCodeとmicro:bit接続(WebUSB)の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | Chromeブラウザアドレスバーの鍵マークをクリックし、「BBC micro:bit CMSIS-DAP」の右の「✖️」をクリックし、ブラウザとデバイスのWebUSB接続を切断させることができる。 | ※ 同じPCで今後も使うことがある場合、この操作を行う必要がありません。 |
- MacOSとmicro:bit接続(USB)の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | ここからは、PCとmicro:bitの接続を安全に切断するための操作を行う。Finderを起動し、「場所」の「MICROBIT」右の「停止マーク」をクリックし、PCとmicro:bitの接続を切断。 | 「場所」のMICROBITの表記が消えることを確認。 |
02 | ー | PCとmicro:bit接続用USBケーブルを取り外す。 | 接続切断作業が完了。 |
# 7.2.1.3. Chromebookでの接続解除方法
- MakeCodeとmicro:bit接続(WebUSB)の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | Chromeブラウザアドレスバーの鍵マークをクリックし、「BBC micro:bit CMSIS-DAP」の右の「✖️」をクリックし、ブラウザとデバイスのWebUSB接続を切断させることができる。 | ※ 「更新後の設定をこのサイトに適用するには、このページを再読み込みしてください。」と表示された場合、「再読み込み」ボタンをクリックしてください。 ※ 画像のプロジェクト名やブロック(プログラミングコード)の内容は、上記手順と異なる部分があります。無視してください。 |
- Chromebookとmicro:bit接続(USB)の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | ここからは、Chromebookとmicro:bitの接続を安全に切断するための操作を行う。「ファイル」アイコンをクリックし、ファイル管理画面を起動する。 | ファイルのウィンドウが表示されます。 |
02 | ![]() | MICROBITのドライブが接続中であることを確認。 | |
03 | ![]() | を起「MICROBIT」右の「停止マーク」をクリックし、Chromebookとmicro:bitの接続を切断。 | |
04 | ![]() | ー | MICROBITの表記が消えることを確認。 |
05 | ー | Chromebookとmicro:biから接続用USBケーブルを取り外す。 | 作業完了。 |
# 7.2.2. Bluetooth接続の場合の接続解除方法(iOS、Android)
# 7.2.2.1. iOSでの接続解除方法
- micro:bitアプリとmicro:bit接続の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
01 | ![]() | micro:bitアプリのTOP画面で「micro:bitを選ぶ」をタップする。 | 「micro:bitを選ぶ」画面が表示される。 |
02 | ![]() | 一覧から接続を解除するmicro:bitを選択し、ダストボックスアイコンをタップする。 | ー |
03 | ![]() | 「Remove this micro:bit?」と表示されるので「Remove」をタップする。 | ー |
04 | ![]() | ー | 「現在選択されているmicro:bit」に「何も選択されていません」と表示される。これでmicro:bitアプリに保存されている接続情報が削除される。 |
- iOSとmicro:bit接続の切断
No. | 画像 | 手順 | 確認 |
---|---|---|---|
05 | ー | iOS「設定」アイコンをタップし、設定画面の「Bluetooth」を選択する。 | 現在iOSでBluetoothの接続情報を保持しているデバイスの一覧が表示される。 |
05 | ![]() | 該当micro:bitの右横にある「i」をタップする。 | デバイスの登録解除メニューが表示される。 |
06 | ![]() | 「このデバイスの登録を削除」をタップすると、画面下に赤字で「このデバイスの登録を削除」が表示されるのでそれをもう一度タップする。 | デバイスの登録削除処理が実行される。 |
07 | ![]() | ー | 該当micro:bitの接続情報が削除されると、Bluetooth接続デバイス一覧から該当micro:bitの表示が消える。 |
# 7.2.2.2. Androidでの接続解除方法
上記iOSと同じ操作の流れとなります。上記iOSの手順をご参考ください。
# 7.3. その他作業
電池ボックスの電源スイッチがOFFになっていることを確認し、電池を取り出します。
micro:bit(マイクロビット)、電池ボックス、USBケーブルを収納ケースに収納します。
必要に応じて、ブラウザの終了(PCの場合)、アプリの終了(タブレット・スマートフォン)、や端末のシャットダウンを実施します。
← スピーカー Bluetooth通信 →