Microsoft KB Archive/249635
PSS ID Number: 249635
Article Last Modified on 5/8/2002
The information in this article applies to:
- Microsoft Windows 98 Second Edition
This article was previously published under Q249635
Multiple function Universal Serial Bus (USB) devices that support multiple packet sizes send DATA0 and DATA1 packets using the largest supported data field size rather than the smallest required data field. Each supported function of the USB device should send DATA0 and DATA1 packets using the smallest required data field size. The overall performance of a multiple-function device is decreased because more data is sent over the USB device.
This behavior occurs because the Hidclass driver in Windows 98 Second Edition always uses the largest data field the USB device supports to transmit packets. This behavior causes the USB device to transmit unneeded data during an IN or OUT transaction.
A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem.
To resolve this problem, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:
NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.
The English-language version of this fix should have the following file attributes or later:
Date Time Version Size File name Platform ---------------------------------------------------------------------------------- 1/10/2000 6:05pm 4.10.2223 23,584 Hidclass.sys Windows 98 Second Edition
Microsoft has confirmed that this is a problem in Windows 98 Second Edition.
The overall lengths of DATA0 and DATA1 packets between each function on a multiple-function device are equal. The data field of these packets is the longest length supported by the functions. For example, with a multifunction device that supports data retrieval from a piece of test/measurement equipment and keyboard input, the test/measurement function requires a 512-byte buffer but the keyboard requires only 16 bytes of data. The following examples show the resulting DATA packets that may appear:
Incoming keyboard data from the USB keyboard function.
[SYNC] [DATA (16 bytes of keyboard data) (496 bytes zero-filled) ] [EOP]
Incoming test/measurement data from the USB test/measurement function.
[SYNC] [DATA (512 bytes test/measurement data) ] [EOP]
NOTE: To actually see the problem, a USB analyzer is required.
This fix is recommended when you are using multiple-function USB devices. This fix does not affect single-purpose USB devices.
For additional information about Windows 98 and Windows 98 Second Edition hotfixes, click the article number below to view the article in the Microsoft Knowledge Base:
206071 General Information About Windows 98 and Windows 98 Second Edition Hotfixes
Additional query words: multi multifunction
Keywords: kbbug KB249635
Technology: kbWin98SE kbWin98SEsearch