This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

LPC2368 HID data flow stop on IN Pipe

Hello,

I have configured two end points (interrupt pipes) as

IN Pipe (End Point number 1) ---> To send data to Host/PC.
OUT Pipe (End Point number 4) ---> To receive data from Host/PC.

I am continously sending data onto IN pipe. Polling rate set to 1ms.

Following are observations:

1. Sometimes the data on IN pipe stops (as checked on USB trace).
When tried to remove and instert the USB, the USB trace shows initialization activity on Control Pipe and End Point 1 and then no data is seen to be transmitted on IN pipe.

2. To resolve this, only thing possible is to restart the Host/PC and the contoller system.

3. When sent data form host to controller on OUT pipe it is successfully recived.

Has anyone encountered such hault of transmission on IN pipe?
What is the possible reason for this behaviour?

--
Regards,
Sonam

  • Hello,

    We are using LPC23XX to implement HID protocol. The 2 intrrupt end point are configured as follows:

    IN Pipe (End Point number 1) ---> To send data to Host/PC.
    OUT Pipe (End Point number 4) ---> To receive data from Host/PC

    There is a strange situation that comes up.After a couple of transactions (not definite) one of the two pipes stops sending/receiving data completely.

    Instance1:
    Data on EP1 stops abruptly. Cross checked this instance by checking the transaction on USB TRACE. At this point if we send data from windows application on EP4, it is received successfully on LPC end.On the application (running on Windows) it gives continuously IO error.

    Instance2: EP4 stops accepting data from the application (on PC). This is also checked on USB trace. It gives STATUS_CANCELLED message when we send data from PC on the USB TRACE.At this point if checked on USB Trace data is seen to be flowing on EP1 and is successfully received by windows application.

    Considering that this might be happening due to some bus/transaction error, we check if any error condition is set during any of the above two Instances in USB_Error_Event(). But none of the error condition is seen to be invoked when the above two instances occur.

    Only way the issue gets resolved is by restarting the Windows System. Re-starting the application or LPC board alone does not resolve the above.

    Can someone please comment what is the area that we need to check or are missing to check?

    Looking forward for a reply.