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

Reply via email to