Hi,

Sorry for the delay. According to libusb documentation, a pipe error
is related to sending a control request not supported by the device.
Are these control transfers documented by the manufacturer or part of
the USB class spec?

2013/11/30 Bartosz Alchimowicz <p...@poczta.onet.pl>:
> Wander Lairson Costa wrote:
>> This is rather strange, some control requests work, some don't.
>>
>> Could you please activate the PYUSB_DEBUG=debug and LIBUSB_DEBUG=3
>> environment variables and send the output?
>
>
> Thank you for your answer. Here is the output:
>
> 2013-11-30 19:07:03,301 DEBUG:usb.backend.libusb1:_LibUSB.__init__(<CDLL
> 'libusb-1.0.so.0', handle 90ab628 at b729948c>)
> 2013-11-30 19:07:03,301 INFO:usb.core:find(): using backend
> "usb.backend.libusb1"
> 2013-11-30 19:07:03,302
> DEBUG:usb.backend.libusb1:_LibUSB.enumerate_devices()
> 2013-11-30 19:07:03,302
> DEBUG:usb.backend.libusb1:_LibUSB.get_device_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.open_device(<usb.backend.libusb1._Device
> object at 0xb7240acc>)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.set_configuration(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>, 1)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 0, 0)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,303
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 1, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.claim_interface(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.set_interface_altsetting(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>, 0, 1)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 1, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 1, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,304
> DEBUG:usb.backend.libusb1:_LibUSB.get_endpoint_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 0, 1, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 1, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 1, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_endpoint_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 1, 0, 1, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_interface_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0, 1, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.get_configuration_descriptor(<usb.backend.libusb1._Device
> object at 0xb7240acc>, 0)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.ctrl_transfer(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>, 161, 0, 0, 0, 256, 1000)
> 2013-11-30 19:07:03,305
> DEBUG:usb.backend.libusb1:_LibUSB.ctrl_transfer(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>, 161, 1, 0, 0, 1, 1000)
> Traceback (most recent call last):
>    File "test.py", line 21, in <module>
>      dev.ctrl_transfer(161, 1, data_or_wLength = 1)   # pipe error
>    File
> "/usr/local/lib/python2.7/dist-packages/pyusb-1.0.0b1-py2.7.egg/usb/core.py",
> line 711, in ctrl_transfer
>      self.__get_timeout(timeout)
>    File
> "/usr/local/lib/python2.7/dist-packages/pyusb-1.0.0b1-py2.7.egg/usb/_debug.py",
> line 60, in do_trace
>      return f(*args, **named_args)
>    File
> "/usr/local/lib/python2.7/dist-packages/pyusb-1.0.0b1-py2.7.egg/usb/backend/libusb1.py",
> line 836, in ctrl_transfer
>      timeout))
>    File
> "/usr/local/lib/python2.7/dist-packages/pyusb-1.0.0b1-py2.7.egg/usb/backend/libusb1.py",
> line 571, in _check
>      raise USBError(_str_error[ret], ret, _libusb_errno[ret])
> usb.core.USBError: [Errno 32] Pipe error
> 2013-11-30 19:07:03,308
> DEBUG:usb.backend.libusb1:_LibUSB.release_interface(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>, 0)
> 2013-11-30 19:07:03,309
> DEBUG:usb.backend.libusb1:_LibUSB.close_device(<usb.backend.libusb1._DeviceHandle
> object at 0xb7240aac>)
> 2013-11-30 19:07:03,309 DEBUG:usb.backend.libusb1:_LibUSB.__del__()
>
> <cut>
>
> Regards
> Perf
>
> ------------------------------------------------------------------------------
> 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=84349351&iu=/4140/ostg.clktrk
> _______________________________________________
> pyusb-users mailing list
> pyusb-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pyusb-users



-- 
Best Regards,
Wander Lairson Costa

------------------------------------------------------------------------------
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=84349351&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