[Nut-upsuser] usbhid-ups not finding CyberPower PP1100 on Fedora 16

Don Lewis dl-nut at catspoiler.org
Fri Jul 20 21:57:30 UTC 2012


I'm trying to get a CyberPower PP1100 working with NUT on a Fedora 16
system and not having much luck.

Kernel:
	3.4.4-4.fc16.x86_64 #1 SMP Thu Jul 5 20:01:38 UTC 2012 x86_64
                x86_64 x86_64 GNU/Linux

NUT (installed from Fedora RPM):
	nut-client-2.6.4-1.fc16.x86_64
	nut-2.6.4-1.fc16.x86_64

libusb:
	libusb-devel-0.1.3-9.fc16.x86_64
	libusb1-1.0.9-0.6.rc1.fc16.x86_64
	libusb-0.1.3-9.fc16.x86_64
	libusb1-1.0.9-0.6.rc1.fc16.i686
	libusb-0.1.3-9.fc16.i686

This is what shows up in /var/log/messages when I connect the UPS:
Jul 20 13:41:13 myth2 kernel: [ 9601.818420] usb 1-2.4: new low-speed USB device number 9 using ehci_hcd
Jul 20 13:41:13 myth2 kernel: [ 9601.907382] usb 1-2.4: New USB device found, idVendor=0764, idProduct=0005
Jul 20 13:41:13 myth2 kernel: [ 9601.907390] usb 1-2.4: New USB device strings: Mfr=3, Product=1, SerialNumber=0
Jul 20 13:41:13 myth2 kernel: [ 9601.907398] usb 1-2.4: Product: CPS RS232 USB BRIDGE for UPS
Jul 20 13:41:13 myth2 kernel: [ 9601.907404] usb 1-2.4: Manufacturer: Cyber Power System
Jul 20 13:41:23 myth2 kernel: [ 9611.897362] generic-usb 0003:0764:0005.0006: usb_submit_urb(ctrl) failed: -1
Jul 20 13:41:23 myth2 kernel: [ 9611.897698] generic-usb 0003:0764:0005.0006: timeout initializing reports
Jul 20 13:41:23 myth2 kernel: [ 9611.898382] generic-usb 0003:0764:0005.0006: hiddev0,hidraw2: USB HID v1.10 Device [Cyber Power System CPS RS232 USB BRIDGE for UPS] on usb-0000:00:12.2-2.4/input0
Jul 20 13:41:23 myth2 mtp-probe: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:12.2/usb1/1-2/1-2.4"
Jul 20 13:41:23 myth2 mtp-probe: bus: 1, device: 9 was not an MTP device


This is what lsusb says:
Bus 001 Device 009: ID 0764:0005 Cyber Power System, Inc. Cyber Power UPS
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0764 Cyber Power System, Inc.
  idProduct          0x0005 Cyber Power UPS
  bcdDevice            4.00
  iManufacturer           3 
  iProduct                1 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower               20mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode           33 US
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      90
          Warning: incomplete report descriptor
          Report Descriptor: (length is 7)
            Item(Main  ): (null), data=none
            Item(Main  ): (null), data= [ 0x00 ] 0
            Item(Main  ): (null), data=none
            Item(Main  ): (null), data=none
            Item(Main  ): (null), data=none
            Item(Main  ): (null), data=none
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
Device Status:     0x0001
  Self Powered


usbhid-ups says this:
# usbhid-ups -a mythups -DDDD
Network UPS Tools - Generic HID driver 0.37 (2.6.4)
USB communication driver 0.31
   0.000000	debug level is '4'
   0.001577	upsdrv_initups...
   0.289846	Checking device (05E3/0608) (001/002)
   0.289994	Failed to open device, skipping. (Permission denied)
   0.290038	Checking device (2040/4903) (001/003)
   0.290184	Failed to open device, skipping. (Permission denied)
   0.290265	Checking device (1D6B/0002) (001/001)
   0.290378	Failed to open device, skipping. (Permission denied)
   0.290467	Checking device (046D/C501) (001/004)
   0.290514	Failed to open device, skipping. (Permission denied)
   0.290613	Checking device (0471/0815) (001/005)
   0.290722	Failed to open device, skipping. (Permission denied)
   0.290804	Checking device (0764/0005) (001/009)
   2.293012	- VendorID: 0764
   2.293090	- ProductID: 0005
   2.293124	- Manufacturer: unknown
   2.293213	- Product: unknown
   2.293247	- Serial Number: unknown
   2.293303	- Bus: 001
   2.293377	Trying to match device
   2.293638	Device matches
   2.294959	HID descriptor too short (expected 8, got 0)
   2.295004	i=0, extra[i]=09, extra[i+1]=21
   2.295037	HID descriptor, method 2: (9 bytes) => 09 21 10 01 21 01 22 5a 00
   2.295051	HID descriptor length 90
   6.297914	Unable to get Report descriptor: Connection timed out
   6.298055	Checking device (0472/0065) (005/002)
   6.298126	Failed to open device, skipping. (Permission denied)
   6.298164	Checking device (1D6B/0001) (005/001)
   6.298210	Failed to open device, skipping. (Permission denied)
   6.298247	Checking device (0472/0065) (005/003)
   6.298290	Failed to open device, skipping. (Permission denied)
   6.298348	Checking device (1D6B/0002) (002/001)
   6.298411	Failed to open device, skipping. (Permission denied)
   6.298448	Checking device (1D6B/0001) (003/001)
   6.298552	Failed to open device, skipping. (Permission denied)
   6.298631	Checking device (1D6B/0001) (004/001)
   6.298684	Failed to open device, skipping. (Permission denied)
   6.298851	Checking device (1D6B/0001) (006/001)
   6.298916	Failed to open device, skipping. (Permission denied)
   6.298995	Checking device (1D6B/0001) (007/001)
   6.299048	Failed to open device, skipping. (Permission denied)
   6.299118	No appropriate HID device found
   6.299164	No matching HID UPS found

The permissions of the USB device seem to be correct according to the
udev rule:
# ls -l /dev/bus/usb/001/
total 0
crw-rw-r--. 1 root root    189, 0 Jul 20 14:33 001
crw-rw-r--. 1 root root    189, 1 Jul 20 14:33 002
crw-rw-r--. 1 root root    189, 2 Jul 20 14:33 003
crw-rw-r--. 1 root root    189, 3 Jul 20 14:36 004
crw-rw-r--. 1 root root    189, 4 Jul 20 14:33 005
crw-rw-r--. 1 root dialout 189, 8 Jul 20 14:34 009

If I run with usbhid-ups with the -u root option, I get similar output,
except that it is able to open and discard the other USB devices without
getting the Permission denied errors.

I saw a report of a similar problem here:
<http://lists.alioth.debian.org/pipermail/nut-upsuser/2007-October/003259.html>
but there isn't enough info for me to solve this problem.

I don't think there is another driver bound to this device and if I try
to force an unbind:
# echo >
/sys/devices/pci0000:00/0000:00:12.2/usb1/1-2/1-2.4/driver/unbind
-bash: echo: write error: No such device




More information about the Nut-upsuser mailing list