USB Composite Device with HID Interface

carleeto
New Member

posted December 08, 2009 10:03 PM     Click Here to See the Profile for carleeto     Edit/Delete Message


Hi,

I have a composite device that has 3 interfaces. Interfaces 1 and 2
are vendor specific and Interface 3 is a HID endpoint that Windows
recognizes and load the HID class driver for. To get my driver to
work, I need to install it for the composite device, which then hides
all the end points and makes the HID interface invisible to Windows.

What I'd like to know is :
Is it possible for my driver to be installed on the composite device but at the same time have Windows' HID driver control the HID interface?

Thanks.

IP: Logged

egawtry
Member

posted December 09, 2009 09:48 AM     Click Here to See the Profile for egawtry   Click Here to Email egawtry     Edit/Delete Message


Why would installing the driver hide the endpoints? I do composite devices all the time and then use separate programs on the separate sections HID/CDC/Mass...

The only thing Composite does is ADD a few entries in the registry that you can use to cross-reference the device's connections.

IP: Logged

carleeto
New Member

posted December 09, 2009 12:13 PM     Click Here to See the Profile for carleeto     Edit/Delete Message


I wasn't clear. I shall rephrase. By hiding I meant that once my driver was installed on the composite device, there seemed to be no way to install another driver on any of the composite device's interfaces, because if I understand correctly, from Windows' point of view, my driver is now responsible for them.

I can access all the interfaces in software even after my driver has been installed.

The thing is the device's HID interface works fine with Window's HID class driver, but not with mine.

Therefore I was wondering if there was a way to get Windows' HID driver controlling the HID interface, while having my driver installed on the composite device controlling the others.

IP: Logged

egawtry
Member

posted December 10, 2009 10:25 AM     Click Here to See the Profile for egawtry   Click Here to Email egawtry     Edit/Delete Message


*confusion*
"I can access all the interfaces in software even after my driver has been installed." Good.

"The thing is the device's HID interface works fine with Window's HID class driver, but not with mine." Huh? Which class driver? Are you emulating one of the standard HID classes like a keyboard or mouse? I can see that Windows would stop connecting at that point. Otherwise, if you are doing a generic HID interface, there is no difference whether it is composite or not.

If you are trying to use a built in Windows HID device interface (as mentioned above), then you may not be able to use a composite device interface. Or, maybe you need to play with your USB descriptors a bit and divorce the HID endpoints from the other endpoints.

IP: Logged

carleeto
New Member

posted December 10, 2009 06:01 PM     Click Here to See the Profile for carleeto     Edit/Delete Message


Sorry to ask what may seem like an obvious question, but how can I tell whether it is generic HID or a specific HID device class?
The compatible ID is:
USB\Class_03&SubClass_00&Prot_00

Would that make it generic HID?

IP: Logged

egawtry
Member

posted December 15, 2009 11:21 AM     Click Here to See the Profile for egawtry   Click Here to Email egawtry     Edit/Delete Message


Please read the HID spec at:

http://www.usb.org/developers/hidpage/

 

http://www.cygnal.org/ubb/Forum9/HTML/001949.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值