| Anterior | Siguiente |
| kIOUSBTransactionReturned | kIOUSBPortWasSuspended |
kIOUSBTransactionTimeout
Qué significa kIOUSBTransactionTimeout
kIOUSBTransactionTimeout indica que la transacción agotó su plazo antes de recibir un completion normal. Es distinto de un endpoint STALL y de una interrupción por suspend del puerto.
Un timeout puede deberse a falta de respuesta, endpoint esperando datos, ruta ocupada, secuencia de protocolo incorrecta o un timeout configurado demasiado corto. El valor tampoco define por sí solo cuánto del comando de nivel superior pudo ejecutarse.
Qué comprobar
- Registre endpoint, tipo de transferencia, timeout configurado y bytes completados/restantes.
- Correlacione con STALL, suspend, reset y errores del bus para evitar agrupar causas distintas.
- Valide que el plazo corresponde a la latencia permitida por el protocolo real.
- Antes de repetir una operación no idempotente, determine si el dispositivo pudo haber procesado parte de ella.
Referencias técnicas
- Apple: IOUSBFamily error codes
- IOUSBFamily source: timeout handling in pipe I/O
- libusb: transfer completion states and timeout handling
¿Buscas un código diferente? Buscar otro código de estado o error.