networkupstools / nut

The Network UPS Tools repository. UPS management protocol Informational RFC 9271 published by IETF at https://www.rfc-editor.org/info/rfc9271 Please star NUT on GitHub, this helps with sponsorships!
https://networkupstools.org/
Other
1.99k stars 349 forks source link

NUT driver usbhid-ups for EATON 5E650iUSB does not work on CENTOS 6.1 #630

Closed paclik closed 2 weeks ago

paclik commented 5 years ago

When I try to load driver for eaton device I am not successful. You can see result of debug messages below. The same device I tried on Xubuntu distro and it worked properly. However I even tried compile binary from git sources on my Centos distro. I was able to run last version nevertheless the result looked the same. *

OS name and version, CentOS release 6.10 (Final) Linux 2.6.32-754.3.5.el6.centos.plus.x86_64 #1 SMP Wed Aug 15 02:28:38 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

exact NUT version Name : nut Arch : x86_64 Version : 2.6.5 Release : 2.el6 Size : 4.2 M Repo : installed

From repo : epel Summary : Network UPS Tools URL : http://www.networkupstools.org/ usbhid-ups --version Network UPS Tools - Generic HID driver 0.37 (2.6.5)

NUT installation method: from source tarball, package or Subversion, Installation from package yum install nut

exact device name and related information (manufacturing date, web pointers, …), EATON 5E650iUSB MFG P/N: 9C00-43348 Ver:00, Bar code: P462H31DN9

complete problem description, with any relevant traces, like system log excerpts, and driver debug output. You can obtain the latter using the following command, as root and after having stopped NUT:

When I try to load driver for eaton device I am not successful. You can see result of debug messages below. The same device I tried on Xubuntu distro and it worked properly. However I even triedcompile binary from git resources on my Centos distro. I was able to run last version nevertheless the result looked the same.

//sbin/usbhid-ups -DDDD -u root -a eaton Network UPS Tools - Generic HID driver 0.37 (2.6.5) USB communication driver 0.31 0.000000 debug level is '4' 0.001138 upsdrv_initups... 0.001456 Checking device (0458/003A) (001/062) 0.003549 - VendorID: 0458 0.003558 - ProductID: 003a 0.003562 - Manufacturer: Genius 0.003566 - Product: Optical Mouse 0.003570 - Serial Number: unknown 0.003574 - Bus: 001 0.003578 Trying to match device 0.003593 Device does not match - skipping 0.003601 Checking device (0463/FFFF) (001/041) 0.004551 - VendorID: 0463 0.004560 - ProductID: ffff 0.004564 - Manufacturer: unknown 0.004568 - Product: unknown 0.004572 - Serial Number: unknown 0.004576 - Bus: 001 0.004579 Trying to match device 0.004584 Device matches 0.005551 Unable to get HID descriptor (error sending control message: Broken pipe) 0.005560 i=0, extra[i]=09, extra[i+1]=21 0.005567 HID descriptor, method 2: (9 bytes) => 09 21 10 01 21 01 22 25 02 0.005572 HID descriptor length 549 0.006046 Unable to get Report descriptor: Broken pipe 0.006066 Checking device (040B/2000) (001/003) 0.010033 - VendorID: 040b 0.010042 - ProductID: 2000 0.010046 - Manufacturer: Generic 0.010050 - Product: USB Keyboard 0.010054 - Serial Number: unknown 0.010058 - Bus: 001 0.010061 Trying to match device 0.010066 Device does not match - skipping 0.010073 Checking device (8087/0024) (001/002) 0.010086 - VendorID: 8087 0.010090 - ProductID: 0024 0.010094 - Manufacturer: unknown 0.010097 - Product: unknown 0.010101 - Serial Number: unknown 0.010104 - Bus: 001 0.010107 Trying to match device 0.010111 Device does not match - skipping 0.010116 Checking device (1D6B/0002) (001/001) 0.010136 - VendorID: 1d6b 0.010140 - ProductID: 0002 0.010143 - Manufacturer: Linux 2.6.32-754.3.5.el6.centos.plus.x86_64 ehci_hcd 0.010147 - Product: EHCI Host Controller 0.010150 - Serial Number: 0000:00:1a.0 0.010154 - Bus: 001 0.010157 Trying to match device 0.010161 Device does not match - skipping 0.010165 No appropriate HID device found 0.010169 No matching HID UPS found

lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 003: ID 040b:2000 Weltrend Semiconductor Bus 001 Device 023: ID 0463:ffff MGE UPS Systems UPS Bus 001 Device 025: ID 0458:003a KYE Systems Corp. (Mouse Systems) NetScroll+ Mini Traveler / Genius NetScroll 120

after conecting USB cable usb-devices | grep -A 3 -B 3 EATON T: Bus=01 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 29 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0463 ProdID=ffff Rev=00.01 S: Manufacturer=EATON S: Product=5E C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=20mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid

after calling usbhi-ups usb-devices | grep -A 3 -B 3 EATON T: Bus=01 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 23 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0463 ProdID=ffff Rev=00.01 S: Manufacturer=EATON S: Product=5E C: #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=20mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=(none)

dmeg # after inserting usb cabel usb 1-1.2: new low speed USB device number 41 using ehci_hcd usb 1-1.2: New USB device found, idVendor=0463, idProduct=ffff usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 1-1.2: Product: 5E usb 1-1.2: Manufacturer: EATON usb 1-1.2: configuration #1 chosen from 1 choice

dmesg #after command /sbin/usbhid-ups -DDDD -u nut -a eaton

drivers/hid/usbhid/hid-core.c: usb_submit_urb(ctrl) failed generic-usb 0003:0463:FFFF.16BC: timeout initializing reports generic-usb 0003:0463:FFFF.16BC: hiddev96,hidraw3: USB HID v1.10 Device [EATON 5E] on usb-0000:00:1a.0-1.2/input0 usb 1-1.5: USB disconnect, device number 40 usb 1-1.5: new low speed USB device number 42 using ehci_hcd usb 1-1.5: New USB device found, idVendor=0458, idProduct=003a usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 1-1.5: Product: Optical Mouse usb 1-1.5: Manufacturer: Genius usb 1-1.5: configuration #1 chosen from 1 choice input: Genius Optical Mouse as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/input/input5796 generic-usb 0003:0458:003A.16BD: input,hidraw2: USB HID v1.11 Mouse [Genius Optical Mouse] on usb-0000:00:1a.0-1.5/input0 usb 1-1.5: USB disconnect, device number 42 usb 1-1.5: new low speed USB device number 43 using ehci_hcd usb 1-1.2: usbfs: USBDEVFS_CONTROL failed cmd usbhid-ups rqt 128 rq 6 len 255 ret -110 usb 1-1.5: New USB device found, idVendor=0458, idProduct=003a usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 1-1.5: Product: Optical Mouse usb 1-1.5: Manufacturer: Genius usb 1-1.5: configuration #1 chosen from 1 choice input: Genius Optical Mouse as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/input/input5797 generic-usb 0003:0458:003A.16BE: input,hidraw2: USB HID v1.11 Mouse [Genius Optical Mouse] on usb-0000:00:1a.0-1.5/input0

cat /etc/udev/rules.d/92-nut-eaton.rules ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="0463", ATTR{idProduct}=="ffff", MODE="0666", GROUP="nut"

lsusb |grep UPS Bus 001 Device 041: ID 0463:ffff MGE UPS Systems UPS

ls -al /dev/bus/usb/001/041 crw-rw-rw-. 1 root nut 189, 40 9. říj 11.45 /dev/bus/usb/001/041

rigred commented 5 years ago

Same/similar problem on arch now with Eaton 5E2000iUSB Kernel 4.19.8 - previously was working with 4.19.4 - ?somehow? nut version from git (BUILT TODAY Dec 15)

USBHID-UPS debug

 sudo /usr/lib/network-ups-tools/usbhid-ups -u ups -a eaton -DDDDD
