USB HID driver

Is there a USB HID driver only for Colibri iMX6 WEC7 device? I found the USB HID Touch rriver installer in toradex but what I only need is the USB HID. I checked the installed dll and there are two. One is the USBHIDTouch.dll and the other one is the USBHID.dll. Installing the USB HID Touch will also install the USB HID right?

I clerared first the registry before installing the driver but when I insert the USB connector from device to PC, the USB is not detected. ‘Unknown USB Device (Device Descriptor Request Failed)’ is the error. 2186-unknownusb.png

Toradex device is connected to PC via USB cable.

What I would like to achieve is to implement a drop-to-cursor functionality using USB HID but I am stuck with the USB device connection.

Hello @germano.tx ,

Thank you for the reply. Yes you are right. I want to make the Colibri iMX6 act as a USB HID device to the PC so I can pass information from the Colibri application to the cell in excel where the mouse cursor is pointed. But as you said it is not supported so I cannot implement it.

Hi @jayarr ,

I’m not sure what you’re trying to achieve…
I think you’re trying to see your Colibri iMX6 as an USB HID device on the connected PC.
For this you would need a HID Function Client driver on the Colibri side. Unfortunately there is no support for this. There are only RNDIS, Serial and Mass Storade Function Client Drivers.
The USB HID driver that is available on the OS is a USB Host Driver, for handling USB HID devices that are connected to the Colibri via USB Host port (like a Mouse or Keyboard connected to the Colibri)

You are welcome. We regret not to give you better news.
Thanks for your feedback.

Hello @germano.tx,

We have a custom USB HID Function Client driver which is working in another Windows EC 7 image to have the functionality you mentioned, is it possible to add and use this in the default toradex image? I tried adding/testing it using the registry settings below, however it doesn’t seem to work.

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]
   "DefaultClientDriver"= "HID_Class"

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\HID_Class]
       "Dll"="usbfnhidkbd.dll"
       "DeviceName"="USBFNKBD1:"
       "FriendlyName"="USBFn HID Keyboard Driver"
       "Prefix"="FKB"
       "DeviceArrayIndex"=dword:0
       "BusIoctl"=dword:2A0048
       "IClass"="{9220D82D-482C-41d7-96BC-FD9154ABCFA6}"   
       "idVendor"=dword:0EB8
       "idProduct"=dword:2301
       "Product"="HID Keyboard"
       "bcdDevice"=dword:0
       "Manufacturer"="Company Name"

Are there specific values that I need to add or modify further? Take note that I initially placed the DLL inside \FlashDisk\System based on the HKLM\Loader\SystemPath registry but I also tried putting it in the \Windows folder, however it is being delete upon reboot. Does this mean that the driver is not compatible in IMX6?

Environment:
Colibri iMX6S V1.1
WEC7 BSP 1.6

Hi @edmon ,

OK, seems you have a driver already. What platform was it for? ARM? What CE version? 5, 6, 7, 8?

Adding the registry keys you mention should work.

Maybe there is an issue that at the moment of loading the usb function client the flashdisk is not mounted yet…

Can you share the dll so i can try to reproduce?