NUT add-on gets all values except status from one UPS, other UPS works fine

I have 2 APC SmartUPS units I am trying to move to Home Assistant, using it as the NUT server, and have my NUT clients point to it.

Previously, I was running NUT in the server role on TrueNAS scale and a Ubuntu server, and both of these UPS’s reported status changes quickly to the NUT server running on those machines.

I did the following to set up NUT on home assistant. The units are called ‘Rack’ and ‘Desktop’:

  1. Installed the NUT add-on
  2. Configured it to talk to both UPS units
  3. Confirmed from my NUT clients that I can read the status of both UPS’s using ‘upsc @’

The issue comes in with getting timely updates from only one of the units. I’d previously been using just the NUT integration in Home Assistant as a slave to the NUT servers on the network. I updated all of my dashboards to point to the local NUT server in Home Assistant instead, and those read stats fine.

I only noticed an issue when I updated my notifications and tested, and did not get a power outage notification for one of the units.

When I unplug the ‘Rack’ UPS, no status change is detected from NUT on Home Assistant, either by viewing the entity for UPS status, or looking at the NUT logs. EDIT: Noticed with more testing that the input voltage value does update immediately, so I am also getting a ‘Rack voltage transfer reason’ of low input voltage, it is specifically the Status that is not changing from Online to On Battery.

When I unplug the ‘Desktop’ UPS, the status change (from Online to On Battery) shows within seconds on the entity, and in the NUT logs.

The ‘Rack’ UPS when running on other NUT servers was telling NUT of a power outage within a couple of seconds, and ‘Desktop’ still is for some reason.

These are both APC SmartUPS units operating over USB, and I am specifying which is which using the 1500 vs 1000 in the product name in the NUT server config.

Below is the configuration, not really sure what I am doing wrong here:

users:

  • username: upsmon
    password:
    instcmds:
    • all
      actions:
      devices:
  • name: Rack
    driver: usbhid-ups
    port: auto
    config:
    • product = “.1500.
    • pollinterval = 2
    • pollfreq = 2
  • name: Desktop
    driver: usbhid-ups
    port: auto
    config:
    • product = “.1000.
    • pollinterval = 2
    • pollfreq = 2
      mode: netserver
      shutdown_host: false
      list_usb_devices: false

I’d like the solution to not be ‘just leave them plugged in to the servers they already work with’. The goal of moving these to Home Assistant is that the machines running NUT servers these are currently on are large with a lot of disk arrays, and I have them shutting off pretty quick during power outages. Home Assistant is on a low power mini PC, so I want to move UPS monitoring there so during power outages, the large servers can still power off quickly, but Home Assistant can continue running and I can keep getting UPS stats from it.