From cec2650464bcaa8116f0cc8d5ce773aafc6eabf7 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Wed, 21 Dec 2022 15:26:55 +0100 Subject: [PATCH 01/26] Bootloader reloading (non-AVR boards) This PR summarizes an forum post by Per giving instructions on how to burn the bootloader on non-AVR boards. --- .../assets/SWDMKR1000header.png | Bin 0 -> 78988 bytes .../assets/SWDpadsMKR1000.png | Bin 0 -> 87933 bytes .../assets/SWDpadsNano33IoT.png | Bin 0 -> 76324 bytes .../bootloader-reloading.md | 106 ++++++++++++++++++ 4 files changed, 106 insertions(+) create mode 100644 content/tutorials/generic/bootloader-reloading/assets/SWDMKR1000header.png create mode 100644 content/tutorials/generic/bootloader-reloading/assets/SWDpadsMKR1000.png create mode 100644 content/tutorials/generic/bootloader-reloading/assets/SWDpadsNano33IoT.png create mode 100644 content/tutorials/generic/bootloader-reloading/bootloader-reloading.md diff --git a/content/tutorials/generic/bootloader-reloading/assets/SWDMKR1000header.png b/content/tutorials/generic/bootloader-reloading/assets/SWDMKR1000header.png new file mode 100644 index 0000000000000000000000000000000000000000..570fe1a88ad4b93b36c6725c7b474140a0e51586 GIT binary patch literal 78988 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 z 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

