Commit Graph

237 Commits

Author SHA1 Message Date
Andrew Tridgell 432c2d1758 AP_Bootloader: support firmware update from px4 firmware
allows droncan_gui_tool to update px4 firmware with ArduPilot
bootloader
2022-02-17 14:37:41 +11:00
Andy Piper 10d99a52eb AP_Bootloader: allow external flash load in middle 2022-02-09 12:47:55 +00:00
Andy Piper f6c07df162 Tools: make CPUInfo test fairer, add data for external flash
fix CPUInfo on linux
make cache disabling optional in CPUInfo
2022-02-09 12:47:55 +00:00
Andrew Tridgell 4e6d3030b6 AP_Bootloader: fixed ID conflict
AP_HW_MRO_MAXXIUM seems to be unused
2022-01-25 15:13:59 +11:00
ot0tot 1a08a1e1a1 hwdef: add support for JHEMCU GSF405A 2022-01-19 18:31:05 +11:00
Andy Piper 891ffa7b8c AP_Bootloader: adjust board id of KakuteH7Mini 2022-01-11 10:58:55 +11:00
Andy Piper 99ad242dc6 bootloaders: add KakuteH7Mini 2022-01-11 10:58:55 +11:00
Andy Piper d1298c751b AP_Bootloader: add BeastF7v2 2022-01-05 18:50:41 +11:00
MallikarjunSE 02c0ff25c6 Tools: Reserve board id for SierraF412 2021-12-29 10:12:40 +11:00
mateksys ac49b2a3c8 Tools: add MatekF405-TE bootloader and autobuild 2021-12-22 18:47:37 +11:00
Andrew Tridgell 209fcf3cbb Tools: added CarbonixL496 board ID 2021-12-07 10:23:54 +11:00
Andrew Tridgell a311983a29 AP_Bootloader: fixed DSDL paths 2021-12-06 20:17:02 +11:00
bugobliterator c3be9f9eb3 AP_Bootloader: libcanard moved to modules/DroneCAN 2021-11-24 18:30:47 +11:00
MallikarjunSE bca7f519c2 Tools: reserve board id for sierra-F405 2021-11-16 12:53:00 +11:00
Andrew Tridgell a50120cec3 CAN: switched to DroneCAN DSDL and libuavcan 2021-10-23 21:13:07 +11:00
Andrew Tridgell aa5da9d20b Tools: added NucleoL476 board type 2021-10-17 20:30:20 +11:00
Andrew Tridgell eb87de2d63 Tools: added Sierra-L431 board type 2021-10-17 20:30:20 +11:00
Andrew Tridgell e0d23c6495 AP_Bootloader: sync with PX4 board types 2021-10-12 15:47:51 +11:00
Nicholas Weaver 1377c1b78f Tools: board_types.txt: reserve ID for ICSI_Kestrel
Developing a CM4-based carrier board, reserving a board ID.
2021-10-05 11:23:16 +11:00
bugobliterator 8a4b9c2b36 AP_Periph: add support for handling Notify State message 2021-09-30 08:52:27 +10:00
Andrew Tridgell 0a2ba2e28f Tools: added KakuteH7 board type 2021-09-29 18:11:04 +10:00
Pierre Kancir 768c7770e5 Tools: use correct #pragma GCC diagnostic pop 2021-09-29 17:27:29 +10:00
Andrew Tridgell 90bb0d6310 AP_Bootloader: support L496 MCUs 2021-09-24 18:08:00 +10:00
Andrew Tridgell 3d6e2e84f3 AP_Bootloader: added Hitec-Airspeed board type 2021-09-21 13:51:40 +10:00
Siddharth Purohit 7cf9db4cc9 AP_Bootloader: fix bootloader build issues 2021-09-01 17:10:53 +10:00
Siddharth Purohit 1afbf666ad AP_Bootloader: remove dependency on Semaphores in QSPIDevice 2021-09-01 17:10:53 +10:00
Siddharth Purohit fc4be3695f AP_Bootloader: add support for running from external flash 2021-09-01 17:10:53 +10:00
Siddharth Purohit 75bcc76189 AP_Bootloader: add support for flashing erasing and verifying ext flash 2021-09-01 17:10:53 +10:00
Siddharth Purohit a1499f9593 AP_Bootloader: add support for erasing external flash 2021-09-01 17:10:53 +10:00
Siddharth Purohit edb590e055 AP_Bootloader: fix variable name for External flash support 2021-09-01 17:10:53 +10:00
Siddharth Purohit 8dff6dd27b AP_Bootloader: build FlashIface for bl with external flash support 2021-09-01 17:10:53 +10:00
Marcelo Rodrigues 92b179e0f3 AP_Bootloader: add SKYSTARSF405DJI 2021-08-27 08:54:37 +10:00
Marek S. Łukasiewicz 47f2e13024 HAL_ChibiOS: Add hwdef for BirdCANdy 2021-08-26 09:43:39 +10:00
bugobliterator 2970c865c8 AP_Bootloader: add HereID to board types 2021-08-25 10:09:23 +10:00
Andy Piper 6c26dd075b Tools: bootloader for FlywooF745Nano 2021-08-18 17:06:09 +10:00
Andrew Tridgell 751b901ed9 Tools: fixed printf format errors 2021-08-05 09:43:35 +10:00
Andrew Tridgell adb8e1fc7e Tools: added mRo-M10095 board type 2021-07-30 10:20:52 +10:00
Andrew Tridgell f507e85f10 Tools: added Nucleo-491 2021-07-30 10:20:52 +10:00
Andrew Tridgell cfdf91e18a AP_Bootloader: fixed G4 MCU descriptions 2021-07-30 10:20:52 +10:00
Peter Barker f20644b6cf board_types.txt: reserve ID for Argosdyne DP1000 2021-07-26 18:54:00 +10:00
Isaac Alich c84a880de4 Tools: Add Diatone MambaF405US-I2C 2021-07-25 09:28:17 +10:00
Siddharth Purohit 1af2453b54 AP_Bootloader: ignore cast alignment when reading from flash 2021-07-15 07:50:12 +10:00
Siddharth Purohit 6d76990c1e AP_Bootloader: add option to disable Watchdog 2021-07-14 15:18:42 +10:00
Siddharth Purohit 966e8cd1be AP_Bootloader: reserve board id for HerePro 2021-07-02 08:50:16 +10:00
Siddharth Purohit 35340bf7f2 AP_Bootloader: reserve board_type id for H757 EVAL board 2021-06-30 19:33:17 +10:00
QioTek 979b502d30 AP_Bootloader: added QioTekZealotH743 board type
AP_Bootloader: added QioTekZealotH743 board type
2021-06-15 18:50:24 +10:00
Andrew Tridgell b6543e7a85 AP_Bootloader: added Holybro GPS board type 2021-06-01 09:19:51 +10:00
bugobliterator 23757c249e AP_Bootloader: free few bytes of flash as bootloader build overflew on devices with 16k flash 2021-05-26 17:26:05 +10:00
Peter Barker 8e61de37be Tools: board_types.txt: reallocate 1033 to Joey, take 1034 for SeriphGPS 2021-05-26 16:32:47 +10:00
Peter Barker 2109fae56a Tools: reserve a board ID for SierraF9PGPS 2021-05-20 14:17:45 +10:00
liang 891cc94577 AP_Bootloader: check VBUS for fast boot 2021-05-14 15:48:30 -07:00
climr b46f621fc6 AP_HAL_ChibiOS: add two new horizon31.com boards
PixC4-Pi and PixC4-Jetson
2021-05-14 12:04:29 +10:00
Andy Piper 1700ab814e AP_Bootloader: change id to AP range 2021-05-12 17:26:35 +10:00
Andy Piper 319a6404c4 Tools: add KakuteF4Mini to board types and scripts 2021-05-12 17:26:35 +10:00
bugobliterator 3edf26dff9 Bootloader: complete GET_DEVICE commands before allowing timeout reset 2021-05-12 17:21:14 +10:00
Andrew Tridgell 44eadb7291 AP_Bootloader: added FreeflyRTK board type 2021-05-09 06:44:19 +10:00
Andrew Tridgell de893a2530 Tools: allocate ID 1029 for luminousbee5
1028 will be the FreeflyRTK
2021-04-21 20:41:34 +10:00
Andrew Tridgell 22c936140e Tools: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell 188e3d6974 AP_Bootloader: save some flash space
gets our largest F4 bootloaders under 16k again
2021-03-23 12:01:20 +11:00
Andrew Tridgell 3590fe36e8 AP_Bootloader: support dual CAN 2021-03-23 12:01:20 +11:00
Andrew Tridgell af64b86c9e AP_Bootloader: support STM32G4 2021-03-23 12:01:20 +11:00
Lava Chemist e614c9eeb2 Tools: add bootloader and board types 2021-03-16 11:27:23 +11:00
Andrew Tridgell 0528414a9c AP_Bootloader: limit the 1M flash check to the F427
this fixes an issue with the DrotekP3Pro which uses the STM32F469
2021-02-28 17:24:25 +11:00
danlaks d244f22522 Tools: AP_Bootloader: Add AP_HW_SWBOOMBOARD_PERIPH identifier
SpektreWorks Boom Board AP_Periph device
2021-02-04 08:37:32 +11:00
auturgy 3b7207a5e4 Tools: Update board_types.txt
Cross-alignment with PX4, plus whitespace fixes
2021-01-01 17:31:44 +11:00
Andy Piper efb2e9f81a Tools: bootloader for iFlight Beast H7 AIO 2020-12-30 18:13:03 +11:00
Tom Pittenger 6bb2bec4f3 AP_Bootloader: add boardIDs for CubeORange/Black-periph, pixracer-periph 2020-12-29 07:52:39 -07:00
Tom Pittenger 84e578b3df AP_Bootloader: respect HAL_BOOTLOADER_TIMEOUT when CAN and SERIAL/USB is enabled 2020-12-18 16:35:57 +11:00
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
Tom Pittenger f62a27ca8a Tools/AP_Bootloader: differentiate FAIL_REASON_BAD_LENGTH errors 2020-12-08 14:23:11 +11:00
Phillip Kocmoud 602388224b AP_Bootloader: Repurpose unused mRo board ID 2020-11-28 17:16:55 +11:00
Phillip Kocmoud f2c63e13be AP_Bootloader: Add 3 new mRo board IDs 2020-10-15 08:33:27 +11:00
QioTek da5da6b14e Tools: added Qiotek ZealotF427 board ID
add board id for Qiotek ZealotF427
2020-09-28 06:18:32 +10:00
Andrew Tridgell 246e790484 AP_Bootloader: use new hal CAN interface for CAN support 2020-09-24 12:32:19 +10:00
Siddharth Purohit 4bfd3c0782 AP_Bootloader: add support for HAL CANIface based bootloader 2020-09-24 12:32:19 +10:00
Siddharth Purohit b8e3d9c6e8 AP_Bootloader: add fail reason bad length 2020-09-24 12:32:19 +10:00
Siddharth Purohit 2edcd852eb AP_Bootloader: add support for app start offset 2020-09-24 12:32:19 +10:00
climr 918dfc13f7 Tools: Add Horizon31 PixC4 to board_types.txt 2020-08-10 13:33:32 +10:00
Peter Barker f8acc211cf Tools: AP_Bootloader: remove unused BL_WAIT_MAGIC define
This has been replaced with RTC_BOOT_HOLD
2020-06-23 09:16:42 +10:00
auturgy c4a92fb0fe Update board_types.txt
Update URL for ArduPilot board_types.txt
2020-06-18 14:49:57 +10:00
Andrew Tridgell 0efae38af0 Tools: updated PR instructions for board_types PRs 2020-06-17 14:24:22 +10:00
Andrew Tridgell 17e8e422db AP_Bootloader: added board_types.txt
avoiding pointing people at the old bootloader directory for board IDs
2020-06-17 14:16:47 +10:00
Andrew Tridgell 10d990a43b AP_Bootloader: refer to SERIAL_ORDER 2020-04-28 10:32:23 +10:00
Andrew Tridgell a74f2428f2 AP_Bootloader: fixed use of FLASH_RESERVE_END_KB 2020-04-14 10:02:51 +10:00
Andrew Tridgell c998f93949 AP_Bootloader: removed use of float in can code 2020-01-07 12:37:35 +11:00
Andrew Tridgell e62cf21ce6 AP_Bootloader: added more protection against line noisy triggering bootloader
this is in reponse to a report from Ryan of the Hybrid project who
found that mavlink on telem1 could make bootloader get stuck
2019-12-06 11:39:48 +11:00
Andrew Tridgell a6fbcc50fc AP_Bootloader: added STM32H7xx chip revisions 2019-11-25 21:52:45 +11:00
Andrew Tridgell 147cf900fe AP_Bootloader: support STM32F303 MCU 2019-11-01 10:53:53 +11:00
Andrew Tridgell e612ab92ff AP_Bootloader: added error codes for failing to load app
use the vendor code to indicate failure reason
2019-10-28 15:53:16 +11:00
Andrew Tridgell 31f7a62cdc AP_Bootloader: use crc32_small() 2019-10-28 15:53:16 +11:00
Andrew Tridgell dcc417f27b AP_Bootloader: use crc32_small() 2019-10-28 15:53:16 +11:00
Andrew Tridgell ec1060d4f8 AP_Bootloader: pre-define fields of app_descriptor
this is needed to store it in flash
2019-10-28 15:53:16 +11:00
Andrew Tridgell cc1f86e1f1 AP_Bootloader: use MAINTAINENCE mode for CAN bootloader
this makes it obvious we are in the bootloader
2019-10-26 15:32:10 +11:00
Andrew Tridgell c1ef2e29d7 AP_Bootloader: stay in CAN bootloader if in watchdog reset
if the app has not been running for at least 30s then stay in
bootloader to allow used to load new fw
2019-10-26 15:32:10 +11:00
Andrew Tridgell c08d37bd8f Tools: fixed build with --out directory for build_binaries 2019-10-25 09:35:27 +11:00
Andrew Tridgell 34e0ac51f5 AP_Bootloader: use APJ_BOARD_ID in hw major/minor 2019-10-25 09:35:27 +11:00
Andrew Tridgell 9c4a01e0b0 AP_Bootloader: speed up CAN fw load 2019-10-21 19:12:01 +11:00
Andrew Tridgell 92bd1a485a AP_Bootloader: added app descriptor checking for CAN fw 2019-10-21 19:12:01 +11:00
Andrew Tridgell 6ad762f727 AP_Bootloader: support app comms area for CAN fw update
this allows MissionPlanner to update firmware
2019-10-21 19:12:01 +11:00
Andrew Tridgell 4677dca834 AP_Bootloader: fixed uprintf() build 2019-10-21 19:12:01 +11:00
Andrew Tridgell 230a817539 AP_Bootloader: support ZubaxGNSS 2019-10-21 19:12:01 +11:00
Andrew Tridgell d9e3a01e57 Tools: fixed vsnprintf assumption in AP_Bootloader 2019-09-12 08:43:31 +10:00
Andrew Tridgell a42560ea27 AP_Bootloader: fixed CAN stay in bootloader functionality 2019-09-10 16:22:33 +10:00
Andrew Tridgell 3bc5458a82 AP_Bootloader: added CAN support for AP_Periph 2019-08-27 10:29:56 +10:00
Siddharth Purohit eabb93f842 AP_Bootloader: change to using serusbcfg1 2019-07-12 17:01:21 +10:00
Andrew Tridgell 5c9b3842e6 Tools: fixed bootloader hang on GPS data
don't kill the timeout till we get valid sync and get_device
calls. This makes accidental bootloader triggers very unlikely
2019-05-06 08:08:05 +10:00
Andrew Tridgell bff040c58e AP_Bootloader: added support for READ_MULTI
this is useful for comparing the firmware on a board with the known
expected firmware
2019-05-06 08:08:05 +10:00
Andrew Tridgell f727f1c62d AP_Bootloader: use fast boot after watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell af78ac1abf AP_Bootloader: disable debug printf 2019-02-26 16:18:26 +11:00
Andrew Tridgell ac070c92f5 AP_Bootloader: fully working on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 9013c15f4d AP_Bootloader: fixed sys lock for timer 2019-02-26 16:18:26 +11:00
Andrew Tridgell 660a790401 AP_Bootloader: improved flash test code 2019-02-26 16:18:26 +11:00
Andrew Tridgell 2fee1ffba4 AP_Bootloader: first working bootloader for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 4d3cbd95ac AP_Bootloader: support building on STM32H7 2019-02-26 16:18:26 +11:00
JIMWAR 8fe39e8784 AP_Bootloader: fix return the size of flash sector
flash_base_page+num_pages already be more than last sector of flash,
there should be num_pages-flash_base_page when judge the last sector
2019-01-08 20:54:36 +11:00
Lucas De Marchi 668c941717 Global: use new version of ARRAY_SIZE 2018-08-04 15:31:55 +10:00
Andrew Tridgell 9727328e0c AP_Bootloader: updates for new ChibiOS version 2018-08-03 13:44:59 +10:00
Andrew Tridgell 7316a478b6 AP_Bootloader: fixed rcc reset when no USB 2018-07-09 20:59:51 +10:00
Andrew Tridgell bf901aff49 AP_Bootloader: support building without USB
this allows for a bootloader on a board with no USB pins defined in
hwdef.dat
2018-07-09 08:35:15 +10:00
Andrew Tridgell 2e427475cf Tools: added bootloader docs 2018-07-04 19:11:10 +10:00
Andrew Tridgell c955d7b824 AP_Bootloader: fixed issue loading NuttX firmwares
NuttX assumes a lot more about MCU state on startup
2018-06-29 08:17:38 +10:00
Andrew Tridgell d470c161e8 AP_Bootloader: protect against random input to bootloader
require both a good sync and get_device before accepting destructive
operations
2018-06-29 08:17:38 +10:00
Andrew Tridgell c44a8309f9 AP_Bootloader: fixed strncmp bug 2018-06-28 11:35:13 +10:00
Andrew Tridgell 28ad2287c8 AP_Bootloader: for fast boot don't init USB 2018-06-28 11:35:13 +10:00
Andrew Tridgell b6e057dfb9 AP_Bootloader: use RTC sig for fast boot 2018-06-28 11:35:13 +10:00
Andrew Tridgell 0546ea69d1 AP_Bootloader: fixed build with no uarts 2018-06-25 21:22:31 +10:00
Andrew Tridgell 0ebd05aa1a AP_Bootloader: support changing baudrates on UARTs 2018-06-25 21:22:31 +10:00
Andrew Tridgell fe4aa4bbc7 AP_Bootloader: support uarts and usb for bootloading 2018-06-25 21:22:31 +10:00
Andrew Tridgell 5b208b401f AP_Bootloader: skip erasing already erased pages 2018-06-25 21:22:31 +10:00
Andrew Tridgell b5fc7f10f3 AP_Bootloader: added flash size limiting on old CPUs 2018-06-25 21:22:31 +10:00
Andrew Tridgell 4fbd1e409f AP_Bootloader: make flashing a bit faster 2018-06-25 21:22:31 +10:00
Andrew Tridgell a7ce864296 AP_Bootloader: added mcu files 2018-06-22 08:06:41 +10:00
Andrew Tridgell c1d4362555 AP_Bootloader: added MCU descriptions 2018-06-22 08:00:31 +10:00
Alexander Malishev c28296e6f2 AP_Bootloader: added simple std c function to reduce flash space 2018-06-22 08:00:31 +10:00
Andrew Tridgell f0e0b1baaa AP_Bootloader: only build bootloader when --bootloader configured 2018-06-22 08:00:31 +10:00
Andrew Tridgell 4c2c2012a6 waf: allow for "./waf bootloader"
easier build of the bootloader
2018-06-22 08:00:31 +10:00
Andrew Tridgell e7c43b9df7 AP_Bootloader: initial version of ChibiOS bootloader 2018-06-22 08:00:31 +10:00