I am having an issue with USB OTG drivers when using them as a peripheral serial over USB port on Windows CE. In our setup the PC is running a GUI that is sending commands across the USB interface to the SOM which is processing data and sending results back. If data is not sent from the PC to the SOM within the DO_INACTIVITY_TIMEOUT time of 10 seconds a timeout event is triggered in the otgusb.c file. If this event is triggered there then is about 1 chance in 100 that the USB bus will lockup. In its simplest form if the code on the PC GUI looks like the following it will fail after about 1/2 hour.
loop forever
write data across USB to SOM
Sleep 12 seconds
end loop
To keep the event inactivity timeout from occurring we are having to send dummy data to the SOM at regular intervals of 5 seconds. If this is done the interface never freezes up. What is the issue with the driver?