AnsweredAssumed Answered

USB Endpoint0 IN OUT wierdness

Question asked by robison.don.001 on Oct 6, 2014
Latest reply on Oct 12, 2014 by Chinzei.Tsuneo
I'm having problems with my USB project.  I can get the GET_DESCRIPTOR from my computer and as you can imagine I immediately attempt to send out the descriptor, but it's not going well.

The DIEPT0SIZ immediately decrements to zero.  The DIEPCTL0 disables the endpoint.  I take this as a sign the TxFIFO has received the descriptor.  The problem is on Microsoft Message analyzer it shows the packet doesn't arrive until 6 seconds later, just microseconds before the computer gives up on the endpoint and begins enumeration all over again. 

Something else I don't expect is that the transmitted packet shows up in the RxFIFO. 

I think the USB core is struggling to understand whether im trying to output or input something, but I cannot figure out where I went wrong.  I am following the reference manual by writing in to the endpoint transmit size then setting the CNAK and enable for IN Endpoint0 control register, then pushing the data onto the 0x50001000 + the address given in the size register.

Outcomes