HID Device ACK problem in USB Stack

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

HID Device ACK problem in USB Stack

Jump to solution
784 Views
wre
Contributor III

Hi.  I'm new to the Freescale v4.1.1 stack and am noticing a problem with a SetReport request.

Background:

We use HID for a request/response process for information from our device.

The working stack (not Freescale) on a JB8 micro sends a Control Transfer which is made up of a SETUP transaction, six eight-byte OUT transactions (report is 48 bytes in size) and an IN transaction (the ACK packet)

The non-working stack (Freescale v4.1.1) on a Kinetis K20DX50 micro has the same structure as above except the report length is 40 bytes so there are two 16-byte and one 8-byte transactions.  The problem is that the protocol analyzer is reporting a length error on the ACK packet.

The JB8 IN Transaction has a length of 0 but the K20 IN has a length of 16.

Question:

Is the ACK response part of the protocol stack (and broken) or is my application not doing something that it is supposed to do for the ACK to be correctly formed?

(Hopefully I can attach a .PDF with the protocol analyzer output so you can see the error)

Labels (2)
0 Kudos
1 Solution
456 Views
wre
Contributor III

Stumbled onto the answer:  The application needs to set the 'size' to 0 after handling the incoming request in the Set Report callback.

View solution in original post

0 Kudos
1 Reply
457 Views
wre
Contributor III

Stumbled onto the answer:  The application needs to set the 'size' to 0 after handling the incoming request in the Set Report callback.

0 Kudos