Hello,
I am trying to access on my OCR device that reads from invoice the number
and fill the input text box in the webpage.
I have the DLL for Windows and the file for Mac osx but I can't really turn
on the device.

This is the lsusb:

$  lsusb -vv -d0852:0005

Bus 001 Device 010: ID 0852:0005 CSEM
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.00
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass         0
  bDeviceProtocol       255
  bMaxPacketSize0        64
  idVendor           0x0852 CSEM
  idProduct          0x0005
  bcdDevice            0.01
  iManufacturer           1 Xemtec SA
  iProduct                2 Xemscan
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           55
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       1
      bNumEndpoints           4
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0005  1x 5 bytes
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x88  EP 8 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0284  1x 644 bytes
        bInterval               1
Device Status:     0x0000
  (Bus Powered)


I am trying to get it works under linux because there is nothing ready and
I would like to avoid to install windows.

First thing that I found is that the Device status changes when you plug
the first time and then after a few seconds it changes to 0x000.

This is the status when you plug it in:
Device Status:     0x0002
  (Bus Powered)
  Remote Wakeup Enabled

It's flashing for  a few second and then off, on windows it turns on when
is reading the numbers.

So far I have made this:

dev = usb.core.find(idVendor=0x0852, idProduct=0x0005)
try:
        dev.set_configuration()

except usb.core.USBError as e:
       sys.exit("Could not set configuration")

endpointWrite = dev[0][(0,1)][1]
endpointRead  = dev[0][(0,1)][0]

print usb.control.get_status(dev)

print usb.legacy.DeviceHandle(dev).interruptRead(0x82,0x0005)


But the output is:

0
Traceback (most recent call last):
  File "test.py", line 20, in <module>
    print usb.legacy.DeviceHandle(dev).interruptRead(0x82,0x0005)
  File "/usr/local/lib/python2.7/dist-packages/usb/legacy.py", line 182, in
interruptRead
    return self.dev.read(endpoint, size, self.__claimed_interface, timeout)
  File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 662, in
read
    fn = fn_map[self._ctx.get_endpoint_type(self, endpoint, intf)]
  File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 180, in
get_endpoint_type
    etype = util.endpoint_type(e.bmAttributes)
AttributeError: 'NoneType' object has no attribute 'bmAttributes'


I tried to use read, interruptWrite, etc.. but always is giving me this
error, it seems that I have turn it on or something else.
Can someone help me with get this device working?

thanks :)
Christian



-- 
---------------------------
Admin TicinoCinema.ch
christian.bianch...@ticinocinema.ch
La tua risorsa ticinese sul cinema

Admin Euservers.net
christian.bianch...@euservers.net
Hosting web
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
pyusb-users mailing list
pyusb-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pyusb-users

Reply via email to