Use usb.ids
database to interpret various ID values
#144
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.
I spotted that someone had written this Rust crate for the Linux USB ID database, which gets us some easy quality of life improvements with very little code, e.g:
Recognition of vendor IDs, product IDs, and class/subclass/protocol values as seen in device and interface descriptors:
Recognition of language IDs in string descriptor requests:
This should also be helpful when we come to interpreting HID descriptors and traffic.
The crate used is under the MIT license, and the usb.ids database is under LGPL or BSD-3-Clause.