I’m developing a scanner DS but it can’t transfer more than one image at a time.

1) Has anyone successfully transferred more than one image without returning to state 5? If so, what application and what DS where you using?

2) Does anyone have experience with multi-image transfers using the applications listed below?

In all of the apps listed below, my DS does transfer a single image correctly and return to state 5. When transferring multiple images the first image transfers correctly. Then on DAT_PENDINGXFERS/MSG_ENDXFER, I set the Count in TW_PENDINGXFERS to 2 (I’ve tried also -1) and then return TWRC_SUCCESS. After that (with one exception), the app doesn’t call my DS again. It seems the app thinks I’ve finished all transfers (Count == 0) and have returned to state 5 but I’m still in state 6 waiting for it to initiate, or cancel, the next transfer.

Here are the apps I’ve tried along with the results:

* App: Graphic Converter v5.6 by Lemke Software GmbH

– Result: Properly transfers multiple images. No problem here.

* App: Gimp.app v2.2.11 from sourceforge.net

– Result: Transfers first image then does DAT_PENDINGXFERS/MSG_ENDXFER
followed by DAT_PENDINGXFERS/MSG_RESET. This is acceptable since
it properly returns the DS to state 5.

* App: Image Capture v3.0.3 (OS X 10.4.6) by Apple

– Result: Hangs after first image transfer as described above.

* App: Photoshop CS2 v9.0x196 by Adobe Systems, Inc.

– Result: Hangs after first image transfer as described above.

* App: ImageReady CS2 v9.0x196 by Adobe Systems, Inc.

– Result: Hangs after first image transfer as described above.

Test system: iMac (PowerPC G4 @ 800MHz), Mac OS X 10.4.6.

I’m at a loss as to what I should try next. Any help you can provide would be appreciated.

After further investigation, I think the apps that don’t work (see previous post) are assuming that all DS’s transfer only one image, as typical flatbeds do. They assume the Count returned on DAT_PENDINGXFERS/MSG_ENDXFER is zero so they automatically transition to state 5 waiting for a MSG_XFERREADY or MSG_CLOSEDSREQ while my DS is still in state 6 waiting to transfer the second image.

Even my DS also has problem acquiring multiple images into Acrobat. After the first image transfer when my DS is in state 6, DAT_PENDINGXFERS/MSG_ENDXFER is called and then DAT_PENDINGXFERS/MSG_RESET to move to state 5. Did any one find a solution to overcome this?