clean up bootloader doc

This commit is contained in:
Dan Halbert 2021-09-19 12:54:55 -04:00
parent 62d1db1dab
commit 27c4ff2cc9

View file

@ -159,109 +159,112 @@ By the way, boolean operation precedence is right to left! (yeesh)
{% assign bootloader_version = bootloaders[bootloader_board.family].version %}
{% assign bootloader_id = bootloader_board.bootloader_id %}
{% if bootloader_version and bootloader_id and bootloader_board %}
{% if bootloader_board.family == 'esp32s2' %}
<div class="section unrecommended">
<h3>Install/Repair UF2 Bootloader</h3>
<h3>Install, Repair, or Update UF2 Bootloader</h3>
<p>
Latest version: {{ bootloader_version }}
</p>
<p>
<strong>The bootloader allows you to load CircuitPython, Makecode, and Arduino programs.
<strong>The UF2 bootloader allows you to load CircuitPython, MakeCode, and Arduino programs.
The bootloader is not CircuitPython.</strong>
</p>
{% if bootloader_board.family == 'esp32s2' %}
<p>
It is not necessary to reinstall the bootloader unless a BOOT drive is not visible when in UF2 bootloader mode (FTHRS2BOOT, MAGTAGBOOT, HOUSEBOOT, etc.), in which case the UF2 bootloader may need to be repaired.
If a UF2 bootloader is installed, you can check its version by looking in
the <b>INFO_UF2.TXT</b> file when the <b>BOOT</b> drive is visible
(<b>FTHRS2BOOT</b>, <b>MAGTAGBOOT</b>, <b>HOUSEBOOT</b>, etc.)
</p>
<p>
If a UF2 bootloader has never been installed on the board, or the UF2 bootloader was removed by erasing or overwriting the flash, the UF2 bootloader should be installed in order to flash .uf2 files onto the board.
It is not necessary to reinstall a UF2 bootloader you unless a <b>BOOT</b> drive is not visible
when in UF2 bootloader mode, or you know of a problem with your current UF2 bootloader.
</p>
<p>
If a UF2 bootloader has never been installed on the board, or the UF2 bootloader was removed by erasing or overwriting the flash, the UF2 bootloader must be installed in order to flash <b>.uf2</b> files onto the board. <b>.bin</b> files can be uploaded without a UF2 bootloader, using the
<a href="https://adafruit.github.io/Adafruit_WebSerial_ESPTool/">Adafruit WebSerial ESPTool</a>
or <b>esptool.py</b>.
</p>
<p><strong><em>Important</em></strong>:
<em>this will erase previously flashed firmware &amp; sketches from the board, but needs to be perfomed only once.</em>
<p>
<em>Note: <b>update.uf2</b> files are not currently working on ESP32-S2 boards.</em>
</p>
<p><strong><em>Important</em></strong>:
<em>this will erase previously flashed firmware and sketches from the board,
but needs to be perfomed only once.</em>
</p>
<ul>
<li>Unzip to find the file <code class="language-plaintext highlighter-rouge">combined.bin</code>.</li>
<li>Unzip to find the file <b>combined.bin</b>.</li>
<li>Place board in bootloader mode:
<ul>
<li>Plug board into a USB port on your computer using a data/sync cable. Make sure it is the only board plugged in, and that a charge-only cable is not being used.</li>
<li>Press and <strong>hold down</strong> the <code class="language-plaintext highlighter-rouge">BOOT</code> or <code class="language-plaintext highlighter-rouge">0</code> button.</li>
<li>Press and <strong>release</strong> the <code class="language-plaintext highlighter-rouge">RESET</code> or <code class="language-plaintext highlighter-rouge">RST</code> button.</li>
<li>Release the <code class="language-plaintext highlighter-rouge">BOOT</code> button.</li>
<li>Press and <strong>hold down</strong> the <b>BOOT</b> or <b>0</b> button.</li>
<li>Press and <strong>release</strong> the <b>RESET</b> or <b>RST</b> button.</li>
<li>Release the <b>BOOT</b> button.</li>
</ul>
</li>
<li>Upload <code class="language-plaintext highlighter-rouge">combined.bin</code> (Google Chrome 89 or newer):
<li>Upload <b>combined.bin</b> (Google Chrome 89 or newer):
<ul>
<li>Open <a href="https://adafruit.github.io/Adafruit_WebSerial_ESPTool/">Adafruit WebSerial ESPTool</a> in a new window/tab.</li>
<li>Select <code class="language-plaintext highlighter-rouge">460800 Baud</code> from the pull-down menu (top-right).</li>
<li>Click <code class="language-plaintext highlighter-rouge">Connect</code> (top-right).</li>
<li>Select <b>460800 Baud</b> from the pull-down menu (top-right).</li>
<li>Click <b>Connect</b> (top-right).</li>
<li>Select the COM or Serial port from the pop-up window.</li>
<li>After successful connection, click <code class="language-plaintext highlighter-rouge">Erase</code>.</li>
<li>After successful erase, click any <code class="language-plaintext highlighter-rouge">Choose a file...</code>, then locate and select the <code class="language-plaintext highlighter-rouge">combined.bin</code> file unzipped earlier.</li>
<li>After successfully choosing <code class="language-plaintext highlighter-rouge">combined.bin</code>, click <code class="language-plaintext highlighter-rouge">Program</code>.</li>
<li>After the TinyUF2 firmware update is complete, press the <code class="language-plaintext highlighter-rouge">RESET</code> button on the board. A new drive <code class="language-plaintext highlighter-rouge">BOARDBOOT</code> (where BOARD is an abbreviation of your board's name) should be visible in your file browser.</li>
<li>After successful connection, click <b>Erase</b>.</li>
<li>After successful erase, click any <b>Choose a file...</b>, then locate and select the <b>combined.bin</b> file unzipped earlier.</li>
<li>After successfully choosing <b>combined.bin</b>, click <b>Program</b>.</li>
<li>After the TinyUF2 firmware update is complete, press the <b>RESET</b> button on the board.
A new drive <b>BOOT</b> should be visible in your file browser.</li>
</ul>
</li>
</ul>
<p>
After you update, check INFO_UF2.TXT to verify that the bootloader version has been updated.
Then you will need to load or reload CircuitPython using the .uf2 file.
After you update, check <b>INFO_UF2.TXT</b> to verify that the bootloader version has been updated.
Then you will need to load or reload CircuitPython using the <b>.uf2</b> file.
</p>
<div>
<a class="download-button" href="https://github.com/adafruit/tinyuf2/releases/download/{{ bootloader_version }}/tinyuf2-{{ bootloader_id }}-{{ bootloader_version }}.zip">DOWNLOAD BOOTLOADER ZIP<i class="fas fa-download" aria-hidden="true"></i></a>
</div>
{% endif %}
</div>
</div>
{% else %}
<div class="section unrecommended">
<h3>Update UF2 Bootloader</h3>
<p>
Latest version: {{ bootloader_version }}
</p>
<p>
<strong>The bootloader allows you to load CircuitPython, Makecode, and Arduino programs.
<strong>The bootloader allows you to load CircuitPython, MakeCode, and Arduino programs.
The bootloader is not CircuitPython.</strong>
You can check the current version of your bootloader by looking in
the INFO_UF2.TXT file when the BOOT drive is visible (FEATHERBOOT, CPLAYBOOT, etc.).
the <b>INFO_UF2.TXT</b> file when the <b>BOOT</b> drive is visible (<b>FEATHERBOOT</b>, <b>CPLAYBOOT</b>, etc.).
</p>
{% if bootloader_board.family == 'esp32s2' %}
<p>
<em>update.uf2 files are not currently working on ESP32-S2 boards.</em>
It is not necessary to update your bootloader if it is working fine.
Read the release notes on GitHub to see what has been changed.
In general, we recommend you not update the bootloader unless you know there is a problem with it
or a support person has asked you to try updating it.
</p>
<ul>
<li>Save the contents of CIRCUITPY, just in case.</li>
<li>Follow instructions in the <strong>Install/Repair UF2 Bootloader</strong> section above.</li>
<li>Check INFO_UF2.TXT to verify that the bootloader version has been updated.</li>
<li>Reload CircuitPython.</li>
</ul>
{% endif %}
{% if bootloader_board.family == 'nrf52840' %}
{% if bootloader_board.family == 'nrf52840' %}
<p>
Updating the bootloader on nRF52840 boards is an involved process right now.
Follow the instructions in this
<a href="https://github.com/adafruit/Adafruit_nRF52_Bootloader/blob/master/README.md">README</a>.
It is not necessary to update on each release if your bootloader is working fine.
Read the release notes on GitHub to see what has been changed.
</p>
<p>
After you update, check INFO_UF2.TXT to verify that the bootloader version has been updated.
After you update, check <b>INFO_UF2.TXT</b> to verify that the bootloader version has been updated.
Then you will need to reload CircuitPython.
</p>
<div>
<a class="download-button-unrecommended" href="https://github.com/adafruit/Adafruit_nRF52_Bootloader/releases/tag/{{ bootloader_version }}">BROWSE ON GITHUB<i class="fab fa-github" aria-hidden="true"></i></a>
</div>
{% endif %}
{% endif %}
{% if bootloader_board.family == 'atmel-samd' %}
{% if bootloader_board.family == 'atmel-samd' %}
<p>
To update, first save the contents of CIRCUITPY, just in case.
Then double-click the reset button to show the BOOT drive.
Drag the update-bootloader .uf2 file to the BOOT drive.
Wait a few tens of seconds for the bootloader to update; the BOOT drive will reappear.
Check INFO_UF2.TXT to verify that the bootloader version has been updated.
To update, first save the contents of <b>CIRCUITPY</b>, just in case.
Then double-click the reset button to show the <b>BOOT</b> drive.
Drag the <b>update-bootloader</b> <b>.uf2</b> file to the <b>BOOT</b> drive.
Wait a few tens of seconds for the bootloader to update; the <b>BOOT</b> drive will reappear.
After you update, check <b>INFO_UF2.TXT</b> to verify that the bootloader version has been updated.
Then you will need to reload CircuitPython.
</p>
<p>
@ -270,6 +273,7 @@ By the way, boolean operation precedence is right to left! (yeesh)
<div>
<a class="download-button-unrecommended" href="https://github.com/adafruit/uf2-samdx1/releases/tag/{{ bootloader_version }}">BROWSE ON GITHUB<i class="fab fa-github" aria-hidden="true"></i></a>
</div>
{% endif %}
{% endif %}
</div>
{% endif %}
{% endif %}