APCUPSD - No UPS page
-
I just installed apcupsd without issue, but I'm not sure it's running. Ps aux|grep apcups does not show it running and when I click on Services > UPS, I get a 404 error. When I installed the package, there were instructions to adduhid_load="YES" to /boot/loader.conf, but that line does not survive a reboot. I also created /etc/rc.conf.local, with apcupsd_enable=YES.
How do I get apcupsd working?
tnx jk
-
That sounds like it didn't install correctly. The first thing I would do is remove and the re-install it if you have not already.
It installed fine a few minutes ago for me in 2.4.4p2:
Steve
-
I assume that's the Services > UPS page. After uninstalling and reinstalling, I still get the same thing. I followed these directions and found the line uhid_load="YES" in loader.conf does not survive a reboot.
Sample files and scripts are installed in /usr/local/etc/apcupsd.
You need to modify /usr/local/etc/apcupsd/apcupsd.conf as follows:For serial cable: DEVICE /dev/cuadX (or /dev/cuaaX for [45.]x)
For USB cable: DEVICE (yes, leave it blank after DEVICE)NOTE that for USB cable you need uhid support.
To compile this driver into the kernel, place the following line in your
kernel configuration file:
device uhidAlternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):
uhid_load="YES"Add apcupsd_enable=YES to your /etc/rc.conf[.local] to have apcupsd
starting up at boot time. -
You should not need to make any changes to files manually. The underlying FreeBSD packages show that output when they install but the pfSense package handles all that for you.
If the page is not displaying still then you have some bigger issue. It could be cached in your browser though.
If the original download was corrupted you may need to uninstall, then remove cached pkgs using:
pkg-static clean -ay
Before reinstalling.Steve
-
Problem solved. When the package was installed, it created 2 entries on the Services drop down list, one of Apcupsd and also UPS. I saw the UPS one first and that's the one that returned the 404 error. Why does it create both items?
Next problem, while it's apparently running, it doesn't seem to be gathering much data. I also run apcupsd on my Linux system and the monitor, which displays both the USB connected (Linux) and remote UPS (firewall). The Linux computer shows a few traces on the Historical Summary tab, but the one for pfSense only shows bcharge. The status in pfSense matches the full status listed on the Linux box. I've listed the full status for both systems below. Why does the firewall status show so much less info than the Linux box? I moved the USB cables to prove the problem is with pfSense and not a hardware problem with the UPS.
DATE : 2019-04-15 20:50:29 -0400
HOSTNAME : firewall.XYZ.abc
VERSION : 3.14.14 (31 May 2016) freebsd
UPSNAME : APC BE600M1
CABLE : USB Cable
DRIVER : USB UPS Driver
UPSMODE : Stand Alone
STARTTIME: 2019-04-15 20:08:31 -0400
MODEL :
STATUS :
LINEV : 0.0 Volts
LOADPCT : 0.0 Percent
BCHARGE : 100.0 Percent
TIMELEFT : 493.3 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
SENSE : Unknown
LOTRANS : -1.0 Volts
HITRANS : -1.0 Volts
ALARMDEL : Always
BATTV : 0.0 Volts
NUMXFERS : 0
TONBATT : 0 Seconds
CUMONBATT: 0 Seconds
XOFFBATT : N/A
STATFLAG : 0x05000000
SERIALNO :
BATTDATE :
NOMINV : 0 Volts
NOMBATTV : 0.0 Volts
END APC : 2019-04-15 20:51:09 -0400DATE : 2019-04-15 20:51:32 -0400
HOSTNAME : linux
VERSION : 3.14.14 (31 May 2016) suse
UPSNAME : linux
CABLE : USB Cable
DRIVER : USB UPS Driver
UPSMODE : Stand Alone
STARTTIME: 2019-04-14 16:36:48 -0400
MODEL : Back-UPS ES 600M1
STATUS : ONLINE
LINEV : 117.0 Volts
LOADPCT : 18.0 Percent
BCHARGE : 100.0 Percent
TIMELEFT : 41.7 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME : 0 Seconds
SENSE : Medium
LOTRANS : 92.0 Volts
HITRANS : 139.0 Volts
ALARMDEL : 30 Seconds
BATTV : 13.6 Volts
LASTXFER : No transfers since turnon
NUMXFERS : 0
TONBATT : 0 Seconds
CUMONBATT: 0 Seconds
XOFFBATT : N/A
SELFTEST : NO
STATFLAG : 0x05000008
SERIALNO : 4B1830P29067
BATTDATE : 2018-07-27
NOMINV : 120 Volts
NOMBATTV : 12.0 Volts
NOMPOWER : 330 Watts
FIRMWARE : 928.a8 .D USB FW:a8
END APC : 2019-04-15 20:51:33 -0400 -
apcupsd does not install a UPS menu but the NUT package does. If you had ever installed that it might have still been present in the config.
Steve
-
@stephenw10 said in APCUPSD - No UPS page:
apcupsd does not install a UPS menu but the NUT package does. If you had ever installed that it might have still been present in the config.
How does one edit config to get rid of it? Might it be causing the problem with the readings?
-
You can install and then uninstall NUT. Or you can remove the menus from the config file:
<installedpackages> <menu> Some menu </menu> </installedpackages>
Doing that is open to error though.
Steve
-
@stephenw10 said in APCUPSD - No UPS page:
You can install and then uninstall NUT.
That seems to have cleared "UPS" from the Services list. However, I'm still getting bad data from the UPS.
-
So it shows all the data locally but not when the daemon is queried from a different client?
Are they running the same apcupsd version? Seems like a data formatting mismatch.
Steve
-
@stephenw10 said in APCUPSD - No UPS page:
So it shows all the data locally but not when the daemon is queried from a different client?
It shows bad data both locally and on the Linux box. Both show the same data. As I mentioned, I tried moving the USB cables between UPSs, and the problem followed pfSense.
-
Hmm, well I guess I'd try apcupsd on a FreeBSD box next then of you can.
It would be good to know if that's the same version on Linux and FreeBSD though.
Steve
-
@stephenw10 said in APCUPSD - No UPS page:
It would be good to know if that's the same version on Linux and FreeBSD though.
According to what I posted above, they're both the same version.
VERSION : 3.14.14 (31 May 2016) freebsd
VERSION : 3.14.14 (31 May 2016) suse -
It also fails with NUT. I have also tried a different USB port and turning off legacy USB support on the motherboard. The package manager mentions a dependeny "apcupsd-3.14.14_2". Is that already installed? If so, why mention it?
-
Next step is to test it in FreeBSD then.
If it fails there too the report it to the FreeBSD package maintainer.
Steve
-
I don't run FreeBSD, other than pfSense. I run Linux, where it works fine. Incidentally, I read that APC is now running MODBUS, instead of an older protocol. Might that have something to do with it?
-
Could be. My guess would be that the FreeBSD port supports some subset of the data only. But testing against FreeBSD is the only way to know that. Or reading the code...
Steve
-
Unfortunately, my only experience with *BSD is pfSense and I find it frustrating compared to Linux. I understand that this may be due to pfSense running on a somewhat stripped down version of FreeBSD.
Is there any log I can check that might reveal something?
-
You can check /var/log/apcupsd.events but I don;t think you'll see anything new there.
There are some log level options in the config file /usr/local/etc/apcupsd/apcupsd.conf
You can probably start it in debug mode from the command line if the service is stopped:
apcupsd -d 2
Not sure if that actually shows anything extra, I can't test it.Steve
-
@stephenw10 said in APCUPSD - No UPS page:
Could be. My guess would be that the FreeBSD port supports some subset of the data only. But testing against FreeBSD is the only way to know that. Or reading the code...
Steve
I just plugged in an older model APC UPS and it now works. The old model is a " Back-UPS ES 500". So, there is something different in the protocol between old and new that keeps apcupsd and NUT from working with the new UPS. BTW, I had previously used NUT with this old model and it worked fine. As I mentioned, the new UPS works fine with Linux.