I noticed this strange behaviour for USBX CDC ACM:
it sometimes fails when "Write" less than 8 bytes.
You can test this from "snip/usbx_usb_device/usb_device_cdc_acm_read_write".
Go to "usb_device_app_cdc_acm_console_rw"
and in the infinite loop substitue the code with this...
requested_length = actual_length;
status = ux_device_class_cdc_acm_write( cdc_acm, cdc_acm_buffer, requested_length, &actual_length );
Open terminal program (I use Tera Term) and receive this 3 bytes flux data.
I use USBPCap Wireshark to sniff USB communication.
You notice that sometimes USBX don't send the 3 bytes packet but send ZLP (zero length packet).
WICED Studio Wi-Fi Combo