Hi, I am trying to get my Microtek Scanmaker 5600 working with linux. I am using kernel 2.6.8.1 and CVS version of javax.usb.
Everything seems ok till I submit the scan request. Here is the relevant section of the UsbSnoopy logs: 63540 ms] >>> URB 323 going down >>> -- URB_FUNCTION_VENDOR_DEVICE: TransferFlags = 00000001 (USBD_TRANSFER_DIRECTION_IN, ~USBD_SHORT_TRANSFER_OK) TransferBufferLength = 00000001 TransferBuffer = ff44c5d8 TransferBufferMDL = 00000000 UrbLink = 00000000 RequestTypeReservedBits = 000000c0 Request = 00000026 Value = 00000000 Index = 0000ef10 [63544 ms] UsbSnoop - MyInternalIOCTLCompletion(f891fdb0) : fido=00000000, Irp=fb7444c8, Context=82398c80, IRQL=2 [63544 ms] <<< URB 323 coming back <<< -- URB_FUNCTION_CONTROL_TRANSFER: PipeHandle = fbb94820 TransferFlags = 0000000b (USBD_TRANSFER_DIRECTION_IN, USBD_SHORT_TRANSFER_OK) TransferBufferLength = 00000001 TransferBuffer = ff44c5d8 TransferBufferMDL = 822b8210 00000000: 00 UrbLink = 00000000 SetupPacket = 00000000: c0 26 00 00 10 ef 01 00 [63544 ms] UsbSnoop - DispatchAny(f891e610) : IRP_MJ_INTERNAL_DEVICE_CONTROL [63544 ms] UsbSnoop - MyDispatchInternalIOCTL(f891fe80) : fdo=fc761030, Irp=fbb94008, IRQL=0 [63547 ms] >>> URB 324 going down >>> -- URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER: PipeHandle = 820ef484 [endpoint 0x00000081] TransferFlags = 00000002 (USBD_TRANSFER_DIRECTION_OUT, USBD_SHORT_TRANSFER_OK) TransferBufferLength = 0000ef00 TransferBuffer = f52a9000 TransferBufferMDL = 00000000 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 This is followed by a bunch of more 00s. In the logs, this is followed by a bunch of data. I am able to get the scacnner motor to move but all my attempts tot read the bulk data have failed. I claim the correct interface, open the correct pipe etc. I have tried opening the pipe for endpoint 0x81 and syncsubmit an IRP with buffers of various lengths in different ways - using a separate thread, or after sending the c0 26 00 00 request etc., but no matter what I send, I get the Invalid IRP message back. How is it that I am supposed to read the bulk data back from my scanner? The scanner has 2 IN endpoints. I feel very frustrated. Any help would be appreciated. I have already looked the apis for jsyncmanager, cm19 etc., and tried the way they do it, but nothing has worked so far. JNI log says: LOG:[xfer](4) JavaxUsbDeviceProxy.c.Java_com_ibm_jusb_os_linux_JavaxUsb_nativeDeviceProxy[75] Got Request LOG:[xfer](5) JavaxUsbDeviceProxy.c.submitRequest[127] Submitting Request. LOG:[xfer](5) JavaxUsbDeviceProxy.c.submitRequest[131] Submitting Pipe Request. LOG:[xfer](4) JavaxUsbPipeRequest.c.pipe_request[63] Submitting URB LOG:[xfer](1) JavaxUsbPipeRequest.c.pipe_request[74] Could not submit URB (errno -22) LOG:[xfer](4) JavaxUsbDeviceProxy.c.Java_com_ibm_jusb_os_linux_JavaxUsb_nativeDeviceProxy[78] Completed Request Exception in thread "main" javax.usb.UsbPlatformException: Error submitting IRP : Invalid at com.ibm.jusb.os.linux.JavaxUsb.errorToUsbException(JavaxUsb.java:88) at com.ibm.jusb.os.linux.LinuxPipeRequest.completeUsbIrp(LinuxPipeRequest.java:84) at com.ibm.jusb.os.linux.LinuxPipeRequest.setCompleted(LinuxPipeRequest.java:74) at com.ibm.jusb.os.linux.JavaxUsb.nativeDeviceProxy(Native Method) at com.ibm.jusb.os.linux.LinuxDeviceProxy$1.run(LinuxDeviceProxy.java:88) at java.lang.Thread.run(Thread.java:534) Susheel __________________________________ Do you Yahoo!? New and Improved Yahoo! Mail - 100MB free storage! http://promotions.yahoo.com/new_mail ------------------------------------------------------- This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170 Project Admins to receive an Apple iPod Mini FREE for your judgement on who ports your project to Linux PPC the best. Sponsored by IBM. Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php _______________________________________________ javax-usb-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/javax-usb-devel