diff --git a/docs/device/windows-app/troubleshoot.md b/docs/device/windows-app/troubleshoot.md new file mode 100644 index 00000000..ea04ea8d --- /dev/null +++ b/docs/device/windows-app/troubleshoot.md @@ -0,0 +1,37 @@ +# Troubleshooting downloads from the Windows 10 App + +Is Windows App not downloading your program properly? Let's try to figure out why! + +## Step 1: Check your cable + +Make sure that your @boardname@ is connected to your computer with a micro USB cable. You should see a **MICROBIT** drive appear in Windows Explorer when it's connected. + +If you can't see the drive: + +* Make sure that the USB cable is working. Does the cable work on another computer? If not, find a different cable to use. Some cables may only provide a power connection and don't actually transfer data. + +Is the cable good but you still can't see the **MICROBIT** drive? Hmm, you might have a problem with your @boardname@. Try the additional steps described in the [fault finding](https://support.microbit.org/support/solutions/articles/19000024000-fault-finding-with-a-micro-bit) page at microbit.org. If this doesn't help, you can create a [support ticket](https://support.microbit.org/support/tickets/new) to notify the Micro:bit Foundation of the problem. + +## Step 2: Check your firmware version + +It's possible that the firmware version on the @boardname@ needs an update. Let's check: + +1. Go to the **MICROBIT** drive. +2. Open the **DETAILS.TXT** file.
+![](/static/mb/device/mb-drive-contents.jpg)
+3. Look for a line in the file that says the version number. It should say **Version: \.\.\.** +![](/static/mb/device/details-txt.jpg)
+If the version is **0234**, you **NEED** to update the [firmware](/device/firmware) on your @boardname@. Follow the upgrade instructions described next. + +### Upgrade the firmware + +1. Put your @boardname@ into **Maintenence Mode**. To do this, unplug the USB cable from the @boardname@ and then re-connect the USB cable while you hold down the reset button. Once you insert the cable, you can release the reset button. +2. You should now see a **MAINTENENCE** drive instead of the **MICROBIT** drive like before. Also, a yellow LED light will stay on next to the reset button. +3. Go to the **[firmware upgrade](https://support.microbit.org/support/solutions/articles/19000019131-how-to-upgrade-the-firmware-on-the-micro-bit)** page at microbit.org. +4. Find the link for the `HEX` file at the bottom of the page. Right-click on the link and choose **Save link as** (your browser might say **Save target** or something similar). In the file dialog, click to select the **MAINTENENCE** drive. Press **Save** and the firmware file will copy to the @boardname@. +5. The yellow LED will flash while the `HEX` file is copying. When the copy finishes, the LED will go off and the @boardname@ resets. The **MAINTENENCE** drive now changes back to **MICROBIT**. +6. The upgrade is complete! You can open the **DETAILS.TXT** file to check and see that the firmware version changed to the match the version of the `HEX` file you copied. + +### ~hint +If you want to know more about connecting the board, Maintenence Mode, and upgrading the firmware, read about it in the [DAPLink on micro:bit](https://www.mbed.com/en/platform/hardware/prototyping-production/daplink/daplink-on-kl26z/) page. +### ~ \ No newline at end of file diff --git a/docs/static/mb/device/details-txt.jpg b/docs/static/mb/device/details-txt.jpg new file mode 100644 index 00000000..4a759afe Binary files /dev/null and b/docs/static/mb/device/details-txt.jpg differ diff --git a/docs/static/mb/device/mb-drive-contents.jpg b/docs/static/mb/device/mb-drive-contents.jpg new file mode 100644 index 00000000..d3b37439 Binary files /dev/null and b/docs/static/mb/device/mb-drive-contents.jpg differ diff --git a/editor/extension.ts b/editor/extension.ts index 1bdf317c..bab32f55 100644 --- a/editor/extension.ts +++ b/editor/extension.ts @@ -328,16 +328,11 @@ namespace pxt.editor { }) }) .catch(e => { - if (e.type === "devicenotfound" && d.reportError) { - if (d.reportError) { - d.reportError(Util.lf("Please connect your device.")) - } else { - pxt.reportException(e) - } + if (e.type === "devicenotfound" && d.reportDeviceNotFoundAsync) { + return d.reportDeviceNotFoundAsync("/device/windows-app/troubleshoot"); } else { return saveHexAsync() } - return Promise.resolve() }) } diff --git a/package.json b/package.json index f2f46a95..a0d7cdb5 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,6 @@ "semantic-ui-less": "^2.2.4" }, "dependencies": { - "pxt-core": "0.14.17" + "pxt-core": "0.14.18" } } diff --git a/pxtwapp/pxtwapp/package.appxmanifest b/pxtwapp/pxtwapp/package.appxmanifest index 6ff2f01f..7402c62d 100644 --- a/pxtwapp/pxtwapp/package.appxmanifest +++ b/pxtwapp/pxtwapp/package.appxmanifest @@ -14,7 +14,7 @@ - +