From: dduster on
I am trying to implement a CDC/ACM device. Although I am able to communicate
through the COM port created, there is never any transaction on the INT IN EP.

What are the requirements (INF, Descriptors, etc.) for this to work using
USBSER.SYS (XP SP3)?

Thanks much...
dd.

From: Tim Roberts on
dduster <dduster(a)discussions.microsoft.com> wrote:
>
>I am trying to implement a CDC/ACM device. Although I am able to communicate
>through the COM port created, there is never any transaction on the INT IN EP.
>
>What are the requirements (INF, Descriptors, etc.) for this to work using
>USBSER.SYS (XP SP3)?

The interrupt endpoint is only used for the notification element. Did you
create one? Its support is optional.
--
Tim Roberts, timr(a)probo.com
Providenza & Boekelheide, Inc.
From: dduster on
Yes, I did. There are 3 EP in total, on two interfaces. The first interface
consists of the INT EP, while the second consists of two EP (one IN, another
OUT).

Although the INT EP is optional, it is required in my case, as I must
emulate H/W flow control. I have thus included this interface. Granted,
should the host controller issue a USB IN request on that EP, my driver
stands ready to send the required notification.

Unfortunately, that request never comes...


From: Chris on
On Nov 2, 9:29 am, dduster <ddus...(a)discussions.microsoft.com> wrote:

> Although the INT EP is optional, it is required in my case, as I must
> emulate H/W flow control. I have thus included this interface. Granted,
> should the host controller issue a USB IN request on that EP, my driver
> stands ready to send the required notification.

Do you expose one interface with three endpoints? (bulk in, bulk out,
interrupt in) Or, two interfaces with the interrupt endpoint on
interface 0 and the others on interface 1? In the latter case, do you
have a union descriptor joining the two?

Also, for your descriptors, check out chapter 5 of usbcdc11.pdf. It's
all there for you. In particular, I think the interrupt/
communications class interface is class 2 / subclass 2, and the data /
bulk interface is class 0x0A / subclass 0.
From: dduster on
There are two interfaces, one with a single EP (INT), the other with two bulk
EPs . The interfaces are joint through a union descriptor.

As for the class - they are all set (as are the descriptors), as per
usbcdc11.pdf (I have also compare my descriptors with numebous other example
I was able to locate on the web - and I see not difference..)

thanks much for you time...
dd.