0

I develop the driver in Embedded Device that communicates via USB with Host (PC). Device implements CDC class on USB FS. When I send data from Host to Device with the size more than MaxPacketSize I have never get any Zero Length Packet to terminate transaction in any case.

I have checked it with data size equal or not equal to MaxPacketSize multiply.

According to USB specification (USB 2.0 standard 5.8.3) Zero Length Packet should be send in this case. I suppose that this is a matter of Windows driver - usbser.sys, but I have not found confirmation of this behaviour.

What I am asking is there any way to detect the last packet in Bulk OUT transfer from Host to Device or any way to setup the Host to send these ZLP packets in Bulk OUT transfer?

Esato
  • 127
  • 1
  • 9
  • Have you tried sending *exactly* 64 bytes or an integer multiple? Transfers with other sizes are terminated with a short ( – Turbo J Nov 11 '19 at 23:58
  • Yes, I have checked many combinations including this and the effect is the same. – Esato Nov 12 '19 at 06:27

0 Answers0