PfSense 2.3.4 with NUT 2.7.4_4 and Tripp Lite SMX500RT1U USB No matching HID UPS
-
The UPS is on the supported list for nut.
When the USB is connected the, the logs shows….
uhid0: <tripp 0="" 1="" lite="" tripp="" smx500rt1u,="" class="" 0,="" rev="" 1.10="" 0.0a,="" addr="">on usbus0The UPS Service is setup as "Local USB" via the "usbhid" driver.
When I start nut, from the ssh command line I get...
/usr/local/etc/rc.d/nut.sh start
starting NUT
Network UPS Tools upsmon 2.7.4
kill: No such process
UPS: Local-USB-UPS (master) (power value 1)
Using power down flag file /etc/killpower
Network UPS Tools - UPS driver controller 2.7.4
Network UPS Tools - Generic HID driver 0.41 (2.7.4)
USB communication driver 0.33
No matching HID UPS found
Driver failed to start (exit status=1)
Network UPS Tools upsd 2.7.4
fopen /var/db/nut/upsd.pid: No such file or directory
listening on ::1 port 3493
listening on 127.0.0.1 port 3493
Can't connect to UPS [Local-USB-UPS] (usbhid-ups-Local-USB-UPS): No such file or directoryThe key error seems to be "No matching HID UPS found".
Any ideas what I'm missing?</tripp>
-
Perhaps try the tripplite driver instead of usbhid?
-
Perhaps try the tripplite driver instead of usbhid?
Should have mentioned, tried that, same result.
-
What do you see when you run "usbconfig dump_device_desc"?
-
What do you see when you run "usbconfig dump_device_desc"?
ugen0.2: <tripp lite="" smx500rt1u="" tripp="">at usbus0, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (0mA)
bLength = 0x0012
bDescriptorType = 0x0001
bcdUSB = 0x0110
bDeviceClass = 0x0000 <probed by="" interface="" class="">bDeviceSubClass = 0x0000
bDeviceProtocol = 0x0000
bMaxPacketSize0 = 0x0008
idVendor = 0x09ae
idProduct = 0x0001
bcdDevice = 0x000a
iManufacturer = 0x0001 <tripp lite="">iProduct = 0x0002 <tripp lite="" smx500rt1u="">iSerialNumber = 0x0000 <no string="">bNumConfigurations = 0x0001</no></tripp></tripp></probed></tripp> -
Seems to be a problem starting the UPS driver. If I setup the UPS to be "Local USB" and driver "tripplite", save the config, the log shows…
Jul 11 16:44:27 php-fpm 76934 /nut_settings.php: Starting service nut
Jul 11 16:44:27 upsmon 13232 Startup successful
Jul 11 16:44:28 upsd 14483 listening on ::1 port 3493
Jul 11 16:44:28 upsd 14483 listening on 127.0.0.1 port 3493
Jul 11 16:44:28 upsd 14483 Can't connect to UPS [Local-USB-UPS] (tripplite_usb-Local-USB-UPS): No such file or directory
Jul 11 16:44:28 upsd 14579 Startup successful
Jul 11 16:44:30 upsd 14579 User monuser@127.0.0.1 logged into UPS [Local-USB-UPS]
Jul 11 16:44:30 upsmon 13712 Poll UPS [Local-USB-UPS] failed - Driver not connected
Jul 11 16:44:30 upsmon 13712 Communications with UPS Local-USB-UPS lost
Jul 11 16:44:35 upsmon 13712 Poll UPS [Local-USB-UPS] failed - Driver not connected
Jul 11 16:44:35 upsmon 13712 UPS Local-USB-UPS is unavailableBut if I then ssh to the server and manually start the UPS driver…
/usr/local/libexec/nut/tripplite_usb -u root -a Local-USB-UPS
I see...
Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.29 (2.7.4)
Warning: This is an experimental driver.
Some features may not function correctly.Detected a UPS: Tripp Lite /TRIPP LITE SMX500RT1U
libusb_get_interrupt() returned 0 instead of 8 while sending 3a 00 ff 0d 00 00 00 00 '........'
Using binary SMART protocol (3005)
Unknown input voltage range: 0x06
Unit ID: 65535
Attached to Tripp Lite TRIPP LITE SMX500RT1UAnd the UPS shows online in Services / UPS / Status, together with all the values I'd expect...
Variable Value
battery.voltage 13.70
battery.voltage.nominal 12
device.mfr Tripp Lite
device.model TRIPP LITE SMX500RT1U
device.type ups
driver.name tripplite_usb
driver.parameter.pollinterval 2
driver.parameter.port auto
driver.parameter.synchronous no
driver.version 2.7.4
driver.version.internal 0.29
input.voltage 247
input.voltage.maximum 261
input.voltage.minimum 236
input.voltage.nominal 120
outlet.1.desc Load 1
outlet.1.id 1
outlet.1.switch 1
outlet.1.switchable 1
outlet.2.desc Load 2
outlet.2.id 2
outlet.2.switchable 0
ups.debug.D 00 f7 00 89 0d 00 00 '.......'
ups.debug.L 0c 00 06 07 58 58 0d '....XX.'
ups.debug.load_banks 1
ups.debug.M 00 ec 01 05 0d 00 00 '.......'
ups.debug.P 30 30 35 30 30 58 0d '00500X.'
ups.debug.S 01 04 00 00 64 00 0d '....d..'
ups.debug.T 21 00 01 f4 00 58 0d '.....X.'
ups.debug.V 06 00 0c 01 58 58 0d '....XX.'
ups.delay.shutdown 64
ups.firmware F29AF.B
ups.firmware.aux protocol 3005
ups.id 65535
ups.mfr Tripp Lite
ups.model TRIPP LITE SMX500RT1U
ups.power.nominal 500
ups.productid 0001
ups.status OL
ups.temperature 0
ups.vendorid -
Found it. It's a permissions thing. For some reason the correct user context is not setup. Adding "user=root" in the ups.conf advanced settings fixes it.
-
There is a discussion of this problem here. Please give that a try and let me know if it clears your permission problem. Thanks.
-
There is a discussion of this problem here. Please give that a try and let me know if it clears your permission problem. Thanks.
Unfortunately, the site with the pfSense and the UPS, is live and about 250 Miles away from me. So I cannot reboot and re-connect the UPS USB cable.
However, on all further UPS implementations we will test this. -
Okay, thanks.
Note that you don't have to do the disconnect/reconnect if you are able to do a reboot.
-
An Electrician caused a reboot by turning off the power on the clean side of the UPS!
Anyway I removed the "user=root" and it works ok now. -
An Electrician caused a reboot by turning off the power on the clean side of the UPS!
Anyway I removed the "user=root" and it works ok now.Awesome, thanks for letting me know. I'll see about adding an install warning for this next time I update the package.
About the electrician though… sigh.
-