BQ7s0fH|`UPGzTh} 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 F|Ji~lg0(*Y5!UxVzkcN&IirYsHBR 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

&9y<#F~pkX)ZzZ6Qzv1 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 bWFG$jvQYqqB3R6o`>(gUzyAP+{{a8l&DaVh literal 0 HcmV?d00001 diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md new file mode 100644 index 0000000000..1d14a59bfb --- /dev/null +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -0,0 +1,106 @@ +--- +title: Burn the bootloader on non-AVR boards +description: In this tutorial we will learn how to burn the bootloader on non-AVR boards. +difficulty: Advanced +featuredImage: 'clip' +--- + +The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. + +If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). + +The easiest way to burn the bootloader to classic AVR boards (UNO, Mega, Nano, etc.) is using **a second Arduino board** as a programmer, which is the method that will be covered below. + +# Step 1 +## You will need: +- An extra Arduino board that runs at 3.3 V to use as the programmer. + - ***Note***: certain Arduino boards can't be used with the sketch that converts it to a programmer. + - ***Working:*** SAMD architecture boards (e.g., MKR boards, Nano 33 IoT, Zero). + - ***Untested:*** AVR architecture boards (e.g., Mega), but the sketch does compile for them. + - ***Not working:*** Nano 33 BLE + - It is possible to use an Arduino board that runs at 5 V as the programmer, but you'll need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5 V logic levels, which would damage it. +- An SD slot. This could be built into your Arduino board (e.g., ([MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. +- An SD card that fits your SD slot. +- A way to connect the SD card to your computer. +- A way to make the connections to the SWD pins on your target Arduino board. For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, I like to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter 1 and cable for. + +# Step 2 +## Instructions +1) Connect an SD card to your computer. +2) Open this link in your browser: https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders +3) Click the folder that matches the name of your target board. +4) Click the file that ends in ```.bin``` +5) Click the **Download** button +6) Rename the downloaded file to ```fw.bin``` +7) Move ```fw.bin``` to the SD card. +8) Eject the SD card from your computer. +9) Plug the USB cable of the Arduino board you will be using as a programmer into your computer. +10) Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE's menus. +11) Wait for the download to finish. +12) In the **"Filter your search..."** field, type "Adafruit DAP library". +13) Press **Enter**. +14) Click on **"Adafruit DAP library by Adafruit"**. +15) Click the "Install" button. +16) Wait for the installation to finish. +17) Click the **Close** button. +18) Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. +19) Change this line: ```#define SD_CS 4``` + + according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., MKR Zero 9), then you can change this line: + + ```(!SD.begin(SD_CS)) { ``` + + to: + + ```if (!SD.begin()) {``` + +20) Select the correct board from the **Tools > Board** from the Arduino IDE's menus. +21) Select the correct port from the **Tools > Port** from the Arduino IDE's menus. +22) Select **Sketch > Upload** from the Arduino IDE's menus. +23) Wait for the upload to finish successfully. +24) Unplug the programmer Arduino board from your computer. +25) Plug the SD card into the SD slot connected to your Arduino board. +26) Connect the programmer Arduino board to the target Arduino board as follows: + + | Programmer | Target | + | ----------- | ----------- | + | VCC | +3V3 | + | 10 | SWDIO | + | 9 | SWCLK | + | GND | GND | + | 11 | RESETN | + + SWD pads on MKR boards other than MKR 1000: + + ![SWD pads on MKR boards other than MKR 1000](assets/SWDpadsMKR1000.png) + + MKR1000 SWD header pinout: + + ![SWD pads on MKR boards other than MKR 1000](assets/SWDMKR1000header.png) + + Nano 33 IoT SWD pads: + + ![SWD pads on MKR boards other than MKR 1000](assets/SWDpadsNano33IoT.png) + +27) Plug the USB cable of the programmer Arduino board into your computer. +28) Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. +29) Unplug the programmer Arduino board from your computer. +30) Disconnect the programmer Arduino board from the target Arduino board. + +## Alternatives +These are some alternatives to the "Adafruit DAP" method I described above. + +### Using a CMSIS-DAP debug probe as the programmer +If you have a CMSIS-DAP compliant debug probe, you can just do this instead: + +1) Connect the debug probe to your Arduino board. +2) Select **Tools > Programmer > Atmel EDBG** from the Arduino IDE's menus. +3) Select **Tools > Burn Bootloader** from the Arduino IDE's menus. - The "Burn Bootloader" process should now finish successfully. + +You can use [this little open source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/) + +### Using a J-Link as the programmer +Segger J-Link debug probes (e.g., J-Link EDU Mini) can be used with the Adalink software: +https://github.com/adafruit/Adafruit_Adalink + +This is a fairly complex procedure, so I recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. \ No newline at end of file From 414e114fd4343ce6ede40d0e386fdb33bcfa1f3e Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 22 Dec 2022 10:15:55 +0100 Subject: [PATCH 02/26] Structural FIxes --- .../bootloader-reloading.md | 114 ++++++++++-------- 1 file changed, 61 insertions(+), 53 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 1d14a59bfb..7c9c73e5dd 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -1,66 +1,68 @@ --- title: Burn the bootloader on non-AVR boards -description: In this tutorial we will learn how to burn the bootloader on non-AVR boards. +description: Learn how to burn the bootloader on non-AVR boards. difficulty: Advanced featuredImage: 'clip' --- -The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. +In this tutorial we will learn how to burn the bootloader on non-AVR boards using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. -If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). +>**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). -The easiest way to burn the bootloader to classic AVR boards (UNO, Mega, Nano, etc.) is using **a second Arduino board** as a programmer, which is the method that will be covered below. - -# Step 1 ## You will need: -- An extra Arduino board that runs at 3.3 V to use as the programmer. - - ***Note***: certain Arduino boards can't be used with the sketch that converts it to a programmer. - - ***Working:*** SAMD architecture boards (e.g., MKR boards, Nano 33 IoT, Zero). - - ***Untested:*** AVR architecture boards (e.g., Mega), but the sketch does compile for them. - - ***Not working:*** Nano 33 BLE - - It is possible to use an Arduino board that runs at 5 V as the programmer, but you'll need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5 V logic levels, which would damage it. +- An extra Arduino board that runs at 3.3V to use as the programmer. + +>**Note:** Certain Arduino boards can't be used with the sketch that converts it to a programmer. It is possible to use an Arduino board that runs at 5V as the programmer, but you will need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5V logic levels, which would damage it. + +| Working | UNtested | Not working | +| ----------- | ----------- |----------- | +| SAMD architecture boards | AVR architecture boards |Nano 33 BLE | + - An SD slot. This could be built into your Arduino board (e.g., ([MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. - An SD card that fits your SD slot. - A way to connect the SD card to your computer. -- A way to make the connections to the SWD pins on your target Arduino board. For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, I like to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter 1 and cable for. +- A way to make the connections to the SWD pins on your target Arduino board. For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter 1 and cable for. -# Step 2 ## Instructions -1) Connect an SD card to your computer. -2) Open this link in your browser: https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders -3) Click the folder that matches the name of your target board. -4) Click the file that ends in ```.bin``` -5) Click the **Download** button -6) Rename the downloaded file to ```fw.bin``` -7) Move ```fw.bin``` to the SD card. -8) Eject the SD card from your computer. -9) Plug the USB cable of the Arduino board you will be using as a programmer into your computer. -10) Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE's menus. -11) Wait for the download to finish. -12) In the **"Filter your search..."** field, type "Adafruit DAP library". -13) Press **Enter**. -14) Click on **"Adafruit DAP library by Adafruit"**. -15) Click the "Install" button. -16) Wait for the installation to finish. -17) Click the **Close** button. -18) Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. -19) Change this line: ```#define SD_CS 4``` +- Connect an SD card to your computer. +- Open this link in your browser: https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders +- Click the folder that matches the name of your target board. +- Click the file that ends in ```.bin``` +- Click the **Download** button +- Rename the downloaded file to ```fw.bin``` +- Move ```fw.bin``` to the SD card. +- Eject the SD card from your computer. +- Plug the USB cable of the Arduino board you will be using as a programmer into your computer. +- Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE's menus. +- Wait for the download to finish. +- In the **"Filter your search..."** field, type "Adafruit DAP library". +- Press **Enter**. +- Click on **"Adafruit DAP library by Adafruit"**. +- Click the **"Install"** button. +- Wait for the installation to finish. +- Click the **Close** button. +- Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. +- Change this line: ```#define SD_CS 4``` according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., MKR Zero 9), then you can change this line: - ```(!SD.begin(SD_CS)) { ``` + ``` + (!SD.begin(SD_CS)) { + ``` to: - ```if (!SD.begin()) {``` + ``` + if (!SD.begin()) { + ``` -20) Select the correct board from the **Tools > Board** from the Arduino IDE's menus. -21) Select the correct port from the **Tools > Port** from the Arduino IDE's menus. -22) Select **Sketch > Upload** from the Arduino IDE's menus. -23) Wait for the upload to finish successfully. -24) Unplug the programmer Arduino board from your computer. -25) Plug the SD card into the SD slot connected to your Arduino board. -26) Connect the programmer Arduino board to the target Arduino board as follows: +- Select the correct board from the **Tools > Board** from the Arduino IDE's menus. +- Select the correct port from the **Tools > Port** from the Arduino IDE's menus. +- Select **Sketch > Upload** from the Arduino IDE's menus. +- Wait for the upload to finish successfully. +- Unplug the programmer Arduino board from your computer. +- Plug the SD card into the SD slot connected to your Arduino board. +- Connect the programmer Arduino board to the target Arduino board as follows: | Programmer | Target | | ----------- | ----------- | @@ -82,25 +84,31 @@ The easiest way to burn the bootloader to classic AVR boards (UNO, Mega, Nano, e ![SWD pads on MKR boards other than MKR 1000](assets/SWDpadsNano33IoT.png) -27) Plug the USB cable of the programmer Arduino board into your computer. -28) Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. -29) Unplug the programmer Arduino board from your computer. -30) Disconnect the programmer Arduino board from the target Arduino board. +- Plug the USB cable of the programmer Arduino board into your computer. +- Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. +- Unplug the programmer Arduino board from your computer. +- Disconnect the programmer Arduino board from the target Arduino board. ## Alternatives -These are some alternatives to the "Adafruit DAP" method I described above. +These are some alternatives to the "Adafruit DAP" method described above. -### Using a CMSIS-DAP debug probe as the programmer +**Using a CMSIS-DAP debug probe as the programmer** If you have a CMSIS-DAP compliant debug probe, you can just do this instead: -1) Connect the debug probe to your Arduino board. -2) Select **Tools > Programmer > Atmel EDBG** from the Arduino IDE's menus. -3) Select **Tools > Burn Bootloader** from the Arduino IDE's menus. - The "Burn Bootloader" process should now finish successfully. +- Connect the debug probe to your Arduino board. +- Select **Tools > Programmer > Atmel EDBG** from the Arduino IDE's menus. +- Select **Tools > Burn Bootloader** from the Arduino IDE's menus. - The "Burn Bootloader" process should now finish successfully. You can use [this little open source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/) -### Using a J-Link as the programmer +**Using a J-Link as the programmer** Segger J-Link debug probes (e.g., J-Link EDU Mini) can be used with the Adalink software: https://github.com/adafruit/Adafruit_Adalink -This is a fairly complex procedure, so I recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. \ No newline at end of file +This is a fairly complex procedure, so we recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. + + See the table below for more information on which board you can use: + + - Working: SAMD architecture boards (e.g., MKR boards, Nano 33 IoT, Zero). + - Untested: AVR architecture boards (e.g., Mega), but the sketch does compile for them. + - Not working: Nano 33 BLE \ No newline at end of file From d6a3c8ed6473561edc9b64d67cbb125d0eecfb4d Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 22 Dec 2022 11:07:50 +0100 Subject: [PATCH 03/26] Content adjustments --- .../bootloader-reloading.md | 28 ++++++++----------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 7c9c73e5dd..eb8b965dcb 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -5,7 +5,7 @@ difficulty: Advanced featuredImage: 'clip' --- -In this tutorial we will learn how to burn the bootloader on non-AVR boards using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. +In this tutorial, we will learn how to burn the bootloader on non-AVR boards using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). @@ -14,14 +14,16 @@ In this tutorial we will learn how to burn the bootloader on non-AVR boards usin >**Note:** Certain Arduino boards can't be used with the sketch that converts it to a programmer. It is possible to use an Arduino board that runs at 5V as the programmer, but you will need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5V logic levels, which would damage it. -| Working | UNtested | Not working | +| Working | Untested | Not working | | ----------- | ----------- |----------- | | SAMD architecture boards | AVR architecture boards |Nano 33 BLE | -- An SD slot. This could be built into your Arduino board (e.g., ([MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. +- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. - An SD card that fits your SD slot. - A way to connect the SD card to your computer. -- A way to make the connections to the SWD pins on your target Arduino board. For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter 1 and cable for. +- A way to make the connections to the SWD pins on your target Arduino board. + +For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter and one cable for. ## Instructions - Connect an SD card to your computer. @@ -44,7 +46,7 @@ In this tutorial we will learn how to burn the bootloader on non-AVR boards usin - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. - Change this line: ```#define SD_CS 4``` - according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., MKR Zero 9), then you can change this line: + according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., [MKR Zero 9](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: ``` (!SD.begin(SD_CS)) { @@ -74,15 +76,15 @@ In this tutorial we will learn how to burn the bootloader on non-AVR boards usin SWD pads on MKR boards other than MKR 1000: - ![SWD pads on MKR boards other than MKR 1000](assets/SWDpadsMKR1000.png) + ![](assets/SWDpadsMKR1000.png) MKR1000 SWD header pinout: - ![SWD pads on MKR boards other than MKR 1000](assets/SWDMKR1000header.png) + ![](assets/SWDMKR1000header.png) Nano 33 IoT SWD pads: - ![SWD pads on MKR boards other than MKR 1000](assets/SWDpadsNano33IoT.png) + ![](assets/SWDpadsNano33IoT.png) - Plug the USB cable of the programmer Arduino board into your computer. - Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. @@ -99,16 +101,10 @@ If you have a CMSIS-DAP compliant debug probe, you can just do this instead: - Select **Tools > Programmer > Atmel EDBG** from the Arduino IDE's menus. - Select **Tools > Burn Bootloader** from the Arduino IDE's menus. - The "Burn Bootloader" process should now finish successfully. -You can use [this little open source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/) +You can use [this little open-source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/) **Using a J-Link as the programmer** Segger J-Link debug probes (e.g., J-Link EDU Mini) can be used with the Adalink software: https://github.com/adafruit/Adafruit_Adalink -This is a fairly complex procedure, so we recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. - - See the table below for more information on which board you can use: - - - Working: SAMD architecture boards (e.g., MKR boards, Nano 33 IoT, Zero). - - Untested: AVR architecture boards (e.g., Mega), but the sketch does compile for them. - - Not working: Nano 33 BLE \ No newline at end of file +This is a fairly complex procedure, so we recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. \ No newline at end of file From da7942710e48e0d97f88f4d1ef0e71fbdce3bc7c Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 22 Dec 2022 11:16:13 +0100 Subject: [PATCH 04/26] .md spacing fixes --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index eb8b965dcb..48d0867cfe 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -95,6 +95,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= These are some alternatives to the "Adafruit DAP" method described above. **Using a CMSIS-DAP debug probe as the programmer** + If you have a CMSIS-DAP compliant debug probe, you can just do this instead: - Connect the debug probe to your Arduino board. @@ -104,6 +105,7 @@ If you have a CMSIS-DAP compliant debug probe, you can just do this instead: You can use [this little open-source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/) **Using a J-Link as the programmer** + Segger J-Link debug probes (e.g., J-Link EDU Mini) can be used with the Adalink software: https://github.com/adafruit/Adafruit_Adalink From 9f2d9c48c5f27568cf25742c81127aa35bafcb3c Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 22 Dec 2022 11:30:26 +0100 Subject: [PATCH 05/26] Content Adjustments --- .../bootloader-reloading.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 48d0867cfe..8a976c43dc 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -14,24 +14,24 @@ In this tutorial, we will learn how to burn the bootloader on non-AVR boards usi >**Note:** Certain Arduino boards can't be used with the sketch that converts it to a programmer. It is possible to use an Arduino board that runs at 5V as the programmer, but you will need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5V logic levels, which would damage it. -| Working | Untested | Not working | +| Working | Untested | Not working | | ----------- | ----------- |----------- | -| SAMD architecture boards | AVR architecture boards |Nano 33 BLE | +| SAMD architecture boards | AVR architecture boards | Nano 33 BLE | - An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. - An SD card that fits your SD slot. - A way to connect the SD card to your computer. -- A way to make the connections to the SWD pins on your target Arduino board. +- A way to make the connections to the SWD pins on your target Arduino board. For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter and one cable for. ## Instructions - Connect an SD card to your computer. -- Open this link in your browser: https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders +- Open this link in your browser: https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders. - Click the folder that matches the name of your target board. -- Click the file that ends in ```.bin``` -- Click the **Download** button -- Rename the downloaded file to ```fw.bin``` +- Click the file that ends in ```.bin```. +- Click the **Download** button. +- Rename the downloaded file to ```fw.bin```. - Move ```fw.bin``` to the SD card. - Eject the SD card from your computer. - Plug the USB cable of the Arduino board you will be using as a programmer into your computer. @@ -44,9 +44,9 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Wait for the installation to finish. - Click the **Close** button. - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. -- Change this line: ```#define SD_CS 4``` +- Change this line: ```#define SD_CS 4```according to the Arduino pin connected to the SD CS pin. - according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., [MKR Zero 9](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: + If your board has a built-in SD slot (e.g., [MKR Zero 9](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: ``` (!SD.begin(SD_CS)) { @@ -94,7 +94,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= ## Alternatives These are some alternatives to the "Adafruit DAP" method described above. -**Using a CMSIS-DAP debug probe as the programmer** +### Using a CMSIS-DAP debug probe as the programmer If you have a CMSIS-DAP compliant debug probe, you can just do this instead: @@ -102,11 +102,11 @@ If you have a CMSIS-DAP compliant debug probe, you can just do this instead: - Select **Tools > Programmer > Atmel EDBG** from the Arduino IDE's menus. - Select **Tools > Burn Bootloader** from the Arduino IDE's menus. - The "Burn Bootloader" process should now finish successfully. -You can use [this little open-source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/) +You can use [this little open-source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/). -**Using a J-Link as the programmer** +### Using a J-Link as the programmer Segger J-Link debug probes (e.g., J-Link EDU Mini) can be used with the Adalink software: -https://github.com/adafruit/Adafruit_Adalink +https://github.com/adafruit/Adafruit_Adalink. This is a fairly complex procedure, so we recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. \ No newline at end of file From c7ac70e0ea3f6390e6240c491eac44acdbc43773 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 22 Dec 2022 11:45:02 +0100 Subject: [PATCH 06/26] missing space --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 8a976c43dc..81d0600258 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -44,7 +44,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Wait for the installation to finish. - Click the **Close** button. - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. -- Change this line: ```#define SD_CS 4```according to the Arduino pin connected to the SD CS pin. +- Change this line: ```#define SD_CS 4``` according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., [MKR Zero 9](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: From 88efd7fc7c6297eb428f55d67288b49a9dda9236 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 22 Dec 2022 11:48:00 +0100 Subject: [PATCH 07/26] updating header --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 81d0600258..f7203932be 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -9,7 +9,7 @@ In this tutorial, we will learn how to burn the bootloader on non-AVR boards usi >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). -## You will need: +## Requirements - An extra Arduino board that runs at 3.3V to use as the programmer. >**Note:** Certain Arduino boards can't be used with the sketch that converts it to a programmer. It is possible to use an Arduino board that runs at 5V as the programmer, but you will need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5V logic levels, which would damage it. From d21035a2ded81237c930348131903f0cd5d2ed2d Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:48:48 +0100 Subject: [PATCH 08/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index f7203932be..321371677c 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -46,7 +46,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. - Change this line: ```#define SD_CS 4``` according to the Arduino pin connected to the SD CS pin. - If your board has a built-in SD slot (e.g., [MKR Zero 9](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: + If your board has a built-in SD slot (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: ``` (!SD.begin(SD_CS)) { From 463444e28481d75365fd54082b667504a5644c67 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:49:04 +0100 Subject: [PATCH 09/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 321371677c..c489bee5b9 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -41,6 +41,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Press **Enter**. - Click on **"Adafruit DAP library by Adafruit"**. - Click the **"Install"** button. +- You may now get a dialog asking whether to install the library's dependencies. If so, click the **"Install All**" button. - Wait for the installation to finish. - Click the **Close** button. - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. From eaef233a55173fc747ad223301d70193a6e6bb55 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:49:21 +0100 Subject: [PATCH 10/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index c489bee5b9..1e92e8c308 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -43,7 +43,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Click the **"Install"** button. - You may now get a dialog asking whether to install the library's dependencies. If so, click the **"Install All**" button. - Wait for the installation to finish. -- Click the **Close** button. +- Close Library Manager - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. - Change this line: ```#define SD_CS 4``` according to the Arduino pin connected to the SD CS pin. From e73fc8c12c034ebb1cc6ffa2982d58eadde7ab60 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:49:33 +0100 Subject: [PATCH 11/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 1e92e8c308..4a435dd1b3 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -59,8 +59,8 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= if (!SD.begin()) { ``` -- Select the correct board from the **Tools > Board** from the Arduino IDE's menus. -- Select the correct port from the **Tools > Port** from the Arduino IDE's menus. +- Select the programmer Arduino board from Arduino IDE's **Tools > Board** menu. +- Select the port of the programmer Arduino board from Arduino IDE's **Tools > Port** menu. - Select **Sketch > Upload** from the Arduino IDE's menus. - Wait for the upload to finish successfully. - Unplug the programmer Arduino board from your computer. From 2665e0dba531ca18c634a5effe140b3bd2978a3f Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:49:53 +0100 Subject: [PATCH 12/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 4a435dd1b3..4091874ab3 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -70,10 +70,10 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= | Programmer | Target | | ----------- | ----------- | | VCC | +3V3 | - | 10 | SWDIO | - | 9 | SWCLK | + | 12 | SWDIO | + | 11 | SWCLK | | GND | GND | - | 11 | RESETN | + | 9 | RESETN | SWD pads on MKR boards other than MKR 1000: From 162da4c611a1d5bdb12efefaaa3263a9c98fa7b8 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:50:24 +0100 Subject: [PATCH 13/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 4091874ab3..8e047c4fb3 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -1,11 +1,11 @@ --- -title: Burn the bootloader on non-AVR boards -description: Learn how to burn the bootloader on non-AVR boards. +title: Burn the bootloader on SAMD boards +description: Learn how to burn the bootloader on SAMD boards. difficulty: Advanced featuredImage: 'clip' --- -In this tutorial, we will learn how to burn the bootloader on non-AVR boards using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. +In this tutorial, we will learn how to burn the bootloader on boards that use the ATSAMD21G18 microcontroller using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). From e09c2c569abdbc248b1dd108570e2feaea8c2fd1 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:50:47 +0100 Subject: [PATCH 14/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 8e047c4fb3..88970394c6 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -10,14 +10,7 @@ In this tutorial, we will learn how to burn the bootloader on boards that use th >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). ## Requirements -- An extra Arduino board that runs at 3.3V to use as the programmer. - ->**Note:** Certain Arduino boards can't be used with the sketch that converts it to a programmer. It is possible to use an Arduino board that runs at 5V as the programmer, but you will need to use level shifting circuitry on the programming lines to avoid exposing the target board to 5V logic levels, which would damage it. - -| Working | Untested | Not working | -| ----------- | ----------- |----------- | -| SAMD architecture boards | AVR architecture boards | Nano 33 BLE | - +- An extra SAMD-based Arduino board to use as the programmer. - An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. - An SD card that fits your SD slot. - A way to connect the SD card to your computer. From 17e7409bd1ef131ee0a6cb70bf6a5ed7ba21a3c8 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Thu, 12 Jan 2023 15:51:14 +0100 Subject: [PATCH 15/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../bootloader-reloading.md | 20 ------------------- 1 file changed, 20 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 88970394c6..eb2759110b 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -84,23 +84,3 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. - Unplug the programmer Arduino board from your computer. - Disconnect the programmer Arduino board from the target Arduino board. - -## Alternatives -These are some alternatives to the "Adafruit DAP" method described above. - -### Using a CMSIS-DAP debug probe as the programmer - -If you have a CMSIS-DAP compliant debug probe, you can just do this instead: - -- Connect the debug probe to your Arduino board. -- Select **Tools > Programmer > Atmel EDBG** from the Arduino IDE's menus. -- Select **Tools > Burn Bootloader** from the Arduino IDE's menus. - The "Burn Bootloader" process should now finish successfully. - -You can use [this little open-source debugger](https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/). - -### Using a J-Link as the programmer - -Segger J-Link debug probes (e.g., J-Link EDU Mini) can be used with the Adalink software: -https://github.com/adafruit/Adafruit_Adalink. - -This is a fairly complex procedure, so we recommend against this option unless you already own a J-Link and don't have the supplies on hand for one of the other options. \ No newline at end of file From 5961cd8111dcb2a5f0aa58c5cb668de2c3d498ad Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 12 Jan 2023 16:30:13 +0100 Subject: [PATCH 16/26] Adding alternative approach for bootloader burning --- .../{SWDpadsMKR1000.png => SWDpadsMKR.png} | Bin .../bootloader-reloading.md | 2 +- .../sd-card-bootloader-reloading.md | 78 ++++++++++++++++++ 3 files changed, 79 insertions(+), 1 deletion(-) rename content/tutorials/generic/bootloader-reloading/assets/{SWDpadsMKR1000.png => SWDpadsMKR.png} (100%) create mode 100644 content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md diff --git a/content/tutorials/generic/bootloader-reloading/assets/SWDpadsMKR1000.png b/content/tutorials/generic/bootloader-reloading/assets/SWDpadsMKR.png similarity index 100% rename from content/tutorials/generic/bootloader-reloading/assets/SWDpadsMKR1000.png rename to content/tutorials/generic/bootloader-reloading/assets/SWDpadsMKR.png diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index eb2759110b..ec1bbe7480 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -70,7 +70,7 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= SWD pads on MKR boards other than MKR 1000: - ![](assets/SWDpadsMKR1000.png) + ![](assets/SWDpadsMKR.png) MKR1000 SWD header pinout: diff --git a/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md new file mode 100644 index 0000000000..23d319063c --- /dev/null +++ b/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md @@ -0,0 +1,78 @@ +--- +title: Burn the bootloader on SAMD boards +description: Learn how to burn the bootloader on SAMD boards. +difficulty: Advanced +featuredImage: 'clip' +--- + +In this tutorial, we will learn how to burn the bootloader on boards that use the ATSAMD21G18 microcontroller using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. + +>**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). + +## Requirements +- An extra SAMD-based Arduino board to use as the programmer. +- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. +- An SD card that fits your SD slot. +- A way to connect the SD card to your computer. +- A way to make the connections to the SWD pins on your target Arduino board. + +## Instructions +- Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE menus. +- Wait for any index updates to finish. +- In the **"Filter your search..."** field, type `Adafruit DAP library` +- Press **Enter**. +- Click on "**Adafruit DAP library by Adafruit**". +- Click the **Install** button. +- Wait for the installation to finish. +- Close **Library Manager**. +- Select **File > Examples > Adafruit DAP library > samd21 > flash_MKR_bootloaders** from the Arduino IDE menus. + - despite the "MKR" in the sketch name, this also supports the [**Nano 33 IoT**](https://store.arduino.cc/products/arduino-nano-33-iot) +- Select your **programmer** Arduino board from Arduino IDE's **Tools > Board** menu. +- Select the port of the **programmer** Arduino board from Arduino IDE's **Tools > Port** menu. +- Select **Sketch > Upload** from the Arduino IDE menus. +- Wait for the upload to finish successfully. +- Unplug the **programmer** Arduino board from your computer. +- Connect the **programmer** Arduino board to the **target** Arduino board as follows: + | Programmer | Target | + | ---------- | ------ | + | VCC | +3V3 | + | 1 | SWDIO | + | 2 | SWCLK | + | GND | GND | + | 0 | RESETN | + +**SWD pads on MKR boards other than MKR 1000:** +![MKR SWD](assets/SWDpadsMKR.png) + + **MKR 1000 SWD header pinout:** +![MKR 1000 SWD](assets/SWDMKR1000header.png) + +**Nano 33 IoT SWD pads:* +![Nano 33 IoT SWD](assets/SWDpadsNano33IoT.png) + +- Plug the USB cable of the **programmer** Arduino board into your computer. +- Select **Tools > Serial Monitor** from the Arduino IDE menus. +- Select "No line ending" from the dropdown menu near the bottom right corner of the **Serial Monitor** window. + +You should see some instructions for using the sketch in the **Serial Monitor** output field.
+ This includes a menu of the boards supported by the sketch: + ```text + [...] + + Select Arduino MKR board to erase and flash with bootloader: + + Z -> Arduino Zero (6504 bytes) + MZ -> Arduino MKR Zero (6408 bytes) + 1000 -> Arduino MKR 1000 WIFI (6408 bytes) + 1010 -> Arduino MKR WIFI 1010 (7984 bytes) + + [...] + ``` + Find your **target** Arduino board on the list and note the code written to the left of it. + +- Type the code for the **target** Arduino board in the message field of **Serial Monitor**. +- Press the **Enter** key. +- The Serial Monitor output field should now show the board you selected and the progress of flashing the bootloader to the **target** Arduino board. + Wait for it to show "Done!" +- Unplug the **programmer** Arduino board from your computer. +- Disconnect the **programmer** Arduino board from the **target** Arduino board. \ No newline at end of file From c58549f0cc823b2b68c10a7efc8da254208e6564 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Thu, 12 Jan 2023 16:36:00 +0100 Subject: [PATCH 17/26] Fix md syntax --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- .../bootloader-reloading/sd-card-bootloader-reloading.md | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index ec1bbe7480..18c55e1fb7 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -83,4 +83,4 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= - Plug the USB cable of the programmer Arduino board into your computer. - Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. - Unplug the programmer Arduino board from your computer. -- Disconnect the programmer Arduino board from the target Arduino board. +- Disconnect the programmer Arduino board from the target Arduino board. \ No newline at end of file diff --git a/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md index 23d319063c..86dbe726fc 100644 --- a/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md @@ -20,9 +20,9 @@ In this tutorial, we will learn how to burn the bootloader on boards that use th - Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE menus. - Wait for any index updates to finish. - In the **"Filter your search..."** field, type `Adafruit DAP library` -- Press **Enter**. +- Press **Enter**. - Click on "**Adafruit DAP library by Adafruit**". -- Click the **Install** button. +- Click the **Install** button. - Wait for the installation to finish. - Close **Library Manager**. - Select **File > Examples > Adafruit DAP library > samd21 > flash_MKR_bootloaders** from the Arduino IDE menus. @@ -54,7 +54,7 @@ In this tutorial, we will learn how to burn the bootloader on boards that use th - Select **Tools > Serial Monitor** from the Arduino IDE menus. - Select "No line ending" from the dropdown menu near the bottom right corner of the **Serial Monitor** window. -You should see some instructions for using the sketch in the **Serial Monitor** output field.
+You should see some instructions for using the sketch in the **Serial Monitor** output field. This includes a menu of the boards supported by the sketch: ```text [...] @@ -71,7 +71,7 @@ You should see some instructions for using the sketch in the **Serial Monitor** Find your **target** Arduino board on the list and note the code written to the left of it. - Type the code for the **target** Arduino board in the message field of **Serial Monitor**. -- Press the **Enter** key. +- Press the **Enter** key. - The Serial Monitor output field should now show the board you selected and the progress of flashing the bootloader to the **target** Arduino board. Wait for it to show "Done!" - Unplug the **programmer** Arduino board from your computer. From 5d89e4d4a50db1bf17b72700df27959ce8a71a51 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Fri, 13 Jan 2023 15:07:33 +0100 Subject: [PATCH 18/26] Mergin both approaches Instead of splitting the sd card & non-sd card approach into different files, I've put them together. --- .../bootloader-reloading.md | 128 +++++++++++++++--- .../sd-card-bootloader-reloading.md | 78 ----------- 2 files changed, 106 insertions(+), 100 deletions(-) delete mode 100644 content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 18c55e1fb7..ec37cdef4d 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -7,58 +7,118 @@ featuredImage: 'clip' In this tutorial, we will learn how to burn the bootloader on boards that use the ATSAMD21G18 microcontroller using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. +Below you will find two different approaches to burning the bootloader: +- The first approach uses an SD card and should be used when wanting to flash a different board than the ones bundled with the "flash_MKR_bootloaders" (check out the [Github repository](https://github.com/adafruit/Adafruit_DAP) for more information). + +- The second approach does not require a SD card and should be used by users who want the easiest solution. + >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). -## Requirements -- An extra SAMD-based Arduino board to use as the programmer. -- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. +## SD card +### Requirements +- An extra SAMD-based Arduino board to use as the programmer. +- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1*17dcyg9*_ga*MjEyMzQ2MjgwOC4xNjY1NjUyNTY3*_ga_NEXN8H46L5*MTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKRSD Proto](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1*1xs1eol*_ga*MjEyMzQ2MjgwOC4xNjY1NjUyNTY3*_ga_NEXN8H46L5*MTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. - An SD card that fits your SD slot. - A way to connect the SD card to your computer. -- A way to make the connections to the SWD pins on your target Arduino board. +- A way to make connections to the SWD pins on your target Arduino board. + +For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the **MKR Boards** other than **MKR1000** ([tutorial](https://support.arduino.cc/hc/en-us/articles/360014905199-How-to-burn-the-bootloader-to-Arduino-MKR1000-using-a-programmer?queryID=ae55269235f9756d76c0b66bbb8ffa69)), we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. + +On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. -For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the MKR Boards other than MKR1000, we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter and one cable for. +On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an [adapter](https://www.adafruit.com/product/2743) and one [cable](https://www.adafruit.com/product/1675) for. -## Instructions -- Connect an SD card to your computer. -- Open this link in your browser: https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders. +### Instructions +- Connect the SD card to your computer. +- Open [this link](https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders) in your browser. - Click the folder that matches the name of your target board. - Click the file that ends in ```.bin```. - Click the **Download** button. - Rename the downloaded file to ```fw.bin```. - Move ```fw.bin``` to the SD card. - Eject the SD card from your computer. -- Plug the USB cable of the Arduino board you will be using as a programmer into your computer. -- Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE's menus. -- Wait for the download to finish. +- Connect the Arduino board you will be using as a programmer to your computer via USB. +- Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE's menu. +- Wait for the index to finish. - In the **"Filter your search..."** field, type "Adafruit DAP library". - Press **Enter**. - Click on **"Adafruit DAP library by Adafruit"**. - Click the **"Install"** button. - You may now get a dialog asking whether to install the library's dependencies. If so, click the **"Install All**" button. - Wait for the installation to finish. -- Close Library Manager -- Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menus. +- Close Library Manager. +- Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menu. - Change this line: ```#define SD_CS 4``` according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: ``` - (!SD.begin(SD_CS)) { + (!SD.begin(SD_CS)) {... ``` to: ``` - if (!SD.begin()) { + if (!SD.begin()) {... ``` - Select the programmer Arduino board from Arduino IDE's **Tools > Board** menu. - Select the port of the programmer Arduino board from Arduino IDE's **Tools > Port** menu. -- Select **Sketch > Upload** from the Arduino IDE's menus. +- Select **Sketch > Upload** from the Arduino IDE's menu. - Wait for the upload to finish successfully. -- Unplug the programmer Arduino board from your computer. +- Unplug the **programmer** Arduino board from your computer. - Plug the SD card into the SD slot connected to your Arduino board. -- Connect the programmer Arduino board to the target Arduino board as follows: +- Connect the **programmer** Arduino board to the target Arduino board as follows: + + | Programmer | Target | + | ----------- | ----------- | + | VCC | +3V3 | + | 12 | SWDIO | + | 11 | SWCLK | + | GND | GND | + | 9 | RESETN | + + SWD pads on MKR boards other than MKR 1000: + + ![](assets/SWDpadsMKR.png) + + MKR1000 SWD header pinout: + + ![](assets/SWDMKR1000header.png) + + Nano 33 IoT SWD pads: + + ![](assets/SWDpadsNano33IoT.png) + +- Plug the USB cable of the **programmer** Arduino board into your computer. +- Select **Tools > Serial Monitor** from the Arduino IDE's menu. You should now see the Serial Monitor output showing the **target** board detected, and the bootloader file flashed to it successfully. +- Unplug the **programmer** Arduino board from your computer. +- Disconnect the programmer Arduino board from the target Arduino board. + +**Congratulations** you have now successfully burned the bootloader on your Arduino board and can go back to upload sketches like before. + +## No SD card +### Requirements +- An extra SAMD-based Arduino board to use as the programmer. +- A way to make connections to the SWD pins on your target Arduino board. + +### Instructions +- Plug the USB cable of the Arduino board you will be using as a programmer into your computer. +- Select **Sketch > Include Library > Manage Libraries…** from the Arduino IDE menu. +- Wait for the index updates to finish. +- In the "**Filter your search…**” field type ‘Adafruit DAP library’. +- Press **Enter**. +- Click on “**Adafruit DAP library by Adafruit**”. +- Click the **Install** button. +- You may now get a dialog asking whether to install the library's dependencies. If so, click the "**Install All**" button. +- Wait for the installation to finish +- Close the **Library Manager** +- Select **File > Example > Adafruit DAP Library > samd21 > flash_MKR_bootloaders** from the Arduino IDE menu. (despite the “MKR” in the sketch name, this also supports the **Nano 33 IoT**). +- Select your **programmer** Arduino board from the IDE’s **Tools > Board** menu. +- Select the port of the **programmer** Arduino board from the Arduino IDE’s Tools > Port menu. +- Select **Sketch > Upload** from the Arduino IDE menu. +- Unplug the **programmer** Arduino board from your computer. +- Connect the **programmer** Arduino board to the target Arduino board as follows: | Programmer | Target | | ----------- | ----------- | @@ -80,7 +140,31 @@ For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl= ![](assets/SWDpadsNano33IoT.png) -- Plug the USB cable of the programmer Arduino board into your computer. -- Select **Tools > Serial Monitor** from the Arduino IDE's menus. You should now see the Serial Monitor output showing the target board detected, and the bootloader file flashed to it successfully. -- Unplug the programmer Arduino board from your computer. -- Disconnect the programmer Arduino board from the target Arduino board. \ No newline at end of file +- Plug the USB cable of the **programmer** Arduino board into your computer. +- Select **Tools > Serial Monitor** from the Arduino IDE’s menu. +- Select "**No line ending**” from the dropdown menu near the bottom right corner of the **Serial Monitor** window. +- You should now see some instructions for using the sketch in the **Serial Monitor** output field. + +This includes a menu of the boards supported by the sketch: + + ``` + [...] + + Select Arduino MKR board to erase and flash with bootloader: + + Z -> Arduino Zero (6504 bytes) + MZ -> Arduino MKR Zero (6408 bytes) + 1000 -> Arduino MKR 1000 WIFI (6408 bytes) + 1010 -> Arduino MKR WIFI 1010 (7984 bytes) + + [...] + ``` +- Find your **target** Arduino board on the list and note the code written to the left of it. +- Type the code for the **target** Arduino board in the message field of the Serial Monitor. +- Press **Enter** +- The Serial Monitor Output field should now show the board you selected and the progress of flashing the bootloader to the **target** Arduino board. +- Wait for it to show “Done!” +- Unplug the **programmer** Arduino board from your computer. +- Disconnect the programmer Arduino board from the target Arduino board. + +**Congratulations** you have now successfully burned the bootloader on your Arduino board and can go back to upload sketches like before. \ No newline at end of file diff --git a/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md deleted file mode 100644 index 86dbe726fc..0000000000 --- a/content/tutorials/generic/bootloader-reloading/sd-card-bootloader-reloading.md +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Burn the bootloader on SAMD boards -description: Learn how to burn the bootloader on SAMD boards. -difficulty: Advanced -featuredImage: 'clip' ---- - -In this tutorial, we will learn how to burn the bootloader on boards that use the ATSAMD21G18 microcontroller using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. - ->**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). - -## Requirements -- An extra SAMD-based Arduino board to use as the programmer. -- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1%2A17dcyg9%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKR SD Proto Shield](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1%2A1xs1eol%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. -- An SD card that fits your SD slot. -- A way to connect the SD card to your computer. -- A way to make the connections to the SWD pins on your target Arduino board. - -## Instructions -- Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE menus. -- Wait for any index updates to finish. -- In the **"Filter your search..."** field, type `Adafruit DAP library` -- Press **Enter**. -- Click on "**Adafruit DAP library by Adafruit**". -- Click the **Install** button. -- Wait for the installation to finish. -- Close **Library Manager**. -- Select **File > Examples > Adafruit DAP library > samd21 > flash_MKR_bootloaders** from the Arduino IDE menus. - - despite the "MKR" in the sketch name, this also supports the [**Nano 33 IoT**](https://store.arduino.cc/products/arduino-nano-33-iot) -- Select your **programmer** Arduino board from Arduino IDE's **Tools > Board** menu. -- Select the port of the **programmer** Arduino board from Arduino IDE's **Tools > Port** menu. -- Select **Sketch > Upload** from the Arduino IDE menus. -- Wait for the upload to finish successfully. -- Unplug the **programmer** Arduino board from your computer. -- Connect the **programmer** Arduino board to the **target** Arduino board as follows: - | Programmer | Target | - | ---------- | ------ | - | VCC | +3V3 | - | 1 | SWDIO | - | 2 | SWCLK | - | GND | GND | - | 0 | RESETN | - -**SWD pads on MKR boards other than MKR 1000:** -![MKR SWD](assets/SWDpadsMKR.png) - - **MKR 1000 SWD header pinout:** -![MKR 1000 SWD](assets/SWDMKR1000header.png) - -**Nano 33 IoT SWD pads:* -![Nano 33 IoT SWD](assets/SWDpadsNano33IoT.png) - -- Plug the USB cable of the **programmer** Arduino board into your computer. -- Select **Tools > Serial Monitor** from the Arduino IDE menus. -- Select "No line ending" from the dropdown menu near the bottom right corner of the **Serial Monitor** window. - -You should see some instructions for using the sketch in the **Serial Monitor** output field. - This includes a menu of the boards supported by the sketch: - ```text - [...] - - Select Arduino MKR board to erase and flash with bootloader: - - Z -> Arduino Zero (6504 bytes) - MZ -> Arduino MKR Zero (6408 bytes) - 1000 -> Arduino MKR 1000 WIFI (6408 bytes) - 1010 -> Arduino MKR WIFI 1010 (7984 bytes) - - [...] - ``` - Find your **target** Arduino board on the list and note the code written to the left of it. - -- Type the code for the **target** Arduino board in the message field of **Serial Monitor**. -- Press the **Enter** key. -- The Serial Monitor output field should now show the board you selected and the progress of flashing the bootloader to the **target** Arduino board. - Wait for it to show "Done!" -- Unplug the **programmer** Arduino board from your computer. -- Disconnect the **programmer** Arduino board from the **target** Arduino board. \ No newline at end of file From b1551ee7e5a4a78f97b5997be238977e13c02e02 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Fri, 13 Jan 2023 15:32:12 +0100 Subject: [PATCH 19/26] Fix md syntax --- .../bootloader-reloading.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index ec37cdef4d..8da8600b8c 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -32,10 +32,10 @@ On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, whi - Connect the SD card to your computer. - Open [this link](https://github.com/arduino/ArduinoCore-samd/tree/master/bootloaders) in your browser. - Click the folder that matches the name of your target board. -- Click the file that ends in ```.bin```. +- Click the file that ends in `.bin` - Click the **Download** button. -- Rename the downloaded file to ```fw.bin```. -- Move ```fw.bin``` to the SD card. +- Rename the downloaded file to `fw.bin` +- Move `fw.bin` to the SD card. - Eject the SD card from your computer. - Connect the Arduino board you will be using as a programmer to your computer via USB. - Select **Sketch > Include Library > Manage Libraries...** from the Arduino IDE's menu. @@ -48,19 +48,19 @@ On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, whi - Wait for the installation to finish. - Close Library Manager. - Select **File > Examples > Adafruit DAP library > samd21 > flash_from_SD** from the Arduino IDE's menu. -- Change this line: ```#define SD_CS 4``` according to the Arduino pin connected to the SD CS pin. +- Change this line: `#define SD_CS 4` according to the Arduino pin connected to the SD CS pin. If your board has a built-in SD slot (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), then you can change this line: - ``` - (!SD.begin(SD_CS)) {... - ``` + ` + (!SD.begin(SD_CS)) { + ` to: - ``` - if (!SD.begin()) {... - ``` + ` + if (!SD.begin()) { + ` - Select the programmer Arduino board from Arduino IDE's **Tools > Board** menu. - Select the port of the programmer Arduino board from Arduino IDE's **Tools > Port** menu. @@ -147,7 +147,7 @@ On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, whi This includes a menu of the boards supported by the sketch: - ``` + ` [...] Select Arduino MKR board to erase and flash with bootloader: @@ -158,7 +158,7 @@ This includes a menu of the boards supported by the sketch: 1010 -> Arduino MKR WIFI 1010 (7984 bytes) [...] - ``` + ` - Find your **target** Arduino board on the list and note the code written to the left of it. - Type the code for the **target** Arduino board in the message field of the Serial Monitor. - Press **Enter** From fd4acf437ae28aa0ab0e0f86086c5317e25bff6d Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:56:29 +0100 Subject: [PATCH 20/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 8da8600b8c..741d1022f4 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -8,7 +8,7 @@ featuredImage: 'clip' In this tutorial, we will learn how to burn the bootloader on boards that use the ATSAMD21G18 microcontroller using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. Below you will find two different approaches to burning the bootloader: -- The first approach uses an SD card and should be used when wanting to flash a different board than the ones bundled with the "flash_MKR_bootloaders" (check out the [Github repository](https://github.com/adafruit/Adafruit_DAP) for more information). +- [The first approach](#sd-card) uses an SD card and should be used when wanting to flash a different bootloader than the ones bundled with the "flash_MKR_bootloaders" sketch. - The second approach does not require a SD card and should be used by users who want the easiest solution. From c89851a95910e66f905ac2f8266f846b7e407029 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:56:59 +0100 Subject: [PATCH 21/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 741d1022f4..f9c8fd0eb6 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -10,7 +10,7 @@ In this tutorial, we will learn how to burn the bootloader on boards that use th Below you will find two different approaches to burning the bootloader: - [The first approach](#sd-card) uses an SD card and should be used when wanting to flash a different bootloader than the ones bundled with the "flash_MKR_bootloaders" sketch. -- The second approach does not require a SD card and should be used by users who want the easiest solution. +- [The second approach](#no-sd-card) does not require an SD card and should be used by users who want the easiest solution. >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). From fba50c8ac8354ace930f3ccac625a60adbf23ca8 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:57:17 +0100 Subject: [PATCH 22/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index f9c8fd0eb6..e34881956c 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -17,7 +17,7 @@ Below you will find two different approaches to burning the bootloader: ## SD card ### Requirements - An extra SAMD-based Arduino board to use as the programmer. -- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data?_gl=1*17dcyg9*_ga*MjEyMzQ2MjgwOC4xNjY1NjUyNTY3*_ga_NEXN8H46L5*MTY3MTYyNzMzMS4xNjEuMS4xNjcxNjI5ODA2LjAuMC4w)), a shield (e.g., [MKRSD Proto](https://store.arduino.cc/products/mkr-sd-proto-shield?_gl=1*1xs1eol*_ga*MjEyMzQ2MjgwOC4xNjY1NjUyNTY3*_ga_NEXN8H46L5*MTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwMzgxLjAuMC4w)), or one of the common SD modules. +- An SD slot. This could be built into your Arduino board (e.g., [MKR Zero](https://store.arduino.cc/products/arduino-mkr-zero-i2s-bus-sd-for-sound-music-digital-audio-data)), a shield (e.g., [MKR SD Proto](https://store.arduino.cc/products/mkr-sd-proto-shield)), or one of the common SD modules. - An SD card that fits your SD slot. - A way to connect the SD card to your computer. - A way to make connections to the SWD pins on your target Arduino board. From f76e56716dd5e9655147c7d69410249843e12a8f Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:57:28 +0100 Subject: [PATCH 23/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index e34881956c..0fabf6d9ee 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -22,7 +22,7 @@ Below you will find two different approaches to burning the bootloader: - A way to connect the SD card to your computer. - A way to make connections to the SWD pins on your target Arduino board. -For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the **MKR Boards** other than **MKR1000** ([tutorial](https://support.arduino.cc/hc/en-us/articles/360014905199-How-to-burn-the-bootloader-to-Arduino-MKR1000-using-a-programmer?queryID=ae55269235f9756d76c0b66bbb8ffa69)), we found it the easiest to use a 0.1" pitch 2x3 POGO adapter. You could also solder wires to the test points if you prefer. +For the [Nano 33 IoT](https://store.arduino.cc/products/arduino-nano-33-iot?_gl=1%2A80ta1j%2A_ga%2AMjEyMzQ2MjgwOC4xNjY1NjUyNTY3%2A_ga_NEXN8H46L5%2AMTY3MTYyNzMzMS4xNjEuMS4xNjcxNjMwNDIwLjAuMC4w) and the **MKR Boards** other than **MKR1000** ([tutorial](https://support.arduino.cc/hc/en-us/articles/360014905199-How-to-burn-the-bootloader-to-Arduino-MKR1000-using-a-programmer?queryID=ae55269235f9756d76c0b66bbb8ffa69)), we found it the easiest to use a 0.1" pitch 2x3 pogo adapter. You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header. From 73764039b5af86646311a167d277f39d3f5fadca Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Mon, 16 Jan 2023 11:57:52 +0100 Subject: [PATCH 24/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 0fabf6d9ee..ad242b083a 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -123,10 +123,10 @@ On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, whi | Programmer | Target | | ----------- | ----------- | | VCC | +3V3 | - | 12 | SWDIO | - | 11 | SWCLK | + | 1 | SWDIO | + | 2 | SWCLK | | GND | GND | - | 9 | RESETN | + | 0 | RESETN | SWD pads on MKR boards other than MKR 1000: From 7227edbed8d5470dd13235620c52e2f3a0dd4cc1 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher <60609597+Hannes7eicher@users.noreply.github.com> Date: Mon, 16 Jan 2023 12:01:18 +0100 Subject: [PATCH 25/26] Update content/tutorials/generic/bootloader-reloading/bootloader-reloading.md Co-authored-by: per1234 --- .../generic/bootloader-reloading/bootloader-reloading.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index ad242b083a..3eaec169d1 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -145,7 +145,7 @@ On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, whi - Select "**No line ending**” from the dropdown menu near the bottom right corner of the **Serial Monitor** window. - You should now see some instructions for using the sketch in the **Serial Monitor** output field. -This includes a menu of the boards supported by the sketch: + This includes a menu of the boards supported by the sketch: ` [...] From 3827b0b9a394ae5328e189a00843dd70ff598861 Mon Sep 17 00:00:00 2001 From: Hannes Siebeneicher Date: Mon, 16 Jan 2023 13:05:44 +0100 Subject: [PATCH 26/26] Change the order, showing the user the easier approach first --- .../bootloader-reloading.md | 148 +++++++++--------- 1 file changed, 74 insertions(+), 74 deletions(-) diff --git a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md index 3eaec169d1..ae82613290 100644 --- a/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md +++ b/content/tutorials/generic/bootloader-reloading/bootloader-reloading.md @@ -8,12 +8,84 @@ featuredImage: 'clip' In this tutorial, we will learn how to burn the bootloader on boards that use the ATSAMD21G18 microcontroller using another Arduino board. The bootloader is a small piece of software that allows uploading sketches onto the Arduino board. It comes preprogrammed on the microcontrollers on Arduino boards. Whether the bootloader has been corrupted or intentionally has been removed, it can be restored by burning (also called, flashing or programming) a new bootloader to the board. Below you will find two different approaches to burning the bootloader: -- [The first approach](#sd-card) uses an SD card and should be used when wanting to flash a different bootloader than the ones bundled with the "flash_MKR_bootloaders" sketch. +- [The first approach](#no-sd-card) does not require an SD card and should be used by users who want the easiest solution. -- [The second approach](#no-sd-card) does not require an SD card and should be used by users who want the easiest solution. +- [The second approach](#sd-card) uses an SD card and should be used when wanting to flash a different bootloader than the ones bundled with the "flash_MKR_bootloaders" sketch. >**Note:** If you want to burn the bootloader on AVR boards such as an UNO, Mega, and classic Nano you can check out [these instructions](https://support.arduino.cc/hc/en-us/articles/4841602539164-Burn-the-bootloader-on-UNO-Mega-and-classic-Nano-using-another-Arduino). +## No SD card +### Requirements +- An extra SAMD-based Arduino board to use as the programmer. +- A way to make connections to the SWD pins on your target Arduino board. + +### Instructions +- Plug the USB cable of the Arduino board you will be using as a programmer into your computer. +- Select **Sketch > Include Library > Manage Libraries…** from the Arduino IDE menu. +- Wait for the index updates to finish. +- In the "**Filter your search…**” field type ‘Adafruit DAP library’. +- Press **Enter**. +- Click on “**Adafruit DAP library by Adafruit**”. +- Click the **Install** button. +- You may now get a dialog asking whether to install the library's dependencies. If so, click the "**Install All**" button. +- Wait for the installation to finish +- Close the **Library Manager** +- Select **File > Example > Adafruit DAP Library > samd21 > flash_MKR_bootloaders** from the Arduino IDE menu. (despite the “MKR” in the sketch name, this also supports the **Nano 33 IoT**). +- Select your **programmer** Arduino board from the IDE’s **Tools > Board** menu. +- Select the port of the **programmer** Arduino board from the Arduino IDE’s Tools > Port menu. +- Select **Sketch > Upload** from the Arduino IDE menu. +- Unplug the **programmer** Arduino board from your computer. +- Connect the **programmer** Arduino board to the target Arduino board as follows: + + | Programmer | Target | + | ----------- | ----------- | + | VCC | +3V3 | + | 1 | SWDIO | + | 2 | SWCLK | + | GND | GND | + | 0 | RESETN | + + SWD pads on MKR boards other than MKR 1000: + + ![](assets/SWDpadsMKR.png) + + MKR1000 SWD header pinout: + + ![](assets/SWDMKR1000header.png) + + Nano 33 IoT SWD pads: + + ![](assets/SWDpadsNano33IoT.png) + +- Plug the USB cable of the **programmer** Arduino board into your computer. +- Select **Tools > Serial Monitor** from the Arduino IDE’s menu. +- Select "**No line ending**” from the dropdown menu near the bottom right corner of the **Serial Monitor** window. +- You should now see some instructions for using the sketch in the **Serial Monitor** output field. + + This includes a menu of the boards supported by the sketch: + + ``` + [...] + + Select Arduino MKR board to erase and flash with bootloader: + + Z -> Arduino Zero (6504 bytes) + MZ -> Arduino MKR Zero (6408 bytes) + 1000 -> Arduino MKR 1000 WIFI (6408 bytes) + 1010 -> Arduino MKR WIFI 1010 (7984 bytes) + + [...] + ``` +- Find your **target** Arduino board on the list and note the code written to the left of it. +- Type the code for the **target** Arduino board in the message field of the Serial Monitor. +- Press **Enter** +- The Serial Monitor Output field should now show the board you selected and the progress of flashing the bootloader to the **target** Arduino board. +- Wait for it to show “Done!” +- Unplug the **programmer** Arduino board from your computer. +- Disconnect the programmer Arduino board from the target Arduino board. + +**Congratulations** you have now successfully burned the bootloader on your Arduino board and can go back to upload sketches like before. + ## SD card ### Requirements - An extra SAMD-based Arduino board to use as the programmer. @@ -95,76 +167,4 @@ On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, whi - Unplug the **programmer** Arduino board from your computer. - Disconnect the programmer Arduino board from the target Arduino board. -**Congratulations** you have now successfully burned the bootloader on your Arduino board and can go back to upload sketches like before. - -## No SD card -### Requirements -- An extra SAMD-based Arduino board to use as the programmer. -- A way to make connections to the SWD pins on your target Arduino board. - -### Instructions -- Plug the USB cable of the Arduino board you will be using as a programmer into your computer. -- Select **Sketch > Include Library > Manage Libraries…** from the Arduino IDE menu. -- Wait for the index updates to finish. -- In the "**Filter your search…**” field type ‘Adafruit DAP library’. -- Press **Enter**. -- Click on “**Adafruit DAP library by Adafruit**”. -- Click the **Install** button. -- You may now get a dialog asking whether to install the library's dependencies. If so, click the "**Install All**" button. -- Wait for the installation to finish -- Close the **Library Manager** -- Select **File > Example > Adafruit DAP Library > samd21 > flash_MKR_bootloaders** from the Arduino IDE menu. (despite the “MKR” in the sketch name, this also supports the **Nano 33 IoT**). -- Select your **programmer** Arduino board from the IDE’s **Tools > Board** menu. -- Select the port of the **programmer** Arduino board from the Arduino IDE’s Tools > Port menu. -- Select **Sketch > Upload** from the Arduino IDE menu. -- Unplug the **programmer** Arduino board from your computer. -- Connect the **programmer** Arduino board to the target Arduino board as follows: - - | Programmer | Target | - | ----------- | ----------- | - | VCC | +3V3 | - | 1 | SWDIO | - | 2 | SWCLK | - | GND | GND | - | 0 | RESETN | - - SWD pads on MKR boards other than MKR 1000: - - ![](assets/SWDpadsMKR.png) - - MKR1000 SWD header pinout: - - ![](assets/SWDMKR1000header.png) - - Nano 33 IoT SWD pads: - - ![](assets/SWDpadsNano33IoT.png) - -- Plug the USB cable of the **programmer** Arduino board into your computer. -- Select **Tools > Serial Monitor** from the Arduino IDE’s menu. -- Select "**No line ending**” from the dropdown menu near the bottom right corner of the **Serial Monitor** window. -- You should now see some instructions for using the sketch in the **Serial Monitor** output field. - - This includes a menu of the boards supported by the sketch: - - ` - [...] - - Select Arduino MKR board to erase and flash with bootloader: - - Z -> Arduino Zero (6504 bytes) - MZ -> Arduino MKR Zero (6408 bytes) - 1000 -> Arduino MKR 1000 WIFI (6408 bytes) - 1010 -> Arduino MKR WIFI 1010 (7984 bytes) - - [...] - ` -- Find your **target** Arduino board on the list and note the code written to the left of it. -- Type the code for the **target** Arduino board in the message field of the Serial Monitor. -- Press **Enter** -- The Serial Monitor Output field should now show the board you selected and the progress of flashing the bootloader to the **target** Arduino board. -- Wait for it to show “Done!” -- Unplug the **programmer** Arduino board from your computer. -- Disconnect the programmer Arduino board from the target Arduino board. - **Congratulations** you have now successfully burned the bootloader on your Arduino board and can go back to upload sketches like before. \ No newline at end of file