dist/tools/bmp: additional improvements to auto-detection#21128
Merged
maribu merged 4 commits intoRIOT-OS:masterfrom Feb 2, 2025
Merged
dist/tools/bmp: additional improvements to auto-detection#21128maribu merged 4 commits intoRIOT-OS:masterfrom
maribu merged 4 commits intoRIOT-OS:masterfrom
Conversation
maribu
reviewed
Jan 12, 2025
Member
maribu
left a comment
There was a problem hiding this comment.
Thx, looks good to me. I'll do a bit of testing later today
Member
Parse the version number from the product description as returned by libusb. This works for stable firmware releases, and ensures that older firmwares work out of the box.
Instead of listing 'no targets found', detect unsupported targets as well. Once we need to attach, assert that the target is supported. Starting with firmware 2.0.0 of the BMP, not all targets are supported by defaults (depends on the firmware flavor). Adding support for this case therefore makes sense.
ab1f48c to
b27eb50
Compare
Member
Author
|
Thanks @maribu! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Contribution description
This extends the auto-detection logic by parsing the firmware version number from the device descriptor as returned by PySerial. For stable releases, this should return a proper version number, and restores out-of-the-box compatibility with older firmware versions.
The second improvements is to detect unsupported targets. The former message was a bit misleading. At least in v1.10.2 and v2.0.0 of the BMP, unsupported targets are prefixed with ***:
The improvement will detect this, and report back. If the user tries attach to the chosen target, a proper error will occur.
Lastly, some code improvements are added as well. Most of them were suggested by @maribu in a patch that laid the groundwork for auto-detection.
Testing procedure
Use the tool with firmware versions 1.8.0 - 2.0.0-rc1.
Issues/PRs references
Follow-up of #21107.