Hi again,
Well I'm much further on with this but have reached an impasse when it comes to retrieving data from the camera.
The device is already set to and has accepted the format and frame that I wish to collect using the PROBE and COMMIT controls. I had assumed that if I were to change the streaming interface from Alternate 0 (no bandwidth) to another Alternate (in my case 6) the isochronous data delivery would start as soon as I send an IN token after the next micro-frame SOF. Is this correct or have I forgotten something? Pardon my ignorance but it seems to me that I am missing some information before starting the data retrieval - some command that returns, for example, the number of packets per microframe and their size. PROBE gives me a dwMaxPayloadTransferSize of 1600 bytes while the endpoint shows wMaxPacketSize as 5120 bytes, the last of which apparently implies 3 packets per microframe due to bits 11 & 12 (read that somewhere but not sure where). These two figures don't add up - literally.
[edit] actually having just re-read the paragraph about endpoint packet sizes I realise that the 5120-byte MaxPacketSize reported includes bit 11 and 12 so really I have a 1024-byte packet with 3 per microframe... which doesn't really explain there the 1600-byte dwMaxPayloadTransferSize fits in :-S[/edit]
So, in a nutshell, what, if anything, am I missing. I have read your book until I'm bloodshot and have obviously missed something important. Where, for instance, does one use the USB_START_ISOCH_ASAP flag?
John