ardupilot/Tools/AP_Bootloader
Andrew Tridgell e0e4198358 AP_Bootloader: fixed can bootloader with old UAVCAN GUI tool
the part that was failing was the write of the leading words. That
part is not actually needed in this bootloader as we use a CRC before
running, so remove it, which fixes the old windows GUI tool.

This also saves some memory and flash
2020-12-15 12:26:14 -08:00
..
AP_Bootloader.cpp AP_Bootloader: add support for HAL CANIface based bootloader 2020-09-24 12:32:19 +10:00
app_comms.h AP_Bootloader: pre-define fields of app_descriptor 2019-10-28 15:53:16 +11:00
bl_protocol.cpp AP_Bootloader: use new hal CAN interface for CAN support 2020-09-24 12:32:19 +10:00
bl_protocol.h Tools: AP_Bootloader: remove unused BL_WAIT_MAGIC define 2020-06-23 09:16:42 +10:00
board_types.txt AP_Bootloader: Repurpose unused mRo board ID 2020-11-28 17:16:55 +11:00
can.cpp AP_Bootloader: fixed can bootloader with old UAVCAN GUI tool 2020-12-15 12:26:14 -08:00
can.h AP_Bootloader: speed up CAN fw load 2019-10-21 19:12:01 +11:00
mcu_f1.h AP_Bootloader: added CAN support for AP_Periph 2019-08-27 10:29:56 +10:00
mcu_f3.h AP_Bootloader: support STM32F303 MCU 2019-11-01 10:53:53 +11:00
mcu_f4.h AP_Bootloader: added flash size limiting on old CPUs 2018-06-25 21:22:31 +10:00
mcu_f7.h AP_Bootloader: added mcu files 2018-06-22 08:06:41 +10:00
mcu_h7.h AP_Bootloader: added STM32H7xx chip revisions 2019-11-25 21:52:45 +11:00
README.md AP_Bootloader: added board_types.txt 2020-06-17 14:16:47 +10:00
support.cpp AP_Bootloader: use new hal CAN interface for CAN support 2020-09-24 12:32:19 +10:00
support.h AP_Bootloader: use new hal CAN interface for CAN support 2020-09-24 12:32:19 +10:00
wscript Tools: fixed build with --out directory for build_binaries 2019-10-25 09:35:27 +11:00

ArduPilot Bootloader

This is the bootloader used for STM32 boards for ArduPilot. To build the bootloader do this:

 ./waf configure --board BOARDNAME --bootloader
 ./waf bootloader

the bootloader will be in build/BOARDNAME/bin. If you have the intelhex module installed it will build in both bin format and hex format. Both are usually uploaded with DFU. The elf file will be in build/BOARDNAME/AP_Bootloader for loading with gdb.

The --bootloader option tells waf to get the hardware config from the hwdef-bl.dat file for the board. It will look in libraries/AP_HAL_CHibiOS/hwdef/BOARDNAME/hwdef-bl.dat

The bootloader protocol is compatible with that used by the PX4 project for boards like the Pixhawk. For compatibility purposes we maintain a list of board IDs in the board_types.txt file in this directory.

the board IDs in that file match the APJ_BOARD_ID in the hwdef.dat and hwdef-bl.dat files

The bootloader can load from USB or UARTs. The list of devices to load from is given in the SERIAL_ORDER option in hwdef-bl.dat