UsbVendorsLibrary 1.0.12
dotnet add package UsbVendorsLibrary --version 1.0.12
NuGet\Install-Package UsbVendorsLibrary -Version 1.0.12
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="UsbVendorsLibrary" Version="1.0.12" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="UsbVendorsLibrary" Version="1.0.12" />
<PackageReference Include="UsbVendorsLibrary" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add UsbVendorsLibrary --version 1.0.12
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: UsbVendorsLibrary, 1.0.12"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package UsbVendorsLibrary@1.0.12
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=UsbVendorsLibrary&version=1.0.12
#tool nuget:?package=UsbVendorsLibrary&version=1.0.12
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
UsbVendorsLibrary
Fast, low‑memory lookups of USB vendor and product names sourced from usb.ids.
Features
- O( log n ) lookups via binary search over compact arrays
- Very small memory footprint (no per‑vendor dictionary overhead)
- Primary API: vendorId → name, (vendorId, productId) → name
- Optional reverse lookups (name → id) built lazily on first use
Basic Usage
using UsbVendorsLibrary;
// Vendor name by ID
if (UsbIds.TryGetVendorName(0x03E7, out var vendor))
{
Console.WriteLine(vendor);
}
// Product name by Vendor + Product ID
if (UsbIds.TryGetProductName(0x03E7, 0x2150, out var product))
{
Console.WriteLine(product);
}
// Reverse lookups (lazy index build)
if (UsbIds.TryGetVendorIdByName("Intel", out var vendorId))
{
Console.WriteLine($"Vendor 0x{vendorId:X4}");
}
if (UsbIds.TryGetProductIdByName(0x03E7, "Myriad VPU [Movidius Neural Compute Stick]", out var productId))
{
Console.WriteLine($"Product 0x{productId:X4}");
}
Console.WriteLine($"Data version: {UsbIds.Version} ({UsbIds.Date})");
Data Source
- Embedded copy of
usb.ids(Linux USB IDs) from Linux-usb.org. The file is also packed ascontentFiles/any/any/usb.idsfor reference.
Notes
- Reverse lookup maps are built on demand to keep memory usage low.
- Interface/class code sections in
usb.idsare intentionally ignored; only vendors and products are indexed.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.12 | 298 | 11/10/2025 |