[Nut-upsuser] UPS Losing Connection
Stuart D Gathman
stuart at gathman.org
Thu Sep 24 22:47:47 BST 2020
On Thu, 24 Sep 2020, Kirk Bocek wrote:
> On 9/23/2020 1:09 PM, Stuart D. Gathman wrote:
>> I solved this problem a few years back.
>>
>> https://github.com/sdgathman/trippfix
>>
>> The short answer is USB is broken on the model (but the power management
>> is excellent, handling switchover to generator power without a hitch).
>>
>> The workaround is to do a usb port power off when the Tripplite USB
>> hangs. But hubs that actually implement this mandatory feature (must at
>> least support powering all ports off) are getting hard to find. The USB
>> chips implement it just fine. The hubs don't bother connecting the pins
>> and just wire to +5V.
>>
>> The good news is that with CentOS-8, the kernel automatically does the
>> port power off, so you don't need my kludgey software fix when you go to
>> 8. You still need an actual standard conforming USB hub however.
>> If the port on your server isn't, you can buy an external hub
>> like I did.
>>
>>
> Stuart, I haven't tried your program yet.
>
> However the UPS appears to have dropped off completely. lsusb no longer shows
> the unit at all. So I physically unplugged and replugged it:
>
> #dmesg
> ...
> [252389.354190] hid-generic 0003:0557:2419.0002: usb_submit_urb(ctrl) failed:
> -19
> [252389.403568] xhci_hcd 0000:00:14.0: USB bus 3 deregistered
> [252389.405712] xhci_hcd 0000:00:14.0: xHCI Host Controller
> [252389.407225] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus
> number 3
> [252405.901391] xhci_hcd 0000:00:14.0: can't setup: -110
> [252405.902631] xhci_hcd 0000:00:14.0: USB bus 3 deregistered
> [252405.903033] xhci_hcd 0000:00:14.0: init 0000:00:14.0 fail, -110
> [252405.903038] xhci_hcd: probe of 0000:00:14.0 failed with error -110
>
> And it's still not there:
>
> $lsusb
> Bus 002 Device 002: ID 8087:8002 Intel Corp.
> Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 001 Device 002: ID 8087:800a Intel Corp.
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
>
>
> So is this a faulty Tripplite that needs to be returned?
No. That is the symptom I got. It is faulty - but they are all faulty.
You have to do that several times. My scripting does that by powering
off the port and back on until the unit appears. A real kludge.
Newer kernels do that automatically.
Here is CentOS-8 handling a Triplite disconnect:
[2452246.624432] usb 2-1.4-port4: disabled by hub (EMI?), re-enabling...
[2452246.624672] usb 2-1.4.4: USB disconnect, device number 26
[2452247.585157] usb 2-1.4-port4: Cannot enable. Maybe the USB cable is
bad?
[2452248.441266] usb 2-1.4-port4: Cannot enable. Maybe the USB cable is
bad?
[2452248.441460] usb 2-1.4-port4: attempt power cycle
[2452249.460988] usb 2-1.4.4: new low-speed USB device number 29 using
ehci-pci
[2452249.508514] usb 2-1.4.4: New USB device found, idVendor=09ae,
idProduct=3016, bcdDevice= 0.02
[2452249.508519] usb 2-1.4.4: New USB device strings: Mfr=3, Product=1,
SerialNumber=5
[2452249.508522] usb 2-1.4.4: Product: TRIPP LITE UPS
[2452249.508525] usb 2-1.4.4: Manufacturer: Tripp Lite
...
Notice the "attempt power cycle". That only works on standard
conforming hubs, which are sadly hard to find.
More information about the Nut-upsuser
mailing list