Network UPS Tools - Generic HID driver 0.41 (2.7.4)
USB communication driver 0.33
   0.000000     debug level is '5'
   0.000729     upsdrv_initups...
   0.003997     Checking device (1D6B/0003) (006/001)
   0.004013     Failed to open device, skipping. (Permission denied)
   0.004016     Checking device (2516/0042) (005/004)
   0.004022     Failed to open device, skipping. (Permission denied)
   0.004040     Checking device (2516/0044) (005/003)
   0.004049     Failed to open device, skipping. (Permission denied)
   0.004057     Checking device (046D/082B) (005/010)
   0.004062     Failed to open device, skipping. (Permission denied)
   0.004066     Checking device (1D6B/0002) (005/001)
   0.004073     Failed to open device, skipping. (Permission denied)
   0.004084     Checking device (1D6B/0003) (004/001)
   0.004087     Failed to open device, skipping. (Permission denied)
   0.004095     Checking device (1D6B/0002) (003/001)
   0.004100     Failed to open device, skipping. (Permission denied)
   0.004107     Checking device (1D6B/0003) (002/001)
   0.004112     Failed to open device, skipping. (Permission denied)
   0.004115     Checking device (0B05/1872) (001/003)
   0.004119     Failed to open device, skipping. (Permission denied)
   0.004122     Checking device (0B05/185C) (001/002)
   0.004125     Failed to open device, skipping. (Permission denied)
   0.004129     Checking device (1B1C/0C04) (001/004)
   0.004136     Failed to open device, skipping. (Permission denied)
   0.004140     Checking device (0463/FFFF) (001/043)
   2.004609     - VendorID: 0463
   2.004626     - ProductID: ffff
   2.004631     - Manufacturer: unknown
   2.004655     - Product: unknown
   2.004659     - Serial Number: unknown
   2.004665     - Bus: 001
   2.004672     - Device release number: 0001
   2.004678     Trying to match device
   2.004715     Device does not match - skipping
   2.004730     Checking device (1D6B/0002) (001/001)
   2.004751     Failed to open device, skipping. (Permission denied)
   2.004756     No appropriate HID device found
   2.004762     No matching HID UPS found

dmesg

[Sat Dec 15 10:03:55 2018] hid-generic 0003:0463:FFFF.0043: hiddev5,hidraw7: USB HID v1.10 Device [EATON 5E] on usb-0000:02:00.0-12/input0
[Sat Dec 15 10:04:05 2018] hid-generic 0003:0463:FFFF.0043: usb_submit_urb(ctrl) failed: -1
[Sat Dec 15 10:04:05 2018] hid-generic 0003:0463:FFFF.0043: timeout initializing reports
[Sat Dec 15 10:06:02 2018] usb 1-12: USB disconnect, device number 42
[Sat Dec 15 10:06:03 2018] usb 1-12: new low-speed USB device number 43 using xhci_hcd
[Sat Dec 15 10:06:04 2018] usb 1-12: New USB device found, idVendor=0463, idProduct=ffff, bcdDevice= 0.01
[Sat Dec 15 10:06:04 2018] usb 1-12: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[Sat Dec 15 10:06:04 2018] usb 1-12: Product: 5E
[Sat Dec 15 10:06:04 2018] usb 1-12: Manufacturer: EATON
[Sat Dec 15 10:06:06 2018] hid-generic 0003:0463:FFFF.0044: hiddev5,hidraw7: USB HID v1.10 Device [EATON 5E] on usb-0000:02:00.0-12/input0
[Sat Dec 15 10:06:16 2018] hid-generic 0003:0463:FFFF.0044: usb_submit_urb(ctrl) failed: -1
[Sat Dec 15 10:06:16 2018] hid-generic 0003:0463:FFFF.0044: timeout initializing reports
[Sat Dec 15 10:06:22 2018] usb 1-12: USB disconnect, device number 43
[Sat Dec 15 10:06:23 2018] usb 1-12: new low-speed USB device number 44 using xhci_hcd
[Sat Dec 15 10:06:23 2018] usb 1-12: New USB device found, idVendor=0463, idProduct=ffff, bcdDevice= 0.01
[Sat Dec 15 10:06:23 2018] usb 1-12: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[Sat Dec 15 10:06:23 2018] usb 1-12: Product: 5E
[Sat Dec 15 10:06:23 2018] usb 1-12: Manufacturer: EATON
[Sat Dec 15 10:06:25 2018] hid-generic 0003:0463:FFFF.0045: hiddev5,hidraw7: USB HID v1.10 Device [EATON 5E] on usb-0000:02:00.0-12/input0
[Sat Dec 15 10:06:36 2018] hid-generic 0003:0463:FFFF.0045: usb_submit_urb(ctrl) failed: -1
[Sat Dec 15 10:06:36 2018] hid-generic 0003:0463:FFFF.0045: timeout initializing reports
[Sat Dec 15 10:06:38 2018] usb 1-12: USB disconnect, device number 44

