you need to create a 2nd top level collection (which describes a generic HID
on a custom usage page) in your HID descriptor and use that as a way to talk
to the miniport. the system opens the keyboard TLC exclusively and does not
allow you to open the keyboard collection. OR, as an alternative, you could
write you HID miniport as KMDF driver (see 7600.16385.0\src\hid\hidusbfx2 in
the win7 wdk for an example) and from that KMDF driver you can enumerate
your own raw PDO which no longer has to be HID and you can use IOCTLs to
communicate with the miniport
d
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"Max" <> wrote in message news:hf0oal$cb0$...
> Hi
>
> I have developed an hid minidriver managing a custom keyboard I have.
> The driver work well but I need also to have the possibiliy to
> communicate directly with the driver for send come custom configuration
> message. In the beggining I tried to use the function HidD_SetFeature()
> and HidD_GetFeature() but they fail and no event arrive to the driver.
> Also tried the standard call DeviceIoControl() but also this call
> doesn't work. I suspect I must to add some entried into the hid report
> descriptor for "enable" this direct communication but I'm not very
> expert in hid developing and I don't know how to add this feature. For
> the driver I used the standard hid keyboard descriptor as follow:
>
> 0x05, 0x01, // Generic Desktop
> 0x09, 0x06, // Keyboard
> 0xA1, 0x01, // Collection
> 0x05, 0x07,
> 0x19, 0xE0,
> 0x29, 0xE7,
> 0x15, 0x00,
> 0x25, 0x01,
> 0x75, 0x01,
> 0x95, 0x08,
> 0x81, 0x02,
> 0x95, 0x01,
> 0x75, 0x08,
> 0x81, 0x01,
> 0x95, 0x05,
> 0x75, 0x01,
> 0x05, 0x08,
> 0x19, 0x01,
> 0x29, 0x05,
> 0x91, 0x02,
> 0x95, 0x01,
> 0x75, 0x03,
> 0x91, 0x01,
> 0x95, 0x06,
> 0x75, 0x08,
> 0x15, 0x00,
> 0x25, 0x65,
> 0x05, 0x07,
> 0x19, 0x00,
> 0x29, 0x65,
> 0x81, 0x00,
> 0xC0 // End Collection
>
> How can I add the entries for have the function HidD_SetFeature() and
> HidD_GetFeature() working?
> Thank you
>
> --
>
>
> --
>