2023年2月のWindowsのアップデート以降、Windows端末において、hexファイルをmicro:bit本体へ書き込めないケースが発生しています。
ユーザー皆様のご参考になるよう、当社にて当事象を検証し、Micro:bit Educational Foundationの公開情報と合わせて、現時点の対処方法をお知らせいたします。
※ この問題については、Micro:bit Educational FoundationとMicrosoft社が連携し、9月のWindows Updateで修正が提供される予定です。(2023年8月3日追加情報)
※ 当社の関連ドキュメント「マイクロビット (micro:bit) のトラブルシューティング」
※ Micro:bit Educational Foundationの該当お知らせ「Error transferring file to the micro:bit since Windows update in February 2023」
1. 発生事象
1.1 発生条件
項目 | 詳細 |
対象OS・ 対象バージョン |
Windows10(22H2 OS Builds 1904x.2788 or later) Windows11(22H2 and 21H2 OS build 22621.1344 or later) |
発生条件と事象 |
作成済みのhexファイルを直接MICROBITドライブへの書き込み(コピーまたはドラッグ&ドロップ)を行う時に、下記の事象が発生する ・micro:bitにエラーが表示される ・Windowsにエラーが表示される ・書き込みが正常に終了しない |
1.2 エラー内容
分類 | エラーの表示箇所 | エラー詳細 |
エラー表示 | micro:bitのディスプレイ | 521 |
エラー表示 | micro:bitのディスプレイ | 504 |
エラー表示 | micro:bitのディスプレイ | 506 |
エラー表示 | micro:bitのディスプレイ | 537 |
エラー表示 | Windowsエラー | 0x800703EE, 0x800701B1 - Interrupted Action or Problem Copying |
書き込みが終了しない |
なし | 時間が経過しても書き込みが終了しない |
2. 対処方法
当社が検証を行った結果、現時点で最も成功率が高い書き込み方法は以下です。
下記方法を使って、プログラムをmicro:bitに書き込むことをおすすめいたします。
-
最初からプログラミングし、micro:bitに書き込む場合:
- ブラウザーを使ってMakeCodeにアクセスし、プログラミングを行います。
- MakeCodeのダウンロード機能(WebUSB機能)を利用してmicro:bitに書き込む。
- 該当エラーが発生する場合、ブラウザーを再起動し(ブラウザーを閉じるのではなく、ブラウザーアプリを一度終了する必要があります。)、複数回を試します。
-
以前MakeCodeで作成済みのhexファイルをmicro:bitに書き込む場合:
- ブラウザーを使ってMakeCodeにアクセスし、MakeCodeの画面にhexファイルをドラッグ&ドロップすることで、MakeCodeに作成済みのプログラムを読み込みます。
- MakeCodeにダウンロード機能(WebUSB機能)を利用してmicro:bitへ書き込む。
- 該当エラーが発生する場合、ブラウザーを再起動し(ブラウザーを閉じるのではなく、ブラウザーアプリを一度終了する必要があります。)、複数回を試します。
-
以前MakeCode以外で作成済みのhexファイルをmicro:bitに書き込む場合:
- 下記参考情報の「Windows端末でプログラムをmicro:bitに書き込む方法 」の方法①、または方法④を利用します。また、該当エラーが発生する場合、同じ方法で複数回を試します。
- 下記参考情報の「Windows端末でプログラムをmicro:bitに書き込む方法 」の方法②を複数回行う。該当エラーが発生する場合、ブラウザーを再起動し(ブラウザーを閉じるのではなく、ブラウザーアプリを一度終了する必要があります。)、複数回を試します。
3. 参考情報
3.1 Windows端末でプログラムをmicro:bitに書き込む方法
3.1.1 方法①:「MICROBITドライブ」に直接書き込む
- 概要:マウスやキーボード操作で、作成済みのhexファイルを直接 Windows OSで認識されている「MICRROBITドライブ」にコピーまたは、ドラッグ&ドロップすることで、プログラムをmicro:bit本体に書き込みます。
- 書き込むプログラム:作成済みhexファイル(いずれのエディターでプログラミングし、生成されたhexファイル)
- 書き込む際に利用するツール:エクスプローラー(Windows基本機能)
- 書き込む際に利用する技術:OSの基本機能
3.1.2 方法②:MakeCodeの「ダウンロード」機能で、micro:bit本体に書き込む
- 概要:Chrome等のブラウザーを使って、MakeCodeにアクセスします。プログラムを作成した後、MakeCodeのダウンロード機能(WebUSB機能)を使ってmicro:bit本体に書き込みます。
- 書き込むプログラム:MakeCodeでプログラミングしたコード
- 書き込む際に利用するツール:MakeCode(Chrome等のブラウザーでアクセス)
- 書き込む際に利用する技術:ブラウザーのWebUSB機能
3.1.3 方法③:「micro:bit WebUSB hex file flashing tool」ツールで、micro:bit本体に書き込む
- 概要:Chrome等のブラウザーを使って、「micro:bit WebUSB hex file flashing tool」にアクセスします。作成済みのhexファイルをブラウザーにドラッグ&ドロップすることで、プログラムをmicro:bit本体に書き込みます。
- 書き込むプログラム:作成済みhexファイル(いずれのエディターでプログラミングし、生成されたhexファイル)
- 書き込む際に利用するツール:micro:bit WebUSB hex file flashing tool(Chrome等のブラウザーでアクセス)
- 書き込む際に利用する技術:ブラウザーのWebUSB機能
3.1.4 方法④:Windowsのコマンドプロンプトで、micro:bit本体に書き込む
- 概要:Windowsのコマンドプロンプトのコマンド操作で、作成済みのhexファイルを直接 Windows OSで認識されている「MICRROBITドライブ」にコピーすることで、プログラムをmicro:bit本体に書き込みます。
- 書き込むプログラム:作成済みhexファイル(いずれのエディターでプログラミングし、生成されたhexファイル)
- 書き込む際に利用するツール:コマンドプロンプト(Windows基本機能)
- 書き込む際に利用する技術:OSの基本機能
3.2 弊社の検証結果(各書き込む方法の比較)
3.2.1 検証実施概要
上記書き込む方法を用いて、下記の条件で現在主要バージョンのmicro:bitへの書き込みテストを行いました。
テストの結果をご参考まで公開いたします。
※ 該当プログラムや実施タイミングによっては、書き込みの成功率に違いがありますので、あくまでも参考情報とさせていただきます。
前提項目 | 詳細 |
対象micro:bitとファームウェアのバージョン | ・V2.00(0255) ・V2.21(0257) |
書き込みテスト用サンプルプログラム |
過去エラーが発生したコード、またはそのコードで生成したhexファイル |
利用する端末のOSとバージョン | Windows11(OSビルド 22621.1702) |
テストの回数 | 5回(同じ方法と対象で5回ずつテストを行う) |
3.2.2 実施結果
micro:bit バージョン |
書き込む 方法 |
エラー回数 / テスト回数 |
micro:bit エラー |
備考 |
V2.00 |
方法① | 2/5 | 521 |
Fail.TXT(error: The hex file cannot be decoded. Checksum calculation failure occurred. type: transient, user) |
V2.00 |
方法② | 0/5 | ー | ー |
V2.00 | 方法③ | 5/5 | ー | 書き込みが終了しない ※1 |
V2.00 | 方法④ | 2/5 | 504 | Fail.TXT(error: error: The transfer timed out.type: transient, user) |
V2.21 | 方法① | 0/5 | ー | ー |
V2.21 | 方法② | 0/5 | ー | ー |
V2.21 | 方法③ | 2/5 | ー | 書き込みが終了しない ※1 |
V2.21 | 方法④ | 2/5 | 504 | Fail.TXT(error: error: The transfer timed out.type: transient, user) |
※1 テスト後、ブラウザーを再起動することで、書き込みが連続で成功することがあります。