You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
|
Oct
(3) |
Nov
(4) |
Dec
|
2008 |
Jan
(1) |
Feb
(5) |
Mar
(2) |
Apr
|
May
(8) |
Jun
(4) |
Jul
|
Aug
|
Sep
(11) |
Oct
|
Nov
|
Dec
(20) |
2009 |
Jan
(16) |
Feb
(7) |
Mar
(9) |
Apr
(4) |
May
(6) |
Jun
(17) |
Jul
(3) |
Aug
(4) |
Sep
(5) |
Oct
(10) |
Nov
(16) |
Dec
|
2010 |
Jan
(22) |
Feb
(18) |
Mar
(9) |
Apr
(102) |
May
(29) |
Jun
(40) |
Jul
(80) |
Aug
(21) |
Sep
(47) |
Oct
(13) |
Nov
(19) |
Dec
(45) |
2011 |
Jan
(82) |
Feb
(20) |
Mar
(47) |
Apr
(25) |
May
(18) |
Jun
(24) |
Jul
(24) |
Aug
(47) |
Sep
(23) |
Oct
(22) |
Nov
(69) |
Dec
(20) |
2012 |
Jan
(56) |
Feb
(42) |
Mar
(43) |
Apr
(27) |
May
(18) |
Jun
(11) |
Jul
(61) |
Aug
(19) |
Sep
(13) |
Oct
(49) |
Nov
(32) |
Dec
(37) |
2013 |
Jan
(46) |
Feb
(14) |
Mar
(13) |
Apr
(20) |
May
(20) |
Jun
(3) |
Jul
(19) |
Aug
(7) |
Sep
(4) |
Oct
(33) |
Nov
(7) |
Dec
(15) |
2014 |
Jan
(5) |
Feb
(21) |
Mar
(3) |
Apr
(3) |
May
(30) |
Jun
(1) |
Jul
(30) |
Aug
(2) |
Sep
(22) |
Oct
(14) |
Nov
(22) |
Dec
(6) |
2015 |
Jan
(7) |
Feb
(4) |
Mar
(16) |
Apr
(9) |
May
(17) |
Jun
(28) |
Jul
(3) |
Aug
(18) |
Sep
(3) |
Oct
|
Nov
(6) |
Dec
(3) |
2016 |
Jan
(15) |
Feb
(18) |
Mar
(12) |
Apr
(14) |
May
(15) |
Jun
(3) |
Jul
(3) |
Aug
(42) |
Sep
(24) |
Oct
(6) |
Nov
(5) |
Dec
(6) |
2017 |
Jan
(6) |
Feb
(2) |
Mar
(12) |
Apr
|
May
(1) |
Jun
(3) |
Jul
(2) |
Aug
(6) |
Sep
|
Oct
(1) |
Nov
(5) |
Dec
(7) |
2018 |
Jan
|
Feb
(9) |
Mar
(7) |
Apr
|
May
(10) |
Jun
(20) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
(20) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(9) |
Dec
|
2020 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
(5) |
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
(5) |
Oct
|
Nov
(8) |
Dec
(2) |
2021 |
Jan
(16) |
Feb
(1) |
Mar
|
Apr
(9) |
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
(2) |
Nov
|
Dec
(1) |
2022 |
Jan
|
Feb
(7) |
Mar
|
Apr
(4) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2024 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(2) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Nicolas P. <nic...@aa...> - 2016-01-28 07:21:18
|
Hi, I'm trying to use a USB device under Windows7x64. The device is HID like with custom protocol. The USB device is recognised by Windows as a HID device (without error nor warning shown is device manager). It works perfectly with a host running QNX OS. With PyUSB : Discovery of the device is OK. Configuration of the device seems to be OK. Reading/writing the device fails. Here is the code I use : import usb.core import usb.util class Test(object): def __init__(self): self.VendorId = 0x15A2 self.ProductId = 0x0073 self.dev = usb.core.find(idVendor=self.VendorId, idProduct=self.ProductId) if not self.dev : raise ValueError("Device not found") print self.dev self.dev.set_configuration() cfg = self.dev.get_active_configuration() intf = cfg[(0,0)] self.interface = cfg[(0,0)].bInterfaceNumber self.dev.set_interface_altsetting(interface = self.interface, alternate_setting = self.interface) print "Interface :", self.interface self.DeviceSetIdle() def DeviceSetIdle(self): self.dev.ctrl_transfer(bmRequestType = usb.util.build_request_type(usb.util.CTRL_OUT, usb.util.CTRL_TYPE_CLASS, usb.util.CTRL_RECIPIENT_INTERFACE), bRequest = USB_HID_SET_IDLE_REQUEST, # 0x0A wValue = 0,#8 << 8, wIndex = self.interface, data_or_wLength = None, timeout = 0) if __name__ == '__main__': t = Test() I get the following output : DEVICE ID 15a2:0073 on Bus 003 Address 023 ================= bLength : 0x12 (18 bytes) bDescriptorType : 0x1 Device bcdUSB : 0x200 USB 2.0 bDeviceClass : 0x0 Specified at interface bDeviceSubClass : 0x0 bDeviceProtocol : 0x0 bMaxPacketSize0 : 0x40 (64 bytes) idVendor : 0x15a2 idProduct : 0x0073 bcdDevice : 0x2 Device 0.02 iManufacturer : 0x1 Freescale Semiconductor Inc. iProduct : 0x2 Kinetis Bootloader iSerialNumber : 0x0 bNumConfigurations : 0x1 CONFIGURATION 1: 100 mA ================================== bLength : 0x9 (9 bytes) bDescriptorType : 0x2 Configuration wTotalLength : 0x29 (41 bytes) bNumInterfaces : 0x1 bConfigurationValue : 0x1 iConfiguration : 0x0 bmAttributes : 0xc0 Self Powered bMaxPower : 0x32 (100 mA) INTERFACE 0: Human Interface Device ==================== bLength : 0x9 (9 bytes) bDescriptorType : 0x4 Interface bInterfaceNumber : 0x0 bAlternateSetting : 0x0 bNumEndpoints : 0x2 bInterfaceClass : 0x3 Human Interface Device bInterfaceSubClass : 0x0 bInterfaceProtocol : 0x0 iInterface : 0x0 ENDPOINT 0x81: Interrupt IN ========================== bLength : 0x7 (7 bytes) bDescriptorType : 0x5 Endpoint bEndpointAddress : 0x81 IN bmAttributes : 0x3 Interrupt wMaxPacketSize : 0x40 (64 bytes) bInterval : 0xa ENDPOINT 0x2: Interrupt OUT ========================== bLength : 0x7 (7 bytes) bDescriptorType : 0x5 Endpoint bEndpointAddress : 0x2 OUT bmAttributes : 0x3 Interrupt wMaxPacketSize : 0x40 (64 bytes) bInterval : 0xa Interface : 0 Traceback (most recent call last): File "Z:\Cantar2\Processeur\Apps_2\PyCantarem2Update\src\PyCantarem2Update.py", line 244, in <module> t = Test() File "Z:\Cantar2\Processeur\Apps_2\PyCantarem2Update\src\PyCantarem2Update.py", line 154, in __init__ self.DeviceSetIdle() File "Z:\Cantar2\Processeur\Apps_2\PyCantarem2Update\src\PyCantarem2Update.py", line 174, in DeviceSetIdle timeout = 0) File "C:\Python27\lib\site-packages\usb\core.py", line 1043, in ctrl_transfer self.__get_timeout(timeout)) File "C:\Python27\lib\site-packages\usb\backend\libusb1.py", line 883, in ctrl_transfer timeout)) File "C:\Python27\lib\site-packages\usb\backend\libusb1.py", line 595, in _check raise USBError(_strerror(ret), ret, _libusb_errno[ret]) usb.core.USBError: [Errno 22] Invalid parameter As I am far from a USB ninja, I spent days documenting myself and searching the Internet for a solution without success. What's wrong with my code ? Nicolas -- *Nicolas PINAULT R&D electronics engineer *** ni...@aa... <mailto:ni...@aa...> *AATON-Digital* 38000 Grenoble - France Tel +33 4 7642 9550 http://www.aaton.com http://www.transvideo.eu French Technologies for Film and Digital Cinematography Follow us on Twitter @Aaton_Digital @Transvideo_HD Like us on Facebook https://www.facebook.com/AatonDigital |
From: Chhavi G. <cg...@gm...> - 2016-01-22 17:19:30
|
Thank you Jared. I will look at your project and try HIDAPI for my project. On Thu, Jan 21, 2016 at 4:42 PM, Jared Contrascere < jar...@li...> wrote: > Hi, Chhavi! > > I'll defer to other opinions on the matter, but I think pyusb might be too > low-level for your purposes, Chhavi. I've been able to interface with a HID > scale on a Raspberry Pi using the python 'hidapi' package. See > https://github.com/libretees/silverscale for an example project. > > --contracode > > > On Thu, Jan 21, 2016 at 3:17 PM, Chhavi Goenka <cg...@gm...> wrote: > >> Hi, >> I am trying to interface raspberry pi with a custom HID device via USB. I >> am using PYUSB for this. But once I run my program i get a timeout error. >> >> Here is my program: >> >> import os >> import sys >> import time >> >> >> import usb.core >> import usb.util >> >> packet_len = 64 >> >> # packet request function >> def pack_request(*arguments): >> packet = [0x0] * packet_len >> i = 0 >> for arg in arguments: >> packet[i] = arg >> i+=1 >> return ''.join([chr(c) for c in packet]) >> >> def show_result(bytes): >> sys.stdout.write("Result:") >> sys.stdout.write(''.join(['%d ' % abyte for abyte in bytes])) >> >> >> def main(): >> dev = usb.core.find(idVendor = 0x04d8, idProduct = 0xf2a6) >> >> if dev is None: >> raise ValueError('Device not found') >> >> #dev.set_configuration() >> >> if dev.is_kernel_driver_active(0): >> reattach = True >> dev.detach_kernel_driver(0) >> >> cfg = dev.get_active_configuration() >> intf = cfg[(0,0)] >> >> ep = usb.util.find_descriptor( >> intf, >> # match the first OUT endpoint >> custom_match = \ >> lambda e: \ >> usb.util.endpoint_direction(e.bEndpointAddress) == \ >> usb.util.ENDPOINT_OUT) >> >> assert ep is not None >> >> raw = pack_request(0x00, 0x81) >> >> dev.write(1, raw, 100) >> >> bytes = dev.read(0x81,packet_len, 10000) >> show_result(bytes) >> >> #print(bytes) >> >> if __name__ == '__main__': >> main() >> >> >> and Here is the error: >> >> pi@raspberrypi:~/Documents $ sudo python multispec_usbcode_jan21.py >> Traceback (most recent call last): >> File "multispec_usbcode_jan21.py", line 66, in <module> >> main() >> File "multispec_usbcode_jan21.py", line 58, in main >> dev.write(1, raw,100) >> File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 878, >> in write >> self.__get_timeout(timeout) >> File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", >> line 778, in intr_write >> timeout) >> File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", >> line 856, in __write >> _check(retval) >> File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", >> line 552, in _check >> raise USBError(_strerror(ret), ret, _libusb_errno[ret]) >> usb.core.USBError: [Errno 110] Operation timed out >> >> Please let me know how to get around this? >> >> Thanks, >> Chhavi >> >> >> >> >> ------------------------------------------------------------------------------ >> 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=267308311&iu=/4140 >> _______________________________________________ >> pyusb-users mailing list >> pyu...@li... >> https://lists.sourceforge.net/lists/listinfo/pyusb-users >> >> > > > ------------------------------------------------------------------------------ > 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=267308311&iu=/4140 > _______________________________________________ > pyusb-users mailing list > pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users > > |
From: Jared C. <jar...@li...> - 2016-01-21 22:08:59
|
Hi, Chhavi! I'll defer to other opinions on the matter, but I think pyusb might be too low-level for your purposes, Chhavi. I've been able to interface with a HID scale on a Raspberry Pi using the python 'hidapi' package. See https://github.com/libretees/silverscale for an example project. --contracode On Thu, Jan 21, 2016 at 3:17 PM, Chhavi Goenka <cg...@gm...> wrote: > Hi, > I am trying to interface raspberry pi with a custom HID device via USB. I > am using PYUSB for this. But once I run my program i get a timeout error. > > Here is my program: > > import os > import sys > import time > > > import usb.core > import usb.util > > packet_len = 64 > > # packet request function > def pack_request(*arguments): > packet = [0x0] * packet_len > i = 0 > for arg in arguments: > packet[i] = arg > i+=1 > return ''.join([chr(c) for c in packet]) > > def show_result(bytes): > sys.stdout.write("Result:") > sys.stdout.write(''.join(['%d ' % abyte for abyte in bytes])) > > > def main(): > dev = usb.core.find(idVendor = 0x04d8, idProduct = 0xf2a6) > > if dev is None: > raise ValueError('Device not found') > > #dev.set_configuration() > > if dev.is_kernel_driver_active(0): > reattach = True > dev.detach_kernel_driver(0) > > cfg = dev.get_active_configuration() > intf = cfg[(0,0)] > > ep = usb.util.find_descriptor( > intf, > # match the first OUT endpoint > custom_match = \ > lambda e: \ > usb.util.endpoint_direction(e.bEndpointAddress) == \ > usb.util.ENDPOINT_OUT) > > assert ep is not None > > raw = pack_request(0x00, 0x81) > > dev.write(1, raw, 100) > > bytes = dev.read(0x81,packet_len, 10000) > show_result(bytes) > > #print(bytes) > > if __name__ == '__main__': > main() > > > and Here is the error: > > pi@raspberrypi:~/Documents $ sudo python multispec_usbcode_jan21.py > Traceback (most recent call last): > File "multispec_usbcode_jan21.py", line 66, in <module> > main() > File "multispec_usbcode_jan21.py", line 58, in main > dev.write(1, raw,100) > File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 878, in > write > self.__get_timeout(timeout) > File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", > line 778, in intr_write > timeout) > File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", > line 856, in __write > _check(retval) > File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", > line 552, in _check > raise USBError(_strerror(ret), ret, _libusb_errno[ret]) > usb.core.USBError: [Errno 110] Operation timed out > > Please let me know how to get around this? > > Thanks, > Chhavi > > > > > ------------------------------------------------------------------------------ > 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=267308311&iu=/4140 > _______________________________________________ > pyusb-users mailing list > pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users > > |
From: Chhavi G. <cg...@gm...> - 2016-01-21 20:17:41
|
Hi, I am trying to interface raspberry pi with a custom HID device via USB. I am using PYUSB for this. But once I run my program i get a timeout error. Here is my program: import os import sys import time import usb.core import usb.util packet_len = 64 # packet request function def pack_request(*arguments): packet = [0x0] * packet_len i = 0 for arg in arguments: packet[i] = arg i+=1 return ''.join([chr(c) for c in packet]) def show_result(bytes): sys.stdout.write("Result:") sys.stdout.write(''.join(['%d ' % abyte for abyte in bytes])) def main(): dev = usb.core.find(idVendor = 0x04d8, idProduct = 0xf2a6) if dev is None: raise ValueError('Device not found') #dev.set_configuration() if dev.is_kernel_driver_active(0): reattach = True dev.detach_kernel_driver(0) cfg = dev.get_active_configuration() intf = cfg[(0,0)] ep = usb.util.find_descriptor( intf, # match the first OUT endpoint custom_match = \ lambda e: \ usb.util.endpoint_direction(e.bEndpointAddress) == \ usb.util.ENDPOINT_OUT) assert ep is not None raw = pack_request(0x00, 0x81) dev.write(1, raw, 100) bytes = dev.read(0x81,packet_len, 10000) show_result(bytes) #print(bytes) if __name__ == '__main__': main() and Here is the error: pi@raspberrypi:~/Documents $ sudo python multispec_usbcode_jan21.py Traceback (most recent call last): File "multispec_usbcode_jan21.py", line 66, in <module> main() File "multispec_usbcode_jan21.py", line 58, in main dev.write(1, raw,100) File "/usr/local/lib/python2.7/dist-packages/usb/core.py", line 878, in write self.__get_timeout(timeout) File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 778, in intr_write timeout) File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 856, in __write _check(retval) File "/usr/local/lib/python2.7/dist-packages/usb/backend/libusb1.py", line 552, in _check raise USBError(_strerror(ret), ret, _libusb_errno[ret]) usb.core.USBError: [Errno 110] Operation timed out Please let me know how to get around this? Thanks, Chhavi |
From: igor b. <ig...@ho...> - 2016-01-09 12:42:05
|
Thanks !!I did added libusb-1.0.lib to lib folder in Python directory and then Python was able to use libusb1 backend with Pyusb.then I added for loop as Tormond has suggested and it worked. From: ig...@ho... To: pyu...@li... Date: Fri, 8 Jan 2016 19:56:17 +0200 Subject: Re: [pyusb-users] LibUSB and PyUSB on Windows 10 and python 3.4 I tried to run this price of code to check if usblib1 is getting detected by pyusb: import osos.environ['PYUSB_DEBUG'] = 'debug'import usb.coreusb.core.find() and this is the output:OSError: [WinError 193] %1 is not a valid Win32 application2016-01-08 19:51:45,676 ERROR:usb.backend.libusb1:Error loading libusb 1.0 backend2016-01-08 19:51:45,679 ERROR:usb.libloader:'OpenUSB library' could not be found2016-01-08 19:51:45,679 ERROR:usb.backend.openusb:Error loading OpenUSB backend2016-01-08 19:51:45,689 INFO:usb.core:find(): using backend "usb.backend.libusb0"2016-01-08 19:51:45,689 DEBUG:usb.backend.libusb0:_LibUSB.enumerate_devices() looks like pyusb dosn't see libusb1 > Date: Fri, 8 Jan 2016 18:07:14 +0100 > From: lis...@gm... > To: pyu...@li... > Subject: Re: [pyusb-users] LibUSB and PyUSB on Windows 10 and python 3.4 > > On Fri, Jan 8, 2016 at 4:38 PM, igor bezenchuk wrote: > > > > Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit > > ( > > D64)] on win32 > > Type "help", "copyright", "credits" or "license" for more information. > >>>> import usb.core > >>>> dev=usb.core.find(find_all=True) > >>>> print(dev) > > <generator object device_iter at 0x00000000030EEE58> > > > > looks like it dosn't return any device found(other than Generator Object, > > which I am not sure what it is exactly) I tried it on more than one machine > > with similar conditions(windows 10 and windows 8.1 both with libusb 1.0.20 > > and pyusb1 and python 3.4. > > find_all=True returns a list of devices (please see e.g. > https://github.com/walac/pyusb/blob/master/docs/tutorial.rst) > > You must iterate through the list: > devices = usb.core.find(find_all=True) > for dev in devices: > print (dev.idProduct, dev.idVendor) > > Probably you want to just find your device, and not all. It is all > explained in the tutorial. > > Tormod > > ------------------------------------------------------------------------------ > _______________________________________________ > pyusb-users mailing list > pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users ------------------------------------------------------------------------------ _______________________________________________ pyusb-users mailing list pyu...@li... https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: igor b. <ig...@ho...> - 2016-01-08 17:56:25
|
I tried to run this price of code to check if usblib1 is getting detected by pyusb: import osos.environ['PYUSB_DEBUG'] = 'debug'import usb.coreusb.core.find() and this is the output:OSError: [WinError 193] %1 is not a valid Win32 application2016-01-08 19:51:45,676 ERROR:usb.backend.libusb1:Error loading libusb 1.0 backend2016-01-08 19:51:45,679 ERROR:usb.libloader:'OpenUSB library' could not be found2016-01-08 19:51:45,679 ERROR:usb.backend.openusb:Error loading OpenUSB backend2016-01-08 19:51:45,689 INFO:usb.core:find(): using backend "usb.backend.libusb0"2016-01-08 19:51:45,689 DEBUG:usb.backend.libusb0:_LibUSB.enumerate_devices() looks like pyusb dosn't see libusb1 > Date: Fri, 8 Jan 2016 18:07:14 +0100 > From: lis...@gm... > To: pyu...@li... > Subject: Re: [pyusb-users] LibUSB and PyUSB on Windows 10 and python 3.4 > > On Fri, Jan 8, 2016 at 4:38 PM, igor bezenchuk wrote: > > > > Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit > > ( > > D64)] on win32 > > Type "help", "copyright", "credits" or "license" for more information. > >>>> import usb.core > >>>> dev=usb.core.find(find_all=True) > >>>> print(dev) > > <generator object device_iter at 0x00000000030EEE58> > > > > looks like it dosn't return any device found(other than Generator Object, > > which I am not sure what it is exactly) I tried it on more than one machine > > with similar conditions(windows 10 and windows 8.1 both with libusb 1.0.20 > > and pyusb1 and python 3.4. > > find_all=True returns a list of devices (please see e.g. > https://github.com/walac/pyusb/blob/master/docs/tutorial.rst) > > You must iterate through the list: > devices = usb.core.find(find_all=True) > for dev in devices: > print (dev.idProduct, dev.idVendor) > > Probably you want to just find your device, and not all. It is all > explained in the tutorial. > > Tormod > > ------------------------------------------------------------------------------ > _______________________________________________ > pyusb-users mailing list > pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Tormod V. <lis...@gm...> - 2016-01-08 17:07:20
|
On Fri, Jan 8, 2016 at 4:38 PM, igor bezenchuk wrote: > > Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit > ( > D64)] on win32 > Type "help", "copyright", "credits" or "license" for more information. >>>> import usb.core >>>> dev=usb.core.find(find_all=True) >>>> print(dev) > <generator object device_iter at 0x00000000030EEE58> > > looks like it dosn't return any device found(other than Generator Object, > which I am not sure what it is exactly) I tried it on more than one machine > with similar conditions(windows 10 and windows 8.1 both with libusb 1.0.20 > and pyusb1 and python 3.4. find_all=True returns a list of devices (please see e.g. https://github.com/walac/pyusb/blob/master/docs/tutorial.rst) You must iterate through the list: devices = usb.core.find(find_all=True) for dev in devices: print (dev.idProduct, dev.idVendor) Probably you want to just find your device, and not all. It is all explained in the tutorial. Tormod |
From: igor b. <ig...@ho...> - 2016-01-08 15:38:38
|
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (D64)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> import usb.core>>> dev=usb.core.find(find_all=True)>>> print(dev)<generator object device_iter at 0x00000000030EEE58> looks like it dosn't return any device found(other than Generator Object, which I am not sure what it is exactly) I tried it on more than one machine with similar conditions(windows 10 and windows 8.1 both with libusb 1.0.20 and pyusb1 and python 3.4. > Date: Thu, 7 Jan 2016 16:26:47 +0100 > From: lis...@gm... > To: pyu...@li... > Subject: Re: [pyusb-users] LibUSB and PyUSB on Windows 10 and python 3.4 > > On Thu, Jan 7, 2016 at 1:27 PM, igor bezenchuk wrote: > > I used libusb from libusb.info. here is the link I download it from: > > http://sourceforge.net/projects/libusb/files/libusb-1.0/libusb-1.0.20/libusb-1.0.20.7z/download > > > > it's libusb1.0.20 for windows binaries > > > > with listdev.exe it's working, here it my output: > > 0b95:1790 (bus 2, device 2) path: 25 > > 8086:15b6 (bus 1, device 1) > > 0403:6010 (bus 2, device 4) path: 6 > > 045e:0750 (bus 2, device 5) path: 14.1 > > 045e:0750 (bus 2, device 5) path: 14.1 > > 0403:6010 (bus 2, device 4) path: 6 > > 0781:5580 (bus 1, device 2) path: 3 > > 0557:7000 (bus 2, device 3) path: 14 > > 8086:a12f (bus 2, device 1) > > > > so apparently libusb does work and manage to display USB devices properly. > > And when you use usb.core.find() to select your device, it returns > None? When you use find_all=True, how many (and which, if you can > tell) devices are in the returned list? > > Tormod > > ------------------------------------------------------------------------------ > _______________________________________________ > pyusb-users mailing list > pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Tormod V. <lis...@gm...> - 2016-01-07 15:26:53
|
On Thu, Jan 7, 2016 at 1:27 PM, igor bezenchuk wrote: > I used libusb from libusb.info. here is the link I download it from: > http://sourceforge.net/projects/libusb/files/libusb-1.0/libusb-1.0.20/libusb-1.0.20.7z/download > > it's libusb1.0.20 for windows binaries > > with listdev.exe it's working, here it my output: > 0b95:1790 (bus 2, device 2) path: 25 > 8086:15b6 (bus 1, device 1) > 0403:6010 (bus 2, device 4) path: 6 > 045e:0750 (bus 2, device 5) path: 14.1 > 045e:0750 (bus 2, device 5) path: 14.1 > 0403:6010 (bus 2, device 4) path: 6 > 0781:5580 (bus 1, device 2) path: 3 > 0557:7000 (bus 2, device 3) path: 14 > 8086:a12f (bus 2, device 1) > > so apparently libusb does work and manage to display USB devices properly. And when you use usb.core.find() to select your device, it returns None? When you use find_all=True, how many (and which, if you can tell) devices are in the returned list? Tormod |
From: igor b. <ig...@ho...> - 2016-01-07 12:27:28
|
I used libusb from libusb.info. here is the link I download it from:http://sourceforge.net/projects/libusb/files/libusb-1.0/libusb-1.0.20/libusb-1.0.20.7z/download it's libusb1.0.20 for windows binaries with listdev.exe it's working, here it my output:0b95:1790 (bus 2, device 2) path: 258086:15b6 (bus 1, device 1)0403:6010 (bus 2, device 4) path: 6045e:0750 (bus 2, device 5) path: 14.1045e:0750 (bus 2, device 5) path: 14.10403:6010 (bus 2, device 4) path: 60781:5580 (bus 1, device 2) path: 30557:7000 (bus 2, device 3) path: 148086:a12f (bus 2, device 1) so apparently libusb does work and manage to display USB devices properly. > Date: Thu, 7 Jan 2016 13:01:32 +0100 > From: lis...@gm... > To: pyu...@li... > Subject: Re: [pyusb-users] LibUSB and PyUSB on Windows 10 and python 3.4 > > On Thu, Jan 7, 2016 at 9:01 AM, igor bezenchuk wrote: > > Hi All, > > I am trying to setup Libusb(1.0) and Pyusb(3.4) with on windows 10(ver > > 10.0.10240) and can't make it work. I tried these steps to install libusb: > > > > 1. installing libusb0.1_win32 > > libusb0.1? What exactly did you install? Filename of download / > installer, and from where? > > > 2.following this steps from mailing list: > > > > This can seem confusing, however when you are on 64-bit Windows, > > MS64\dll\libusb-1.0.dll must be copied into C:\Windows\System32 and > > (for running 32-bit applications that use libusb) > > MS32\dll\libusb-1.0.dll must be copied into C:\Windows\SysWOW64 > > > > I used this code: > > libusb ships with an example executable called "listdevs.exe". Does it > list all your devices? Unless you have libusb working, there is no > need to try pyusb yet. > > Regards, > Tormod > > ------------------------------------------------------------------------------ > _______________________________________________ > pyusb-users mailing list > pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Tormod V. <lis...@gm...> - 2016-01-07 12:01:39
|
On Thu, Jan 7, 2016 at 9:01 AM, igor bezenchuk wrote: > Hi All, > I am trying to setup Libusb(1.0) and Pyusb(3.4) with on windows 10(ver > 10.0.10240) and can't make it work. I tried these steps to install libusb: > > 1. installing libusb0.1_win32 libusb0.1? What exactly did you install? Filename of download / installer, and from where? > 2.following this steps from mailing list: > > This can seem confusing, however when you are on 64-bit Windows, > MS64\dll\libusb-1.0.dll must be copied into C:\Windows\System32 and > (for running 32-bit applications that use libusb) > MS32\dll\libusb-1.0.dll must be copied into C:\Windows\SysWOW64 > > I used this code: libusb ships with an example executable called "listdevs.exe". Does it list all your devices? Unless you have libusb working, there is no need to try pyusb yet. Regards, Tormod |
From: igor b. <ig...@ho...> - 2016-01-07 08:01:15
|
Hi All,I am trying to setup Libusb(1.0) and Pyusb(3.4) with on windows 10(ver 10.0.10240) and can't make it work. I tried these steps to install libusb: 1. installing libusb0.1_win322.following this steps from mailing list:This can seem confusing, however when you are on 64-bit Windows, MS64\dll\libusb-1.0.dll must be copied into C:\Windows\System32 and (for running 32-bit applications that use libusb) MS32\dll\libusb-1.0.dll must be copied into C:\Windows\SysWOW64I used this code:import usb.core import usb.util # find our device dev = usb.core.find(find_all=True)print(dev)with both cases I managed to get handle to dev which printed out: "generator object device_iter at 0x...".I can't see all my system USB devices What can I do to make it work? |
From: Jach F. <jf...@ms...> - 2015-12-08 07:59:31
|
I had a HID device which was built by myself. I am trying to connect it using pyUSB 1.0 but saw a strange phenomenon. I had post this question to the comp.lang.python forum a few days ago but no response yet so I thought here maybe a better place to try. The following is the copy from there. ---------------- I am new to python. I had a USB HID device which behavior is that the host send a 64 bytes commands to it, after complete the execution of this commands it send back a 64 bytes status to the host, so the host can check the status and decide the next step. When I run it under Win7 with SwiftForth 3.5.9 (a Forth system) and libusb-win32 1.2.6.0, it performs well. But when I test it under the same PC with python 3.4, pyUSB 1.0 and libusb-win32 1.2.6.0, it performs a little strange. The status read back always fail at the first time (return zero length) and success at the second time. >>> dev.write(0x02, cmdBuf) 64 >>> dev.read(0x81, 64, 5000) array('B') # no data returned >>> dev.read(0x81, 64, 5000) array('B', [165, 0, ....]) # this one is correct, total 64 bytes another "strange" thing is that I had a 5000 timeout in the read but I saw no delay at the first time read. It returns immediately. I suppose it should wait for 5 seconds before it returns. Right? Any hint? ------------- PS. I also make some further tests today and find another strange thing: After the failure was observed in Python, I execute "usb.util.dispose_resources(dev)" to release this HID and go to the SwiftForth environment to do a similar test cycle and then back to Python to do the test again. Wao! it works now. It read the correct status at the first time. Then, I unplug the HID device and replug in, restart python, import file and do the test again. As expected, it fails. Here are steps executed between finding the device and doing the test in these two environments. [Python script]: dev.set_configuration() cfg = dev.get_active_configuration() intf = cfg[(0,0)] epo = usb.util.find_descriptor(... epi = usb.util.find_descriptor(... [SwiftForth calls the libusb-win32]: usb_open usb_set_configuration usb_claim_interface Can anyone figure it out from all the above info? Best Regards, Jach Fong --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus |
From: Guillaume S. <Gui...@po...> - 2015-12-06 15:01:57
|
I am out of the office until 07.12.2015. I'll respond to your email when I return. Best regards, Guillaume Note: This is an automated response to your message "[pyusb-users] ctrl_transfer problems about PYUSB" sent on 06.12.2015 13:14:05. This is the only notification you will receive while this person is away. |
From: 4. <442...@qq...> - 2015-12-06 12:14:43
|
Hi, In these days I am working on pyusb to establish a connection between my laptop(Windows 7) and one FX3 hardware. The first thing I must do is to download the firmware,but I met some problems.The downloading process is easy to describe,and I am sure about the .img data is writen to FX3 RAM by BUS HOUND tool,but the problem appear in the last step.When I try to use ctrl_transfer() function to execute to Program Entry,it failed.So I can't finish my download.I have tried several ways to send one zero length control transfer,but got the same I/O error message on the screen. I tried it as follows: dev.ctrl_transfer(0x40,0xa0,addr_l,addr_h) or dev.ctrl_transfer(0x40,0xa0,addr_l,addr_h,None) or dev.ctrl_transfer(0x40,0xa0,addr_l,addr_h,None,500) Have you met this problem?Can you help me to solve this?Thank you very much! |
From: Heilan P. O M C. <hei...@ho...> - 2015-11-17 11:07:29
|
Hi Chris Thank you for answer.I asked that question because I found on the internet, the pyUSB code changed by CISCO. https://developer.cisco.com/site/eiot/documents/pyusb-dev-guide/?python#cisco-pyusb-hello-world-programRegistration is required to access the codeA key change was that the function find () has been modified to accept the mac address as a parameter instead of IdVendor. The code below was copied from the CISCO's site: import usb.core import usb.util # find device with Mac address of the PoE to USB adapter dev = usb.core.find(address=int("0022bdcf3600", 16)) I tried using this code but an "segmentation fault" error occurredI apologize for not being able to help. I am new to python and I thought someone might have integrated the Cisco modifications to the original pyUSB.I think it would be a good idea the possibility to read USB ports remotely. Best regards, Heilan Percio Cardoso From: cl...@gm... Date: Mon, 16 Nov 2015 14:28:06 -0800 To: pyu...@li... Subject: Re: [pyusb-users] Read Remote USB On Mon, Nov 16, 2015 at 9:42 AM, Heilan Percio O M Cardoso <hei...@ho...> wrote: I have a ACS 122 U NFC reader connect in my computer and I need to read this device.The problem is : My application is running on a cloud. So I need to read USB ports remotely. Is it possible to read a USB port remotely ? How can I do this? Simple answer is no, this is an application issue and not related to pyUSB. I'd recommend asking on a general Python mailing list. That being said, the two options that I can think of off the top of my head are: 1) remote access to NFC reader from cloud (i.e. pull)2) NFC reader machine contacts cloud application (i.e. push) For #1 you would design a proxy server in your application OR use an off the shelf generic option like RPyC https://pypi.python.org/pypi/rpyc. I've used RPyC as a simple proxy solution for other libraries and it does what it says it does. Either way you will want to ensure the communication line is secured somehow! ------------------------------------------------------------------------------ Presto, an open source distributed SQL query engine for big data, initially developed by Facebook, enables you to easily query your data on Hadoop in a more interactive manner. Teradata is also now providing full enterprise support for Presto. Download a free open source copy now. http://pubads.g.doubleclick.net/gampad/clk?id=250295911&iu=/4140 _______________________________________________ pyusb-users mailing list pyu...@li... https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: chris c. <cl...@gm...> - 2015-11-16 22:28:32
|
On Mon, Nov 16, 2015 at 9:42 AM, Heilan Percio O M Cardoso < hei...@ho...> wrote: > I have a ACS 122 U NFC reader connect in my computer and I need to read > this device. > The problem is : My application is running on a cloud. So I need to read > USB ports remotely. > > Is it possible to read a USB port remotely ? How can I do this? > Simple answer is no, this is an application issue and not related to pyUSB. I'd recommend asking on a general Python mailing list. That being said, the two options that I can think of off the top of my head are: 1) remote access to NFC reader from cloud (i.e. pull) 2) NFC reader machine contacts cloud application (i.e. push) For #1 you would design a proxy server in your application OR use an off the shelf generic option like RPyC https://pypi.python.org/pypi/rpyc. I've used RPyC as a simple proxy solution for other libraries and it does what it says it does. Either way you will want to ensure the communication line is secured somehow! |
From: Heilan P. O M C. <hei...@ho...> - 2015-11-16 17:42:47
|
Hi Everyone I have a ACS 122 U NFC reader connect in my computer and I need to read this device.The problem is : My application is running on a cloud. So I need to read USB ports remotely. Is it possible to read a USB port remotely ? How can I do this? Thanks in advance and sorry for my very poor english Heilan Percio Cardoso To Wander Lairson Costa : Thank you for share this great code with us.Seu trabalho é incrivel. Meus parabens, cara. |
From: Guillaume S. <Gui...@po...> - 2015-11-09 15:18:06
|
I am out of the office until 16.11.2015. I'll respond to your email when I return. Best regards, Guillaume Note: This is an automated response to your message "[pyusb-users] PyUSB Error" sent on 09.11.2015 13:05:08. This is the only notification you will receive while this person is away. |
From: Xiaofan C. <xia...@gm...> - 2015-11-09 14:24:46
|
On Mon, Nov 9, 2015 at 8:05 PM, Jordi M <jme...@gm...> wrote: > Hi all, > > I'm trying to connect an ST Micrielectronics board that runs ChiBios OS > to a PC either running Ubunto or windows using PyUsb (I have the same > problem in both Os) > > The problem is that it works well the first time but when I re-execute > the sricpt it shows this error and I have to unplug and replug again a > couple of times the usb cable until it works again. > > The error message is : > > [Errno None] libusb0-dll:err [_usb_reap_async] reaping request failed, > win error: A device attached to the system is not functioning. > > Any aidea what is happenning? > Maybe I need to close the device before exiting the script or similar? Usually this kind of thing means device FW bug. You can try to reset the device before exiting or things like that. Ref: https://github.com/libusb/libusb/issues/111 >From the above, it seems that ST FW library has some bugs. You can also try to see if this is a libusb-win32 problem or not. pyusb supports either libusb-win32 or libusb Windows (libusb-1.0) under Windows. You can switch the device driver to WinUSB and use libusb-1.0 backend of pyusb to see if that helps. > My code is: > > > # find our device > dev = usb.core.find(idVendor=0x0483, idProduct=0xFEDC) > > # was it found? > if dev is None: > raise ValueError('Device not found') > > # set the active configuration. With no arguments, the first > # configuration will be the active one > #dev.set_configuration() What if you try to uncomment this line? > # get an endpoint instance > cfg = dev.get_active_configuration() > intf = cfg[(0, 0)] > > ep = usb.util.find_descriptor( > intf, > # match the first OUT endpoint > custom_match=\ > lambda e: \ > usb.util.endpoint_direction(e.bEndpointAddress) == \ > usb.util.ENDPOINT_OUT) > > epr = usb.util.find_descriptor( > intf, > # match the first IN endpoint > custom_match=\ > lambda e: \ > usb.util.endpoint_direction(e.bEndpointAddress) == \ > usb.util.ENDPOINT_IN) > > assert ep is not None > assert epr is not None > > ####Some code###### > > usb.util.dispose_resources(dev) > print "END" -- Xiaofan |
From: Jordi M <jme...@gm...> - 2015-11-09 12:10:17
|
Hi all, I'm trying to connect an ST Micrielectronics board that runs ChiBios OS to a PC either running Ubunto or windows using PyUsb (I have the same problem in both Os) The problem is that it works well the first time but when I re-execute the sricpt it shows this error and I have to unplug and replug again a couple of times the usb cable until it works again. The error message is : [Errno None] libusb0-dll:err [_usb_reap_async] reaping request failed, win error: A device attached to the system is not functioning. Any aidea what is happenning? Maybe I need to close the device before exiting the script or similar? My code is: # find our device dev = usb.core.find(idVendor=0x0483, idProduct=0xFEDC) # was it found? if dev is None: raise ValueError('Device not found') # set the active configuration. With no arguments, the first # configuration will be the active one #dev.set_configuration() # get an endpoint instance cfg = dev.get_active_configuration() intf = cfg[(0, 0)] ep = usb.util.find_descriptor( intf, # match the first OUT endpoint custom_match=\ lambda e: \ usb.util.endpoint_direction(e.bEndpointAddress) == \ usb.util.ENDPOINT_OUT) epr = usb.util.find_descriptor( intf, # match the first IN endpoint custom_match=\ lambda e: \ usb.util.endpoint_direction(e.bEndpointAddress) == \ usb.util.ENDPOINT_IN) assert ep is not None assert epr is not None ####Some code###### usb.util.dispose_resources(dev) print "END" |
From: Victor Su <vic...@gm...> - 2015-09-12 17:10:14
|
I'm trying to resolve a "ValueError: No backend available" error when running my app as a executable generated by PyInstaller. The app runs with problems when I start it with the Python interpreter directly. I've tried to specifying the backend explicitly as described in the PyUSB tutorial without success. I'm running on Windows with Python 2.7 and a libusb 0.1 backend. Does anyone have experience with running PyUSB with PyInstaller? |
From: Xiaofan C. <xia...@gm...> - 2015-09-08 09:05:46
|
On Tue, Sep 8, 2015 at 8:58 AM, Srinidhi Kuntaegowdanahalli <sto...@gm...> wrote: > Hi: > > I am new to python and I am using pyDAQFlex to interface with an USB DAQ > from Measurement Computing. > > pyDAQFlex uses pyUSB. I have installed "libusb-win32-filter-bin-0.1.12.1" That is super outdated and no longer supported. Unless you are using Windows 98/ME, you should not use this old version of libusb-win32. Latest version is 1.2.6.0. Web site: http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/1.2.6.0/ > and I am able to see my DAQ through the GUI which pops up after > installation. When I run the test code for pyDAQFlex, I get the following > error: > > File "C:\Python25\lib\site-packages\daqflex\devices.py", line 234, in > __get_in > terface > alternate_setting = usb.control.get_interface(self.dev, intf_number) > File "build\bdist.win32\egg\usb\control.py", line 244, in get_interface > File "build\bdist.win32\egg\usb\core.py", line 971, in ctrl_transfer > File "build\bdist.win32\egg\usb\backend\libusb0.py", line 528, in > ctrl_transfe > r > File "build\bdist.win32\egg\usb\backend\libusb0.py", line 380, in _check > usb.core.USBError: [Errno None] usb_control_msg: sending control message > failed, > win error: The request is not supported. > > > The last line seems to indicate that this is an issue with pyUSB > rather than the DAQflex module. Why do you say so? This means that you are sending a control message wrongly -- most likely the device does not understand your command. Do you have the USB communication protocol of your DAQ? -- Xiaofan |
From: Srinidhi K. <sto...@gm...> - 2015-09-08 00:59:01
|
Hi: I am new to python and I am using pyDAQFlex to interface with an USB DAQ from Measurement Computing. pyDAQFlex uses pyUSB. I have installed "libusb-win32-filter-bin-0.1.12.1" and I am able to see my DAQ through the GUI which pops up after installation. When I run the test code for pyDAQFlex, I get the following error: File "C:\Python25\lib\site-packages\daqflex\devices.py", line 234, in __get_in terface alternate_setting = usb.control.get_interface(self.dev, intf_number) File "build\bdist.win32\egg\usb\control.py", line 244, in get_interface File "build\bdist.win32\egg\usb\core.py", line 971, in ctrl_transfer File "build\bdist.win32\egg\usb\backend\libusb0.py", line 528, in ctrl_transfe r File "build\bdist.win32\egg\usb\backend\libusb0.py", line 380, in _check *usb.core.USBError: [Errno None] usb_control_msg: sending control message failed,* * win error: The request is not supported.* The last line seems to indicate that this is an issue with pyUSB rather than the DAQflex module. Any thoughts would be helpful. Thanks Sk |
From: <ka...@tw...> - 2015-08-30 15:39:53
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jeffrey Nichols <jsn...@su...> wrote: > Hi Karl, > > Is it possible you're exceeding the default timeout for write() with > your large data set? I just checked pyusb's source, and it looks like if > > you don't pass a timeout it uses 1000. That would explain why you're > sending some data, but not all of it. > > Try changing self.ep_out.write(data) to self.ep_out.write(data, > timeout=0) or self.ep_out.write(data, timeout=10000) and see if that > helps. Excellent, that was indeed the culprit. After I'd sent this, I was moving on to reads, which get a different thoughput (different problem!) and were failing at a different amount, but some back of the envelope maths says it was the same time there :) Setting timeout=0 fixes both of these nicely. Thanks muchly, Karl Palsson -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQIcBAEBAgAGBQJV4yOaAAoJEBmotQ/U1cr2AHkP/RpY0jZSr0zYTCIvpS/vDWaP ayBdRN9on724GfRnQXUozUMhvdCzwGQKx764PWny1sQe7+oCLd3FTG340od2Kkt0 VMfu8WcD1x/FfHRWP8Cc+iXMfbHk0s9dQpKuZOXZ6YgoGzxmbSQn0ntTy362Teu5 42Ee0Is93dBw7UkYvWE8Z5sBmbzIuKf1B6I31AhUaF3qIsFN2Eu1aPfS9JBQ8UqE EAyygpuS4hfR/+UF8WGlFa9h8UyQ1FJ9p0c86+zYsDv3BLOAu+uW66lKRmh8Z0FU eYzs26xxaSzoeBtvMOOJng3Og3gec9BxB+5/h+qvNB+vBCbbdz1P/jgYldg0WbMN P0gKUZCBDMIvi35/ScUhUPlq96sgWqHXsq7YkR9tI0cR4pwQ2lDHaEnrnez1Zlk1 FT2hlh8nIRISui2LsGLFifAeza6LXGfNxSbwWiyv3CBgHqIaTP1W/GHwz/x6Wn3F vwsnEIxD/vY3jg8KxvqXBSMdIOZ7To5UqJ7CMSzOmgO3Idzyu+3WxxmZI9wiFK/W UflpxYDnmzyi4s9EJwtz5QKAL5dzMF9KPQjeXWPayYC4OiQlPJU6rFDgsO91HMCQ K/tbrI5/Y95iWWgiYAMQOBxzoNCEqN2QbszlXploXOU5Bwu2XppHi0Aun03PJPGk 7d2IxKuwng6Nh07xwIQd =q0p4 -----END PGP SIGNATURE----- |