Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PFSense + NUT + Old tripplite UPS issue

    UPS Tools
    3
    10
    972
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      Evraptor
      last edited by

      Hi!

      I've been struggling a bit to run an older UPS on my pfsense (2.7.2). I installed NUT (2.8.2_1) and the UPS is a Tripplite Internet750U.
      On the link I've found from network ups tools (https://networkupstools.org/stable-hcl.html), it tells me the driver should be usbhid-ups, however when running it with this parameters, it tells me I should switch to the tripplite-usb driver.

      Output from usbhid-usp

      Network UPS Tools - Generic HID driver 0.52 (2.8.1.1)
      USB communication driver (libusb 1.0) 0.46
         0.000000     [D1] Network UPS Tools version 2.8.1.1 (release/snapshot of 2.8.1.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.11 --without-python2 --with-python3=/usr/local/bin/python3.11 --without-nut_monitor --with-ltdl --with-nut-scanner --with-avahi --with-cgi --with-cgipath=/usr/local/www/cgi-bin/nut --with-htmlpath=/usr/local/www/nut --with-gd-includes=-I/usr/local/include --with-gd-libs='-L/usr/local/lib -lgd' --without-dev --with-freeipmi --without-ipmi --with-doc=no --with-modbus --with-neon --without-nss --with-openssl --with-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0
         0.000024     [D1] debug level is '2'
         0.000190     [D1] Succeeded to become_user(nut): now UID=316 GID=316
         0.000210     [D1] upsdrv_initups (non-SHUT)...
         0.000214     [D2] Initializing an USB-connected UPS with library libusb-1.0.0 (API: 0x1000102) (NUT subdriver name='USB communication driver (libusb 1.0)' ver='0.46')
         0.000311     [D2] Checking device 1 of 1 (09AE/0001)
         0.007495     [D2] - VendorID: 09ae
         0.007499     [D2] - ProductID: 0001
         0.007500     [D2] - Manufacturer: TRIPP LITE
         0.007502     [D2] - Product: TRIPP LITE INTERNET750U
         0.007504     [D2] - Serial Number: unknown
         0.007505     [D2] - Bus: 000
         0.007507     [D2] - Bus Port: 007
         0.007508     [D2] - Device: 002
         0.007510     [D2] - Device release number: 0001
         0.007511     [D2] Trying to match device
         0.007514     [D2] match_function_subdriver (non-SHUT mode): matching a device...
         0.007523     This Tripp Lite device (09ae/0001) is not supported by usbhid-ups.
      Please use the tripplite_usb driver instead.
      
         0.007525     [D2] match_function_subdriver (non-SHUT mode): failed to match a subdriver to vendor and/or product ID
         0.007527     [D2] Device does not match - skipping
         0.007536     [D2] libusb1: No appropriate HID device found
         0.007539     libusb1: Could not open any HID devices: insufficient permissions on everything
         0.007540     No matching HID UPS found
         0.007549     upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it
      

      Switching the config to the tripplite_usb

      Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.35 (2.8.1.1)
      Warning: This is an experimental driver.
      Some features may not function correctly.
      
         0.000000     [D1] Network UPS Tools version 2.8.1.1 (release/snapshot of 2.8.1.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.11 --without-python2 --with-python3=/usr/local/bin/python3.11 --without-nut_monitor --with-ltdl --with-nut-scanner --with-avahi --with-cgi --with-cgipath=/usr/local/www/cgi-bin/nut --with-htmlpath=/usr/local/www/nut --with-gd-includes=-I/usr/local/include --with-gd-libs='-L/usr/local/lib -lgd' --without-dev --with-freeipmi --without-ipmi --with-doc=no --with-modbus --with-neon --without-nss --with-openssl --with-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0
         0.000022     [D1] debug level is '2'
         0.000186     [D1] Succeeded to become_user(nut): now UID=316 GID=316
         0.000296     [D2] Checking device 1 of 1 (09AE/0001)
         0.007133     [D2] - VendorID: 09ae
         0.007138     [D2] - ProductID: 0001
         0.007140     [D2] - Manufacturer: TRIPP LITE
         0.007142     [D2] - Product: TRIPP LITE INTERNET750U
         0.007144     [D2] - Serial Number: unknown
         0.007145     [D2] - Bus: 000
         0.007147     [D2] - Bus Port: 007
         0.007148     [D2] - Device: 002
         0.007150     [D2] - Device release number: 0001
         0.007151     [D2] Trying to match device
         0.007154     [D2] Device matches
         0.007156     [D2] Reading configuration descriptor 1 of 1
         0.007180     [D2] Claimed interface 0 successfully
         0.007894     [D2] Retrieved HID descriptor (expected 9, got 9)
         0.007898     [D2] HID descriptor length 52
         0.808666     Unit ID not retrieved (not available on all models)
         0.808673     [D2] Caller doesn't like this device
         0.811207     [D2] libusb1: No appropriate HID device found
         0.811211     libusb1: Could not open any HID devices: insufficient permissions on everything
         0.811213     No matching USB/HID UPS found
         0.811225     upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it
      

      So with this one, it sees the UPS, there's a match, but fails to connect.

      Here's the output of nut-scanner

      Scanning USB bus.
      No start IP, skipping SNMP
      Scanning XML/HTTP bus.
      No start IP, skipping NUT bus (old connect method)
      Scanning NUT simulation devices.
      Scanning NUT bus (avahi method).
      Error sending Eaton <SCAN_REQUEST/> to <broadcast>, #1/3
      Failed to create Avahi client: Daemon not running
      Error sending Eaton <SCAN_REQUEST/> to <broadcast>, #2/3
      Error sending Eaton <SCAN_REQUEST/> to <broadcast>, #3/3
      [nutdev1]
              driver = "tripplite_usb"
              port = "auto"
              vendorid = "09AE"
              productid = "0001"
              product = "TRIPP LITE INTERNET750U"
              vendor = "TRIPP LITE"
              bus = "000"
              device = "002"
              busport = "007"
              ###NOTMATCHED-YET###bcdDevice = "0001"
      

      If I try to run the triplite driver with -u root, still fails (altered to show only the UPS section, it lists all my usb hubs and other componments)

      Network UPS Tools - Tripp Lite OMNIVS / SMARTPRO driver 0.35 (2.8.1.1)
      Warning: This is an experimental driver.
      Some features may not function correctly.
      
         0.000000     [D1] Network UPS Tools version 2.8.1.1 (release/snapshot of 2.8.1.1) built with FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152); Target: x86_64-unknown-freebsd14.0; Thread model: posix and configured with flags: --sysconfdir=/usr/local/etc/nut --program-transform-name= --localstatedir=/var/db/nut --datadir=/usr/local/etc/nut --with-devd-dir=/usr/local/etc/devd --with-drvpath=/usr/local/libexec/nut --with-statepath=/var/db/nut --with-altpidpath=/var/db/nut --with-pidpath=/var/db/nut --with-pkgconfig-dir=/usr/local/libdata/pkgconfig --with-user=nut --with-group=nut --with-python=/usr/local/bin/python3.11 --without-python2 --with-python3=/usr/local/bin/python3.11 --without-nut_monitor --with-ltdl --with-nut-scanner --with-avahi --with-cgi --with-cgipath=/usr/local/www/cgi-bin/nut --with-htmlpath=/usr/local/www/nut --with-gd-includes=-I/usr/local/include --with-gd-libs='-L/usr/local/lib -lgd' --without-dev --with-freeipmi --without-ipmi --with-doc=no --with-modbus --with-neon --without-nss --with-openssl --with-powerman --with-serial --with-snmp --with-usb=auto --prefix=/usr/local --mandir=/usr/local/man --disable-silent-rules --infodir=/usr/local/share/info/ --build=amd64-portbld-freebsd14.0
         0.000022     [D1] debug level is '2'
         0.000186     [D1] Succeeded to become_user(root): now UID=0 GID=0
      
         0.000483     [D2] Checking device 4 of 7 (09AE/0001)
         0.007417     [D2] - VendorID: 09ae
         0.007420     [D2] - ProductID: 0001
         0.007421     [D2] - Manufacturer: TRIPP LITE
         0.007423     [D2] - Product: TRIPP LITE INTERNET750U
         0.007425     [D2] - Serial Number: unknown
         0.007427     [D2] - Bus: 000
         0.007428     [D2] - Bus Port: 007
         0.007429     [D2] - Device: 002
         0.007431     [D2] - Device release number: 0001
         0.007432     [D2] Trying to match device
         0.007434     [D2] Device matches
         0.007436     [D2] Reading configuration descriptor 1 of 1
         0.007455     [D2] Claimed interface 0 successfully
         0.008178     [D2] Retrieved HID descriptor (expected 9, got 9)
         0.008182     [D2] HID descriptor length 52
         0.808952     Unit ID not retrieved (not available on all models)
         0.808960     [D2] Caller doesn't like this device
      
         0.819357     [D2] libusb1: No appropriate HID device found
         0.819360     libusb1: Could not open any HID devices: insufficient permissions on everything
         0.819362     No matching USB/HID UPS found
         0.819374     upsnotify: failed to notify about state 4: no notification tech defined, will not spam more about it
      

      usbconfig dump_device_desc

      ugen0.2: <TRIPP LITE TRIPP LITE INTERNET750U> at usbus0, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (60mA)
      
        bLength = 0x0012
        bDescriptorType = 0x0001
        bcdUSB = 0x0110
        bDeviceClass = 0x0000  <Probed by interface class>
        bDeviceSubClass = 0x0000
        bDeviceProtocol = 0x0000
        bMaxPacketSize0 = 0x0008
        idVendor = 0x09ae
        idProduct = 0x0001
        bcdDevice = 0x0001
        iManufacturer = 0x0001  <TRIPP LITE>
        iProduct = 0x0002  <TRIPP LITE INTERNET750U       >
        iSerialNumber = 0x0000  <no string>
        bNumConfigurations = 0x0001
      

      So yeah not to sure what to do next. All I can see is the insufficient permissions, wondering if it would be a permission thing, but on the other end, even trying it with root doesn't work.

      Any input welcome!

      dennypageD 1 Reply Last reply Reply Quote 0
      • dennypageD
        dennypage @Evraptor
        last edited by

        @Evraptor The permissions error is a red herring.

        It is possible that you are encountering a bug in NUT. There is an update to the version of NUT on pfSense pending. Probably best to wait for it unless you are in the mood to purchase another UPS.

        Btw, "older UPS" often means older batteries. Lead acid batteries such as that UPS uses are good for only 3-5 years. If the batteries are older than 3 years, or the UPS has been unplugged for more than a year, the batteries will almost certainly need replacing.

        1 Reply Last reply Reply Quote 0
        • E
          Evraptor
          last edited by

          Hey!

          Good, hopefully the update will fix it up!

          Old ups, but batteries inside were replaced. Ended up finding new batteries for that ups.

          Kinda curious on what could produce a bug like this. From what I can see everything is setup proprely. Even permissions on the usb device is good. Really weird!

          1 Reply Last reply Reply Quote 0
          • E
            Evraptor
            last edited by

            Finally got something working.

            in ups.conf box in the settings I've added:

            [UPS]
            subdriver = "TrippLite HID 0.85"
            vendorid = "09ae"
            productid = "0001"
            

            So now I do have informations working on the UPS, but it states it's running on battery. Almost like the driver is not getting all the infos it requires

            dennypageD 1 Reply Last reply Reply Quote 0
            • dennypageD
              dennypage @Evraptor
              last edited by

              @Evraptor You can keep playing with it, but I would not trust it.

              1 Reply Last reply Reply Quote 0
              • S
                stompro
                last edited by

                Hello, I just updated to 24.03 on a couple of netgate 4100 devices, and now I'm running into this also with several TRIPP LITE SMART750RM1U that are about a year old. They previously were working fine on an older version of pfSense.

                I'm also seeing the "[D2] Caller doesn't like this device" debug message.

                Sounds like I just have to wait for a new version though. Thanks for posting and thank you to dennypage for being so helpful.

                If any debug info would help I'm happy to include it.

                Hardware used: Alix 2D13 X 10, APU2D4 X 10, SG-2200 X 10, SG-2440 X 4

                dennypageD 2 Replies Last reply Reply Quote 0
                • dennypageD
                  dennypage @stompro
                  last edited by

                  @stompro On the 4100, you could try the attached driver to confirm that it works.

                  usbhid-ups.zip

                  1 Reply Last reply Reply Quote 1
                  • dennypageD
                    dennypage @stompro
                    last edited by

                    @stompro If you tried the driver, I'd appreciated it if you let me know the result. Thanks.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      stompro @dennypage
                      last edited by

                      @dennypage Sorry, I haven't figured out yet how I feel about using random binaries from web forms. After the XZ Backdoor hack I'm feeling paranoid about trusting established community contributors.

                      The linked binary is much larger than the currently installed version, which weirded me out. It is probably something like debugging symbols being included.

                      And I just got busy with other projects.

                      Any way I can pull a specific git branch and compile it myself?
                      Thanks

                      Hardware used: Alix 2D13 X 10, APU2D4 X 10, SG-2200 X 10, SG-2440 X 4

                      dennypageD 1 Reply Last reply Reply Quote 0
                      • dennypageD
                        dennypage @stompro
                        last edited by

                        @stompro Fair enough. I'm actually the pfSense NUT maintainer, but I do understand your caution. If you want to wait for official builds that's totally understandable.

                        Regarding the size, yes, the executable I posted has debug symbols, whereas the production one does not. Unfortunately the standard development tools are not present on pfSense so you cannot run the strip and size commands.

                        Screenshot 2024-07-10 at 09.46.53.png

                        FWIW, the sha256sum on the executable as posted is

                        d4e4563ca03ed92ef780c0799cd1e29c3d53638d738fb74e47b196c8540d44cf
                        

                        If you want to build it yourself, you will need to set up a FreeBSD 14 system and then install the FreeBSD ports package to do the build from.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.