LPC1347 USB Control Transfer

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LPC1347 USB Control Transfer

4,935 Views
peter_furtner
NXP Employee
NXP Employee

Our customer SIGMATEK wants to implement USB Control Transfers on the LPC1347.

This works nice as long as they have a data length of less than 64 or more than 64 Bytes.

If the data length is exactly 64 Bytes (or a multiple of 64 bytes) then this does not work anymore.

What do they need to do to get this working??

Regards,

Peter

1 Reply

25 Views
dedog57501
Contributor I

Hello,
When USB data payloads equal an exact multiple of the endpoint's maximum packet size (64 bytes for Full-Speed), the receiver hangs because there is no short packet to signal the end of the transfer; to fix this on the LPC1347, SIGMATEK must check if the payload length is a non-zero multiple of 64 and, if so, manually send a Zero-Length Packet (ZLP) with a length of zero right after the main data block to flush the buffer, signal completion, and successfully terminate the transfer.

Best Regards

0 Kudos
Reply