usbhid-ups not behaving with Tripplite UPS
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
nut (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: nut
I am currently running gutsy on my server (pending enough time for a full upgrade to hardy), but have upgraded nut to the hardy deb package (2.2.1-2.1ubuntu7).
I have a TrippLite UPS that says on the box: OMNIPLUS1000LCD. Linux sees it fine as a HID device, and this version of nut will recognize it when using usbhid-ups. However, upsd can't use it, and manually running the usbhid-ups driver at debug level 1 showed me something that led me to a conclusion... It's stuck in an infinite loop.
lsusb reports:
Bus 001 Device 003: ID 09ae:2007 Tripp Lite
/etc/nut/ups.conf:
[tripplite]
driver = usbhid-ups
port = auto
vendorid = 09ae
productid = 2007
when running /lib/nut/usbhid-ups -D -a tripplite :
debug level is '1'
upsdrv_initups...
Using subdriver: TrippLite HID 0.2 (experimental)
Path: UPS.PowerSummar
<<SNIP TO END OF SECTION>>
Path: UPS.OutletSyste
Detected a UPS: Tripp Lite /TRIPP LITE UPS
upsdrv_initinfo...
upsdrv_
Got 8 HID objects...
NUT doesn't use this HID object
NUT doesn't use this HID object
NUT doesn't use this HID object
Got 1 HID objects...
Got 1 HID objects...
Got 8 HID objects...
<<SNIP>>
It goes on like this indefinitely. It also doesn't seem to reach line 755 in usbhid-ups.c (line number from 2.2.1 tagged in svn in case it has moved):
upsdebugx(1, "took %.3f seconds handling interrupt reports...\n", interval());
I noticed in the change logs for 2.2.2:
Tue Apr 22 17:58:12 UTC 2008 / Arjen de Korte <email address hidden>
- drivers/usbhid-ups: only check once for input reports in
upsdrv_
driver (some Tripplite units will generate one each time you
ask them) [ backported r1450 ]
So I guess the end result is: this bug may be fixed in the upstream, but ubuntu doesn't have the fix in yet? I also noticed that intrepid is so far using the same version as hardy.
2008/6/11 Gavin Hurlbut <email address hidden>:
> ...
> Tue Apr 22 17:58:12 UTC 2008 / Arjen de Korte <email address hidden>
>
> - drivers/usbhid-ups: only check once for input reports in
> upsdrv_updateinfo() to prevent lockups if the UPS floods the
> driver (some Tripplite units will generate one each time you
> ask them) [ backported r1450 ]
>
I don't recall the exact history, and Arjen will soon be on paternity
vacation, so I don't want to bother him too much. But it seems you found the
solution.
To validate this, you can try the sid package: packages. debian. org/sid/ nut
http://
only x86 and amd64 are available ATM.
So I guess the end result is: this bug may be fixed in the upstream,
> but ubuntu doesn't have the fix in yet? I also noticed that intrepid is
> so far using the same version as hardy.
>
nut 2.2.2 is entering Sid.
a sync has to be requested for Intrepid...
Arnaud