I added a call to
libusb_init() to test it in our solution.
The aim is to provide integrated use of libusb for several purposes in our project, e.g. reading keyboard and other device descriptors to differentiate user input basing on that.
When trying to deploy solution, the call fails as, by calling
usbi_backend.init (which reflects to
wince_init() ), internal
init_dllimports() fail on
It appears as wince usb kernel wrapper (both dll and drv) is totally missing from the windows folder on the bsp we are provided with. Is there a way to add/obtain it, maybe without creating a custom os image? Or have i missed something to make it work?
In general it is possible to add DLLs to the Toradex BSP without building your own image. To activate such DLLs, you need to create additional registry entries. For USB devices, such DLLs are referenced by the device’s vendor ID / product ID (VID/PID), or by the device class.
Whe have a somewhat old article about how to achieve this for the libusbx library, I assume you can take this at least as a template for your own work:
I suggest you download the compiled libusbx from this article and examine it. You will see, it is as simple as
- Store the DLLs in the folder
(You can choose any other folder to store the DLLs, but then you need to enter the full absolute path to the .dll file into the registry).
- Adjust the .reg file to match your devices
- Import the .reg file using the Colibri’s Registry Editor
- Save the registry