I'm working on a USB device instanciating 4 CDC virtual com and a HID. The 4 virtual com send and receive on 4 real UART/LPUART.
I do some stress test by sending and receiving data (115200 baud) continuously from the host at the maximum throughput possible. The UART TX pins are connected to UART RX pins on all channels. So everything sent from the host is received by the host.
In parallel, HID is used to transfer device state to the host.
Globally, everything works well.
However, at some point, HID IN packets are not sent any more by the device to the host. The USB_DeviceHidSend() function returns a "busy" status. HID OUT packets sent by the host are still received by the device.
Any help much appreciated.