より詳しい記事がアップされています。
次のリンク先をご覧ください。
iPadを使ってmicro:bitを扱う際に起こる大問題、「十」を表示してハングアップする現象についての記事です。
どのような現象かというと、iPadでプログラムをダウンロードしている最中に、次の写真のように「十」を表示して、micro:bitがハングアップする現象です。
(ユーレカ工房の製品が原因で起こる現象ではありません。勘違いしないでくださいね)
こうなってしまうと、リセットボタンも受け付けません。ハングアップの解除方法は、有線接続でプログラムを一つダウンロードするだけです。
よく出前講座で学校に行くと、授業中に起こることがあります。特に、初心者はよく起こしやすいです。しかし、私はこの現象を再現することができず、どういった場合にこのハングアップ現象が起こるのか知りたいと思っていました。
今までの情報では、一度有線接続でプログラムをダウンロードしたmicro:bitは、以降起こりづらいというのがありました。ただし、かなり前に私が試した際は、完全な物では無かったので、再度この実験をしてみました。
この実験、案外難しいのです。というのも、新品のmicro:bitって販売品しかなく、なかなか手を付けずらいのですよね・・・。事務所にあるmicro:bitは、いつも有線接続しているので、すべて対策済みです。仕方なく、4個の新品micro:bitを使いました。
実験条件
micro:bit V2.21(最新バージョン)
MakeCodeエディタ
makecode.microbit.orgのバージョン: 5.0.12
Microsoft MakeCodeのバージョン: 8.0.7
microbit ランタイムのバージョン: v2.2.0-rc6
codal-microbit-v2 ランタイムのバージョン: v0.2.40
micro:bitアプリ V3.0.9(3A311)
使用するパソコンなど
Windows10,iPad
新品のmicro:bitを6個用意する。そして、事前に次の手順を踏む。
①のmicro:bit・・・最新のMakeCodeエディタで、ハートマークを表示するプログラムを作り、一端HEXファイルとしてダウンロードする。そのHEXファイルを、micro:bitのドライブにドラッグアンドドロップで書き込む。
②のmicro:bit・・・USBケーブルでつなぎ、WebUSB機能を使ってハートマークを表示するプログラムをmicro:bitにダウンロードする。
③~⑥のmicro:bit・・・購入したままで、有線接続での操作はいっさいしない状態
実験結果
①のmicro:bit | ②のmicro:bit | ③のmicro:bit | ④のmicro:bit | |
有線接続での事前書込 | HEXファイル書込 | WebUSB接続で書込 | 無し(新品のまま) | 無し(新品のまま) |
(A+B)+リセット途中に、早く放す | 問題なし (リセットすると通常に戻る) | 左に同じ | 左に同じ | 左に同じ |
ペアリング途中でアプリ側でキャンセル処理 | ペアリング失敗の「×」が表示 (リセットで通常に戻る)問題なし | 左に同じ | 左に同じ | 左に同じ |
ペアリング途中でmicro:bitのリセットボタンを押す | 問題なし (通常に戻る) | 左に同じ | 左に同じ | 左に同じ |
ペアリングモードにして放置 | 数分後、通常に戻る。問題なし | 左に同じ | 左に同じ | 左に同じ |
ペアリングモードにして、micro:bitアプリ上で「ペアリング」が出た後に、放置 | ペアリング失敗の「×」が表示するが、リセットで元に戻る。問題なし | 左に同じ | 左に同じ | 左に同じ |
ダウンロード途中でmicro:bitのリセットボタンを押す | リセット後、ペアリングモード待機中 (続きの書き込みで、通常に戻る) ※最後まで書き込まないと、ペアリングモードから抜け出られないので、注意 | 左に同じ | 「十」表示で ハングアップ | 左に同じ |
ダウンロード途中でmicro:bitの電源を切る | 同上 | 同上 | 同上 | 同上 |
この実験からiPadでプログラミングをする際
・購入した新品のmicro:bitは、一度パソコンと有線接続してプログラムを書き込む。一度有線接続で書き込んだmicro:bitは、以後iPadのダウンロード途中でのハングアップは起こりづらい。
・ダウンロード途中に、micro:bitのリセットボタンを押さない。
・もし、ダウンロード途中でリセットボタンを押してしまった場合は、ダウンロードを再開して終わらせる。
※ 他のバージョンのmicro:bitで調べたところ、V1.5,V2.0,V2.21ともに、この手法は有効でした。
最新のmicro:bitでも、購入直後の状態ではBluetooth通信中に問題を起こすことが分かりました。できたら、micro:bitの出荷段階で、この改善を行ってほしいものです。
今回の実験で、授業中のハングアップが少なくなり、よりスムーズに進むようになっていればいいですね。
来週の出前授業の際は、この対策したmicro:bitで行うので、またご報告します。
追加情報
普段は起こらないと思いますが、下記のように戻る現象もありますので、お気を付けください。
古いHexファイルをmicro:bitに入れると、元に戻って、またBluetooth通信中のハングアップが起こるようになります。具体的には、出荷時に入っている「(out of box.hex)」を入れると、また十字のハングアップが発生するようになります。(結局、この「out of box」ファイルは、ハングアップ対策前のファイルなのでしょう。
※最新のMakeCodeエディタで作成したファイルを転送することで、その後Bluetoothに関係するエラーが出なくなることは変わりません。
今回使用したHEXファイルは、こちらからダウンロードもできます。このファイルを、有線接続したmicro:bitのドライブに、ドラッグアンドドロップするとよいです。(「対策ファイル」と書いていますが、単にハートを出すだけのプログラムです)