| Previous | Next |
| kIOReturnIsoTooOld | kIOReturnNotFound |
kIOReturnIsoTooNew
The requested start time is outside the forward scheduling window
kIOReturnIsoTooNew is the counterpart to kIOReturnIsoTooOld: the isochronous request was scheduled too far ahead. A controller may accept only a bounded scheduling horizon. The exact limit depends on the transport, controller, driver, and API, so the error does not provide a universal number of frames to use.
More lead time is not always safer. If an application uses a distant timestamp to hide producer jitter, it can move the request beyond the queue window. The goal is a stable queue that stays sufficiently ahead of the current frame without asking the driver to reserve work at an unsupported distance.
Practical checks
- Log the current and requested frame numbers and calculate their difference at the moment of submission.
- Use a bounded target lead time and refresh it after reconnect, resume, alternate-setting changes, or controller reset.
- Do not reuse frame values captured before a long pause, configuration change, or transfer cancellation.
- Separate scheduling failure from payload failure: changing the audio, video, or sensor data does not correct an invalid frame horizon.
References
- Apple Developer: kIOReturnIsoTooNew
- Apple: LowLatencyWriteIsochPipeAsync
- USB-IF: USB 2.0 Specification
- libusb: isochronous asynchronous I/O
Looking for a different code? Search another status or error code.