Skip to content

bootloaders: rebuild bootloader for NucleoH753ZI to correct board ID - #33897

Merged
andyp1per merged 1 commit into
ArduPilot:masterfrom
peterbarker:pr-claude/bootloader-id-rebuild
Jul 31, 2026
Merged

bootloaders: rebuild bootloader for NucleoH753ZI to correct board ID#33897
andyp1per merged 1 commit into
ArduPilot:masterfrom
peterbarker:pr-claude/bootloader-id-rebuild

Conversation

@peterbarker

Copy link
Copy Markdown
Contributor

Summary

rebuilds the bootloader with the correct ID (./Tools/scripts/build_bootloaders.py NucleoH753ZI)

Classification & Testing (check all that apply and add your own)

  • Checked by a human programmer
  • Non-functional change
  • No-binary change
  • Infrastructure change (e.g. unit tests, helper scripts)
  • Automated test(s) verify changes (e.g. unit test, autotest)
  • Tested manually, description below (e.g. SITL)
  • Tested on hardware
  • Logs attached
  • Logs available on request

Description

the bootloader was built with a different board ID to the one in the hwdef

These are also a problem (we've already merged a fix for SaaMPix)

  ┌─────────────────────┬───────────────┬───────────────┐
  │        Board        │ ID in _bl.bin │ ID from hwdef │
  ├─────────────────────┼───────────────┼───────────────┤
  │ CubeOrangePlus-ODID │ 1063          │ 11063         │
  ├─────────────────────┼───────────────┼───────────────┤
  │ JHEMCUF405WING      │ 1160          │ 1169          │
  ├─────────────────────┼───────────────┼───────────────┤
  │ JPilot-C            │ 1201          │ 1214          │
  ├─────────────────────┼───────────────┼───────────────┤
  │ NucleoH753ZI        │ 1081          │ 1207          │
  ├─────────────────────┼───────────────┼───────────────┤
  │ ORBITH743v2         │ 1216          │ 1219          │
  ├─────────────────────┼───────────────┼───────────────┤
  │ PixPilot-V3         │ 1090          │ 1096          │
  ├─────────────────────┼───────────────┼───────────────┤
  │ SIMPLIFLYH7         │ 1220          │ 1221          │
  ├─────────────────────┼───────────────┼───────────────┤
  │ SaamPixV1_1         │ 1207          │ 1316          │
  └─────────────────────┴───────────────┴───────────────┘

Board ID extraction success:

┌───────────────────────────────────────────────────────────────┬─────────┬───────────────┬──────────┬─────────────────┐
  │                          MCU family                           │ correct │ unextractable │ mismatch │ extraction rate │
  ├───────────────────────────────────────────────────────────────┼─────────┼───────────────┼──────────┼─────────────────┤
  │ STM32H7xx                                                     │ 149     │ 15            │ 4        │ 91%             │
  ├───────────────────────────────────────────────────────────────┼─────────┼───────────────┼──────────┼─────────────────┤
  │ STM32F4xx                                                     │ 84      │ 36            │ 2        │ 70%             │
  ├───────────────────────────────────────────────────────────────┼─────────┼───────────────┼──────────┼─────────────────┤
  │ STM32F7xx                                                     │ 29      │ 16            │ 0        │ 64%             │
  ├───────────────────────────────────────────────────────────────┼─────────┼───────────────┼──────────┼─────────────────┤
  │ STM32F103 / F303 / G4xx / L431 / L4xx / CKS32F4 (10 families) │ 57      │ 0             │ 0        │ 100%            │
  ├───────────────────────────────────────────────────────────────┼─────────┼───────────────┼──────────┼─────────────────┤
  │ Total                                                         │ 319     │ 67            │ 6        │ 83%             │
  └───────────────────────────────────────────────────────────────┴─────────┴───────────────┴──────────┴─────────────────┘

  When it answers, it has never been wrong. Across 325 successful extractions there are zero cases of a wrong number. The 6 mismatches are the extractor correctly reading
  a stale binary.

(based on looking what crt0 copies around - we populate `board_info.fw_size at runtime so we can see board_type go in too)

the bootloader was built with a different board ID to the one in the hwdef
@andyp1per
andyp1per merged commit 0c3422f into ArduPilot:master Jul 31, 2026
54 checks passed
@github-project-automation github-project-automation Bot moved this from ReadyForDevCall to Done in Peter's ArduPilot 4.8 Queue Jul 31, 2026
@peterbarker

Copy link
Copy Markdown
Contributor Author

@andyp1per thanks for the merge....

I actually created this as a discussion point to decide whether we should rebuild all bootloaders (I was going to tag it for DevCall).

Chatted with tridge separately and he says we'll rebuild them all for 4.8, so all is well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants