| Previous | Next |
| kIOUSBBufferUnderrunErr | kIOUSBNotSent2Err |
kIOUSBNotSent1Err
The transaction did not reach normal bus execution
kIOUSBNotSent1Err is one of two legacy IOUSBFamily statuses whose built-in description is simply “Transaction not sent.” That is significant: the operation did not complete with a device response, and the return value alone does not state whether the request was rejected before scheduling, abandoned during a controller-state change, or lost with a larger failure path.
Apple's public header exposes both kIOUSBNotSent1Err and kIOUSBNotSent2Err but does not document a protocol-level distinction between the suffixes. Diagnostics should retain the exact value, yet code should not invent a device-side meaning from the number in the name.
How to investigate without guessing
- Correlate this status with the request submission result, controller state, port state, and any preceding reset, suspend, disconnect, or endpoint halt.
- Record whether the request was queued asynchronously and whether its ownership was returned to the caller.
- Check whether a failure before submission is reported elsewhere in the same operation; the first lower-level status is usually more specific.
- Do not retry a state-changing command solely because it was not sent; first establish whether the request was ever accepted by the controller queue.
References
Looking for a different code? Search another status or error code.