|
USBIP C library 0.7.0
Virtual USB devices & host drivers over USB/IP
|
USBIP_DEBUG (any non-empty value) makes the device core print one line per control request with the verdict, plus one line per data transfer - the fastest way to find the request a host is sending that your handler STALLs by accident, or to see whether an endpoint is moving bytes at all:
A data line carries the direction, the endpoint address, the endpoint's transfer type and the number of bytes that actually moved. Isochronous lines add the packet count (len=14362 16 pkts, the de-padded total). An IN URB with no data yet logs -> parked, no data yet, then logs again with the real length once usbip_device_write() feeds it.
A -> STALL line is the device saying "no": either a request you chose not to answer (a Device Qualifier, say, which a full-speed device must STALL) or a bug in the handler. USB concepts decodes the type= byte.