>>> Unfortunately, PyUSB doesn't have async support yet :(
>>>
>>>
>> Ouch...
>>
>> So what can be done?
>> Direct acess to lubusb? Is it possible to make callback in python?!?
>> Or another library in c is way to go?!?
>>
>> any hint?
>>
> For PyUSB there is nothing to be done on short term, but you can try
> [1]. It is a thin Python wrapper around libusb 1.0.
>
> [1] https://github.com/vpelletier/python-libusb1
>
> Best Regards,
> Wander Lairson Costa
>
Hmm I got into trouble here.
The synchronous work as I get result with (after oppende device)
result=USBdev.controlRead(160, 3, 0, 0, 4096, 1000)
But when I try async I got some error and don't know how to handle it...
the code snipset is:
#***********************
transfer=USBdev.getTransfer()
requestType=160 #ControlWrite request_type defines transfer
direction (see libusb1.LIBUSB_ENDPOINT_OUT and libusb1.LIBUSB_ENDPOINT_IN)).
request=3 #request to get data from XMEGA
index=0 #not used
bufferOrLen=4096 #Either a string (when sending data), or expected
data length (when receiving data).
callback=None #Callback function to be invoked on transfer
completion. Called with transfer as parameter, return value ignored.
userData=None #User data to pass to callback function.
timeout=0 #Transfer timeout in milliseconds. 0 to disable.
transfer.setControl(requestType, request, index, bufferOrLen, callback,
userData, timeout)
#***********************
and eror message is:
Traceback (most recent call last):
File "usb1test.py", line 25, in <module>
transfer.setControl(requestType, request, index, bufferOrLen,
callback, userData, timeout)
File "/usr/local/lib/python2.7/dist-packages/usb1.py", line 271, in
setControl
length = len(buffer_or_len)
TypeError: object of type 'NoneType' has no len()
When I search the usb1.py at line 271 it semms nonsence to me as program
should never reach that point.
there is part from usb1.py
if isinstance(buffer_or_len, (int, long)):
length = buffer_or_len <-------------I THINK
PROGRAM SHOULD BE HERE
string_buffer = create_binary_buffer(length +
libusb1.LIBUSB_CONTROL_SETUP_SIZE)
else:
length = len(buffer_or_len) <------------- BUT GAVE
ERROR HERE
Any hint more?
------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
pyusb-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pyusb-users