The USB Module is an optional package that provides access to the USB ports from within your OSGi Framework. It is an implementation of the Java Specification Request number 80 (JSR 80) API.
Feature Set
The module provides the following features and functionalities:
Allows Java applications to access and communicate with USB enabled devices.
Comes with a USB Demo that retrieves an object tree, representing the bus with its devices and descriptors, as well as searches for hub devices.
Known Issues and Limitations
The following issues or limitations are known:
If the USB Core Bundle needs to be updated while another module is using its services, the relevant fragment bundle should also be updated. Otherwise the dependent module might not work properly and the following error will be written in the log file:
"Manager could not be started javax.usb.UsbException: Error while loading shared library javaxusb.dll ..."
The usage of the USBAdmin service is mandatory. Retrieving the USBServices implementations directly by using the getUsbServices() of the javax.usb.UsbHostManager will not work due to splitting of the USB API and its implementation in different bundles – USB API Bundle and USB Core Bundle.
Module Dependencies
The module has dependencies on the following:
USB drivers included on your Operating System.
OSGi Framework: The OSGi Runtime is required for the module to operate.
JSR80 implementation is based on libusb native library (refer to http://libusb.info/).
If the users experience any problems with the USB module, then they are advised to check the libusb support pages as well.
There are known issues with machines running Ubuntu OS with Citrix XenServer. Problem is that USB Controller could not be emulated and passed to VM's from hyper-visors.
Licensing Information
No Licensing information is available for this module.