#Unifi UPS Tower - NUT Server

1 messages · Page 1 of 1 (latest)

rugged heron
#

I received the Unifi UPS Tower this week and am attempting to integrate the NUT Server with Home Assistant.

I have enabled the NUT Server on the UPS Tower, without credentials, however each time I attempt to connect to the NUT Server (with the correct host/port) via the NUT Integration, I receive a Connection Error:.

I have confirmed that I can ping the UPS Tower from Home Assistant, and that the port is open and accessible via nc and nmap. I don't see any reference to the connection attempt/failure in the logs.

➜  ~ ping 192.168.1.111
PING 192.168.1.111 (192.168.1.111): 56 data bytes
64 bytes from 192.168.1.111: seq=0 ttl=63 time=0.611 ms
64 bytes from 192.168.1.111: seq=1 ttl=63 time=0.581 ms
64 bytes from 192.168.1.111: seq=2 ttl=63 time=0.509 ms
^C
--- 192.168.1.111 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.509/0.567/0.611 ms

➜  ~ nc -zv 192.168.1.111 3493
192.168.1.111 (192.168.1.111:3493) open

➜  ~ nmap -p 3493 192.168.1.111
Starting Nmap 7.97 ( https://nmap.org ) at 2025-10-11 11:28 -0400
Nmap scan report for 192.168.1.111
Host is up (0.00068s latency).

PORT     STATE SERVICE
3493/tcp open  nut

Nmap done: 1 IP address (1 host up) scanned in 0.63 seconds

Has anybody been able to successfully connect to the NUT Server on the Unifi UPS Tower?

Thanks!

bright path
#

Have you tried it with credentials?

rugged heron
#

I have. I get the same results. 🙁

bright path
#

My only other idea would be a permission setting issue on the server side.

#

What do the HA logs say?

rugged heron
#

Nothing in the logs. I set the log level to DEBUG and I don't see an entry for the NUT integrations.

#

Looking through the NUT Integration source code, I don't see a lot of logging.

rugged heron
#

I did a little more digging. From a different machine I ran additional commands (ups is the ID I provided to the NUT Server configuration in Unifi):

$ nc 192.168.1.111 3493
LIST UPS
BEGIN LIST UPS "ups"
UPS ups UPS identifier
END LIST UPS "ups"

The UniFI UPS is hosting a NUT server with an ID of ups.

$ upsc -l 192.168.1.111 -p 3493
Init SSL without certificate database
ups

upsc -l reveals the same thing.

$ nc 192.168.1.111 3493
LIST VAR ups
BEGIN LIST VAR "ups"
VAR "ups" "battery.charge" 100
VAR "ups" "battery.low" 9.67
VAR "ups" "battery.voltage" 13.5
VAR "ups" "battery.runtime" 1111
VAR "ups" "input.voltage" 121.3
VAR "ups" "input.frequency" 60.0
VAR "ups" "input.voltage.nominal" 120.0
VAR "ups" "input.transfer.high" 145.0
VAR "ups" "input.transfer.low" 89.0
VAR "ups" "output.voltage" 121.3
VAR "ups" "output.current" 1.50
VAR "ups" "output.power" 240.0
VAR "ups" "output.power.nominal" 960.0
VAR "ups" "output.frequency" 60.0
VAR "ups" "ups.load" 25
VAR "ups" "ups.status" "OL CHRG"
VAR "ups" "ups.model" TOWER_1000VA_120V
VAR "ups" "ups.serial" [REDACTED]
VAR "ups" "ups.mfr" Ubiquiti
VAR "ups" "ups.id" "ups"
VAR "ups" "ups.type" line-interactive
VAR "ups" "ups.test.result" "no test"
VAR "ups" "ups.test.date" 0000-00-00
VAR "ups" "ups.test.interval" 43200

END LIST VAR "ups"

Again, works as one would expect.

$ upsc ups@192.168.1.111 -p 3493
Init SSL without certificate database
Error: old-style variable names are not supported

Here is the real issue. I suspect the Unifi UPS is using an older version of the NUT protocol and is not compatible with the upsc tool I am using (and presumably the aionut python library that the NUT integraion is using).

#

With a bit more research, this does appear to be an older protocol. It seems that this was used through 2.7.x. The current protocol expects the result to look like this:

VAR ups battery.charge "100"
VAR ups battery.low "10"
VAR ups battery.voltage "13.5"
VAR ups input.voltage "121.3"
VAR ups output.voltage "121.3"
VAR ups ups.status "OL CHRG"
VAR ups device.model "TOWER_1000VA_120V"
VAR ups device.mfr "Ubiquiti"
#

Unless I am mistaken, it seems that we have to wait for a firmware update to the UPS, or the integration to understand both protocols.

bright path
#

If you are running HAOS, have you tried to use the NUT add-on in netclient mode? And maybe connecting the integration to that add.on. Not sure how much data it forwards, but the host shutdown should work.

rugged heron
#

Good idea...I did successfully configure the add-on in netclient mode, however I am unable to connect to it through the integration. I will try a few more things this weekend. Thanks!

dapper cobalt
#

If you're still trying to get this to work - take a look at this community post which seems to solve it - https://community.home-assistant.io/t/unifi-ups-tower-integration-with-home-assistant/941077