[Nut-upsuser] Confusing Generic USB UPS cannot be matched

Arnaud Quette aquette.dev at gmail.com
Tue Nov 22 08:51:38 UTC 2011


Hi Geoff,

2011/11/21 R. G. Newbury <newbury at mandamus.org>:
> I was dropping off junk at the waste transfer station and scarfed a UPS out
> of the pile of old TV's and VCR's. It was in good physical condition and as
> I expected, the battery was toast. A new RBC-2 battery restored it to
> working condition. Then I tried to get it to talk to some software. And I am
> having no luck.
>
> The unit is branded as a Nexxtech Model 6118507 650VA imported into Canada
> for Orbyx Electronics LLC. Nexxtech is a house brand for 'The Source'
> ex-Radio Shack in Canada.
> It has a red LCD display on the front and has the same physical layout as
> some of the smaller APC BackUPS and CyberPower units. However trying the
> powerpanel and APC specific drivers was fruitless.
> The unit is 6" high x 4" wide by 12" deep. It has 3 UPS outlets plus 3 surge
> protected outlets and a USB port.
>
> I am running Fedora 14 2.6.35.14-96.fc14.x86_64 with
> nut-2.6.2-1.fc14.x86_64.rpm from the Fedora repo
>
> I strongly suspect that this unit was made in China ( by MEC??) and branded
> in various different ways (the 'Fry's Electronics' report is a but of a
> giveaway! especially as there are no Fry's in Canada). A thread on this list
> from 2006 had the same reported data Vendor/Product id but a different
> branding. Unfortunately that thread had no resolution.
>
> Due to the fact that this unit does not seem to report itself correctly
> there is a possibility that it cannot be made 'intelligent'. But I'd like to
> try, first.
>
> I have installed nut and done the usual things. The unit is almost 'there',
> but not quite. I have trolled through the FAQ and the list but nothing
> (except that one thread) seem to deal with this.
>
> Details:
>
> dmesg
> [   13.690421] usb 4-4: New USB device found, idVendor=0001, idProduct=0000
>             #This is clearly bogus, and is what was reported in the 2006
> thread
> [   13.690667] usb 4-4: New USB device strings: Mfr=1, Product=2,
> SerialNumber=0
> [   13.690909] usb 4-4: Product: MEC0002
> [   13.691164] usb 4-4: Manufacturer: MEC
> [   13.722779] generic-usb 0003:0001:0000.0003: hiddev97,hidraw2: USB HID
> v1.00 Device [MEC MEC0002] on usb-0000:00:06.0-4/input0
>
>
> lsusb -vv
> # not much more info than dmesg, and it fails to discover the manufacturer!
>
> Bus 004 Device 002: ID 0001:0000 Fry's Electronics
> Device Descriptor:
>  bLength                18
>  bDescriptorType         1
>  bcdUSB               1.00
>  bDeviceClass            0 (Defined at Interface level)
>  bDeviceSubClass         0
>  bDeviceProtocol         0
>  bMaxPacketSize0         8
>  idVendor           0x0001 Fry's Electronics
>  idProduct          0x0000
>  bcdDevice            1.00
>  iManufacturer           1
>  iProduct                2
>  iSerial                 0
>  bNumConfigurations      1
>  Configuration Descriptor:
>    bLength                 9
>    bDescriptorType         2
>    wTotalLength           34
>    bNumInterfaces          1
>    bConfigurationValue     1
>    iConfiguration          0
>    bmAttributes         0x80
>      (Bus Powered)
>    MaxPower              100mA
>    Interface Descriptor:
>      bLength                 9
>      bDescriptorType         4
>      bInterfaceNumber        0
>      bAlternateSetting       0
>      bNumEndpoints           1
>      bInterfaceClass         3 Human Interface Device
>      bInterfaceSubClass      0 No Subclass
>      bInterfaceProtocol      0 None
>      iInterface              0
>        HID Device Descriptor:
>          bLength                 9
>          bDescriptorType        33
>          bcdHID               1.00
>          bCountryCode            0 Not supported
>          bNumDescriptors         1
>          bDescriptorType        34 Report
>          wDescriptorLength     624
>         Report Descriptors:
>           ** UNAVAILABLE **
>      Endpoint Descriptor:
>        bLength                 7
>        bDescriptorType         5
>        bEndpointAddress     0x81  EP 1 IN
>        bmAttributes            3
>          Transfer Type            Interrupt
>          Synch Type               None
>        Package Type               Data
>        wMaxPacketSize     0x0008  1x 8 bytes
>        bInterval              10
> Device Status:     0x0000
>  (Bus Powered)
>
>
> Check on the install by restarting the daemon:
> It's all down to the driver.
>
> # service ups restart
> Stopping UPS monitor:                                      [  OK  ]
> Stopping upsd:                                             [  OK  ]
> Shutting down UPS driver controller:                       [FAILED]
> Starting UPS driver controller:                            [FAILED]
> Starting upsd:                                             [  OK  ]
> Starting UPS monitor:                                      [  OK  ]
>
> Using usbhid-ups  (tried others, without result)
>
>
> # cat ups.conf
> <snip>
>  [nexxtech]
>        driver = usbhid-ups
>        vendorid = 0001
>        productid = 0000
>        port = /dev/bus/usb/004/004
> #       port = AUTO             #per the documentation these made
> #       port = /dev/usb/hiddev0 # no difference
>        desc = "Nexxtech UPS"
>
>
>
> Made sure the user/group settings are correct.
> # cat upsd.user
> <snip>
>        [nut]
>                password = nutpass
>                upsmon master
>
> # cat upsmon.conf
> <snip>
> MONITOR nexxtech at localhost 1 nut nutpass master
> <snip>
>
>
> And this is what I get for my pains (same with user 'nut'):
>
> # usbhid-ups -DD -u root -x vendorid=0001 -a nexxtech
> Network UPS Tools - Generic HID driver 0.35 (2.6.2)
> USB communication driver 0.31
>   0.000000     debug level is '2'
>   0.001663     upsdrv_initups...
>   0.084295     Checking device (0001/0000) (004/004)
>   2.088358     - VendorID: 0001
>   2.088416     - ProductID: 0000
>   2.088442     - Manufacturer: unknown
>   2.088467     - Product: unknown
>   2.088491     - Serial Number: unknown
>   2.088516     - Bus: 004
>   2.088541     Trying to match device
>   2.088614     Device does not match - skipping
>
> I have NO idea why the Device does not match... but then I am not sure what
> is is attempting to match. The installation is fine: upsd reports
> periodically that it cannot communicate with the unit..
>
>
> So what is the driver trying to match against? And can I amend any settings
> to make it match? Can I provide any more info.

as per your info (VID:PID), your device is not HID compliant and the
driver should be blazer_usb.
"port = auto" is still needed, though you can put any value you want
(field not considered).

cheers,
Arnaud
-- 
Linux / Unix Expert R&D - Eaton - http://powerquality.eaton.com
Network UPS Tools (NUT) Project Leader - http://www.networkupstools.org/
Debian Developer - http://www.debian.org
Free Software Developer - http://arnaud.quette.free.fr/



More information about the Nut-upsuser mailing list