Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/LibUsbDotNet/LibUsbDotNet
My updates to LibUsbDotNet, an excellent library for cross-platform USB device control using Mono/.NET
https://github.com/LibUsbDotNet/LibUsbDotNet
Last synced: 5 days ago
JSON representation
My updates to LibUsbDotNet, an excellent library for cross-platform USB device control using Mono/.NET
- Host: GitHub
- URL: https://github.com/LibUsbDotNet/LibUsbDotNet
- Owner: LibUsbDotNet
- License: lgpl-3.0
- Created: 2016-07-15T15:27:38.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-09-04T04:32:52.000Z (2 months ago)
- Last Synced: 2024-09-18T11:56:41.086Z (about 2 months ago)
- Language: C#
- Size: 3.38 MB
- Stars: 550
- Watchers: 30
- Forks: 167
- Open Issues: 25
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# LibUsbDotNet
[![Build Status](https://dev.azure.com/libusbdotnet/libusbdotnet/_apis/build/status/LibUsbDotNet.LibUsbDotNet?branchName=master)](https://dev.azure.com/libusbdotnet/libusbdotnet/_build/latest?definitionId=1)
[![NuGet version](https://img.shields.io/nuget/v/LibUsbDotNet.svg)](https://www.nuget.org/packages/LibUsbDotNet/)
![LGPLv3 license](https://img.shields.io/github/license/LibUsbDotNet/LibUsbDotNet.svg)[LibUsbDotNet](http://sourceforge.net/projects/libusbdotnet) is a .NET C# USB library for WinUsb, libusb-win32, and Linux libusb v1.x developers.
All basic USB device functionality can be performed through common device classes allowing you to write OS and driver independent code.* LibUsbDotNet versions 2.2.4 and above support the Libusb-1.0 driver.
* LibUsbDotNet 2.1.0 and above supports the genuine [libusb-win32](https://github.com/mcuee/libusb-win32/releases) driver package. However,
access to basic device information via the windows registry is not available. See the [LegacyUsbRegistry](http://libusbdotnet.sourceforge.net/V2/html/9b8a7337-0d0c-c3e6-6f56-d47f1a3e5856.htm)
class for more information.## Features
* Full support for WinUSB. All WinUSB interfaces are treated as separate devices; each interface can be used by a different application.
* Extended kernel level support for libusb-win32.
* Supports Unix-like operating systems using Mono .NET and libusb-1.0.
* Common device classes allow for a single code base to support multiple drivers and platforms.
* Includes a Usb InfWizard utility (Windows only) for generating usb installation packages, removing devices, and installing drivers.
* Device discovery using any or all of the folowing criteria:
* VendorID
* ProductID
* Revision Code
* Serial Number
* Device Interface GUIDSource package includes many small example applications.
### Linux users
If you have installed `libusb-1.0` and you still have an error about loading library, it may be needed to make a symlink to allow runtime load the library.
First, find the location of the library. For example : `sudo find / -name "libusb-1.0*.so*"` can give you :
```
/lib/x86_64-linux-gnu/libusb-1.0.so.0.1.0
/lib/x86_64-linux-gnu/libusb-1.0.so.0
```
Then go to the directory, and make the symlink. it should match the library name, with extension (.so) without version :
```
cd /lib/x86_64-linux-gnu
sudo ln -s libusb-1.0.so.0 libusb-1.0.so
```