0c943cac58 | ||
---|---|---|
.. | ||
Web | ||
AP_Bootloader.cpp | ||
AP_Bootloader_config.h | ||
README.md | ||
app_comms.h | ||
bl_protocol.cpp | ||
bl_protocol.h | ||
board_types.txt | ||
can.cpp | ||
can.h | ||
custom.cpp | ||
flash_from_sd.cpp | ||
flash_from_sd.h | ||
mcu_f1.h | ||
mcu_f3.h | ||
mcu_f4.h | ||
mcu_f7.h | ||
mcu_g4.h | ||
mcu_h7.h | ||
mcu_l4.h | ||
md5.cpp | ||
md5.h | ||
network.cpp | ||
network.h | ||
support.cpp | ||
support.h | ||
wscript |
README.md
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