Skip to content

Commit a6b29f3

Browse files
committed
docs/FAQ.txt: suggest checking Linux USB HID Quirk [#630]
1 parent 9248fd0 commit a6b29f3

2 files changed

Lines changed: 57 additions & 1 deletion

File tree

docs/FAQ.txt

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -624,6 +624,55 @@ There is a rudimentary locking mechanism in NUT, but there is a chance that the
624624
packages might not use the same directory as the NUT default, and the conflict
625625
will be reported by the kernel.
626626

627+
== Why does my (Eaton 5E) USB UPS on Linux connect but quickly disconnects soon?
628+
629+
This issue was extensively investigated by NUT community members in
630+
https://github.com/networkupstools/nut/issues/630 and resulted in a
631+
chain of distribution bugs logged such as
632+
https://bugzilla.redhat.com/show_bug.cgi?id=1715504
633+
634+
The gist of it is that some versions of Linux kernel used an "USB HID quirk"
635+
for certain devices, see Linux kernel source `drivers/hid/hid-quirks.c` file,
636+
including MGE/Eaton vendor ID (0x0463) based on an older device a contributor
637+
had issues with. Firmware in newer devices no longer had the bug which needed
638+
the "quirk" and misbehaved when it was enabled. While newer (and much older)
639+
Linux kernels should not have the problem, with the quirk removed according
640+
to https://lkml.org/lkml/2018/11/26/580 having the issue in the field really
641+
depends on the combination of Linux kernel and device firmware that meet.
642+
643+
Either way, it seems that problematic combinations preclude Linux from seeing
644+
the device as a `hid-generic` first, to hand it over to a NUT driver.
645+
646+
This quirk can be tuned with a kernel boot parameter (via GRUB etc.):
647+
648+
usbhid.quirks=0x0463:0xffff:0x08
649+
650+
to re-enable the NOGET quirk.
651+
652+
For context, according to https://bugzilla.redhat.com/show_bug.cgi?id=1875532
653+
the symptoms for the problem look like this:
654+
655+
# Plug in the UPS and observe the dmesg logs,
656+
# the following continuously appears:
657+
[ 93.568082] usb 1-6: new full-speed USB device number 9 using xhci_hcd
658+
[ 94.311469] usb 1-6: New USB device found, idVendor=0463, idProduct=ffff, bcdDevice= 0.01
659+
[ 94.311475] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=0
660+
[ 94.311483] usb 1-6: Product: 5E
661+
[ 94.311486] usb 1-6: Manufacturer: EATON
662+
[ 96.269989] hid-generic 0003:0463:FFFF.000A: hiddev96,hidraw2: USB HID v1.10 Device [EATON 5E] on usb-0000:00:14.0-6/input0
663+
[ 107.369425] hid-generic 0003:0463:FFFF.000A: usb_submit_urb(ctrl) failed: -1
664+
[ 107.369469] hid-generic 0003:0463:FFFF.000A: timeout initializing reports
665+
[ 112.828826] usb 1-6: USB disconnect, device number 9
666+
[ 113.284452] usb 1-6: new full-speed USB device number 10 using xhci_hcd
667+
[ 114.027693] usb 1-6: New USB device found, idVendor=0463, idProduct=ffff, bcdDevice= 0.01
668+
[ 114.027698] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=0
669+
[ 114.027701] usb 1-6: Product: 5E
670+
[ 114.027704] usb 1-6: Manufacturer: EATON
671+
[ 115.984222] hid-generic 0003:0463:FFFF.000B: hiddev96,hidraw2: USB HID v1.10 Device [EATON 5E] on usb-0000:00:14.0-6/input0
672+
[ 126.825756] hid-generic 0003:0463:FFFF.000B: usb_submit_urb(ctrl) failed: -1
673+
[ 126.825775] hid-generic 0003:0463:FFFF.000B: timeout initializing reports
674+
[ 132.527809] usb 1-6: USB disconnect, device number 10
675+
627676
== Why doesn't my package work?
628677

629678
Or a variation like...

docs/nut.dict

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
personal_ws-1.1 en 2903 utf-8
1+
personal_ws-1.1 en 2910 utf-8
22
AAS
33
ABI
44
ACFAIL
@@ -697,6 +697,7 @@ NOAUTH
697697
NOCOMM
698698
NOCOMMWARNTIME
699699
NOCONF
700+
NOGET
700701
NOMBATTV
701702
NOMINV
702703
NOMOUTV
@@ -1081,6 +1082,7 @@ SendEnv
10811082
Senoidal
10821083
Sep
10831084
Sequentializing
1085+
SerialNumber
10841086
Serv
10851087
Shara
10861088
Shaul
@@ -1627,6 +1629,7 @@ csh
16271629
cshdelay
16281630
css
16291631
cts
1632+
ctrl
16301633
ctypes
16311634
cua
16321635
cuaa
@@ -1863,11 +1866,13 @@ hardcoded
18631866
hasFeature
18641867
hb
18651868
hcl
1869+
hcd
18661870
hg
18671871
hh
18681872
hibernate's
18691873
hiddev
18701874
hidparser
1875+
hidraw
18711876
hidtypes
18721877
hidups
18731878
highbattery
@@ -2788,6 +2793,7 @@ upstype
27882793
upsuser
27892794
upswired
27902795
uptime
2796+
urb
27912797
urpmi
27922798
usb
27932799
usbconfig
@@ -2878,6 +2884,7 @@ xfff
28782884
xffff
28792885
xfmrresistance
28802886
xh
2887+
xhci
28812888
xhtml
28822889
xmalloc
28832890
xml

0 commit comments

Comments
 (0)