APCUPSd


APCUPSd status information can be integrated into Home Assistant when the Network Information Server (NIS) is configured is enabled on the APC device.

There is currently support for the following device types within Home Assistant:

Hass.io Installation

Install this unofficial add-on to use this integration with Hass.io. Keep in mind that we can’t give you support for this add-on.

After installation, follow the instructions on the Github page to configure the plugin. Then continue to follow the integration configurations below.

Configuration

To enable this sensor, add the following lines to your configuration.yaml:

# Example configuration.yaml entry
apcupsd:

Configuration Variables

host

(string)(Optional)

The hostname/IP address on which the APCUPSd NIS is being served.

Default value:

localhost

port

(integer)(Optional)

The port on which the APCUPSd NIS is listening.

Default value:

3551

If you get ConnectionRefusedError: Connection refused errors in the Home assistant logs, ensure the APCUPSd configuration directives used by its Network Information Server is set to permit connections from all addresses NISIP 0.0.0.0, else non-local addesses will not connect. This includes Hass.io running in Docker, even when hosted on the same machine or a virtual machine.

Binary sensor

In addition to the APCUPSd Sensor devices, you may also create a device which is simply “on” when the UPS status is online and “off” at all other times.

Configuration

To enable this sensor, you first have to set up apcupsd integration (above), and add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
binary_sensor:
  - platform: apcupsd

Configuration Variables

name

(string)(Optional)

Name to use in the frontend.

Default value:

UPS Online Status

Sensor

The apcupsd sensor platform allows you to monitor a UPS (battery backup) by using data from the apcaccess command.

Configuration

To use this sensor platform, you first have to set up apcupsd integration (above), and add the following to your configuration.yaml file:

# Example configuration.yaml entry
sensor:
  - platform: apcupsd
    resources:
      - bcharge
      - linev

Configuration Variables

resources

(list)(Required)

Contains all entries to display.

Example

Given the following output from apcaccess:

APC      : 001,051,1149
DATE     : 2016-02-09 17:13:31 +0000
HOSTNAME : localhost
VERSION  : 3.14.12 (29 March 2014) redhat
UPSNAME  : netrack
CABLE    : Custom Cable Smart
DRIVER   : APC Smart UPS (any)
UPSMODE  : Stand Alone
STARTTIME: 2016-02-09 16:06:47 +0000
MODEL    : SMART-UPS 1400
STATUS   : TRIM ONLINE
LINEV    : 247.0 Volts
LOADPCT  : 13.0 Percent
BCHARGE  : 100.0 Percent
TIMELEFT : 104.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 0 Seconds
MAXLINEV : 249.6 Volts
MINLINEV : 244.4 Volts
OUTPUTV  : 218.4 Volts
[...]

Use the values from the left hand column (lower case required).

Full Example Configuration:

sensor:
  - platform: apcupsd
    resources:
      - apc
      - date
      - hostname
      - version
      - upsname
      - cable
      - driver
      - upsmode
      - starttime
      - model
      - status
      - linev
      - loadpct
      - bcharge
      - timeleft
      - mbattchg
      - mintimel
      - maxtime
      - maxlinev
      - minlinev
      - outputv