On 24 Jul, Charles Lepple wrote:
> On Jul 20, 2012, at 5:57 PM, Don Lewis wrote:
> 
>> 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
> [...]
> 
>> 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
> [...]
>> This is what lsusb says:
>> Bus 001 Device 009: ID 0764:0005 Cyber Power System, Inc. Cyber Power UPS
> [...]
>>          wDescriptorLength      90
>>          Warning: incomplete report descriptor
>>          Report Descriptor: (length is 7)
> 
> The fact that the kernel is printing a timeout error means that something
> wrong is going on well before NUT tries to attach to the device.
> 
> What I would do is try to find an older Fedora live CD (or even a Knoppix
> one, if the kernel versions are close) and try to find the latest kernel
> which doesn't trigger that timeout error in dmesg. Or maybe it has been
> fixed in a later Fedora kernel - but I saw a 3.4 kernel mentioned in a
> Debian bug report with the same error message, so it's hard to say.
> 
> Hopefully lsusb will be able to retrieve the descriptors if the kernel
> doesn't trip over them, and if that works, NUT also stands a fair chance
> of reading the descriptors as well.

It may be a while before I can take the system down to experiment with
different kernel versions.

Most reports of the kernel timeout problem that I ran across in my
searches seemed to relate to a missing HID_QUIRK_NO_INIT_REPORTS quirk
for the device.

I did try replacing the USB cable, and bypassing the USB hub that I was
using by connecting the UPS directly to one of the USB ports on the
motherboard.  This didn't seem to make any difference.

Just for grins, I downloaded Cyberpower's PowerPanel for Linux and it is
able to find the UPS.

# pwrstat -status

The UPS information shows as following:

        Properties:
                Model Name................... PP1100
                Firmware Number.............. 1.610
                Rating Voltage............... 120 V
                Rating Power................. 700 Watt(1100 VA)

        Current UPS status:
                State........................ Normal
                Power Supply by.............. Utility Power
                Utility Voltage.............. 121 V
                Output Voltage............... 121 V
                Utility Frequency............ 60.0 Hz
                Battery Capacity............. 100 %
                Remaining Runtime............ 35 min.
                Load......................... 231 Watt(33 %)
                Line Interaction............. None
                Test Result.................. Unknown
                Last Power Event............. None


What is even more interesting is that after I kill pwrstatd, usbhid-ups
is able to detect the UPS and nut seems to function correctly.

#usbhid-ups -a mythups -DDDD
   0.000000     debug level is '4'
   0.001396     upsdrv_initups...
   0.233894     Checking device (05E3/0608) (001/002)
   0.234000     Failed to open device, skipping. (Permission denied)
   0.234011     Checking device (2040/4903) (001/003)
   0.234029     Failed to open device, skipping. (Permission denied)
   0.234038     Checking device (1D6B/0002) (001/001)
   0.234052     Failed to open device, skipping. (Permission denied)
   0.234060     Checking device (046D/C501) (001/004)
   0.234075     Failed to open device, skipping. (Permission denied)
   0.234083     Checking device (0471/0815) (001/005)
   0.234097     Failed to open device, skipping. (Permission denied)
   0.234105     Checking device (0472/0065) (005/002)
   0.234120     Failed to open device, skipping. (Permission denied)
   0.234128     Checking device (1D6B/0001) (005/001)
   0.234143     Failed to open device, skipping. (Permission denied)
   0.234152     Checking device (0472/0065) (005/003)
   0.234168     Failed to open device, skipping. (Permission denied)
   0.234177     Checking device (0764/0005) (006/002)
   0.244283     - VendorID: 0764
   0.244319     - ProductID: 0005
   0.244326     - Manufacturer: Cyber Power System
   0.244333     - Product: CPS RS232 USB BRIDGE for UPS
   0.244339     - Serial Number: unknown
   0.244345     - Bus: 006
   0.244350     Trying to match device
   0.244390     Device matches
   0.252293     HID descriptor, method 1: (9 bytes) => 09 21 10 01 21 01 22 5a 
