Question

I have a Full Speed device that specifies the max packet size as 256 bytes. This is not USB compliant since the maxiumum packet size for a Full Speed Device should be 64 bytes. I can read (ReadFile) and write (WriteFile) to the device just fine, but I'm wondering if there could be issues that could arise that I'm just not seeing other than maybe a performance hit from writing across multiple usb frames (1ms)? I'm not really a USB expert, so any advice will be appreciated.

Was it helpful?

Solution

This is whats called the "compliant by hope" strategy.

From experience I can tell you that your device will crash a wide range of embedded hosts and cause corruption on others. (buffer overflows on most controllers where expected packet size is 64 and poor software is used.

These include different setup boxes, phones, etc.

Also, hacks like these, that work with a Nec hcd, might not work with an Intel one.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top