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: Brendan S. (eTRIX) <Bre...@eT...> - 2009-06-16 11:17:32
|
How do I print manufacturer, product and serialNumber strings using pyusb ?? I found the lsusb example here: http://wiki.erazor-zone.de/wiki:projects:python:pyusb:setup:examples:lsusb but it didn't work :( The dev.open().getString(1,30) caused a USB error. Traceback (most recent call last): File "lsusb.py", line 7, in <module> print "Bus %s Device %s: ID %04x:%04x %s" % (bus.dirname,dev.filename,dev.idVendor,dev.idProduct,dev.open().getString(1,30)) usb.USBError: usb_control_msg(DeviceRequestTO): unknown error I'm sure there is a simple solution, but this newbie is stuck :) Thanks, Brendan. |
From: Brendan S. (eTRIX) <Bre...@eT...> - 2009-06-15 06:58:36
|
Answering my own question here. The answer is yes. I ran usbenum.py on Mac OS X 10.5 and it gave me what the Vendor IDs and Product IDs which is what I wanted :) The readme indicates that it works on MSW and Linux too, so that's great -- exactly what I need. Brendan. Brendan Simon (eTRIX) wrote: > I need to write a program on OS X that talks to a usb device that using > a serial protocol. > > I have found PySerial which looks like a good cross-platform serial library. > > I want to find the USB Vendor ID (VID) and Product ID (PID) of the > device before talking to it using the serial protocol. > I presume I can NOT do that with PySerial? > I'm hoping that PyUSB will allow me to search for usb devices and find > the VID and PID. > > Will PyUSB allow me to search for usb devices and find the VID and PID ??? > > Does PyUSB work on OS X, MSW and Linux ?? > > Thanks, Brendan. > > |
From: Brendan S. (eTRIX) <Bre...@eT...> - 2009-06-15 03:01:18
|
I need to write a program on OS X that talks to a usb device that using a serial protocol. I have found PySerial which looks like a good cross-platform serial library. I want to find the USB Vendor ID (VID) and Product ID (PID) of the device before talking to it using the serial protocol. I presume I can NOT do that with PySerial? I'm hoping that PyUSB will allow me to search for usb devices and find the VID and PID. Will PyUSB allow me to search for usb devices and find the VID and PID ??? Does PyUSB work on OS X, MSW and Linux ?? Thanks, Brendan. |
From: <iku...@ya...> - 2009-05-19 16:37:34
|
Just a guess, but in my custom rules, I use the form ATTRS{idVendor}=="0FC5", ATTRS{idProduct}=="B080", instead of your ATTRS{idVendor}=="0x0FC5", ATTRS{idProduct}=="0xB080". No idea if that matters. For further debugging information, try “udevmonitor –environment” and looking at the output to /var/log/messages after running “udevcontrol log_priority=debug” from the command line (as root). Once you've launched these commands, you'll need to exercise the scope – turn it on, attempt access, etc. You can also check the permissions of the /dev/bus/usb/ entry... -Sarah --- On Sun, 5/17/09, ed <ene...@co...> wrote: From: ed <ene...@co...> Subject: [Pyusb-users] Permissions problem To: pyu...@li... Date: Sunday, May 17, 2009, 3:14 PM I have my program working OK but need to run as sudo. So now I am trying to get the program to run in user space but can't seem to get it to work. I am using Ubuntu 8.10 Intrepid This is what I have done / tried so far. 1. Created a group called delcomusb $ sudo groupadd -g 1001 delcomusb 2 Created a file in /etc/udev/rules.d called 99-delcomusb.rules and placed the following. I tried both. # Delcom USB Device SUBSYSTEM=="usb_device", ACTION=="add", ATTRS{idVendor}=="0x0FC5", ATTRS{idProduct}=="0xB080", GROUP="delcomusb", MODE="0660" #BUS=="usb", SYSFS{idVendor}=="0x0fC5", SYSFS{idProduct}=="0xB080", MODE="0666" 3. Restarted udev $ sudo /etc/init.d/udev restart 4. Added user to have access to group: delcomusb System -> Administartor -> Users and Groups unlock user (and then entered password) select user ed click on "Manage Groups" click on delcomusb check ed and root for Group Member But still get the error when I try and run ./DelcomUSBDevice.py self.handle.claimInterface(self.intf) # Interface 0 usb.USBError: could not claim interface 0: Operation not permitted But everything works fine with sudo. Is there some step I missed? Thanks ed ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Pyusb-users mailing list Pyu...@li... https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Phil H. <ph...@ha...> - 2009-05-18 06:31:42
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ed wrote: > #BUS=="usb", SYSFS{idVendor}=="0x0fC5", > SYSFS{idProduct}=="0xB080", MODE="0666" My syntax is different from yours (on a single line): SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", SYSFS{idvendor}=="08d3", SYSFS{idProduct}=="0001", MODE="0666" Which works for me. Regards Phil Hannent -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkoQ+QEACgkQIdVDbqU9AOS9swCgvwrBvbnosK6KxOIVGjGNKk1M u1YAmwcadhPuDzeBp4S70ANLY2bnGfMz =eK5C -----END PGP SIGNATURE----- |
From: ed <ene...@co...> - 2009-05-17 20:14:44
|
I have my program working OK but need to run as sudo. So now I am trying to get the program to run in user space but can't seem to get it to work. I am using Ubuntu 8.10 Intrepid This is what I have done / tried so far. 1. Created a group called delcomusb $ sudo groupadd -g 1001 delcomusb 2 Created a file in /etc/udev/rules.d called 99-delcomusb.rules and placed the following. I tried both. # Delcom USB Device SUBSYSTEM=="usb_device", ACTION=="add", ATTRS{idVendor}=="0x0FC5", ATTRS{idProduct}=="0xB080", GROUP="delcomusb", MODE="0660" #BUS=="usb", SYSFS{idVendor}=="0x0fC5", SYSFS{idProduct}=="0xB080", MODE="0666" 3. Restarted udev $ sudo /etc/init.d/udev restart 4. Added user to have access to group: delcomusb System -> Administartor -> Users and Groups unlock user (and then entered password) select user ed click on "Manage Groups" click on delcomusb check ed and root for Group Member But still get the error when I try and run ./DelcomUSBDevice.py self.handle.claimInterface(self.intf) # Interface 0 usb.USBError: could not claim interface 0: Operation not permitted But everything works fine with sudo. Is there some step I missed? Thanks ed |
From: ed <ene...@co...> - 2009-05-17 19:34:44
|
Thanks, that did it, I also added error message checking. FINAL PROGRAM class DelcomUSBDevice(object): ''' Class for talking to Delcom Products generation 2 USB device 902670/902770 the 16 GPIO device ''' # Device Constants VENDOR_ID = 0x0FC5 #: Delcom Product ID PRODUCT_ID = 0xB080 #: Delcom Product ID INTERFACE_ID = 0 #: The interface we use def __init__(self): ''' Constructor ''' self.deviceDescriptor = DeviceDescriptor(self.VENDOR_ID, self.PRODUCT_ID, self.INTERFACE_ID) self.device = self.deviceDescriptor.getDevice() if self.device: print 'Found Delcom Device' self.conf = self.device.configurations[0] self.intf = self.conf.interfaces[0][0] else: print >> sys.stderr, "Cable isn't plugged in" sys.exit(0) def open(self): """ Open the Delcom Interface """ try: self.handle = self.device.open() self.handle.detachKernelDriver(0) except usb.USBError, err: if str(err).find('could not detach kernel driver from interface') >= 0: print 'The in-kernel-HID driver has already been detached' else: print >> sys.stderr, err #self.handle.setConfiguration(self.conf) self.handle.claimInterface(self.intf) # Interface 0 def close(self): """ Release Delcom interface """ try: self.handle.releaseInterface() print 'released interface' except Exception, err: print >> sys.stderr, err def getManufactureName(self): """ Manufacturer of device """ return self.handle.getString(self.device.iManufacturer,30) def getProductName(self): """ Product name of device """ return self.handle.getString(self.device.iProduct,30) def writeData(self, data): """ Write data to device: 0x21 = REQ_TYPE: DIR = Host to Device REQ_TYPE: TYPE = Class REQ_TYPE: REC = Interface 0x09 = REQUEST: HID-Set Report data = Command sent to Delcom device 0x0365 = VALUE: 0x65 = ReportID = 101 = MajorCMD VALUE: 0x03 = Report Type = Feature Report 0x0000 = Interface number = 0 100 = timeout 100mS """ sent = self.handle.controlMsg(0x21, 0x09, data, 0x0365, 0x0000, 100) print 'Bytes written %s', sent class DeviceDescriptor(object): ''' Class for defining the USB device ''' def __init__(self, vendor_id, product_id, interface_id): ''' Constructor ''' self.vendor_id = vendor_id self.product_id = product_id self.interface_id = interface_id def getDevice(self): ''' Return the device corresponding to the device descriptor if it is available on the USB bus. Otherwise return None. Note that the returned device has yet to be claimed or opened. ''' # Find all the USB busses busses = usb.busses() for bus in busses: for device in bus.devices: if device.idVendor == self.vendor_id and \ device.idProduct == self.product_id: return device return None #main method def main(): delcomUSBDevice = DelcomUSBDevice() delcomUSBDevice.open() print 'Manufacturer: ', delcomUSBDevice.getManufactureName() print 'Product: ', delcomUSBDevice.getProductName() msg = "\x65\x0C\x01\x00\x00\x00\x00\x00" # Turn on LED #msg = "\x65\x0C\x00\x01\x00\x00\x00\x00" # Turn Off LED delcomUSBDevice.writeData(msg) delcomUSBDevice.close() #allows use as a module or stand-alone script if __name__ == '__main__': main() On Sun, 2009-05-17 at 12:48 +0200, Thomas Reitmayr wrote: > Ed, > what happens if you just catch the exception from your detach command? > Eg. > try: > self.handle.detachKernelDriver(0) > except usb.USBError, err: > print >> sys.stderr, err > > Otherwise, if the kernel driver is already detached, you will not claim > the interface. > Regards, > -Thomas > > > Am Samstag, den 16.05.2009, 21:34 -0700 schrieb ed: > > When I first run my program everything is OK. That is I can detach the > > kernel interface and then claim the interface and then release > > the > > interface. > > > > TERMINAL OUTPUT > > ed@ed-desktop:~/Desktop$ sudo ./DelcomUSBDevice.py > > Found Delcom Device > > Claiming interface > > Manufacturer: Delcom Products Inc. > > Product: USB IO Controller > > Bytes written %s 8 > > Sleep 2 seconds > > close done > > > > But if I run the program a 2nd time or more I get two errors. > > 1. could not detach kernel driver from interface 0: No data > > available > > 2. No interface claimed > > > > TERMINAL OUTPUT > > ed@ed-desktop:~/Desktop$ sudo ./DelcomUSBDevice.py > > Found Delcom Device > > could not detach kernel driver from interface 0: No data > > available > > Manufacturer: Delcom Products Inc. > > Product: USB IO Controller > > Bytes written %s 8 > > Sleep 2 seconds > > No interface claimed > > ed@ed-desktop:~/Desktop$ > > > > > > Any clues to why this is happening? > > > > > > MY PROGRAM > > > > class DelcomUSBDevice(object): > > > > > > # Device Constants > > VENDOR_ID = 0x0FC5 #: Delcom Product ID > > PRODUCT_ID = 0xB080 #: Delcom Product ID > > INTERFACE_ID = 0 #: The interface we use > > > > def __init__(self): > > ''' > > Constructor > > ''' > > self.deviceDescriptor = DeviceDescriptor(self.VENDOR_ID, > > > > self.PRODUCT_ID, > > > > self.INTERFACE_ID) > > self.device = self.deviceDescriptor.getDevice() > > if self.device: > > print 'Found Delcom Device' > > self.conf = self.device.configurations[0] > > self.intf = self.conf.interfaces[0][0] > > else: > > print >> sys.stderr, "Cable isn't plugged in" > > sys.exit(0) > > > > > > def open(self): > > """ Open the Delcom Interface """ > > try: > > self.handle = self.device.open() > > # Detach from kernel driver on interface 0 otherwise > > # we will get device is busy > > # when we try and claim the interface because the > > kernel > > # attached to the in-kernel-HID driver. > > # Need to do only once, if you try 2nd time will get > > # message > > # "Could not detach kernel driver from interface 0: > > # no data available. Can't figure out a way to > > # only do this once. > > self.handle.detachKernelDriver(0) > > self.handle.setConfiguration(self.conf) > > print 'Claiming interface' > > self.handle.claimInterface(self.intf) # Interface 0 > > except usb.USBError, err: > > print >> sys.stderr, err > > > > > > def close(self): > > """ Release Delcom interface """ > > try: > > #self.handle.reset() > > self.handle.releaseInterface() > > print 'close done' > > except Exception, err: > > print >> sys.stderr, err > > > > > > def getManufactureName(self): > > """ Manufacturer of device """ > > return > > self.handle.getString(self.device.iManufacturer,30) > > > > > > def getProductName(self): > > """ Product name of device """ > > return self.handle.getString(self.device.iProduct,30) > > > > > > def writeData(self, data): > > self.bytesWritten = self.handle.controlMsg(0x21, > > #REQ_TYPE > > 0x09, > > #REQUEST: > > data, > > #BUFFER: > > 0x0365, > > #VALUE: > > 0x0000, > > #INDEX: > > 100) > > #TIMEOUT > > > > print 'Bytes written %s', self.bytesWritten > > > > > > > > class DeviceDescriptor(object): > > ''' > > Class for defining the USB device > > ''' > > > > def __init__(self, vendor_id, product_id, interface_id): > > ''' > > Constructor > > ''' > > self.vendor_id = vendor_id > > self.product_id = product_id > > self.interface_id = interface_id > > > > def getDevice(self): > > ''' > > Return the device corresponding to the device descriptor > > if it > > is available on the USB bus. Otherwise return None. > > Note that > > the returned device has yet to be claimed or opened. > > ''' > > # Find all the USB busses > > busses = usb.busses() > > for bus in busses: > > for device in bus.devices: > > if device.idVendor == self.vendor_id and > > device.idProduct == self.product_id: > > return device > > return None > > > > > > > > > > > > > > > > #main method > > def main(): > > delcomUSBDevice = DelcomUSBDevice() > > delcomUSBDevice.open() > > print 'Manufacturer: ', delcomUSBDevice.getManufactureName() > > print 'Product: ', delcomUSBDevice.getProductName() > > msg = "\x65\x0C\x01\x00\x00\x00\x00\x00" # Turn on LED > > #msg = "\x65\x0C\x00\x01\x00\x00\x00\x00" # Turn Off LED > > delcomUSBDevice.writeData(msg) > > print 'Sleep 2 seconds' > > time.sleep(2) > > delcomUSBDevice.close() > > > > #allows use as a module or stand-alone script > > if __name__ == '__main__': main() > > > > > > > > Thanks > > Ed > > > > > > > > > > > > ------------------------------------------------------------------------------ > > |
From: Thomas R. <tre...@de...> - 2009-05-17 11:21:32
|
Ed, what happens if you just catch the exception from your detach command? Eg. try: self.handle.detachKernelDriver(0) except usb.USBError, err: print >> sys.stderr, err Otherwise, if the kernel driver is already detached, you will not claim the interface. Regards, -Thomas Am Samstag, den 16.05.2009, 21:34 -0700 schrieb ed: > When I first run my program everything is OK. That is I can detach the > kernel interface and then claim the interface and then release > the > interface. > > TERMINAL OUTPUT > ed@ed-desktop:~/Desktop$ sudo ./DelcomUSBDevice.py > Found Delcom Device > Claiming interface > Manufacturer: Delcom Products Inc. > Product: USB IO Controller > Bytes written %s 8 > Sleep 2 seconds > close done > > But if I run the program a 2nd time or more I get two errors. > 1. could not detach kernel driver from interface 0: No data > available > 2. No interface claimed > > TERMINAL OUTPUT > ed@ed-desktop:~/Desktop$ sudo ./DelcomUSBDevice.py > Found Delcom Device > could not detach kernel driver from interface 0: No data > available > Manufacturer: Delcom Products Inc. > Product: USB IO Controller > Bytes written %s 8 > Sleep 2 seconds > No interface claimed > ed@ed-desktop:~/Desktop$ > > > Any clues to why this is happening? > > > MY PROGRAM > > class DelcomUSBDevice(object): > > > # Device Constants > VENDOR_ID = 0x0FC5 #: Delcom Product ID > PRODUCT_ID = 0xB080 #: Delcom Product ID > INTERFACE_ID = 0 #: The interface we use > > def __init__(self): > ''' > Constructor > ''' > self.deviceDescriptor = DeviceDescriptor(self.VENDOR_ID, > > self.PRODUCT_ID, > > self.INTERFACE_ID) > self.device = self.deviceDescriptor.getDevice() > if self.device: > print 'Found Delcom Device' > self.conf = self.device.configurations[0] > self.intf = self.conf.interfaces[0][0] > else: > print >> sys.stderr, "Cable isn't plugged in" > sys.exit(0) > > > def open(self): > """ Open the Delcom Interface """ > try: > self.handle = self.device.open() > # Detach from kernel driver on interface 0 otherwise > # we will get device is busy > # when we try and claim the interface because the > kernel > # attached to the in-kernel-HID driver. > # Need to do only once, if you try 2nd time will get > # message > # "Could not detach kernel driver from interface 0: > # no data available. Can't figure out a way to > # only do this once. > self.handle.detachKernelDriver(0) > self.handle.setConfiguration(self.conf) > print 'Claiming interface' > self.handle.claimInterface(self.intf) # Interface 0 > except usb.USBError, err: > print >> sys.stderr, err > > > def close(self): > """ Release Delcom interface """ > try: > #self.handle.reset() > self.handle.releaseInterface() > print 'close done' > except Exception, err: > print >> sys.stderr, err > > > def getManufactureName(self): > """ Manufacturer of device """ > return > self.handle.getString(self.device.iManufacturer,30) > > > def getProductName(self): > """ Product name of device """ > return self.handle.getString(self.device.iProduct,30) > > > def writeData(self, data): > self.bytesWritten = self.handle.controlMsg(0x21, > #REQ_TYPE > 0x09, > #REQUEST: > data, > #BUFFER: > 0x0365, > #VALUE: > 0x0000, > #INDEX: > 100) > #TIMEOUT > > print 'Bytes written %s', self.bytesWritten > > > > class DeviceDescriptor(object): > ''' > Class for defining the USB device > ''' > > def __init__(self, vendor_id, product_id, interface_id): > ''' > Constructor > ''' > self.vendor_id = vendor_id > self.product_id = product_id > self.interface_id = interface_id > > def getDevice(self): > ''' > Return the device corresponding to the device descriptor > if it > is available on the USB bus. Otherwise return None. > Note that > the returned device has yet to be claimed or opened. > ''' > # Find all the USB busses > busses = usb.busses() > for bus in busses: > for device in bus.devices: > if device.idVendor == self.vendor_id and > device.idProduct == self.product_id: > return device > return None > > > > > > > > #main method > def main(): > delcomUSBDevice = DelcomUSBDevice() > delcomUSBDevice.open() > print 'Manufacturer: ', delcomUSBDevice.getManufactureName() > print 'Product: ', delcomUSBDevice.getProductName() > msg = "\x65\x0C\x01\x00\x00\x00\x00\x00" # Turn on LED > #msg = "\x65\x0C\x00\x01\x00\x00\x00\x00" # Turn Off LED > delcomUSBDevice.writeData(msg) > print 'Sleep 2 seconds' > time.sleep(2) > delcomUSBDevice.close() > > #allows use as a module or stand-alone script > if __name__ == '__main__': main() > > > > Thanks > Ed > > > > > > ------------------------------------------------------------------------------ |
From: ed <ene...@co...> - 2009-05-17 04:34:52
|
When I first run my program everything is OK. That is I can detach the kernel interface and then claim the interface and then release the interface. TERMINAL OUTPUT ed@ed-desktop:~/Desktop$ sudo ./DelcomUSBDevice.py Found Delcom Device Claiming interface Manufacturer: Delcom Products Inc. Product: USB IO Controller Bytes written %s 8 Sleep 2 seconds close done But if I run the program a 2nd time or more I get two errors. 1. could not detach kernel driver from interface 0: No data available 2. No interface claimed TERMINAL OUTPUT ed@ed-desktop:~/Desktop$ sudo ./DelcomUSBDevice.py Found Delcom Device could not detach kernel driver from interface 0: No data available Manufacturer: Delcom Products Inc. Product: USB IO Controller Bytes written %s 8 Sleep 2 seconds No interface claimed ed@ed-desktop:~/Desktop$ Any clues to why this is happening? MY PROGRAM class DelcomUSBDevice(object): # Device Constants VENDOR_ID = 0x0FC5 #: Delcom Product ID PRODUCT_ID = 0xB080 #: Delcom Product ID INTERFACE_ID = 0 #: The interface we use def __init__(self): ''' Constructor ''' self.deviceDescriptor = DeviceDescriptor(self.VENDOR_ID, self.PRODUCT_ID, self.INTERFACE_ID) self.device = self.deviceDescriptor.getDevice() if self.device: print 'Found Delcom Device' self.conf = self.device.configurations[0] self.intf = self.conf.interfaces[0][0] else: print >> sys.stderr, "Cable isn't plugged in" sys.exit(0) def open(self): """ Open the Delcom Interface """ try: self.handle = self.device.open() # Detach from kernel driver on interface 0 otherwise # we will get device is busy # when we try and claim the interface because the kernel # attached to the in-kernel-HID driver. # Need to do only once, if you try 2nd time will get # message # "Could not detach kernel driver from interface 0: # no data available. Can't figure out a way to # only do this once. self.handle.detachKernelDriver(0) self.handle.setConfiguration(self.conf) print 'Claiming interface' self.handle.claimInterface(self.intf) # Interface 0 except usb.USBError, err: print >> sys.stderr, err def close(self): """ Release Delcom interface """ try: #self.handle.reset() self.handle.releaseInterface() print 'close done' except Exception, err: print >> sys.stderr, err def getManufactureName(self): """ Manufacturer of device """ return self.handle.getString(self.device.iManufacturer,30) def getProductName(self): """ Product name of device """ return self.handle.getString(self.device.iProduct,30) def writeData(self, data): self.bytesWritten = self.handle.controlMsg(0x21, #REQ_TYPE 0x09, #REQUEST: data, #BUFFER: 0x0365, #VALUE: 0x0000, #INDEX: 100) #TIMEOUT print 'Bytes written %s', self.bytesWritten class DeviceDescriptor(object): ''' Class for defining the USB device ''' def __init__(self, vendor_id, product_id, interface_id): ''' Constructor ''' self.vendor_id = vendor_id self.product_id = product_id self.interface_id = interface_id def getDevice(self): ''' Return the device corresponding to the device descriptor if it is available on the USB bus. Otherwise return None. Note that the returned device has yet to be claimed or opened. ''' # Find all the USB busses busses = usb.busses() for bus in busses: for device in bus.devices: if device.idVendor == self.vendor_id and device.idProduct == self.product_id: return device return None #main method def main(): delcomUSBDevice = DelcomUSBDevice() delcomUSBDevice.open() print 'Manufacturer: ', delcomUSBDevice.getManufactureName() print 'Product: ', delcomUSBDevice.getProductName() msg = "\x65\x0C\x01\x00\x00\x00\x00\x00" # Turn on LED #msg = "\x65\x0C\x00\x01\x00\x00\x00\x00" # Turn Off LED delcomUSBDevice.writeData(msg) print 'Sleep 2 seconds' time.sleep(2) delcomUSBDevice.close() #allows use as a module or stand-alone script if __name__ == '__main__': main() Thanks Ed |
From: Wander L. <wan...@gm...> - 2009-04-30 11:19:34
|
Dear all, PyUSB source code has been moved from Berlios cvs to SourceForge svn. branches/0.x - 0.x version source code. trunk - PyUSB 1.x version source code. Anyone interested in getting the lastest source code should refer to sourceforge svn from now. Thank you all, Wander Lairson Costa |
From: Wander L. <wan...@gm...> - 2009-04-05 16:47:30
|
There is an error on readme file (by the way, it reminds me that I need to check if I fixed it before release the new version): according to USB specs, setConfiguration(0) will cause the device to enter in a not configured state, configuration index should be at least 1, so, setConfiguration(1) probably is correct for your device. Wander 2009/4/5 Sarah Messer <iku...@ya...>: > > I haven't had much problem with Set_Configuration, partially because (IRC), the actual set_configuration command isn't required for most devices. (Most only have one configuration, which is set by default.) > > I also haven't used Mac, but here's what I've got right off: > > It sounds like you've got a permissions error. A couple things to check for that, extrapolating from SuSe Linux: > > Make sure the device is being attached with a user or group corresponding to your user. If not, try running the code as root. Assuming that you can access it as root and not as user, you almost definitely have a basic permissions error. > > Unfortunately, as I found out last year, "basic permissions error" covers a lot of territory. On my system, I had to 1) Create a "usb" group; 2) Add the necessary users to the "usb" group; 3) Make sure there was an appropriate rule for my device in /etc/udev/rules.d (Check the linux-hotplug group for details there.); 4) Make sure that rule used ATTRS to access the device instead of SYSFS (which was my initial guess); 5) Make sure the devices I was trying to reach were configured to obey the USB port rather than try to control it; and 6) Put a USB hub between the PC and the device. No idea why that should matter, but for some reason, it improved communication substantially. > > Anyhow, below is the text from my last post on the libusb-devel and linux-hotplug groups. Since pyusb is (mostly) a wrapper for libusb functions and linux-hotplug handles most of the permissions aspects of talking to USB devices, those groups will likely be good places for follow-up questions. > > > Cc: "libusb-devel" <lib...@li...>, lin...@vg... > Date: Monday, January 5, 2009, 9:58 AM > > Changing SYSFS -> ATTRS in 55-libsane.rules worked. Thanks > > For the record, the command sequence I use (in pyusb) is: > > import usb #sets up libusb > ... > allBus=usb.busses() #read in a list of available USB busses > ... > bus=allBus[bIndex] #focus on bus number bIndex > dev=bus.devices[dIndex] #focus on device number dIndex on that bus > hand=dev.open() #open that device and return the DeviceHandle > #read the device serial number as a string > #prepend 'USB' to distinguish this from RS-232 equipment > #on the same system > thisSerNum='USB'+hand.getString(dev.iSerialNumber, USB_SHORT_BUFF) > ... > > Ellipsis marks omitted code which sets up variables and is not directly related to the usb managment. > > The code fails at the hand.getString() call (with SYSFS in the .rules file). > > This code is part of a device-identification loop, and so there is no claimInterface() command. Device-descriptor queries like the above are necessary to determine which interfaces are available for claiming. > > Thanks for your help. > > -Sarah > > > --- On Sun, 4/5/09, George Wright <geo...@bi...> wrote: > >> From: George Wright <geo...@bi...> >> Subject: [Pyusb-users] New to pyusb & 'exclusive access' Problems >> To: pyu...@li... >> Date: Sunday, April 5, 2009, 7:28 AM >> Gidday >> I installed libusb 0.1.12 and pyusb 0.4.1 on Mac OSX 10.5.6 >> I get samples/usbenum.py to run OK >> but Isusb.py will only run if I remove the >> dev.open().getString(1, 30) >> item. >> Following the interactive steps the Readme I get to the >> step >> 'handle.setConfiguration(0)' >> which produces the error >> >>> import usb >> >>> bus = usb.busses() >> >>> dev = bus[0].devices[0] >> >>> handle = dev.open() >> >>> handle.setConfiguration(0) >> Traceback (most recent call last): >> File "<stdin>", line 1, in >> <module> >> usb.USBError: usb_set_configuration(SetConfiguration): >> device not >> opened for exclusive access >> >>> >> >> I followed some threads on this list relating to the >> exclusive access >> error (in darwin.c?) but have been unable to discover if >> someone has >> found a solution. >> What's the latest on this? >> >> George Wright >> geo...@bi... >> http://mywebsite.bigpond.net.au/georgewr/ >> >> >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> 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: Sarah M. <iku...@ya...> - 2009-04-05 13:07:01
|
I haven't had much problem with Set_Configuration, partially because (IRC), the actual set_configuration command isn't required for most devices. (Most only have one configuration, which is set by default.) I also haven't used Mac, but here's what I've got right off: It sounds like you've got a permissions error. A couple things to check for that, extrapolating from SuSe Linux: Make sure the device is being attached with a user or group corresponding to your user. If not, try running the code as root. Assuming that you can access it as root and not as user, you almost definitely have a basic permissions error. Unfortunately, as I found out last year, "basic permissions error" covers a lot of territory. On my system, I had to 1) Create a "usb" group; 2) Add the necessary users to the "usb" group; 3) Make sure there was an appropriate rule for my device in /etc/udev/rules.d (Check the linux-hotplug group for details there.); 4) Make sure that rule used ATTRS to access the device instead of SYSFS (which was my initial guess); 5) Make sure the devices I was trying to reach were configured to obey the USB port rather than try to control it; and 6) Put a USB hub between the PC and the device. No idea why that should matter, but for some reason, it improved communication substantially. Anyhow, below is the text from my last post on the libusb-devel and linux-hotplug groups. Since pyusb is (mostly) a wrapper for libusb functions and linux-hotplug handles most of the permissions aspects of talking to USB devices, those groups will likely be good places for follow-up questions. Cc: "libusb-devel" <lib...@li...>, lin...@vg... Date: Monday, January 5, 2009, 9:58 AM Changing SYSFS -> ATTRS in 55-libsane.rules worked. Thanks For the record, the command sequence I use (in pyusb) is: import usb #sets up libusb ... allBus=usb.busses() #read in a list of available USB busses ... bus=allBus[bIndex] #focus on bus number bIndex dev=bus.devices[dIndex] #focus on device number dIndex on that bus hand=dev.open() #open that device and return the DeviceHandle #read the device serial number as a string #prepend 'USB' to distinguish this from RS-232 equipment #on the same system thisSerNum='USB'+hand.getString(dev.iSerialNumber, USB_SHORT_BUFF) ... Ellipsis marks omitted code which sets up variables and is not directly related to the usb managment. The code fails at the hand.getString() call (with SYSFS in the .rules file). This code is part of a device-identification loop, and so there is no claimInterface() command. Device-descriptor queries like the above are necessary to determine which interfaces are available for claiming. Thanks for your help. -Sarah --- On Sun, 4/5/09, George Wright <geo...@bi...> wrote: > From: George Wright <geo...@bi...> > Subject: [Pyusb-users] New to pyusb & 'exclusive access' Problems > To: pyu...@li... > Date: Sunday, April 5, 2009, 7:28 AM > Gidday > I installed libusb 0.1.12 and pyusb 0.4.1 on Mac OSX 10.5.6 > I get samples/usbenum.py to run OK > but Isusb.py will only run if I remove the > dev.open().getString(1, 30) > item. > Following the interactive steps the Readme I get to the > step > 'handle.setConfiguration(0)' > which produces the error > >>> import usb > >>> bus = usb.busses() > >>> dev = bus[0].devices[0] > >>> handle = dev.open() > >>> handle.setConfiguration(0) > Traceback (most recent call last): > File "<stdin>", line 1, in > <module> > usb.USBError: usb_set_configuration(SetConfiguration): > device not > opened for exclusive access > >>> > > I followed some threads on this list relating to the > exclusive access > error (in darwin.c?) but have been unable to discover if > someone has > found a solution. > What's the latest on this? > > George Wright > geo...@bi... > http://mywebsite.bigpond.net.au/georgewr/ > > > > > ------------------------------------------------------------------------------ > _______________________________________________ > Pyusb-users mailing list > Pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: George W. <geo...@bi...> - 2009-04-05 12:28:38
|
Gidday I installed libusb 0.1.12 and pyusb 0.4.1 on Mac OSX 10.5.6 I get samples/usbenum.py to run OK but Isusb.py will only run if I remove the dev.open().getString(1, 30) item. Following the interactive steps the Readme I get to the step 'handle.setConfiguration(0)' which produces the error >>> import usb >>> bus = usb.busses() >>> dev = bus[0].devices[0] >>> handle = dev.open() >>> handle.setConfiguration(0) Traceback (most recent call last): File "<stdin>", line 1, in <module> usb.USBError: usb_set_configuration(SetConfiguration): device not opened for exclusive access >>> I followed some threads on this list relating to the exclusive access error (in darwin.c?) but have been unable to discover if someone has found a solution. What's the latest on this? George Wright geo...@bi... http://mywebsite.bigpond.net.au/georgewr/ |
From: Wander L. <wan...@gm...> - 2009-03-20 23:03:09
|
Hi Sarah, Would you mind opening a bug in SourceForge? So I can fix it at 0.4.2 release which I am preparing... Thank you, Wander 2009/3/20 Sarah Messer <iku...@ya...>: > > I seem to have discovered a memory leak in usb.busses(), though I haven't yet tracked it down in detail. Procedure to expose it: > > open two terminal windows. In one, start up a watch with ps: >> watch -d -n 0.1 'ps -A H -o spid,%cpu,rsz,nlwp,start,eip,stat,cmd | grep python' > > The third column is the amount of memory used by each listed application. (In kB, I believe.) > > In the other, start up Python: (The numbers left of the ">" are my results for memory used by python before the line executes.) > 0 > python > 4940 >>> import usb > 5040 >>> usb.busses() > 5168 >>> usb.busses() > 5216 >>> usb.busses() > 5220 >>> usb.busses() > 5220 >>> a=usb.busses() > 5228 >>> a=usb.busses() > 5272 >>> a=usb.busses() > 5276 >>> a=usb.busses() > 5276 >>> usb.busses() > 5276 >>> usb.busses() > 5276 >>> b=usb.busses() > 5328 >>> a=usb.busses() > 5328 >>> a=usb.busses() > 5328 >>> usb.busses() > 5328 >>> b=usb.busses() > 5328 >>> > > I dunno - it seems to stabilize after several calls, and seems to depend on the assignment statement - which may have more to do with Python itself than pyusb - but I don't get this behavior with simple lists... and forcing a call to the garbage-collection routine doesn't recover the memory. > > Anyone seen this before? Anyone know if it's a feature of pyusb or python? > > Some Context: > Python 2.6 (r26:66714, Feb 3 2009, 20:49:49) > [GCC 4.3.2 [gcc-4_3-branch revision 141291]] on linux2 > OS: Linux 2.6.27.19-3.2-default x86_64 > openSUSE 11.1 (x86_64) > KDE 4.1.3 "release 4.9" > > It's probably not a big deal, but I'm using Python code to manage a number of usb devices which occasionally get hot-swapped while I'm trying to talk to 'em. To make sure I have the comm. set up right I have to call usb.busses() on a fairly regular basis. I'm leaking memory in several places, with the result that the code slows substantially over the course of a day. This is just the first leak I've located. > > Thanks > > > -Sarah > > > --- On Thu, 6/26/08, Abhishek Wadhava <abh...@gm...> wrote: > >> From: Abhishek Wadhava <abh...@gm...> >> Subject: [Pyusb-users] Enquiry about PyUSB >> To: pyu...@li... >> Date: Thursday, June 26, 2008, 10:01 AM >> Hi.. >> I'm trying to make a Software USB based on AVR309 >> application note available >> at www.atmel.com/dyn/resources/prod_documents/doc2556.pdf >> So what basically i'm doing is programming a ATTINY-44 >> to do functions of a >> USB-driver and when connected to USB port, should be >> automatically detected >> by the computer. >> Now i'm also making a GUI using Tkinter in Python to >> read data from the >> microcontroller & to write in it. >> I was thinking of using pyUSB for this purpose. >> but i'm unable to understand how to read and write from >> a USB device using >> pyUSB. >> Please help me in any way in this regard. >> Thank U. >> >> Abhishek Wadhava >> 3rd year, ECE, >> MANIT, Bhopal(M.P.) >> India >> ------------------------------------------------------------------------- >> Check out the new SourceForge.net Marketplace. >> It's the best place to buy or sell services for >> just about anything Open Source. >> http://sourceforge.net/services/buy/index.php_______________________________________________ >> Pyusb-users mailing list >> Pyu...@li... >> https://lists.sourceforge.net/lists/listinfo/pyusb-users > > > > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > Pyusb-users mailing list > Pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users > |
From: Sarah M. <iku...@ya...> - 2009-03-20 21:19:46
|
I seem to have discovered a memory leak in usb.busses(), though I haven't yet tracked it down in detail. Procedure to expose it: open two terminal windows. In one, start up a watch with ps: > watch -d -n 0.1 'ps -A H -o spid,%cpu,rsz,nlwp,start,eip,stat,cmd | grep python' The third column is the amount of memory used by each listed application. (In kB, I believe.) In the other, start up Python: (The numbers left of the ">" are my results for memory used by python before the line executes.) 0 > python 4940 >>> import usb 5040 >>> usb.busses() 5168 >>> usb.busses() 5216 >>> usb.busses() 5220 >>> usb.busses() 5220 >>> a=usb.busses() 5228 >>> a=usb.busses() 5272 >>> a=usb.busses() 5276 >>> a=usb.busses() 5276 >>> usb.busses() 5276 >>> usb.busses() 5276 >>> b=usb.busses() 5328 >>> a=usb.busses() 5328 >>> a=usb.busses() 5328 >>> usb.busses() 5328 >>> b=usb.busses() 5328 >>> I dunno - it seems to stabilize after several calls, and seems to depend on the assignment statement - which may have more to do with Python itself than pyusb - but I don't get this behavior with simple lists... and forcing a call to the garbage-collection routine doesn't recover the memory. Anyone seen this before? Anyone know if it's a feature of pyusb or python? Some Context: Python 2.6 (r26:66714, Feb 3 2009, 20:49:49) [GCC 4.3.2 [gcc-4_3-branch revision 141291]] on linux2 OS: Linux 2.6.27.19-3.2-default x86_64 openSUSE 11.1 (x86_64) KDE 4.1.3 "release 4.9" It's probably not a big deal, but I'm using Python code to manage a number of usb devices which occasionally get hot-swapped while I'm trying to talk to 'em. To make sure I have the comm. set up right I have to call usb.busses() on a fairly regular basis. I'm leaking memory in several places, with the result that the code slows substantially over the course of a day. This is just the first leak I've located. Thanks -Sarah --- On Thu, 6/26/08, Abhishek Wadhava <abh...@gm...> wrote: > From: Abhishek Wadhava <abh...@gm...> > Subject: [Pyusb-users] Enquiry about PyUSB > To: pyu...@li... > Date: Thursday, June 26, 2008, 10:01 AM > Hi.. > I'm trying to make a Software USB based on AVR309 > application note available > at www.atmel.com/dyn/resources/prod_documents/doc2556.pdf > So what basically i'm doing is programming a ATTINY-44 > to do functions of a > USB-driver and when connected to USB port, should be > automatically detected > by the computer. > Now i'm also making a GUI using Tkinter in Python to > read data from the > microcontroller & to write in it. > I was thinking of using pyUSB for this purpose. > but i'm unable to understand how to read and write from > a USB device using > pyUSB. > Please help me in any way in this regard. > Thank U. > > Abhishek Wadhava > 3rd year, ECE, > MANIT, Bhopal(M.P.) > India > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://sourceforge.net/services/buy/index.php_______________________________________________ > Pyusb-users mailing list > Pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Joe A. <joe...@gm...> - 2009-03-18 19:41:23
|
Hello All, I hope this is the right place for a pyusb user question. If not, I apologize (and if you could direct me to an appropriate forum I'd be obliged). I am trying to control a thorlabs computer-controlled rotation stage. The device contains an FT232BM peripheral chip, and can be controlled with the pyserial package. However, to figure out which device to open with pyserial, I check dmesg and see that it's been mounted on /dev/ttyUSB0. Then I open pyserial and am about my business. I'd like to be able to search for all motion controllers connected to my computer. I *can* do that with pyusb. The following code finds all the devices, and by manufacturer and serial number I can find out exactly which device is which: for bus in usb.busses(): for dev in bus.devices: print "Bus %s Device %s: ID %04x:%04x" % (bus.dirname,dev.filename,dev.idVendor,dev.idProduct) h = dev.open() print "Manufacturer: %s" % (h.getString(dev.iManufacturer,30)) print "Product: %s" % (h.getString(dev.iProduct,30)) print "SerialNumber: %s" % (h.getString(dev.iSerialNumber,30)) My question is: once I know the usb bus and device numbers, is there a way to learn that that bus/device combination maps to /dev/ttyUSB0? Thanks, Joe |
From: Michael W. <mic...@sp...> - 2009-03-17 18:26:31
|
The following (http://nxt.ivorycity.com/) seems to work: As root, create /etc/udev/rules.d/70-lego.rules containing: # Lego NXT BUS=="usb", SYSFS{idVendor}=="0694", MODE="0666" (1st two operators are comparisons "==", 3rd is assignment "=") Hope this helps someone else. Thanks for the bandwidth. - Mike On Tue, 2009-03-17 at 10:44 -0700, Michael Ward wrote: > Seems that I'm having a permissions/sucurity problem. > When I run usbenum as root it finds the device. > When I run usbenum as a normal user, it does not. > Perhaps I need to add a line to /etc/fstab or something? > Anyone know what to do here? > > Thanks, > > - Mike > > On Thu, 2009-03-12 at 14:09 -0300, Wander Lairson wrote: > > Actually I don't know if lsusb uses libusb or usbdevfs directly.. > > Later I will download the source code and take a look... > > > > Wander > > > > 2009/3/12 Michael Ward <mic...@sp...>: > > > Wander, > > > > > > Thanks for the reply. > > > Indeed, it does not show up with lsusb: (does this use libusb?) > > > > > > [mike@Multivector ~]$ lsusb > > > Bus 001 Device 004: ID 0bda:0111 Realtek Semiconductor Corp. Card Reader > > > Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub > > > Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > > Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > > Bus 003 Device 004: ID 08e6:0432 Gemplus GemPC432 SmartCard Reader > > > Bus 003 Device 003: ID 049f:000e Compaq Computer Corp. Internet Keyboard > > > Bus 003 Device 002: ID 0451:2036 Texas Instruments, Inc. TUSB2036 Hub > > > Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > > Bus 002 Device 002: ID 046d:c401 Logitech, Inc. TrackMan Marble Wheel > > > Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > > [mike@Multivector ~]$ > > > > > > I have version 0.1.12 of libusb installed under fedora 10. I quess I'll > > > try version 1.0 next. > > > > > > - Mike > > > > > > On Thu, 2009-03-12 at 08:02 -0300, Wander Lairson wrote: > > >> Please, try it with lsusb command. If it works, it maybe a PyUSB or > > >> libusb issue. Would you mind trying to build a little C program T > > >> check it? It the C program works, it is probably a PyUSB issue. In > > >> this case, please, open a bug request in SF, informing the PyUSB and > > >> libusb versions. > > >> > > >> Best regards, > > >> Wander > > >> > > >> 2009/3/11 Michael Ward <mic...@sp...>: > > >> > If anyone can give me a clue as to how to fix this, I'd sure appreciate > > >> > it. When I cat /proc/bus/usb/devices, the NXT shows up (on bus 4) with > > >> > the expected vendor (0x0694) and product (0x0002) numbers, but not when > > >> > I run a modified usbenum program. > > >> > > > >> > The data follows. > > >> > > > >> > Thanks, > > >> > - Mike > > >> > > > >> > usbenum program: > > >> > --------------- > > >> > #!/usr/bin/env python > > >> > # > > >> > # Enumerate usb devices > > >> > # > > >> > #Copyright 2005 Wander Lairson Costa > > >> > > > >> > import usb > > >> > > > >> > busses = usb.busses() > > >> > > > >> > for bus in busses: > > >> > devices = bus.devices > > >> > print "=== new bus ===" > > >> > for dev in devices: > > >> > print "Device:", dev.filename > > >> > print " Device class:",dev.deviceClass > > >> > print " Device sub class:",dev.deviceSubClass > > >> > print " Device protocol:",dev.deviceProtocol > > >> > print " Max packet size:",dev.maxPacketSize > > >> > print " idVendor: %d (0x%x)" % (dev.idVendor,dev.idVendor) > > >> > print " idProduct: %d (0x%x)" % (dev.idProduct,dev.idProduct) > > >> > print " Device Version:",dev.deviceVersion > > >> > for config in dev.configurations: > > >> > print " Configuration:", config.value > > >> > print " Total length:", config.totalLength > > >> > print " selfPowered:", config.selfPowered > > >> > print " remoteWakeup:", config.remoteWakeup > > >> > print " maxPower:", config.maxPower > > >> > for intf in config.interfaces: > > >> > print " Interface:",intf[0].interfaceNumber > > >> > for alt in intf: > > >> > print " Alternate Setting:",alt.alternateSetting > > >> > print " Interface class:",alt.interfaceClass > > >> > print " Interface sub class:",alt.interfaceSubClass > > >> > print " Interface protocol:",alt.interfaceProtocol > > >> > for ep in alt.endpoints: > > >> > print " Endpoint:",hex(ep.address) > > >> > print " Type:",ep.type > > >> > print " Max packet size:",ep.maxPacketSize > > >> > print " Interval:",ep.interval > > >> > > > >> > usbenum output: > > >> > -------------- > > >> > === new bus === > > >> > Device: 004 > > >> > Device class: 0 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 64 > > >> > idVendor: 3034 (0xbda) > > >> > idProduct: 273 (0x111) > > >> > Device Version: 11.37 > > >> > Configuration: 1 > > >> > Total length: 32 > > >> > selfPowered: 0 > > >> > remoteWakeup: 0 > > >> > maxPower: 232 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 8 > > >> > Interface sub class: 6 > > >> > Interface protocol: 80 > > >> > Endpoint: 0x1L > > >> > Type: 2 > > >> > Max packet size: 512 > > >> > Interval: 0 > > >> > Endpoint: 0x82L > > >> > Type: 2 > > >> > Max packet size: 512 > > >> > Interval: 0 > > >> > Device: 001 > > >> > Device class: 9 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 64 > > >> > idVendor: 7531 (0x1d6b) > > >> > idProduct: 2 (0x2) > > >> > Device Version: 02.06 > > >> > Configuration: 1 > > >> > Total length: 25 > > >> > selfPowered: 1 > > >> > remoteWakeup: 1 > > >> > maxPower: 0 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 9 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 4 > > >> > Interval: 12 > > >> > === new bus === > > >> > Device: 001 > > >> > Device class: 9 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 64 > > >> > idVendor: 7531 (0x1d6b) > > >> > idProduct: 1 (0x1) > > >> > Device Version: 02.06 > > >> > Configuration: 1 > > >> > Total length: 25 > > >> > selfPowered: 1 > > >> > remoteWakeup: 1 > > >> > maxPower: 0 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 9 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 2 > > >> > Interval: 255 > > >> > === new bus === > > >> > Device: 001 > > >> > Device class: 9 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 64 > > >> > idVendor: 7531 (0x1d6b) > > >> > idProduct: 1 (0x1) > > >> > Device Version: 02.06 > > >> > Configuration: 1 > > >> > Total length: 25 > > >> > selfPowered: 1 > > >> > remoteWakeup: 1 > > >> > maxPower: 0 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 9 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 2 > > >> > Interval: 255 > > >> > === new bus === > > >> > Device: 004 > > >> > Device class: 0 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 8 > > >> > idVendor: 2278 (0x8e6) > > >> > idProduct: 1074 (0x432) > > >> > Device Version: 01.00 > > >> > Configuration: 1 > > >> > Total length: 32 > > >> > selfPowered: 0 > > >> > remoteWakeup: 0 > > >> > maxPower: 200 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 255 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x85L > > >> > Type: 2 > > >> > Max packet size: 64 > > >> > Interval: 255 > > >> > Endpoint: 0x6L > > >> > Type: 2 > > >> > Max packet size: 64 > > >> > Interval: 255 > > >> > Device: 003 > > >> > Device class: 0 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 8 > > >> > idVendor: 1183 (0x49f) > > >> > idProduct: 14 (0xe) > > >> > Device Version: 01.02 > > >> > Configuration: 1 > > >> > Total length: 59 > > >> > selfPowered: 0 > > >> > remoteWakeup: 1 > > >> > maxPower: 200 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 3 > > >> > Interface sub class: 1 > > >> > Interface protocol: 1 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 8 > > >> > Interval: 10 > > >> > Interface: 1 > > >> > Alternate Setting: 0 > > >> > Interface class: 3 > > >> > Interface sub class: 1 > > >> > Interface protocol: 2 > > >> > Endpoint: 0x82L > > >> > Type: 3 > > >> > Max packet size: 8 > > >> > Interval: 10 > > >> > Device: 002 > > >> > Device class: 9 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 8 > > >> > idVendor: 1105 (0x451) > > >> > idProduct: 8246 (0x2036) > > >> > Device Version: 01.01 > > >> > Configuration: 1 > > >> > Total length: 25 > > >> > selfPowered: 0 > > >> > remoteWakeup: 1 > > >> > maxPower: 200 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 9 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 1 > > >> > Interval: 255 > > >> > Device: 001 > > >> > Device class: 9 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 64 > > >> > idVendor: 7531 (0x1d6b) > > >> > idProduct: 1 (0x1) > > >> > Device Version: 02.06 > > >> > Configuration: 1 > > >> > Total length: 25 > > >> > selfPowered: 1 > > >> > remoteWakeup: 1 > > >> > maxPower: 0 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 9 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 2 > > >> > Interval: 255 > > >> > === new bus === > > >> > Device: 002 > > >> > Device class: 0 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 8 > > >> > idVendor: 1133 (0x46d) > > >> > idProduct: 50177 (0xc401) > > >> > Device Version: 02.10 > > >> > Configuration: 1 > > >> > Total length: 34 > > >> > selfPowered: 0 > > >> > remoteWakeup: 1 > > >> > maxPower: 100 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 3 > > >> > Interface sub class: 1 > > >> > Interface protocol: 2 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 8 > > >> > Interval: 10 > > >> > Device: 001 > > >> > Device class: 9 > > >> > Device sub class: 0 > > >> > Device protocol: 0 > > >> > Max packet size: 64 > > >> > idVendor: 7531 (0x1d6b) > > >> > idProduct: 1 (0x1) > > >> > Device Version: 02.06 > > >> > Configuration: 1 > > >> > Total length: 25 > > >> > selfPowered: 1 > > >> > remoteWakeup: 1 > > >> > maxPower: 0 > > >> > Interface: 0 > > >> > Alternate Setting: 0 > > >> > Interface class: 9 > > >> > Interface sub class: 0 > > >> > Interface protocol: 0 > > >> > Endpoint: 0x81L > > >> > Type: 3 > > >> > Max packet size: 2 > > >> > Interval: 255 > > >> > > > >> > /proc/bus/usb/devices > > >> > --------------------- > > >> > > > >> > T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > > >> > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 > > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > > >> > S: Product=UHCI Host Controller > > >> > S: SerialNumber=0000:00:1d.3 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > >> > > > >> > T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > > >> > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 > > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > > >> > S: Product=UHCI Host Controller > > >> > S: SerialNumber=0000:00:1d.2 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > >> > > > >> > T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 > > >> > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > > >> > P: Vendor=0694 ProdID=0002 Rev= 0.00 > > >> > S: SerialNumber=00165301DB1E > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA > > >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) > > >> > E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > > >> > E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > > >> > > > >> > T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > > >> > B: Alloc= 29/900 us ( 3%), #Int= 3, #Iso= 0 > > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > > >> > S: Product=UHCI Host Controller > > >> > S: SerialNumber=0000:00:1d.1 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > >> > > > >> > T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 2 > > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > > >> > P: Vendor=0451 ProdID=2036 Rev= 1.01 > > >> > S: Product=General Purpose USB Hub > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms > > >> > > > >> > T: Bus=03 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 > > >> > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > > >> > P: Vendor=049f ProdID=000e Rev= 1.02 > > >> > S: Manufacturer=Chicony > > >> > S: Product=Compaq Internet Keyboard > > >> > C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > > >> > I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid > > >> > E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > > >> > > > >> > T: Bus=03 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 > > >> > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > > >> > P: Vendor=08e6 ProdID=0432 Rev= 1.00 > > >> > S: Manufacturer=GEMPLUS > > >> > S: Product=Visa Usb Smart Card Reader GCR432 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA > > >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none) > > >> > E: Ad=85(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > > >> > E: Ad=06(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > > >> > > > >> > T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > > >> > B: Alloc= 14/900 us ( 2%), #Int= 1, #Iso= 0 > > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > > >> > S: Product=UHCI Host Controller > > >> > S: SerialNumber=0000:00:1d.0 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > >> > > > >> > T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0 > > >> > D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > > >> > P: Vendor=046d ProdID=c401 Rev= 2.10 > > >> > S: Manufacturer=Logitech > > >> > S: Product=USB-PS/2 Trackball > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > > >> > > > >> > T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 > > >> > B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 > > >> > D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > > >> > P: Vendor=1d6b ProdID=0002 Rev= 2.06 > > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE ehci_hcd > > >> > S: Product=EHCI Host Controller > > >> > S: SerialNumber=0000:00:1d.7 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms > > >> > > > >> > T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=01 Dev#= 4 Spd=480 MxCh= 0 > > >> > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > > >> > P: Vendor=0bda ProdID=0111 Rev=11.37 > > >> > S: Manufacturer=Generic > > >> > S: Product=USB2.0-CRW > > >> > S: SerialNumber=20021111153705700 > > >> > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA > > >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 > > >> > Driver=usb-storage > > >> > E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms > > >> > E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms > > >> > > > >> > > > >> > > > >> > ------------------------------------------------------------------------------ > > >> > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > > >> > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > > >> > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > > >> > software that enables intelligent coding and step-through debugging. > > >> > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > > >> > _______________________________________________ > > >> > Pyusb-users mailing list > > >> > Pyu...@li... > > >> > https://lists.sourceforge.net/lists/listinfo/pyusb-users > > >> > > > >> > > >> ------------------------------------------------------------------------------ > > >> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > > >> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > > >> easily build your RIAs with Flex Builder, the Eclipse(TM)based development > > >> software that enables intelligent coding and step-through debugging. > > >> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > > >> _______________________________________________ > > >> Pyusb-users mailing list > > >> Pyu...@li... > > >> https://lists.sourceforge.net/lists/listinfo/pyusb-users > > > > > > > ------------------------------------------------------------------------------ > > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > > software that enables intelligent coding and step-through debugging. > > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > > _______________________________________________ > > Pyusb-users mailing list > > Pyu...@li... > > https://lists.sourceforge.net/lists/listinfo/pyusb-users > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > Pyusb-users mailing list > Pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Michael W. <mic...@sp...> - 2009-03-17 17:45:25
|
Seems that I'm having a permissions/sucurity problem. When I run usbenum as root it finds the device. When I run usbenum as a normal user, it does not. Perhaps I need to add a line to /etc/fstab or something? Anyone know what to do here? Thanks, - Mike On Thu, 2009-03-12 at 14:09 -0300, Wander Lairson wrote: > Actually I don't know if lsusb uses libusb or usbdevfs directly.. > Later I will download the source code and take a look... > > Wander > > 2009/3/12 Michael Ward <mic...@sp...>: > > Wander, > > > > Thanks for the reply. > > Indeed, it does not show up with lsusb: (does this use libusb?) > > > > [mike@Multivector ~]$ lsusb > > Bus 001 Device 004: ID 0bda:0111 Realtek Semiconductor Corp. Card Reader > > Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub > > Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > Bus 003 Device 004: ID 08e6:0432 Gemplus GemPC432 SmartCard Reader > > Bus 003 Device 003: ID 049f:000e Compaq Computer Corp. Internet Keyboard > > Bus 003 Device 002: ID 0451:2036 Texas Instruments, Inc. TUSB2036 Hub > > Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > Bus 002 Device 002: ID 046d:c401 Logitech, Inc. TrackMan Marble Wheel > > Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > > [mike@Multivector ~]$ > > > > I have version 0.1.12 of libusb installed under fedora 10. I quess I'll > > try version 1.0 next. > > > > - Mike > > > > On Thu, 2009-03-12 at 08:02 -0300, Wander Lairson wrote: > >> Please, try it with lsusb command. If it works, it maybe a PyUSB or > >> libusb issue. Would you mind trying to build a little C program T > >> check it? It the C program works, it is probably a PyUSB issue. In > >> this case, please, open a bug request in SF, informing the PyUSB and > >> libusb versions. > >> > >> Best regards, > >> Wander > >> > >> 2009/3/11 Michael Ward <mic...@sp...>: > >> > If anyone can give me a clue as to how to fix this, I'd sure appreciate > >> > it. When I cat /proc/bus/usb/devices, the NXT shows up (on bus 4) with > >> > the expected vendor (0x0694) and product (0x0002) numbers, but not when > >> > I run a modified usbenum program. > >> > > >> > The data follows. > >> > > >> > Thanks, > >> > - Mike > >> > > >> > usbenum program: > >> > --------------- > >> > #!/usr/bin/env python > >> > # > >> > # Enumerate usb devices > >> > # > >> > #Copyright 2005 Wander Lairson Costa > >> > > >> > import usb > >> > > >> > busses = usb.busses() > >> > > >> > for bus in busses: > >> > devices = bus.devices > >> > print "=== new bus ===" > >> > for dev in devices: > >> > print "Device:", dev.filename > >> > print " Device class:",dev.deviceClass > >> > print " Device sub class:",dev.deviceSubClass > >> > print " Device protocol:",dev.deviceProtocol > >> > print " Max packet size:",dev.maxPacketSize > >> > print " idVendor: %d (0x%x)" % (dev.idVendor,dev.idVendor) > >> > print " idProduct: %d (0x%x)" % (dev.idProduct,dev.idProduct) > >> > print " Device Version:",dev.deviceVersion > >> > for config in dev.configurations: > >> > print " Configuration:", config.value > >> > print " Total length:", config.totalLength > >> > print " selfPowered:", config.selfPowered > >> > print " remoteWakeup:", config.remoteWakeup > >> > print " maxPower:", config.maxPower > >> > for intf in config.interfaces: > >> > print " Interface:",intf[0].interfaceNumber > >> > for alt in intf: > >> > print " Alternate Setting:",alt.alternateSetting > >> > print " Interface class:",alt.interfaceClass > >> > print " Interface sub class:",alt.interfaceSubClass > >> > print " Interface protocol:",alt.interfaceProtocol > >> > for ep in alt.endpoints: > >> > print " Endpoint:",hex(ep.address) > >> > print " Type:",ep.type > >> > print " Max packet size:",ep.maxPacketSize > >> > print " Interval:",ep.interval > >> > > >> > usbenum output: > >> > -------------- > >> > === new bus === > >> > Device: 004 > >> > Device class: 0 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 64 > >> > idVendor: 3034 (0xbda) > >> > idProduct: 273 (0x111) > >> > Device Version: 11.37 > >> > Configuration: 1 > >> > Total length: 32 > >> > selfPowered: 0 > >> > remoteWakeup: 0 > >> > maxPower: 232 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 8 > >> > Interface sub class: 6 > >> > Interface protocol: 80 > >> > Endpoint: 0x1L > >> > Type: 2 > >> > Max packet size: 512 > >> > Interval: 0 > >> > Endpoint: 0x82L > >> > Type: 2 > >> > Max packet size: 512 > >> > Interval: 0 > >> > Device: 001 > >> > Device class: 9 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 64 > >> > idVendor: 7531 (0x1d6b) > >> > idProduct: 2 (0x2) > >> > Device Version: 02.06 > >> > Configuration: 1 > >> > Total length: 25 > >> > selfPowered: 1 > >> > remoteWakeup: 1 > >> > maxPower: 0 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 9 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 4 > >> > Interval: 12 > >> > === new bus === > >> > Device: 001 > >> > Device class: 9 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 64 > >> > idVendor: 7531 (0x1d6b) > >> > idProduct: 1 (0x1) > >> > Device Version: 02.06 > >> > Configuration: 1 > >> > Total length: 25 > >> > selfPowered: 1 > >> > remoteWakeup: 1 > >> > maxPower: 0 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 9 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 2 > >> > Interval: 255 > >> > === new bus === > >> > Device: 001 > >> > Device class: 9 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 64 > >> > idVendor: 7531 (0x1d6b) > >> > idProduct: 1 (0x1) > >> > Device Version: 02.06 > >> > Configuration: 1 > >> > Total length: 25 > >> > selfPowered: 1 > >> > remoteWakeup: 1 > >> > maxPower: 0 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 9 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 2 > >> > Interval: 255 > >> > === new bus === > >> > Device: 004 > >> > Device class: 0 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 8 > >> > idVendor: 2278 (0x8e6) > >> > idProduct: 1074 (0x432) > >> > Device Version: 01.00 > >> > Configuration: 1 > >> > Total length: 32 > >> > selfPowered: 0 > >> > remoteWakeup: 0 > >> > maxPower: 200 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 255 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x85L > >> > Type: 2 > >> > Max packet size: 64 > >> > Interval: 255 > >> > Endpoint: 0x6L > >> > Type: 2 > >> > Max packet size: 64 > >> > Interval: 255 > >> > Device: 003 > >> > Device class: 0 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 8 > >> > idVendor: 1183 (0x49f) > >> > idProduct: 14 (0xe) > >> > Device Version: 01.02 > >> > Configuration: 1 > >> > Total length: 59 > >> > selfPowered: 0 > >> > remoteWakeup: 1 > >> > maxPower: 200 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 3 > >> > Interface sub class: 1 > >> > Interface protocol: 1 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 8 > >> > Interval: 10 > >> > Interface: 1 > >> > Alternate Setting: 0 > >> > Interface class: 3 > >> > Interface sub class: 1 > >> > Interface protocol: 2 > >> > Endpoint: 0x82L > >> > Type: 3 > >> > Max packet size: 8 > >> > Interval: 10 > >> > Device: 002 > >> > Device class: 9 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 8 > >> > idVendor: 1105 (0x451) > >> > idProduct: 8246 (0x2036) > >> > Device Version: 01.01 > >> > Configuration: 1 > >> > Total length: 25 > >> > selfPowered: 0 > >> > remoteWakeup: 1 > >> > maxPower: 200 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 9 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 1 > >> > Interval: 255 > >> > Device: 001 > >> > Device class: 9 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 64 > >> > idVendor: 7531 (0x1d6b) > >> > idProduct: 1 (0x1) > >> > Device Version: 02.06 > >> > Configuration: 1 > >> > Total length: 25 > >> > selfPowered: 1 > >> > remoteWakeup: 1 > >> > maxPower: 0 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 9 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 2 > >> > Interval: 255 > >> > === new bus === > >> > Device: 002 > >> > Device class: 0 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 8 > >> > idVendor: 1133 (0x46d) > >> > idProduct: 50177 (0xc401) > >> > Device Version: 02.10 > >> > Configuration: 1 > >> > Total length: 34 > >> > selfPowered: 0 > >> > remoteWakeup: 1 > >> > maxPower: 100 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 3 > >> > Interface sub class: 1 > >> > Interface protocol: 2 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 8 > >> > Interval: 10 > >> > Device: 001 > >> > Device class: 9 > >> > Device sub class: 0 > >> > Device protocol: 0 > >> > Max packet size: 64 > >> > idVendor: 7531 (0x1d6b) > >> > idProduct: 1 (0x1) > >> > Device Version: 02.06 > >> > Configuration: 1 > >> > Total length: 25 > >> > selfPowered: 1 > >> > remoteWakeup: 1 > >> > maxPower: 0 > >> > Interface: 0 > >> > Alternate Setting: 0 > >> > Interface class: 9 > >> > Interface sub class: 0 > >> > Interface protocol: 0 > >> > Endpoint: 0x81L > >> > Type: 3 > >> > Max packet size: 2 > >> > Interval: 255 > >> > > >> > /proc/bus/usb/devices > >> > --------------------- > >> > > >> > T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > >> > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > >> > S: Product=UHCI Host Controller > >> > S: SerialNumber=0000:00:1d.3 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > >> > > >> > T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > >> > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > >> > S: Product=UHCI Host Controller > >> > S: SerialNumber=0000:00:1d.2 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > >> > > >> > T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 > >> > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > >> > P: Vendor=0694 ProdID=0002 Rev= 0.00 > >> > S: SerialNumber=00165301DB1E > >> > C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA > >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) > >> > E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > >> > E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > >> > > >> > T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > >> > B: Alloc= 29/900 us ( 3%), #Int= 3, #Iso= 0 > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > >> > S: Product=UHCI Host Controller > >> > S: SerialNumber=0000:00:1d.1 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > >> > > >> > T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 2 > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > >> > P: Vendor=0451 ProdID=2036 Rev= 1.01 > >> > S: Product=General Purpose USB Hub > >> > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms > >> > > >> > T: Bus=03 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 > >> > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > >> > P: Vendor=049f ProdID=000e Rev= 1.02 > >> > S: Manufacturer=Chicony > >> > S: Product=Compaq Internet Keyboard > >> > C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > >> > I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid > >> > E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > >> > > >> > T: Bus=03 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 > >> > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > >> > P: Vendor=08e6 ProdID=0432 Rev= 1.00 > >> > S: Manufacturer=GEMPLUS > >> > S: Product=Visa Usb Smart Card Reader GCR432 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA > >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none) > >> > E: Ad=85(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > >> > E: Ad=06(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > >> > > >> > T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > >> > B: Alloc= 14/900 us ( 2%), #Int= 1, #Iso= 0 > >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > >> > S: Product=UHCI Host Controller > >> > S: SerialNumber=0000:00:1d.0 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > >> > > >> > T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0 > >> > D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > >> > P: Vendor=046d ProdID=c401 Rev= 2.10 > >> > S: Manufacturer=Logitech > >> > S: Product=USB-PS/2 Trackball > >> > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > >> > > >> > T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 > >> > B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 > >> > D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > >> > P: Vendor=1d6b ProdID=0002 Rev= 2.06 > >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE ehci_hcd > >> > S: Product=EHCI Host Controller > >> > S: SerialNumber=0000:00:1d.7 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > >> > E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms > >> > > >> > T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=01 Dev#= 4 Spd=480 MxCh= 0 > >> > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > >> > P: Vendor=0bda ProdID=0111 Rev=11.37 > >> > S: Manufacturer=Generic > >> > S: Product=USB2.0-CRW > >> > S: SerialNumber=20021111153705700 > >> > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA > >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 > >> > Driver=usb-storage > >> > E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms > >> > E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms > >> > > >> > > >> > > >> > ------------------------------------------------------------------------------ > >> > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > >> > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > >> > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > >> > software that enables intelligent coding and step-through debugging. > >> > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > >> > _______________________________________________ > >> > Pyusb-users mailing list > >> > Pyu...@li... > >> > https://lists.sourceforge.net/lists/listinfo/pyusb-users > >> > > >> > >> ------------------------------------------------------------------------------ > >> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > >> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > >> easily build your RIAs with Flex Builder, the Eclipse(TM)based development > >> software that enables intelligent coding and step-through debugging. > >> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > >> _______________________________________________ > >> Pyusb-users mailing list > >> Pyu...@li... > >> https://lists.sourceforge.net/lists/listinfo/pyusb-users > > > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > Pyusb-users mailing list > Pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users |
From: Phil H. <ph...@ha...> - 2009-03-13 14:27:15
|
Hello, I need to test my driver on the Mac OSX. Does anybody have any instructions on what to install to get PyUSB up and running? Regards Phil Hannent |
From: Wander L. <wan...@gm...> - 2009-03-12 17:09:26
|
Actually I don't know if lsusb uses libusb or usbdevfs directly.. Later I will download the source code and take a look... Wander 2009/3/12 Michael Ward <mic...@sp...>: > Wander, > > Thanks for the reply. > Indeed, it does not show up with lsusb: (does this use libusb?) > > [mike@Multivector ~]$ lsusb > Bus 001 Device 004: ID 0bda:0111 Realtek Semiconductor Corp. Card Reader > Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub > Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 003 Device 004: ID 08e6:0432 Gemplus GemPC432 SmartCard Reader > Bus 003 Device 003: ID 049f:000e Compaq Computer Corp. Internet Keyboard > Bus 003 Device 002: ID 0451:2036 Texas Instruments, Inc. TUSB2036 Hub > Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > Bus 002 Device 002: ID 046d:c401 Logitech, Inc. TrackMan Marble Wheel > Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub > [mike@Multivector ~]$ > > I have version 0.1.12 of libusb installed under fedora 10. I quess I'll > try version 1.0 next. > > - Mike > > On Thu, 2009-03-12 at 08:02 -0300, Wander Lairson wrote: >> Please, try it with lsusb command. If it works, it maybe a PyUSB or >> libusb issue. Would you mind trying to build a little C program T >> check it? It the C program works, it is probably a PyUSB issue. In >> this case, please, open a bug request in SF, informing the PyUSB and >> libusb versions. >> >> Best regards, >> Wander >> >> 2009/3/11 Michael Ward <mic...@sp...>: >> > If anyone can give me a clue as to how to fix this, I'd sure appreciate >> > it. When I cat /proc/bus/usb/devices, the NXT shows up (on bus 4) with >> > the expected vendor (0x0694) and product (0x0002) numbers, but not when >> > I run a modified usbenum program. >> > >> > The data follows. >> > >> > Thanks, >> > - Mike >> > >> > usbenum program: >> > --------------- >> > #!/usr/bin/env python >> > # >> > # Enumerate usb devices >> > # >> > #Copyright 2005 Wander Lairson Costa >> > >> > import usb >> > >> > busses = usb.busses() >> > >> > for bus in busses: >> > devices = bus.devices >> > print "=== new bus ===" >> > for dev in devices: >> > print "Device:", dev.filename >> > print " Device class:",dev.deviceClass >> > print " Device sub class:",dev.deviceSubClass >> > print " Device protocol:",dev.deviceProtocol >> > print " Max packet size:",dev.maxPacketSize >> > print " idVendor: %d (0x%x)" % (dev.idVendor,dev.idVendor) >> > print " idProduct: %d (0x%x)" % (dev.idProduct,dev.idProduct) >> > print " Device Version:",dev.deviceVersion >> > for config in dev.configurations: >> > print " Configuration:", config.value >> > print " Total length:", config.totalLength >> > print " selfPowered:", config.selfPowered >> > print " remoteWakeup:", config.remoteWakeup >> > print " maxPower:", config.maxPower >> > for intf in config.interfaces: >> > print " Interface:",intf[0].interfaceNumber >> > for alt in intf: >> > print " Alternate Setting:",alt.alternateSetting >> > print " Interface class:",alt.interfaceClass >> > print " Interface sub class:",alt.interfaceSubClass >> > print " Interface protocol:",alt.interfaceProtocol >> > for ep in alt.endpoints: >> > print " Endpoint:",hex(ep.address) >> > print " Type:",ep.type >> > print " Max packet size:",ep.maxPacketSize >> > print " Interval:",ep.interval >> > >> > usbenum output: >> > -------------- >> > === new bus === >> > Device: 004 >> > Device class: 0 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 64 >> > idVendor: 3034 (0xbda) >> > idProduct: 273 (0x111) >> > Device Version: 11.37 >> > Configuration: 1 >> > Total length: 32 >> > selfPowered: 0 >> > remoteWakeup: 0 >> > maxPower: 232 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 8 >> > Interface sub class: 6 >> > Interface protocol: 80 >> > Endpoint: 0x1L >> > Type: 2 >> > Max packet size: 512 >> > Interval: 0 >> > Endpoint: 0x82L >> > Type: 2 >> > Max packet size: 512 >> > Interval: 0 >> > Device: 001 >> > Device class: 9 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 64 >> > idVendor: 7531 (0x1d6b) >> > idProduct: 2 (0x2) >> > Device Version: 02.06 >> > Configuration: 1 >> > Total length: 25 >> > selfPowered: 1 >> > remoteWakeup: 1 >> > maxPower: 0 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 9 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 4 >> > Interval: 12 >> > === new bus === >> > Device: 001 >> > Device class: 9 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 64 >> > idVendor: 7531 (0x1d6b) >> > idProduct: 1 (0x1) >> > Device Version: 02.06 >> > Configuration: 1 >> > Total length: 25 >> > selfPowered: 1 >> > remoteWakeup: 1 >> > maxPower: 0 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 9 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 2 >> > Interval: 255 >> > === new bus === >> > Device: 001 >> > Device class: 9 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 64 >> > idVendor: 7531 (0x1d6b) >> > idProduct: 1 (0x1) >> > Device Version: 02.06 >> > Configuration: 1 >> > Total length: 25 >> > selfPowered: 1 >> > remoteWakeup: 1 >> > maxPower: 0 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 9 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 2 >> > Interval: 255 >> > === new bus === >> > Device: 004 >> > Device class: 0 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 8 >> > idVendor: 2278 (0x8e6) >> > idProduct: 1074 (0x432) >> > Device Version: 01.00 >> > Configuration: 1 >> > Total length: 32 >> > selfPowered: 0 >> > remoteWakeup: 0 >> > maxPower: 200 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 255 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x85L >> > Type: 2 >> > Max packet size: 64 >> > Interval: 255 >> > Endpoint: 0x6L >> > Type: 2 >> > Max packet size: 64 >> > Interval: 255 >> > Device: 003 >> > Device class: 0 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 8 >> > idVendor: 1183 (0x49f) >> > idProduct: 14 (0xe) >> > Device Version: 01.02 >> > Configuration: 1 >> > Total length: 59 >> > selfPowered: 0 >> > remoteWakeup: 1 >> > maxPower: 200 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 3 >> > Interface sub class: 1 >> > Interface protocol: 1 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 8 >> > Interval: 10 >> > Interface: 1 >> > Alternate Setting: 0 >> > Interface class: 3 >> > Interface sub class: 1 >> > Interface protocol: 2 >> > Endpoint: 0x82L >> > Type: 3 >> > Max packet size: 8 >> > Interval: 10 >> > Device: 002 >> > Device class: 9 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 8 >> > idVendor: 1105 (0x451) >> > idProduct: 8246 (0x2036) >> > Device Version: 01.01 >> > Configuration: 1 >> > Total length: 25 >> > selfPowered: 0 >> > remoteWakeup: 1 >> > maxPower: 200 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 9 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 1 >> > Interval: 255 >> > Device: 001 >> > Device class: 9 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 64 >> > idVendor: 7531 (0x1d6b) >> > idProduct: 1 (0x1) >> > Device Version: 02.06 >> > Configuration: 1 >> > Total length: 25 >> > selfPowered: 1 >> > remoteWakeup: 1 >> > maxPower: 0 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 9 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 2 >> > Interval: 255 >> > === new bus === >> > Device: 002 >> > Device class: 0 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 8 >> > idVendor: 1133 (0x46d) >> > idProduct: 50177 (0xc401) >> > Device Version: 02.10 >> > Configuration: 1 >> > Total length: 34 >> > selfPowered: 0 >> > remoteWakeup: 1 >> > maxPower: 100 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 3 >> > Interface sub class: 1 >> > Interface protocol: 2 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 8 >> > Interval: 10 >> > Device: 001 >> > Device class: 9 >> > Device sub class: 0 >> > Device protocol: 0 >> > Max packet size: 64 >> > idVendor: 7531 (0x1d6b) >> > idProduct: 1 (0x1) >> > Device Version: 02.06 >> > Configuration: 1 >> > Total length: 25 >> > selfPowered: 1 >> > remoteWakeup: 1 >> > maxPower: 0 >> > Interface: 0 >> > Alternate Setting: 0 >> > Interface class: 9 >> > Interface sub class: 0 >> > Interface protocol: 0 >> > Endpoint: 0x81L >> > Type: 3 >> > Max packet size: 2 >> > Interval: 255 >> > >> > /proc/bus/usb/devices >> > --------------------- >> > >> > T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 >> > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd >> > S: Product=UHCI Host Controller >> > S: SerialNumber=0000:00:1d.3 >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms >> > >> > T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 >> > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd >> > S: Product=UHCI Host Controller >> > S: SerialNumber=0000:00:1d.2 >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms >> > >> > T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 >> > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 >> > P: Vendor=0694 ProdID=0002 Rev= 0.00 >> > S: SerialNumber=00165301DB1E >> > C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) >> > E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms >> > E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms >> > >> > T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 >> > B: Alloc= 29/900 us ( 3%), #Int= 3, #Iso= 0 >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd >> > S: Product=UHCI Host Controller >> > S: SerialNumber=0000:00:1d.1 >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms >> > >> > T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 2 >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 >> > P: Vendor=0451 ProdID=2036 Rev= 1.01 >> > S: Product=General Purpose USB Hub >> > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub >> > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms >> > >> > T: Bus=03 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 >> > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 >> > P: Vendor=049f ProdID=000e Rev= 1.02 >> > S: Manufacturer=Chicony >> > S: Product=Compaq Internet Keyboard >> > C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid >> > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms >> > I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid >> > E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms >> > >> > T: Bus=03 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 >> > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 >> > P: Vendor=08e6 ProdID=0432 Rev= 1.00 >> > S: Manufacturer=GEMPLUS >> > S: Product=Visa Usb Smart Card Reader GCR432 >> > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none) >> > E: Ad=85(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms >> > E: Ad=06(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms >> > >> > T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 >> > B: Alloc= 14/900 us ( 2%), #Int= 1, #Iso= 0 >> > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 >> > P: Vendor=1d6b ProdID=0001 Rev= 2.06 >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd >> > S: Product=UHCI Host Controller >> > S: SerialNumber=0000:00:1d.0 >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub >> > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms >> > >> > T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0 >> > D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 >> > P: Vendor=046d ProdID=c401 Rev= 2.10 >> > S: Manufacturer=Logitech >> > S: Product=USB-PS/2 Trackball >> > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid >> > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms >> > >> > T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 >> > B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 >> > D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 >> > P: Vendor=1d6b ProdID=0002 Rev= 2.06 >> > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE ehci_hcd >> > S: Product=EHCI Host Controller >> > S: SerialNumber=0000:00:1d.7 >> > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA >> > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub >> > E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms >> > >> > T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=01 Dev#= 4 Spd=480 MxCh= 0 >> > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 >> > P: Vendor=0bda ProdID=0111 Rev=11.37 >> > S: Manufacturer=Generic >> > S: Product=USB2.0-CRW >> > S: SerialNumber=20021111153705700 >> > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA >> > I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 >> > Driver=usb-storage >> > E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms >> > E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms >> > >> > >> > >> > ------------------------------------------------------------------------------ >> > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are >> > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and >> > easily build your RIAs with Flex Builder, the Eclipse(TM)based development >> > software that enables intelligent coding and step-through debugging. >> > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com >> > _______________________________________________ >> > Pyusb-users mailing list >> > Pyu...@li... >> > https://lists.sourceforge.net/lists/listinfo/pyusb-users >> > >> >> ------------------------------------------------------------------------------ >> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are >> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and >> easily build your RIAs with Flex Builder, the Eclipse(TM)based development >> software that enables intelligent coding and step-through debugging. >> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com >> _______________________________________________ >> Pyusb-users mailing list >> Pyu...@li... >> https://lists.sourceforge.net/lists/listinfo/pyusb-users > |
From: Wander L. <wan...@gm...> - 2009-03-12 11:02:18
|
Please, try it with lsusb command. If it works, it maybe a PyUSB or libusb issue. Would you mind trying to build a little C program T check it? It the C program works, it is probably a PyUSB issue. In this case, please, open a bug request in SF, informing the PyUSB and libusb versions. Best regards, Wander 2009/3/11 Michael Ward <mic...@sp...>: > If anyone can give me a clue as to how to fix this, I'd sure appreciate > it. When I cat /proc/bus/usb/devices, the NXT shows up (on bus 4) with > the expected vendor (0x0694) and product (0x0002) numbers, but not when > I run a modified usbenum program. > > The data follows. > > Thanks, > - Mike > > usbenum program: > --------------- > #!/usr/bin/env python > # > # Enumerate usb devices > # > #Copyright 2005 Wander Lairson Costa > > import usb > > busses = usb.busses() > > for bus in busses: > devices = bus.devices > print "=== new bus ===" > for dev in devices: > print "Device:", dev.filename > print " Device class:",dev.deviceClass > print " Device sub class:",dev.deviceSubClass > print " Device protocol:",dev.deviceProtocol > print " Max packet size:",dev.maxPacketSize > print " idVendor: %d (0x%x)" % (dev.idVendor,dev.idVendor) > print " idProduct: %d (0x%x)" % (dev.idProduct,dev.idProduct) > print " Device Version:",dev.deviceVersion > for config in dev.configurations: > print " Configuration:", config.value > print " Total length:", config.totalLength > print " selfPowered:", config.selfPowered > print " remoteWakeup:", config.remoteWakeup > print " maxPower:", config.maxPower > for intf in config.interfaces: > print " Interface:",intf[0].interfaceNumber > for alt in intf: > print " Alternate Setting:",alt.alternateSetting > print " Interface class:",alt.interfaceClass > print " Interface sub class:",alt.interfaceSubClass > print " Interface protocol:",alt.interfaceProtocol > for ep in alt.endpoints: > print " Endpoint:",hex(ep.address) > print " Type:",ep.type > print " Max packet size:",ep.maxPacketSize > print " Interval:",ep.interval > > usbenum output: > -------------- > === new bus === > Device: 004 > Device class: 0 > Device sub class: 0 > Device protocol: 0 > Max packet size: 64 > idVendor: 3034 (0xbda) > idProduct: 273 (0x111) > Device Version: 11.37 > Configuration: 1 > Total length: 32 > selfPowered: 0 > remoteWakeup: 0 > maxPower: 232 > Interface: 0 > Alternate Setting: 0 > Interface class: 8 > Interface sub class: 6 > Interface protocol: 80 > Endpoint: 0x1L > Type: 2 > Max packet size: 512 > Interval: 0 > Endpoint: 0x82L > Type: 2 > Max packet size: 512 > Interval: 0 > Device: 001 > Device class: 9 > Device sub class: 0 > Device protocol: 0 > Max packet size: 64 > idVendor: 7531 (0x1d6b) > idProduct: 2 (0x2) > Device Version: 02.06 > Configuration: 1 > Total length: 25 > selfPowered: 1 > remoteWakeup: 1 > maxPower: 0 > Interface: 0 > Alternate Setting: 0 > Interface class: 9 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x81L > Type: 3 > Max packet size: 4 > Interval: 12 > === new bus === > Device: 001 > Device class: 9 > Device sub class: 0 > Device protocol: 0 > Max packet size: 64 > idVendor: 7531 (0x1d6b) > idProduct: 1 (0x1) > Device Version: 02.06 > Configuration: 1 > Total length: 25 > selfPowered: 1 > remoteWakeup: 1 > maxPower: 0 > Interface: 0 > Alternate Setting: 0 > Interface class: 9 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x81L > Type: 3 > Max packet size: 2 > Interval: 255 > === new bus === > Device: 001 > Device class: 9 > Device sub class: 0 > Device protocol: 0 > Max packet size: 64 > idVendor: 7531 (0x1d6b) > idProduct: 1 (0x1) > Device Version: 02.06 > Configuration: 1 > Total length: 25 > selfPowered: 1 > remoteWakeup: 1 > maxPower: 0 > Interface: 0 > Alternate Setting: 0 > Interface class: 9 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x81L > Type: 3 > Max packet size: 2 > Interval: 255 > === new bus === > Device: 004 > Device class: 0 > Device sub class: 0 > Device protocol: 0 > Max packet size: 8 > idVendor: 2278 (0x8e6) > idProduct: 1074 (0x432) > Device Version: 01.00 > Configuration: 1 > Total length: 32 > selfPowered: 0 > remoteWakeup: 0 > maxPower: 200 > Interface: 0 > Alternate Setting: 0 > Interface class: 255 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x85L > Type: 2 > Max packet size: 64 > Interval: 255 > Endpoint: 0x6L > Type: 2 > Max packet size: 64 > Interval: 255 > Device: 003 > Device class: 0 > Device sub class: 0 > Device protocol: 0 > Max packet size: 8 > idVendor: 1183 (0x49f) > idProduct: 14 (0xe) > Device Version: 01.02 > Configuration: 1 > Total length: 59 > selfPowered: 0 > remoteWakeup: 1 > maxPower: 200 > Interface: 0 > Alternate Setting: 0 > Interface class: 3 > Interface sub class: 1 > Interface protocol: 1 > Endpoint: 0x81L > Type: 3 > Max packet size: 8 > Interval: 10 > Interface: 1 > Alternate Setting: 0 > Interface class: 3 > Interface sub class: 1 > Interface protocol: 2 > Endpoint: 0x82L > Type: 3 > Max packet size: 8 > Interval: 10 > Device: 002 > Device class: 9 > Device sub class: 0 > Device protocol: 0 > Max packet size: 8 > idVendor: 1105 (0x451) > idProduct: 8246 (0x2036) > Device Version: 01.01 > Configuration: 1 > Total length: 25 > selfPowered: 0 > remoteWakeup: 1 > maxPower: 200 > Interface: 0 > Alternate Setting: 0 > Interface class: 9 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x81L > Type: 3 > Max packet size: 1 > Interval: 255 > Device: 001 > Device class: 9 > Device sub class: 0 > Device protocol: 0 > Max packet size: 64 > idVendor: 7531 (0x1d6b) > idProduct: 1 (0x1) > Device Version: 02.06 > Configuration: 1 > Total length: 25 > selfPowered: 1 > remoteWakeup: 1 > maxPower: 0 > Interface: 0 > Alternate Setting: 0 > Interface class: 9 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x81L > Type: 3 > Max packet size: 2 > Interval: 255 > === new bus === > Device: 002 > Device class: 0 > Device sub class: 0 > Device protocol: 0 > Max packet size: 8 > idVendor: 1133 (0x46d) > idProduct: 50177 (0xc401) > Device Version: 02.10 > Configuration: 1 > Total length: 34 > selfPowered: 0 > remoteWakeup: 1 > maxPower: 100 > Interface: 0 > Alternate Setting: 0 > Interface class: 3 > Interface sub class: 1 > Interface protocol: 2 > Endpoint: 0x81L > Type: 3 > Max packet size: 8 > Interval: 10 > Device: 001 > Device class: 9 > Device sub class: 0 > Device protocol: 0 > Max packet size: 64 > idVendor: 7531 (0x1d6b) > idProduct: 1 (0x1) > Device Version: 02.06 > Configuration: 1 > Total length: 25 > selfPowered: 1 > remoteWakeup: 1 > maxPower: 0 > Interface: 0 > Alternate Setting: 0 > Interface class: 9 > Interface sub class: 0 > Interface protocol: 0 > Endpoint: 0x81L > Type: 3 > Max packet size: 2 > Interval: 255 > > /proc/bus/usb/devices > --------------------- > > T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > S: Product=UHCI Host Controller > S: SerialNumber=0000:00:1d.3 > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > S: Product=UHCI Host Controller > S: SerialNumber=0000:00:1d.2 > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > P: Vendor=0694 ProdID=0002 Rev= 0.00 > S: SerialNumber=00165301DB1E > C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) > E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > > T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > B: Alloc= 29/900 us ( 3%), #Int= 3, #Iso= 0 > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > S: Product=UHCI Host Controller > S: SerialNumber=0000:00:1d.1 > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 2 > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > P: Vendor=0451 ProdID=2036 Rev= 1.01 > S: Product=General Purpose USB Hub > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms > > T: Bus=03 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > P: Vendor=049f ProdID=000e Rev= 1.02 > S: Manufacturer=Chicony > S: Product=Compaq Internet Keyboard > C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid > E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > > T: Bus=03 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > P: Vendor=08e6 ProdID=0432 Rev= 1.00 > S: Manufacturer=GEMPLUS > S: Product=Visa Usb Smart Card Reader GCR432 > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA > I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none) > E: Ad=85(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms > E: Ad=06(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms > > T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 > B: Alloc= 14/900 us ( 2%), #Int= 1, #Iso= 0 > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > P: Vendor=1d6b ProdID=0001 Rev= 2.06 > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd > S: Product=UHCI Host Controller > S: SerialNumber=0000:00:1d.0 > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms > > T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0 > D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 > P: Vendor=046d ProdID=c401 Rev= 2.10 > S: Manufacturer=Logitech > S: Product=USB-PS/2 Trackball > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms > > T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 > B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 > D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > P: Vendor=1d6b ProdID=0002 Rev= 2.06 > S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE ehci_hcd > S: Product=EHCI Host Controller > S: SerialNumber=0000:00:1d.7 > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub > E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms > > T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=01 Dev#= 4 Spd=480 MxCh= 0 > D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 > P: Vendor=0bda ProdID=0111 Rev=11.37 > S: Manufacturer=Generic > S: Product=USB2.0-CRW > S: SerialNumber=20021111153705700 > C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA > I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 > Driver=usb-storage > E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms > E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms > > > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > Pyusb-users mailing list > Pyu...@li... > https://lists.sourceforge.net/lists/listinfo/pyusb-users > |
From: Michael W. <mic...@sp...> - 2009-03-11 22:39:41
|
If anyone can give me a clue as to how to fix this, I'd sure appreciate it. When I cat /proc/bus/usb/devices, the NXT shows up (on bus 4) with the expected vendor (0x0694) and product (0x0002) numbers, but not when I run a modified usbenum program. The data follows. Thanks, - Mike usbenum program: --------------- #!/usr/bin/env python # # Enumerate usb devices # #Copyright 2005 Wander Lairson Costa import usb busses = usb.busses() for bus in busses: devices = bus.devices print "=== new bus ===" for dev in devices: print "Device:", dev.filename print " Device class:",dev.deviceClass print " Device sub class:",dev.deviceSubClass print " Device protocol:",dev.deviceProtocol print " Max packet size:",dev.maxPacketSize print " idVendor: %d (0x%x)" % (dev.idVendor,dev.idVendor) print " idProduct: %d (0x%x)" % (dev.idProduct,dev.idProduct) print " Device Version:",dev.deviceVersion for config in dev.configurations: print " Configuration:", config.value print " Total length:", config.totalLength print " selfPowered:", config.selfPowered print " remoteWakeup:", config.remoteWakeup print " maxPower:", config.maxPower for intf in config.interfaces: print " Interface:",intf[0].interfaceNumber for alt in intf: print " Alternate Setting:",alt.alternateSetting print " Interface class:",alt.interfaceClass print " Interface sub class:",alt.interfaceSubClass print " Interface protocol:",alt.interfaceProtocol for ep in alt.endpoints: print " Endpoint:",hex(ep.address) print " Type:",ep.type print " Max packet size:",ep.maxPacketSize print " Interval:",ep.interval usbenum output: -------------- === new bus === Device: 004 Device class: 0 Device sub class: 0 Device protocol: 0 Max packet size: 64 idVendor: 3034 (0xbda) idProduct: 273 (0x111) Device Version: 11.37 Configuration: 1 Total length: 32 selfPowered: 0 remoteWakeup: 0 maxPower: 232 Interface: 0 Alternate Setting: 0 Interface class: 8 Interface sub class: 6 Interface protocol: 80 Endpoint: 0x1L Type: 2 Max packet size: 512 Interval: 0 Endpoint: 0x82L Type: 2 Max packet size: 512 Interval: 0 Device: 001 Device class: 9 Device sub class: 0 Device protocol: 0 Max packet size: 64 idVendor: 7531 (0x1d6b) idProduct: 2 (0x2) Device Version: 02.06 Configuration: 1 Total length: 25 selfPowered: 1 remoteWakeup: 1 maxPower: 0 Interface: 0 Alternate Setting: 0 Interface class: 9 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x81L Type: 3 Max packet size: 4 Interval: 12 === new bus === Device: 001 Device class: 9 Device sub class: 0 Device protocol: 0 Max packet size: 64 idVendor: 7531 (0x1d6b) idProduct: 1 (0x1) Device Version: 02.06 Configuration: 1 Total length: 25 selfPowered: 1 remoteWakeup: 1 maxPower: 0 Interface: 0 Alternate Setting: 0 Interface class: 9 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x81L Type: 3 Max packet size: 2 Interval: 255 === new bus === Device: 001 Device class: 9 Device sub class: 0 Device protocol: 0 Max packet size: 64 idVendor: 7531 (0x1d6b) idProduct: 1 (0x1) Device Version: 02.06 Configuration: 1 Total length: 25 selfPowered: 1 remoteWakeup: 1 maxPower: 0 Interface: 0 Alternate Setting: 0 Interface class: 9 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x81L Type: 3 Max packet size: 2 Interval: 255 === new bus === Device: 004 Device class: 0 Device sub class: 0 Device protocol: 0 Max packet size: 8 idVendor: 2278 (0x8e6) idProduct: 1074 (0x432) Device Version: 01.00 Configuration: 1 Total length: 32 selfPowered: 0 remoteWakeup: 0 maxPower: 200 Interface: 0 Alternate Setting: 0 Interface class: 255 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x85L Type: 2 Max packet size: 64 Interval: 255 Endpoint: 0x6L Type: 2 Max packet size: 64 Interval: 255 Device: 003 Device class: 0 Device sub class: 0 Device protocol: 0 Max packet size: 8 idVendor: 1183 (0x49f) idProduct: 14 (0xe) Device Version: 01.02 Configuration: 1 Total length: 59 selfPowered: 0 remoteWakeup: 1 maxPower: 200 Interface: 0 Alternate Setting: 0 Interface class: 3 Interface sub class: 1 Interface protocol: 1 Endpoint: 0x81L Type: 3 Max packet size: 8 Interval: 10 Interface: 1 Alternate Setting: 0 Interface class: 3 Interface sub class: 1 Interface protocol: 2 Endpoint: 0x82L Type: 3 Max packet size: 8 Interval: 10 Device: 002 Device class: 9 Device sub class: 0 Device protocol: 0 Max packet size: 8 idVendor: 1105 (0x451) idProduct: 8246 (0x2036) Device Version: 01.01 Configuration: 1 Total length: 25 selfPowered: 0 remoteWakeup: 1 maxPower: 200 Interface: 0 Alternate Setting: 0 Interface class: 9 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x81L Type: 3 Max packet size: 1 Interval: 255 Device: 001 Device class: 9 Device sub class: 0 Device protocol: 0 Max packet size: 64 idVendor: 7531 (0x1d6b) idProduct: 1 (0x1) Device Version: 02.06 Configuration: 1 Total length: 25 selfPowered: 1 remoteWakeup: 1 maxPower: 0 Interface: 0 Alternate Setting: 0 Interface class: 9 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x81L Type: 3 Max packet size: 2 Interval: 255 === new bus === Device: 002 Device class: 0 Device sub class: 0 Device protocol: 0 Max packet size: 8 idVendor: 1133 (0x46d) idProduct: 50177 (0xc401) Device Version: 02.10 Configuration: 1 Total length: 34 selfPowered: 0 remoteWakeup: 1 maxPower: 100 Interface: 0 Alternate Setting: 0 Interface class: 3 Interface sub class: 1 Interface protocol: 2 Endpoint: 0x81L Type: 3 Max packet size: 8 Interval: 10 Device: 001 Device class: 9 Device sub class: 0 Device protocol: 0 Max packet size: 64 idVendor: 7531 (0x1d6b) idProduct: 1 (0x1) Device Version: 02.06 Configuration: 1 Total length: 25 selfPowered: 1 remoteWakeup: 1 maxPower: 0 Interface: 0 Alternate Setting: 0 Interface class: 9 Interface sub class: 0 Interface protocol: 0 Endpoint: 0x81L Type: 3 Max packet size: 2 Interval: 255 /proc/bus/usb/devices --------------------- T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0001 Rev= 2.06 S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:1d.3 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0001 Rev= 2.06 S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:1d.2 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0694 ProdID=0002 Rev= 0.00 S: SerialNumber=00165301DB1E C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 29/900 us ( 3%), #Int= 3, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0001 Rev= 2.06 S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:1d.1 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 2 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0451 ProdID=2036 Rev= 1.01 S: Product=General Purpose USB Hub C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms T: Bus=03 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=049f ProdID=000e Rev= 1.02 S: Manufacturer=Chicony S: Product=Compaq Internet Keyboard C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms T: Bus=03 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=08e6 ProdID=0432 Rev= 1.00 S: Manufacturer=GEMPLUS S: Product=Visa Usb Smart Card Reader GCR432 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none) E: Ad=85(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=06(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 14/900 us ( 2%), #Int= 1, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0001 Rev= 2.06 S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:1d.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=1.5 MxCh= 0 D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=046d ProdID=c401 Rev= 2.10 S: Manufacturer=Logitech S: Product=USB-PS/2 Trackball C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 50mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0002 Rev= 2.06 S: Manufacturer=Linux 2.6.27.19-170.2.35.fc10.i686.PAE ehci_hcd S: Product=EHCI Host Controller S: SerialNumber=0000:00:1d.7 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms T: Bus=01 Lev=01 Prnt=01 Port=07 Cnt=01 Dev#= 4 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0bda ProdID=0111 Rev=11.37 S: Manufacturer=Generic S: Product=USB2.0-CRW S: SerialNumber=20021111153705700 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms |
From: Alan A. <fru...@gm...> - 2009-02-24 17:49:28
|
Hi, I have a IR Remote control that I'm writing a program for. I've run into a problem however. I handle the error that occurs if you unplug the device while the program is trying to read from, this drops the program into a loop waiting for the device to be replugged in. When the device is plugged in again, the program finds it but then crashes usually with this error: usb.USBError could not release intf 1: No such device The program works properly if the device is unplugged initially, and then plugged in after the program has started. I can post sections of code as requested, but it seems I'm doing things the same as most others form the code I've seen. Anyone have any ideas? Cheers, Alan |
From: Wander L. <wan...@gm...> - 2009-02-16 14:48:51
|
Hmmmm, I am sorry, I forgot, libusb under Windows is another project: libusb-win32.sf.net. I guess they will be more helpful regarding to this issue... 2009/2/13 David Portabella Clotet <dav...@gm...>: > Hello, > > I did not get any answer from the libusb mailing list. > > Can you please try this command and let me know what you get? > /usr/bin/cygcheck `/usr/bin/cygpath -w -a > /usr/lib/python2.5/site-packages/usb.dll` > > I get the following: > $ /usr/bin/cygcheck `/usr/bin/cygpath -w -a > /usr/lib/python2.5/site-packages/usb.dll` > C:\cygwin\lib\python2.5\site-packages\usb.dll > C:\cygwin\bin\cygwin1.dll > C:\WINDOWS\system32\ADVAPI32.DLL > C:\WINDOWS\system32\KERNEL32.dll > C:\WINDOWS\system32\ntdll.dll > C:\WINDOWS\system32\RPCRT4.dll > C:\WINDOWS\system32\Secur32.dll > Error: could not find cygusb0.dll > C:\cygwin\bin\libpython2.5.dll > > --- > Regards, > DAvid > > > > > On Fri, Feb 6, 2009 at 11:23 PM, David Portabella Clotet > <dav...@gm...> wrote: >> >> Just to let you know, I've send this email to the libusb mailing list. >> >> ---------- Forwarded message ---------- >> From: David Portabella Clotet <dav...@gm...> >> Date: Fri, Feb 6, 2009 at 11:14 PM >> Subject: libusb-win32 & pyusb-0.4.1 for cygwin >> To: lib...@li... >> >> >> Hello, >> >> I am having problems installing libusb and PyUSB for Cygwin. >> Based on the README file of pyusb, I follow the steps: >> >> -download and execute libusb-win32-filter-bin-0.1.12.1.exe from >> http://libusb-win32.sourceforge.net >> >> $ "/cygdrive/c/Program Files/LibUSB-Win32/bin/testlibusb.exe" >> Dev #0: 0000 - 0000 >> Dev #1: Maxtor - Basics Desktop >> Dev #2: 046D - 08B0 >> >> #libusb seems to work >> >> >> -install cygwin >> >> $ cp /cygdrive/c/Program\ Files/LibUSB-Win32/lib/gcc/libusb.a /usr/lib/ >> $ cp /cygdrive/c/Program Files/LibUSB-Win32/src/src/usb.h /usr/include/ >> >> -download http://sourceforge.net/projects/pyusb >> $ tar -xvzf pyusb-0.4.1.tar.gz >> $ cd pyusb-0.4.1 >> $ python setup.py install >> running install >> running build >> running build_ext >> running install_lib >> running install_egg_info >> Removing /usr/lib/python2.5/site-packages/pyusb-0.4.1-py2.5.egg-info >> Writing /usr/lib/python2.5/site-packages/pyusb-0.4.1-py2.5.egg-info >> >> $ ls -l /usr/lib/python2.5/site-packages/ >> total 2150 >> -rwxr-x---+ 1 Administrator Users 119 Dec 2 15:30 README >> ... >> -rw-r--r-- 1 David None 385 Jan 28 19:38 >> pyusb-0.4.1-py2.5.egg-info >> -rwxr-xr-x 1 David None 476414 Jan 26 21:21 usb.dll >> >> ++++++++++++++ >> So, the installation seems to work. >> However, I try with: >> >> $ cd /usr/lib/python2.5/site-packages/ >> $ echo "import usb" >test.py >> $ python test.py >> Traceback (most recent call last): >> File "test.py", line 1, in <module> >> >> import usb >> ImportError: No such file or directory >> >> >> Using ldd.sh for cygwin here: http://lassauge.free.fr/cygwin/archive.htm >> $ ldd.sh /usr/lib/python2.5/site-packages/usb.dll >> C:\cygwin\lib\python2.5\site-packages\usb.dll >> C:\cygwin\bin\cygwin1.dll >> C:\WINDOWS\system32\ADVAPI32.DLL >> C:\WINDOWS\system32\KERNEL32.dll >> C:\WINDOWS\system32\ntdll.dll >> C:\WINDOWS\system32\RPCRT4.dll >> C:\WINDOWS\system32\Secur32.dll >> Error: could not find cygusb0.dll >> C:\cygwin\bin\libpython2.5.dll >> >> It has a problem finding "cygusb0.dll". >> What can be the problem? >> >> >> Best regards, >> DAvid >> >> > > |
From: David P. C. <dav...@gm...> - 2009-02-14 00:14:30
|
Hello, I did not get any answer from the libusb mailing list. Can you please try this command and let me know what you get? /usr/bin/cygcheck `/usr/bin/cygpath -w -a /usr/lib/python2.5/site-packages/usb.dll` I get the following: $ /usr/bin/cygcheck `/usr/bin/cygpath -w -a /usr/lib/python2.5/site-packages/usb.dll` C:\cygwin\lib\python2.5\site-packages\usb.dll C:\cygwin\bin\cygwin1.dll C:\WINDOWS\system32\ADVAPI32.DLL C:\WINDOWS\system32\KERNEL32.dll C:\WINDOWS\system32\ntdll.dll C:\WINDOWS\system32\RPCRT4.dll C:\WINDOWS\system32\Secur32.dll Error: could not find cygusb0.dll C:\cygwin\bin\libpython2.5.dll --- Regards, DAvid On Fri, Feb 6, 2009 at 11:23 PM, David Portabella Clotet < dav...@gm...> wrote: > Just to let you know, I've send this email to the libusb mailing list. > > > ---------- Forwarded message ---------- > From: David Portabella Clotet <dav...@gm...> > Date: Fri, Feb 6, 2009 at 11:14 PM > Subject: libusb-win32 & pyusb-0.4.1 for cygwin > To: lib...@li... > > > Hello, > > I am having problems installing libusb and PyUSB for Cygwin. > Based on the README file of pyusb, I follow the steps: > > -download and execute libusb-win32-filter-bin-0.1.12.1.exe from > http://libusb-win32.sourceforge.net > > $ "/cygdrive/c/Program Files/LibUSB-Win32/bin/testlibusb.exe" > Dev #0: 0000 - 0000 > Dev #1: Maxtor - Basics Desktop > Dev #2: 046D - 08B0 > > #libusb seems to work > > > -install cygwin > > $ cp /cygdrive/c/Program\ Files/LibUSB-Win32/lib/gcc/libusb.a /usr/lib/ > $ cp /cygdrive/c/Program Files/LibUSB-Win32/src/src/usb.h /usr/include/ > > -download http://sourceforge.net/projects/pyusb > $ tar -xvzf pyusb-0.4.1.tar.gz > $ cd pyusb-0.4.1 > $ python setup.py install > running install > running build > running build_ext > running install_lib > running install_egg_info > Removing /usr/lib/python2.5/site-packages/pyusb-0.4.1-py2.5.egg-info > Writing /usr/lib/python2.5/site-packages/pyusb-0.4.1-py2.5.egg-info > > $ ls -l /usr/lib/python2.5/site-packages/ > total 2150 > -rwxr-x---+ 1 Administrator Users 119 Dec 2 15:30 README > ... > -rw-r--r-- 1 David None 385 Jan 28 19:38 > pyusb-0.4.1-py2.5.egg-info > -rwxr-xr-x 1 David None 476414 Jan 26 21:21 usb.dll > > ++++++++++++++ > So, the installation seems to work. > However, I try with: > > $ cd /usr/lib/python2.5/site-packages/ > $ echo "import usb" >test.py > $ python test.py > Traceback (most recent call last): > File "test.py", line 1, in <module> > > import usb > ImportError: No such file or directory > > > Using ldd.sh for cygwin here: http://lassauge.free.fr/cygwin/archive.htm > $ ldd.sh /usr/lib/python2.5/site-packages/usb.dll > C:\cygwin\lib\python2.5\site-packages\usb.dll > C:\cygwin\bin\cygwin1.dll > C:\WINDOWS\system32\ADVAPI32.DLL > C:\WINDOWS\system32\KERNEL32.dll > C:\WINDOWS\system32\ntdll.dll > C:\WINDOWS\system32\RPCRT4.dll > C:\WINDOWS\system32\Secur32.dll > Error: could not find cygusb0.dll > C:\cygwin\bin\libpython2.5.dll > > It has a problem finding "cygusb0.dll". > What can be the problem? > > > Best regards, > DAvid > > > |