00
   0.252314     i=0, extra[i]=09, extra[i+1]=21
   0.252328     HID descriptor, method 2: (9 bytes) => 09 21 10 01 21 01 22 5a 
00
   0.252334     HID descriptor length 90
   0.257285     Report Descriptor size = 90
   0.257314     Report Descriptor: (90 bytes) => 06 01 ff 09 1d a1 01 15 00 25 
04 75 08 95
   0.257337      01 09 02 b1 82 15 00 25 01 75 01 95 08 09 0d 09 0b 09 0a 09 0c 
09 08 09 09
   0.257357      09 01 09 07 b1 82 15 01 25 07 75 08 95 01 09 16 81 82 ff ff ff 
ff ff ff ff
   0.257378      09 18 81 82 15 01 25 07 95 01 09 15 91 82 15 00 26 ff 00 95 07 
09 17 91 82
   0.257384      c0
   0.257534     Using subdriver: CyberPower HID 0.3
   0.257551     Entering libusb_get_report
   0.259299     Report[get]: (2 bytes) => 01 0f
   0.259338     Path: ff01001d.ff010002, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 8, Value: 4
   0.259348     Report[buf]: (2 bytes) => 01 0f
   0.259361     Path: ff01001d.ff01000d, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259369     Report[buf]: (2 bytes) => 01 0f
   0.259381     Path: ff01001d.ff01000b, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259389     Report[buf]: (2 bytes) => 01 0f
   0.259401     Path: ff01001d.ff01000a, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259408     Report[buf]: (2 bytes) => 01 0f
   0.259420     Path: ff01001d.ff01000c, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259428     Report[buf]: (2 bytes) => 01 0f
   0.259439     Path: ff01001d.ff010008, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259446     Report[buf]: (2 bytes) => 01 0f
   0.259458     Path: ff01001d.ff010009, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259466     Report[buf]: (2 bytes) => 01 0f
   0.259477     Path: ff01001d.ff010001, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259484     Report[buf]: (2 bytes) => 01 0f
   0.259496     Path: ff01001d.ff010007, Type: Feature, ReportID: 0x00, Offset: 
0, Size: 1, Value: 1
   0.259503     Report[buf]: (2 bytes) => 01 0f
   0.259515     Path: ff01001d.ff010016, Type: Input, ReportID: 0x00, Offset: 
