Ken Olum
2017-Dec-20 15:32 UTC
[Nut-upsuser] Tripp-Lite BCPERS450 shutdown/restart problems
Thanks for your help. From: Charles Lepple <clepple at gmail.com> Date: Mon, 18 Dec 2017 19:26:56 -0500 This may sound like an apples-to-oranges comparison, but we did uncover an issue with CyberPower UPSes where the delay values needed to be greater than or equal to 60 (seconds), since they were being rounded down to integer numbers of minutes internally: What was the largest delay you tried? I have now tried 200 seconds without any change. The offdelay setting does appear in the status as ups.delay.shutdown, but seems to have no effect. > ups.timer.reboot: 65535 > ups.timer.shutdown: 65535 > I seem to remember that these values should change to e.g. -60 if you set the delay to 60, and then they should begin counting down after the shutdown command is sent. It has been a while since I messed with that code, though. No matter what settings I use, the UPS seems to turn off the load immediately in response to the shutdown command. I have never seen ups.timer.shutdown change from the value above. After shutting off the load, ups.timer.reboot changes to 10, regardless of the setting of driver.parameter.ondelay. It then counts down to 0 and turns the load back on. What log messages do you get with "/lib/nut/usbhid-ups -DD -a bcpers450 -k"? See below. For future reference, was this UPS manufactured recently? I have just purchased it new, so presumably yes. Ken ---------------------------------------------------------------------- # /lib/nut/usbhid-ups -DD -a bcpers450 -k Network UPS Tools - Generic HID driver 0.38 (2.7.2) USB communication driver 0.32 0.000000 debug level is '2' 0.000852 upsdrv_initups... 0.014448 Checking device (1D6B/0003) (002/001) 0.030206 - VendorID: 1d6b 0.030219 - ProductID: 0003 0.030239 - Manufacturer: unknown 0.030242 - Product: unknown 0.030246 - Serial Number: unknown 0.030249 - Bus: 002 0.030253 Trying to match device 0.030259 Device does not match - skipping 0.030304 Checking device (09AE/2010) (001/009) 0.034107 - VendorID: 09ae 0.034120 - ProductID: 2010 0.034122 - Manufacturer: Tripp Lite 0.034153 - Product: Tripp Lite UPS 0.034156 - Serial Number: unknown 0.034159 - Bus: 001 0.034162 Trying to match device 0.034179 Device matches 0.034195 failed to claim USB device: could not claim interface 0: Device or resource busy 0.034209 detached kernel driver from USB device... 0.035773 HID descriptor length 613 0.054980 Report Descriptor size = 613 0.055190 Using subdriver: TrippLite HID 0.81 0.055810 Path: UPS.PowerSummary.iProduct, Type: Feature, ReportID: 0x28, Offset: 0, Size: 8, Value: 2 0.056434 Path: UPS.PowerSummary.iSerialNumber, Type: Feature, ReportID: 0x29, Offset: 0, Size: 8, Value: 3 0.056913 Path: UPS.PowerSummary.iManufacturer, Type: Feature, ReportID: 0x2b, Offset: 0, Size: 8, Value: 1 0.057431 Path: UPS.PowerSummary.ffff00d9, Type: Feature, ReportID: 0xc0, Offset: 0, Size: 8, Value: 5 0.057855 Path: UPS.PowerSummary.Input.ConfigVoltage, Type: Feature, ReportID: 0x30, Offset: 0, Size: 8, Value: 120 0.058533 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.059163 Path: UPS.PowerSummary.iDeviceChemistry, Type: Feature, ReportID: 0x2a, Offset: 0, Size: 8, Value: 4 0.059667 Path: UPS.PowerSummary.CapacityMode, Type: Feature, ReportID: 0x33, Offset: 0, Size: 8, Value: 2 0.060193 Path: UPS.PowerSummary.Rechargeable, Type: Feature, ReportID: 0x2c, Offset: 0, Size: 8, Value: 1 0.060733 Path: UPS.PowerSummary.RunTimeToEmpty, Type: Input, ReportID: 0x35, Offset: 0, Size: 16, Value: 5740 0.060755 Path: UPS.PowerSummary.RunTimeToEmpty, Type: Feature, ReportID: 0x35, Offset: 0, Size: 16, Value: 5740 0.061271 Path: UPS.PowerSummary.RemainingCapacity, Type: Input, ReportID: 0x34, Offset: 0, Size: 8, Value: 100 0.061291 Path: UPS.PowerSummary.RemainingCapacity, Type: Feature, ReportID: 0x34, Offset: 0, Size: 8, Value: 100 0.061896 Path: UPS.PowerSummary.FullChargeCapacity, Type: Feature, ReportID: 0x37, Offset: 0, Size: 8, Value: 100 0.062368 Path: UPS.PowerSummary.DesignCapacity, Type: Feature, ReportID: 0x36, Offset: 0, Size: 8, Value: 100 0.062904 Path: UPS.PowerSummary.PresentStatus.Voltage, Type: Feature, ReportID: 0x31, Offset: 0, Size: 16, Value: 0 0.063470 Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Input, ReportID: 0x32, Offset: 0, Size: 1, Value: 0 0.063512 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Input, ReportID: 0x32, Offset: 1, Size: 1, Value: 0 0.063539 Path: UPS.PowerSummary.PresentStatus.Charging, Type: Input, ReportID: 0x32, Offset: 2, Size: 1, Value: 0 0.063558 Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Input, ReportID: 0x32, Offset: 3, Size: 1, Value: 1 0.063577 Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Input, ReportID: 0x32, Offset: 4, Size: 1, Value: 0 0.063595 Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Input, ReportID: 0x32, Offset: 5, Size: 1, Value: 0 0.063616 Path: UPS.PowerSummary.PresentStatus.FullyCharged, Type: Input, ReportID: 0x32, Offset: 6, Size: 1, Value: 1 0.063636 Path: UPS.PowerSummary.PresentStatus.FullyDischarged, Type: Input, ReportID: 0x32, Offset: 7, Size: 1, Value: 0 0.063657 Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Feature, ReportID: 0x32, Offset: 0, Size: 1, Value: 0 0.063679 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Feature, ReportID: 0x32, Offset: 1, Size: 1, Value: 0 0.063703 Path: UPS.PowerSummary.PresentStatus.Charging, Type: Feature, ReportID: 0x32, Offset: 2, Size: 1, Value: 0 0.063727 Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Feature, ReportID: 0x32, Offset: 3, Size: 1, Value: 1 0.063749 Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Feature, ReportID: 0x32, Offset: 4, Size: 1, Value: 0 0.063769 Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Feature, ReportID: 0x32, Offset: 5, Size: 1, Value: 0 0.063792 Path: UPS.PowerSummary.PresentStatus.FullyCharged, Type: Feature, ReportID: 0x32, Offset: 6, Size: 1, Value: 1 0.063814 Path: UPS.PowerSummary.PresentStatus.FullyDischarged, Type: Feature, ReportID: 0x32, Offset: 7, Size: 1, Value: 0 0.064263 Path: UPS.BatterySystem.Battery.ConfigVoltage, Type: Feature, ReportID: 0x04, Offset: 0, Size: 16, Value: 12 0.064738 Path: UPS.BatterySystem.Battery.PresentStatus.Charging, Type: Feature, ReportID: 0x23, Offset: 0, Size: 1, Value: 0 0.064761 Path: UPS.BatterySystem.Battery.PresentStatus.Discharging, Type: Feature, ReportID: 0x23, Offset: 1, Size: 1, Value: 1 0.064782 Path: UPS.BatterySystem.Battery.PresentStatus.NeedReplacement, Type: Feature, ReportID: 0x23, Offset: 2, Size: 1, Value: 0 0.065251 Path: UPS.BatterySystem.Test, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 0 0.065790 Path: UPS.Flow.ConfigVoltage, Type: Feature, ReportID: 0x01, Offset: 0, Size: 8, Value: 120 0.066320 Path: UPS.Flow.ConfigFrequency, Type: Feature, ReportID: 0x02, Offset: 0, Size: 8, Value: 60 0.066955 Path: UPS.Flow.ConfigApparentPower, Type: Feature, ReportID: 0x03, Offset: 0, Size: 16, Value: 450 0.067583 Path: UPS.OutletSystem.Outlet.DelayBeforeShutdown, Type: Feature, ReportID: 0x15, Offset: 0, Size: 16, Value: 65535 0.068231 Path: UPS.OutletSystem.Outlet.ffff00bc, Type: Feature, ReportID: 0xe0, Offset: 0, Size: 16, Value: 0 0.068757 Path: UPS.OutletSystem.Outlet.ffff0091, Type: Feature, ReportID: 0x51, Offset: 0, Size: 8, Value: 1 0.069251 Path: UPS.OutletSystem.Outlet.TLWatchdog, Type: Feature, ReportID: 0x52, Offset: 0, Size: 8, Value: 0 0.069779 Path: UPS.OutletSystem.Outlet.ffff00c7, Type: Feature, ReportID: 0xb6, Offset: 0, Size: 8, Value: 1 0.070327 Path: UPS.TLCustom.[1].CommunicationProtocolVersion, Type: Feature, ReportID: 0x6c, Offset: 0, Size: 16, Value: 8208 0.070953 Path: UPS.ffff0015.[1].ffff00c0, Type: Feature, ReportID: 0x96, Offset: 0, Size: 8, Value: 255 0.071418 refresh_report_buffer: expected 5 bytes, but got 2 instead 0.071462 Path: UPS.ffff0015.[1].ffff00d2, Type: Feature, ReportID: 0xb4, Offset: 0, Size: 32, Value: 255 0.072034 refresh_report_buffer: expected 5 bytes, but got 2 instead 0.072077 Path: UPS.ffff0015.[1].ffff00d3, Type: Feature, ReportID: 0xb5, Offset: 0, Size: 32, Value: 255 0.072671 Path: UPS.ffff0015.[1].ffff00c1, Type: Feature, ReportID: 0x97, Offset: 0, Size: 16, Value: 255 0.073152 Path: UPS.ffff0015.[1].ffff00c2, Type: Feature, ReportID: 0x98, Offset: 0, Size: 8, Value: 255 0.073668 Path: UPS.ffff0015.[1].ffff00c3, Type: Feature, ReportID: 0x99, Offset: 0, Size: 16, Value: 255 0.078695 Path: UPS.ffff0015.[1].ffff00c5, Type: Feature, ReportID: 0x9b, Offset: 0, Size: 16, Value: 3 0.079245 Path: UPS.ffff0015.[1].ffff00d6, Type: Feature, ReportID: 0xc2, Offset: 0, Size: 32, Value: 14 0.079703 libusb_get_report: could not claim interface 0: Device or resource busy 0.079755 Can't retrieve Report c1: Device or resource busy 0.079781 Path: UPS.ffff0015.[1].ffff00d8, Type: Feature, ReportID: 0xc1, Offset: 0, Size: 32 0.080340 Path: UPS.ffff0015.[1].ffff00d7, Type: Feature, ReportID: 0xc3, Offset: 0, Size: 32, Value: 1 0.080865 libusb_get_report: could not claim interface 0: Device or resource busy 0.080897 Can't retrieve Report 9a: Device or resource busy 0.080919 Path: UPS.ffff0015.[1].ffff00c4, Type: Feature, ReportID: 0x9a, Offset: 0, Size: 32 0.081587 Path: UPS.BatterySystem.Battery.Voltage, Type: Feature, ReportID: 0x20, Offset: 0, Size: 16, Value: 124 0.082168 Path: UPS.PowerConverter.Input.Voltage, Type: Feature, ReportID: 0x18, Offset: 0, Size: 16, Value: 0 0.082724 Path: UPS.PowerConverter.Input.Frequency, Type: Feature, ReportID: 0x19, Offset: 0, Size: 16, Value: 0 0.083265 Path: UPS.PowerConverter.PresentStatus.VoltageOutOfRange, Type: Feature, ReportID: 0x22, Offset: 0, Size: 1, Value: 1 0.083304 Path: UPS.PowerConverter.PresentStatus.Buck, Type: Feature, ReportID: 0x22, Offset: 1, Size: 1, Value: 0 0.083327 Path: UPS.PowerConverter.PresentStatus.Boost, Type: Feature, ReportID: 0x22, Offset: 2, Size: 1, Value: 0 0.083349 Path: UPS.PowerConverter.PresentStatus.Overload, Type: Feature, ReportID: 0x22, Offset: 4, Size: 1, Value: 0 0.083368 Path: UPS.PowerConverter.PresentStatus.Used, Type: Feature, ReportID: 0x22, Offset: 5, Size: 1, Value: 0 0.083388 Path: UPS.PowerConverter.PresentStatus.OverTemperature, Type: Feature, ReportID: 0x22, Offset: 6, Size: 1, Value: 0 0.083408 Path: UPS.PowerConverter.PresentStatus.InternalFailure, Type: Feature, ReportID: 0x22, Offset: 7, Size: 1, Value: 0 0.083427 Path: UPS.PowerConverter.PresentStatus.AwaitingPower, Type: Feature, ReportID: 0x22, Offset: 14, Size: 1, Value: 0 0.083917 Path: UPS.OutletSystem.Outlet.DelayBeforeReboot, Type: Feature, ReportID: 0x17, Offset: 0, Size: 16, Value: 65535 0.083952 Report descriptor retrieved (Reportlen = 613) 0.083962 Found HID device 0.083975 Detected a UPS: Tripp Lite /Tripp Lite UPS 0.084049 Path: UPS.PowerSummary.RemainingCapacity, Type: Feature, ReportID: 0x34, Offset: 0, Size: 8, Value: 100 0.084108 Path: UPS.PowerSummary.RunTimeToEmpty, Type: Feature, ReportID: 0x35, Offset: 0, Size: 16, Value: 5740 0.084137 Path: UPS.BatterySystem.Battery.ConfigVoltage, Type: Feature, ReportID: 0x04, Offset: 0, Size: 16, Value: 12 0.084166 Path: UPS.BatterySystem.Battery.Voltage, Type: Feature, ReportID: 0x20, Offset: 0, Size: 16, Value: 124 0.084196 Path: UPS.PowerSummary.iDeviceChemistry, Type: Feature, ReportID: 0x2a, Offset: 0, Size: 8, Value: 4 0.085345 Path: UPS.OutletSystem.Outlet.DelayBeforeShutdown, Type: Feature, ReportID: 0x15, Offset: 0, Size: 16, Value: 65535 0.085377 Path: UPS.OutletSystem.Outlet.DelayBeforeReboot, Type: Feature, ReportID: 0x17, Offset: 0, Size: 16, Value: 65535 0.085404 Path: UPS.BatterySystem.Test, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 0 0.085426 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.085453 Path: UPS.Flow.ConfigApparentPower, Type: Feature, ReportID: 0x03, Offset: 0, Size: 16, Value: 450 0.085507 Path: UPS.OutletSystem.Outlet.TLWatchdog, Type: Feature, ReportID: 0x52, Offset: 0, Size: 8, Value: 0 0.085546 Path: UPS.PowerSummary.PresentStatus.ShutdownImminent, Type: Feature, ReportID: 0x32, Offset: 0, Size: 1, Value: 0 0.085573 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type: Feature, ReportID: 0x32, Offset: 1, Size: 1, Value: 0 0.085598 Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Type: Feature, ReportID: 0x32, Offset: 5, Size: 1, Value: 0 0.085623 Path: UPS.PowerSummary.PresentStatus.FullyCharged, Type: Feature, ReportID: 0x32, Offset: 6, Size: 1, Value: 1 0.085648 Path: UPS.PowerSummary.PresentStatus.Charging, Type: Feature, ReportID: 0x32, Offset: 2, Size: 1, Value: 0 0.085672 Path: UPS.PowerSummary.PresentStatus.Discharging, Type: Feature, ReportID: 0x32, Offset: 3, Size: 1, Value: 1 0.085696 Path: UPS.PowerSummary.PresentStatus.FullyDischarged, Type: Feature, ReportID: 0x32, Offset: 7, Size: 1, Value: 0 0.085720 Path: UPS.PowerSummary.PresentStatus.NeedReplacement, Type: Feature, ReportID: 0x32, Offset: 4, Size: 1, Value: 0 0.085770 Path: UPS.PowerConverter.PresentStatus.VoltageOutOfRange, Type: Feature, ReportID: 0x22, Offset: 0, Size: 1, Value: 1 0.085795 Path: UPS.PowerConverter.PresentStatus.Buck, Type: Feature, ReportID: 0x22, Offset: 1, Size: 1, Value: 0 0.085819 Path: UPS.PowerConverter.PresentStatus.Boost, Type: Feature, ReportID: 0x22, Offset: 2, Size: 1, Value: 0 0.085843 Path: UPS.PowerConverter.PresentStatus.Overload, Type: Feature, ReportID: 0x22, Offset: 4, Size: 1, Value: 0 0.085866 Path: UPS.PowerConverter.PresentStatus.OverTemperature, Type: Feature, ReportID: 0x22, Offset: 6, Size: 1, Value: 0 0.085890 Path: UPS.PowerConverter.PresentStatus.InternalFailure, Type: Feature, ReportID: 0x22, Offset: 7, Size: 1, Value: 0 0.085913 Path: UPS.PowerConverter.PresentStatus.AwaitingPower, Type: Feature, ReportID: 0x22, Offset: 14, Size: 1, Value: 0 0.085937 Path: UPS.PowerSummary.Input.ConfigVoltage, Type: Feature, ReportID: 0x30, Offset: 0, Size: 8, Value: 120 0.085972 Path: UPS.PowerConverter.Input.Voltage, Type: Feature, ReportID: 0x18, Offset: 0, Size: 16, Value: 0 0.085997 Path: UPS.PowerConverter.Input.Frequency, Type: Feature, ReportID: 0x19, Offset: 0, Size: 16, Value: 0 0.086053 Path: UPS.Flow.ConfigVoltage, Type: Feature, ReportID: 0x01, Offset: 0, Size: 8, Value: 120 0.086094 Path: UPS.Flow.ConfigFrequency, Type: Feature, ReportID: 0x02, Offset: 0, Size: 8, Value: 60 0.090270 Path: UPS.BatterySystem.Test, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 0 0.090329 Path: UPS.BatterySystem.Test, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 0 0.090349 Path: UPS.BatterySystem.Test, Type: Feature, ReportID: 0x10, Offset: 0, Size: 8, Value: 0 0.090375 Path: UPS.OutletSystem.Outlet.DelayBeforeShutdown, Type: Feature, ReportID: 0x15, Offset: 0, Size: 16, Value: 65535 0.090407 Path: UPS.OutletSystem.Outlet.DelayBeforeShutdown, Type: Feature, ReportID: 0x15, Offset: 0, Size: 16, Value: 65535 0.090426 Path: UPS.OutletSystem.Outlet.DelayBeforeReboot, Type: Feature, ReportID: 0x17, Offset: 0, Size: 16, Value: 65535 0.090443 Path: UPS.OutletSystem.Outlet.TLWatchdog, Type: Feature, ReportID: 0x52, Offset: 0, Size: 8, Value: 0 0.090458 Path: UPS.OutletSystem.Outlet.TLWatchdog, Type: Feature, ReportID: 0x52, Offset: 0, Size: 8, Value: 0 0.090477 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.090493 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.090508 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.090523 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.090539 Path: UPS.PowerSummary.AudibleAlarmControl, Type: Feature, ReportID: 0x11, Offset: 0, Size: 8, Value: 2 0.090564 find_nut_info: unknown info type: load.on.delay 0.090577 find_nut_info: unknown info type: load.on.delay 0.090585 Initiating UPS shutdown 0.090593 upsdrv_shutdown... 0.090601 instcmd(shutdown.return, [NULL]) 0.090614 find_nut_info: unknown info type: shutdown.return 0.090624 instcmd(load.on.delay, [NULL]) 0.090633 find_nut_info: unknown info type: load.on.delay 0.090641 instcmd: info element unavailable load.on.delay 0.090649 instcmd(shutdown.reboot, [NULL]) 0.091107 upsdrv_cleanup...
Ken Olum
2018-Jan-09 20:05 UTC
[Nut-upsuser] Tripp-Lite BCPERS450 shutdown/restart problems
Any more thoughts about how I might get this UPS working? I guess I could try using the software from Tripp-Lite, but it is intended for ancient versions of Fedora and OpenSUSE, whereas I'm running Ubuntu 16.04. It would be much nicer to use Nut, but I don't know how to proceed. Thanks. Ken
Charles Lepple
2018-Jan-10 14:19 UTC
[Nut-upsuser] Tripp-Lite BCPERS450 shutdown/restart problems
On Dec 20, 2017, at 10:32 AM, Ken Olum wrote:> > 0.090564 find_nut_info: unknown info type: load.on.delay > 0.090577 find_nut_info: unknown info type: load.on.delay > 0.090585 Initiating UPS shutdown > 0.090593 upsdrv_shutdown... > 0.090601 instcmd(shutdown.return, [NULL]) > 0.090614 find_nut_info: unknown info type: shutdown.return > 0.090624 instcmd(load.on.delay, [NULL]) > 0.090633 find_nut_info: unknown info type: load.on.delay > 0.090641 instcmd: info element unavailable load.on.delay > > 0.090649 instcmd(shutdown.reboot, [NULL]) > 0.091107 upsdrv_cleanup...Sorry, I missed this part from the "-k" output. This at least seems to explain the 10-second delay. Here's what I think is going on: NUT looks up the "shutdown.return" ("Turn off the load and return when power is back") command, and finds nothing that matches your UPS. Then it tries "load.on.delay" - same problem. It then finds the path for "shutdown.reboot", which is most likely mapped to this line: https://github.com/networkupstools/nut/blob/v2.7.2/drivers/tripplite-hid.c#L394 (IIRC it's the first match, otherwise it would be https://github.com/networkupstools/nut/blob/v2.7.2/drivers/tripplite-hid.c#L397 ) That sends a value of 10 (likely corresponding to the 10-second delay) to UPS.OutletSystem.Outlet.DelayBeforeReboot The fact that there is not a "UPS.OutletSystem.Outlet.DelayBeforeStartup" or "UPS.OutletSystem.Outlet.TLDelayBeforeStartup" in the debug output for your UPS means that the "wait for power" functionality is probably hidden behind something else, possibly another vendor-specific item (see, for instance, "UPS.OutletSystem.Outlet.ffff00bc" and the other ffff* names after "*.DelayBeforeShutdown"). To be honest, if you can set up the Tripp-Lite software somewhere temporarily (possibly an older laptop, or maybe even in a VM - though VMs have their own issues), that might be the quickest way to get the behavior you are looking for. You could set absurdly large shutdown timers, and fire up usbhid-ups in debug mode to watch the counters. I think that would be safer than trying to set various vendor-specific items to random values.
Ken Olum
2018-Jan-11 20:14 UTC
[Nut-upsuser] Tripp-Lite BCPERS450 shutdown/restart problems
Thanks again for your help, Charles. I was able to install the Tripp Lite software on my Ubuntu machine, and it sort of works. It does something which continually changes the USB device ID of the UPS, and prints voluminous error messages in the log. However, one of the things that it can do is to schedule a UPS shutdown, which Nut does not know how to do. So I monitored the USB port with wireshark (an interesting endeavor since I didn't start out with any knowledge of USB protocols). But I have managed to discover that when I ask Tripp Lite's poweralert software to schedule a UPS shutdown, it does it by using the SET_REPORT function of the USB HID protocol with ReportType "Feature", ReportID 21 (0x15), and 3 bytes of data which are 0x15 followed by the number of seconds to wait before shutting down in two bytes, LSB first. Below I include wireshark packet dissections for two such commands. The difference is in the "data fragment". In the first case it is 150500, representing a shutdown in 5 seconds, and the second 153701, representing a shutdown in 311 = 0x0137 seconds. Is this helpful? Ken 27738 174.290305 host 1.44.0 USBHID 67 SET_REPORT Request Frame 27738: 67 bytes on wire (536 bits), 67 bytes captured (536 bits) on interface 0 USB URB [Source: host] [Destination: 1.44.0] URB id: 0xffff964d9a2f8540 URB type: URB_SUBMIT ('S') URB transfer type: URB_CONTROL (0x02) Endpoint: 0x00, Direction: OUT Device: 44 URB bus id: 1 Device setup request: relevant (0) Data: present (0) URB sec: 1515699253 URB usec: 785764 URB status: Operation now in progress (-EINPROGRESS) (-115) URB length [bytes]: 3 Data length [bytes]: 3 [Response in: 27739] Interval: 0 Start frame: 0 Copy of Transfer Flags: 0x00000000 Number of ISO descriptors: 0 [bInterfaceClass: HID (0x03)] URB setup bmRequestType: 0x21 bRequest: 9 wValue: 0x0315 wIndex: 0 (0x0000) wLength: 3 Data Fragment: 150500 bRequest: SET_REPORT (0x09) wValue: 0x0315 ReportID: 21 ReportType: Feature (3) wIndex: 0 wLength: 3 66224 1042.041242 host 1.48.0 USBHID 67 SET_REPORT Request Frame 66224: 67 bytes on wire (536 bits), 67 bytes captured (536 bits) on interface 0 USB URB [Source: host] [Destination: 1.48.0] URB id: 0xffff964c9246bd80 URB type: URB_SUBMIT ('S') URB transfer type: URB_CONTROL (0x02) Endpoint: 0x00, Direction: OUT Device: 48 URB bus id: 1 Device setup request: relevant (0) Data: present (0) URB sec: 1515700121 URB usec: 536701 URB status: Operation now in progress (-EINPROGRESS) (-115) URB length [bytes]: 3 Data length [bytes]: 3 [Response in: 66225] Interval: 0 Start frame: 0 Copy of Transfer Flags: 0x00000000 Number of ISO descriptors: 0 [bInterfaceClass: HID (0x03)] URB setup bmRequestType: 0x21 bRequest: 9 wValue: 0x0315 wIndex: 0 (0x0000) wLength: 3 Data Fragment: 153701 bRequest: SET_REPORT (0x09) wValue: 0x0315 ReportID: 21 ReportType: Feature (3) wIndex: 0 wLength: 3