Since an update to Windows in February 2023, we’ve seen an increase in the number of users with failures to flash the micro:bit by copying files to the MICROBIT drive.
We are actively investigating this issue and working with our partners to resolve it. This page will be updated as we learn more about it.
Affected operating systems:
Windows 10: 22H2 OS Builds 1904x.2788 or later
Windows 11: 22H2 and 21H2 OS build 22621.1344 or later
See Further Information below for How to find the OS build on Windows 10 or Windows 11
Copying files to the micro:bit sometimes fails on Windows:
This issue results in one of the following failures:
- The micro:bit shows error 521 on the display
- The micro:bit shows error 504 on the display
- The micro:bit shows error 506 on the display
- The micro:bit shows error 537 on the display
- Windows pops up an error about a failure (0x800703EE, 0x800701B1 - Interrupted Action or Problem Copying)
- The micro:bit takes a very long time to flash and then doesn’t show anything on the screen (Can be up to 2-3 mins)
- The micro:bit does not run your program and there is FAIL.TXT or ASSERT.TXT on the MICROBIT drive.
If you get a FAIL.TXT on the MICROBIT drive, the wording may look like this:
error: The hex file cannot be decoded. Checksum calculation failure occurred.
type: transient, user
Preferred workaround - Using WebUSB
The best and most reliable workaround for this problem is to use WebUSB to program your micro:bit. This is the preferred way to flash the BBC micro:bit in 2023.
WebUSB is a way for your browser to connect directly to the micro:bit. You do not need to drag and drop hex files onto the drive using this feature. It works in Chrome and Edge.
Instructions for MakeCode
You can follow the MakeCode documentation here: https://makecode.microbit.org/device/usb/webusb
Instructions for Micro:bit Python Editor
You can follow the Python Editor guide here:
If you have a hex file that does not open in one of these editors (MakeCode or Micro:bit Python Editor), you can use this tool to flash it to your micro:bit with web USB.
micro:bit WebUSB hex file flashing tool
Should you need a WebUSB troubleshooting guide, see here: https://support.microbit.org/en/support/solutions/articles/19000105428-webusb-troubleshooting
Should you need to update your firmware, see here: https://microbit.org/get-started/user-guide/firmware/
In our tests, failures do not always occur. For users that do not have access to WebUSB, we recommend using robocopy with the /z flag, (for restartable mode) from the built-in Windows Command Prompt app. The Command Prompt app is used to execute entered commands.
1. To launch the Command Prompt app, click on the Search bar in Windows 10 and type "Command", or on Windows 11 click on the magnify glass icon and type "Terminal" in the search bar
|Windows 10||Windows 11|
2. Click "open" on Windows 10 or Windows 11
|Windows 10||Windows 11|
3. A window will open with the title "Command Prompt"
4. When you save a hex file in MakeCode, the hex file by default is saved in your downloads folder.
|Option 1: save a hex file by clicking the blue disk icon option||Option 2: save a hex file by clicking the 3 dots (...) and selecting Download as file option|
5. When you open the Command Prompt window, you should find you have a flashing prompt, depending on your Windows setup, you may need to change the directory (cd) and list the files in a folder (dir) to locate the downloads folder.
6. For this example we will assume your MICROBIT drive is mounted as drive D:\
From your downloads folder type robocopy /z . D:\ microbit-flashing-heart.hex and press return
Note: the /z is a flag used by robocopy, the "." represents the current directory, and ".hex" must be included to identify the file to be copied
7. The file transfer should show output similar to the screenshot below, you should see your micro:bit to flash as usual and your program will run once the transfer is completed.
Raising a ticket with support
If none of the workarounds listed here works for you, then please raise a support ticket, and include the following information
- The version of the micro:bit you are using (V1.x/V2.x).
- The Operating System and version, (including OS build if Windows 10/11 PC).
- The DETAILS.TXT file from your micro:bit.
- A link to the editor you were using when this occurred – e.g. makecode.microbit.org.
- A copy of the .hex file or link to the program that caused the initial problem.
- The name of any anti-virus software you are running.
How do I find out the OS build on Windows 10:
1) Click on the Start button, select the Settings option
2) Select "System"
On the L.H.S of the new window there will be a list of options, choose "About" (last option)
4) On the R.H.S, the window will update to display Device and Windows specifications:
(The OS Build is still under investigation hence why it is not shown here)
How do I find out the OS build on Windows 11:
1) Right-click the Start button and select "System" from the options listed
2) A new window will open, from the list of options on the L.H.S select "System" again. On the R.H.S of the window, you will need to scroll down to the bottom, and select "About":
3) Scroll down the updated page to find the heading "Windows Specifications", where you will find the Windows Edition, Version, and OS build details:
(The OS build referenced here is a known version to cause an error when transferring files)