0, Size: 8, Value: 7
Network UPS Tools - Generic HID driver 0.37 (2.6.4)
USB communication driver 0.31
   0.259552     Report descriptor retrieved (Reportlen = 90)
   0.259559     Found HID device
   0.259565     Detected a UPS: Cyber Power System/CPS RS232 USB BRIDGE for UPS
   0.259600     string_to_path: depth = 3
   0.259640     string_to_path: depth = 3
   0.259664     string_to_path: depth = 3
   0.259682     string_to_path: depth = 3
   0.259703     string_to_path: depth = 3
   0.259731     string_to_path: depth = 3
   0.259751     string_to_path: depth = 3
   0.259763     string_to_path: depth = 3
   0.259775     string_to_path: depth = 3
   0.259787     string_to_path: depth = 3
   0.259801     string_to_path: depth = 3
   0.259815     string_to_path: depth = 3
   0.259827     string_to_path: depth = 3
   0.259841     string_to_path: depth = 3
   0.259854     string_to_path: depth = 3
   0.259868     string_to_path: depth = 3
   0.259881     string_to_path: depth = 3
   0.259894     string_to_path: depth = 3
   0.259917     string_to_path: depth = 4
   0.259938     string_to_path: depth = 4
   0.259958     string_to_path: depth = 4
   0.259978     string_to_path: depth = 4
   0.259998     string_to_path: depth = 4
   0.260017     string_to_path: depth = 4
   0.260032     string_to_path: depth = 3
   0.260046     string_to_path: depth = 3
   0.260059     string_to_path: depth = 3
   0.260069     string_to_path: depth = 3
   0.260082     string_to_path: depth = 3
   0.260095     string_to_path: depth = 3
   0.260154     string_to_path: depth = 3
   0.260169     string_to_path: depth = 3
   0.260182     string_to_path: depth = 3
   0.260195     string_to_path: depth = 3
   0.260208     string_to_path: depth = 3
   0.260221     string_to_path: depth = 3
   0.260234     string_to_path: depth = 3
   0.260247     string_to_path: depth = 3
   0.260260     string_to_path: depth = 3
   0.260275     string_to_path: depth = 3
   0.260289     string_to_path: depth = 3
   0.260302     string_to_path: depth = 3
   0.260316     string_to_path: depth = 3
   0.260330     string_to_path: depth = 3
   0.260342     find_nut_info: unknown info type: load.off.delay
   0.260353     find_nut_info: unknown info type: load.on.delay
   0.260363     find_nut_info: unknown info type: load.off.delay
   0.260385     upsdrv_initinfo...
   0.260401     upsdrv_updateinfo...
   0.513333     libusb_get_interrupt: Connection timed out
   0.513372     Got 0 HID objects...
   0.513382     Quick update...
   0.513782     dstate_init: sock /var/run/nut/usbhid-ups-mythups open on fd 8
   0.513820     upsdrv_updateinfo...
   0.766302     libusb_get_interrupt: Connection timed out
   0.766337     Got 0 HID objects...
   0.766347     Quick update...
   2.517778     upsdrv_updateinfo...
   2.770224     libusb_get_interrupt: Connection timed out
   2.770255     Got 0 HID objects...
   2.770265     Quick update...
   4.521723     upsdrv_updateinfo...
   4.773137     libusb_get_interrupt: Connection timed out
   4.773165     Got 0 HID objects...
   4.773175     Quick update...
   6.525667     upsdrv_updateinfo...
   6.777085     libusb_get_interrupt: Connection timed out
   6.777119     Got 0 HID objects...
   6.777129     Quick update...
   8.529590     upsdrv_updateinfo...
   8.781020     libusb_get_interrupt: Connection timed out
   8.781056     Got 0 HID objects...
   8.781067     Quick update...
  10.533552     upsdrv_updateinfo...
  10.785837     libusb_get_interrupt: Connection timed out
  10.785877     Got 0 HID objects...
  10.785889     Quick update...
  12.536493     upsdrv_updateinfo...
  12.788880     libusb_get_interrupt: Connection timed out
  12.788921     Got 0 HID objects...
  12.788932     Quick update...
  14.540418     upsdrv_updateinfo...
  14.792812     libusb_get_interrupt: Connection timed out
  14.792856     Got 0 HID objects...
  14.792867     Quick update...
  16.544363     upsdrv_updateinfo...
  16.796734     libusb_get_interrupt: Connection timed out
  16.796778     Got 0 HID objects...
  16.796789     Quick update...
  18.548306     upsdrv_updateinfo...
  18.800672     libusb_get_interrupt: Connection timed out
  18.800712     Got 0 HID objects...
  18.800723     Quick update...


# /sbin/upsdrvctl start
Network UPS Tools - UPS driver controller 2.6.4
Network UPS Tools - Generic HID driver 0.37 (2.6.4)
USB communication driver 0.31
Using subdriver: CyberPower HID 0.3
# upsc mythups@localhost
device.mfr: Cyber Power System
device.model: CPS RS232 USB BRIDGE for UPS
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.version: 2.6.4
driver.version.data: CyberPower HID 0.3
driver.version.internal: 0.37
ups.mfr: Cyber Power System
ups.model: CPS RS232 USB BRIDGE for UPS
ups.productid: 0005
ups.status: OB
ups.vendorid: 0764

# lsusb -v
[snip]
Bus 006 Device 003: 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 Cyber Power System
  iProduct                1 CPS RS232 USB BRIDGE for UPS
  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
         Report Descriptors: 
           ** UNAVAILABLE **
      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              10
Device Status:     0x0000
  (Bus Powered)


If I unplug the USB cable and plug it back in, usbhid-ups stops working
until I start and stop pwrstatd.


_______________________________________________
Nut-upsuser mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsuser

Reply via email to