I have a problem enumerating my USB device. I can get pretty fan then the endpoint closes let me give a description of what happens one step at a time
1. Computer asks for device dsecriptor to address 0
2. Device sends descriptor to computer
3. Device ACKs the zero length packet afterwards
4. Computer sends a set address
4. Device sends a zero length packet as ACK
5. Change the address to the given address
6. Computer sends over a GET_DESCRIPTOR
7. Device replies with the descriptor
8. Computer sends a zero length packet
9. device ACKS the packet
here is the problem
10. The computer closes the endpoint right after it gets the descriptor. I can't figure out why.
I can see on microsoft message analyzer than my packet arrived on time and it says the transfer was successful, yet the computer closes the endpoint immediately after. Why would it do that?