mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-05-16 17:37:34 +08:00
94c3765712
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
109 lines
6.0 KiB
Markdown
109 lines
6.0 KiB
Markdown
# Bootloader Update Pixhawk V6X-RT via USB
|
|
|
|
This topic explains how to flash [Pixhawk FMUv6X-RT](../flight_controller/pixhawk6x-rt.md) bootloader via USB _without needing a debug probe_.
|
|
|
|
## 개요
|
|
|
|
The _PX4 Bootloader_ is used to load firmware for [Pixhawk boards](../flight_controller/pixhawk_series.md) (PX4FMU, PX4IO).
|
|
|
|
Pixhawk controllers usually comes with an appropriate bootloader version pre-installed.
|
|
However in some cases it may not be present, or an older version may be present that needs to be updated.
|
|
It is also possible that the device is bricked, so the device has to be erased and a new bootloader must be flashed.
|
|
|
|
Most flight controllers require a Debug probe in order to update the bootloader, as discussed in [Bootloader Update > Debug Probe Bootloader Update](../advanced_config/bootloader_update.md#debug-probe-bootloader-update).
|
|
You can use this approach for the Pixhawk FMUv6X-RT, but if you don't have a debug probe you can use the instructions outlined in this topic instead.
|
|
|
|
## Building the PX4 FMUv6X-RT Bootloader
|
|
|
|
This can be built from within the PX4-Autopilot folder using the `make` command and the board-specific target with a `_bootloader` suffix.
|
|
For FMUv6X-RT the command is:
|
|
|
|
```sh
|
|
make px4_fmu-v6xrt_bootloader
|
|
```
|
|
|
|
This will build the bootloader binary as `build/px4_fmu-v6xrt_bootloader/px4_fmu-v6xrt_bootloader.bin`, which can be flashed via SWD or ISP.
|
|
부트로더를 빌드하는 경우 이러한 옵션중 하나를 충분히 숙지하여야합니다.
|
|
|
|
ELF 파일 대신 HEX 파일이 필요한 경우에는 objcopy를 사용하십시오.
|
|
|
|
```sh
|
|
arm-none-eabi-objcopy -O ihex build/px4_fmu-v6xrt_bootloader/px4_fmu-v6xrt_bootloader.elf px4_fmu-v6xrt_bootloader.hex
|
|
```
|
|
|
|
## Flashing the bootloader through USB
|
|
|
|
The Pixhawk V6X-RT comes with a built-in bootloader located on the ROM.
|
|
To flash a new bootloader through USB you've got to download the [NXP MCUXpresso Secure Provisioning tool](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-secure-provisioning-tool:MCUXPRESSO-SECURE-PROVISIONING).
|
|
The tool is available for Windows, Linux and macOS.
|
|
|
|
1. Install the _MCUXpresso Secure Provisioning_ application and launch the application:
|
|
|
|

|
|
|
|
2. On first start you have to create a "New Workspace".
|
|
Select `i.mX RT11xx` and then select `MIMXRT1176`
|
|
|
|

|
|
|
|
3. After creating a "New Workspace" click on the **FlexSPI NOR - simplified** button
|
|
|
|

|
|
|
|
4. On the _Boot Memory Configuration_ window change the "Device type" to `Macronix Octal DDR` and press **OK**.
|
|
|
|

|
|
|
|
1. On the menu bar select **Tools > Flash Programmer**:
|
|
|
|

|
|
|
|
2. You should get this pop-up indicating the Pixhawk V6X-RT is not in the "ISP bootloader mode".
|
|
|
|

|
|
|
|
To get the Pixhawk V6X-RT into "ISP bootloader mode" there are 2 options:
|
|
|
|
1. Launch QGC connect the Pixhawk select **Analayze Tools** and then **MAVLINK Console**.
|
|
On the console type `reboot -i`.
|
|
This will put the Pixhawk V6X-RT into "ISP bootloader mode"
|
|
|
|

|
|
|
|
2. If the board is bricked and connecting to QGC is not possible you've open the FMUM module and press the BOOT button (circled in red in the picture below) while powering the board.
|
|
|
|
<img src="../../assets/advanced_config/bootloader_6xrt/bootloader_update_v6xrt_enter_isp_button.jpg" style="zoom:67%;" />
|
|
|
|
Press **YES** to launch the _Flash Programmer Tool_.
|
|
|
|
3. When the Flash Programming has started you get a popup to configure the target memory press **Yes**
|
|
|
|

|
|
|
|
4. When the Target Memory configuration is successful you can press the **Erase All** button
|
|
|
|

|
|
|
|
5. After erasing the flash press the **Load ...** button and then press the **Browse** button
|
|
|
|

|
|
|
|
6. Locate the `px4_fmu-v6xrt_bootloader.bin` file and press **Open** and then press on **Load**.
|
|
|
|

|
|
|
|
7. If the load is successful you should see the "Success: load from file" at the bottom right
|
|
|
|

|
|
|
|
8. Press the **Write** button to flash the PX4 bootloader
|
|
|
|

|
|
|
|
1. On success it should show "Success: Write memory 0x30000000 - 0x3XXXXXXX" Note: values might differ due to bootloader changes.
|
|
|
|

|
|
|
|
Now unplug the Pixhawk V6X-RT and re-power the board.
|
|
After the bootloader has updated you can [Load PX4 Firmware](../config/firmware.md) using _QGroundControl_.
|