Hi all.

I wrote a simple program to communicate with a USB peripheral which is supposed
to send A/D samples to the host by bulk transfer.

I have the impression that the enumeration is normal (see lsusb -v output 
below).
When the program:

def main(args):
    dev = usb.core.find(idVendor = VID, idProduct = PID)
    if dev is None:
        raise ValueError('Device not found')

    dump_interfaces(dev)
    
    dev.set_configuration()

    return 0

is run, I get:

1
        0,0
                129
                1
Traceback (most recent call last):
  File "test_pyusb.py", line 58, in <module>
    sys.exit(main(sys.argv))
  File "test_pyusb.py", line 52, in main
    dev.set_configuration()
  File "/usr/lib64/python2.7/site-packages/usb/core.py", line 819, in 
set_configuration
    self._ctx.managed_set_configuration(self, configuration)
  File "/usr/lib64/python2.7/site-packages/usb/core.py", line 129, in 
managed_set_configuration
    self.backend.set_configuration(self.handle, cfg.bConfigurationValue)
  File "/usr/lib64/python2.7/site-packages/usb/backend/libusb1.py", line 786, 
in set_configuration
    _check(self.lib.libusb_set_configuration(dev_handle.handle, config_value))
  File "/usr/lib64/python2.7/site-packages/usb/backend/libusb1.py", line 592, 
in _check
    raise USBError(_strerror(ret), ret, _libusb_errno[ret])
usb.core.USBError: [Errno None] Other error

Note that the output says "Other error", not Unknown error - of which I found 
several references.

When tested with a minimalistic C program, also with libusb 1.0.20, the transfer
actually starts, but stops after a couple of 512 data blocks.

Questions: 
 - In C, I have code that detaches the kernel driver if necessary. Is this 
necessary
here? I didn't find any reference in the tutorial.

 - Any other tests I can do?




The system is Linux, kernel 4.1.6, Slackware 14.1, and libusb 1.0.20.

This is the lsusb -v output for the device:

Bus 001 Device 014: ID 1cbe:0003 Luminary Micro Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          255 Vendor Specific Class
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x1cbe Luminary Micro Inc.
  idProduct          0x0003 
  bcdDevice            1.00
  iManufacturer           1 
  iProduct                2 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          5 
    bmAttributes         0xc0
      Self Powered
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              4 
      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     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0003
  Self Powered
  Remote Wakeup Enabled

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
pyusb-users mailing list
pyusb-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pyusb-users

Reply via email to