udevadm monitor

KERNEL[3160.058179] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12 (usb)                                                                                                                                                                                     
KERNEL[3160.064758] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0 (usb)                                                                                                                                                                            
KERNEL[3162.026166] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F (hid)                                                                                                                                                        
KERNEL[3162.026787] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/usbmisc/hiddev5 (usbmisc)                                                                                                                                                        
KERNEL[3162.026822] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F/hidraw/hidraw7 (hidraw)                                                                                                                                      
KERNEL[3162.026854] bind     /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F (hid)                                                                                                                                                        
KERNEL[3162.026882] bind     /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0 (usb)                                                                                                                                                                            
KERNEL[3162.026920] bind     /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12 (usb)                                                                                                                                                                                     
UDEV  [3162.031421] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12 (usb)                                                                                                                                                                                     
UDEV  [3162.032335] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0 (usb)                                                                                                                                                                            
UDEV  [3162.033129] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F (hid)                                                                                                                                                        
UDEV  [3162.034105] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/usbmisc/hiddev5 (usbmisc)                                                                                                                                                        
UDEV  [3162.034204] add      /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F/hidraw/hidraw7 (hidraw)                                                                                                                                      
UDEV  [3162.035110] bind     /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F (hid)                                                                                                                                                        
UDEV  [3162.036018] bind     /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0 (usb)                                                                                                                                                                            
UDEV  [3162.039994] bind     /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12 (usb)                                                                                                                                                                                     
KERNEL[3178.025805] remove   /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/usbmisc/hiddev5 (usbmisc)                                                                                                                                                        
KERNEL[3178.025830] remove   /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F/hidraw/hidraw7 (hidraw)                                                                                                                                      
KERNEL[3178.025889] unbind   /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F (hid)                                                                                                                                                        
KERNEL[3178.025907] remove   /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0/0003:0463:FFFF.003F (hid)                                                                                                                                                        
KERNEL[3178.025920] unbind   /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0 (usb)                                                                                                                                                                            
KERNEL[3178.025934] remove   /devices/pci0000:00/0000:00:01.3/0000:02:00.0/usb1/1-12/1-12:1.0 (usb)                                                 
TRex22 commented 4 years ago

I also hit this problem on Majaro with kernel 5.5.7-1-MANJARO (linux55). It appears to be kernel related. There is a patch for the kernel source: https://bugzilla.kernel.org/show_bug.cgi?id=203569 but that may not be ideal for everyone.

Deep searching the internet I found a workaround (that worked for me): https://bugzilla.redhat.com/show_bug.cgi?id=1715504 (I'd like to thank Eyal Lebedinsky for the workaround).

Add usbhid.quirks=0x0463:0xffff:0x08 as a kernel boot parameter is what appeared to work for me. (I did this in Grub - in my specific setup, https://wiki.archlinux.org/index.php/Kernel_parameters#GRUB)

jimklimov commented 2 years ago

Thanks for the fruitful discussion here, adding to NUT FAQ

jimklimov commented 2 weeks ago

Also updated https://github.com/networkupstools/nut/wiki/Troubleshooting-eventual-disconnections-(Data-stale)