I’m using Smart-UPS RT 10000 XL on my network and wanted to use it also with my iMac runing macOS Sierra 10.12. An AP9619 card enables user to monitor UPS status with SNMP. For that purpose I installed apcupsd package using Homebrew:
brew install apcupsd
Configuration file is located at:
/usr/local/etc/apcupsd/apcupsd.conf
and there was a need to change some things:
UPSCABLE smart UPSTYPE snmp DEVICE 192.168.1.13:161:APC:public
Everything seemed to work, but after some time I noticed that power failure didn’t shut down my iMac.
I noticed that after reboot status check
/usr/local/Cellar/apcupsd/3.14.14/sbin/apcaccess status
resulted in something like that:
APC : 001,018,0459 DATE : 2018-02-03 13:27:16 +0100 HOSTNAME : My-iMac.local VERSION : 3.14.14 (31 May 2016) darwin UPSNAME : My-iMac.local CABLE : Ethernet Link DRIVER : SNMP UPS Driver UPSMODE : Stand Alone STARTTIME: 2018-02-03 13:08:14 +0100 STATUS : MBATTCHG : 5 Percent MINTIMEL : 3 Minutes MAXTIME : 0 Seconds NUMXFERS : 0 TONBATT : 0 Seconds CUMONBATT: 0 Seconds XOFFBATT : N/A STATFLAG : 0x05000000 END APC : 2018-02-03 13:27:44 +0100
I seemed that UPS was not visible. After restarting service
sudo sudo launchctl stop org.apcupsd.apcupsd sudo sudo launchctl start org.apcupsd.apcupsd
everything was going back to normal:
APC : 001,046,1075 DATE : 2018-02-03 13:45:42 +0100 HOSTNAME : My-iMac.local VERSION : 3.14.14 (31 May 2016) darwin UPSNAME : UPS CABLE : Ethernet Link DRIVER : SNMP UPS Driver UPSMODE : Stand Alone STARTTIME: 2018-02-03 13:45:39 +0100 MODEL : Smart-UPS RT 10000 XL STATUS : ONLINE LINEV : 243.0 Volts LOADPCT : 15.0 Percent BCHARGE : 100.0 Percent TIMELEFT : 114.0 Minutes MBATTCHG : 5 Percent MINTIMEL : 3 Minutes MAXTIME : 0 Seconds MAXLINEV : 243.0 Volts MINLINEV : 236.0 Volts OUTPUTV : 229.0 Volts SENSE : Unknown DWAKE : 0 Seconds DSHUTD : 20 Seconds DLOWBATT : 2 Minutes LOTRANS : 196.0 Volts HITRANS : 253.0 Volts RETPCT : 0.0 Percent ITEMP : 25.0 C ALARMDEL : 5 Seconds BATTV : 218.0 Volts LINEFREQ : 49.0 Hz LASTXFER : Unacceptable line voltage changes NUMXFERS : 0 TONBATT : 0 Seconds CUMONBATT: 0 Seconds XOFFBATT : N/A SELFTEST : OK STESTI : 336 STATFLAG : 0x05000008 MANDATE : 07/11/07 SERIALNO : IS000000000 BATTDATE : 07/11/07 NOMOUTV : 230 Volts EXTBATTS : 2 FIRMWARE : 476.17.W END APC : 2018-02-03 13:45:45 +0100
After some debugging I realized that daemon is started before network was ready (don’t know if it is a brew package problem or my configuration is specific).
Turned out that apcupsd wasn’t able to use network connection initialized after it’s start. My solution is not very elegant, but fully satisfying – addition of some delay
/bin/sleep 180
in the second line of
/usr/local/Cellar/apcupsd/3.14.14/sbin/apcupsd-start
was sufficient.