Re: [Apcupsd-users] apcaccess does not provide correct data
Brought to you by:
adk0212
|
From: Paul F. <pa...@fl...> - 2022-10-26 11:31:53
|
If this model does modbus over serial, that is your best bet, it's probably not reporting anything useful over the standard USB link (and modbus over USB is broken in apcupsd - don't use that). Regards Paul On 26/10/2022 09:24, Germano Massullo wrote: > Hello, I am one of apcupsd package maintainers on RHEL/CentOS > Stream/Fedora [1] > I have a BackUPS Pro 900 connected to a RHEL 9 machine. apcupsd is not > able to retrieve correct metrics from the UPS. > They seem to be some default data (read for example the 1980 > BATTDATE). The MBATTCHG instead should be 100% because the battery is > brand new. > The UPS is able to talk to the apcupsd service, indeed when there is a > power outage, the computer is correctly shutted down. The problem is, > since the UPS is not able to provide metrics, is not able to > understand the real battery level in order to start a shutdown. It > just thinks that the battery is already at 50% therefore starts an > immediate shutdown as soon there is even a little power outage. I will > be forced to bypass battery level threshold in apcupsd.conf [2] > > Best regards > > # apcaccess > APC : 001,034,0764 > DATE : 2022-10-26 10:11:21 +0200 > VERSION : 3.14.14 (31 May 2016) redhat > UPSNAME : omega > CABLE : USB Cable > DRIVER : USB UPS Driver > UPSMODE : Stand Alone > STARTTIME: 2022-10-26 10:11:19 +0200 > MODEL : > STATUS : NOBATT > LINEV : 0.0 Volts > LOADPCT : 0.0 Percent > BCHARGE : 0.0 Percent > TIMELEFT : 0.0 Minutes > MBATTCHG : 50 Percent > MINTIMEL : 10 Minutes > MAXTIME : 0 Seconds > SENSE : Low > LOTRANS : 0.0 Volts > HITRANS : 0.0 Volts > ALARMDEL : 30 Seconds > BATTV : 0.0 Volts > LASTXFER : No transfers since turnon > NUMXFERS : 0 > TONBATT : 0 Seconds > CUMONBATT: 0 Seconds > XOFFBATT : N/A > SELFTEST : ?? > STATFLAG : 0x01000000 > SERIALNO : > BATTDATE : 1980-00-00 > NOMINV : 0 Volts > NOMBATTV : 0.0 Volts > END APC : 2022-10-26 10:11:21 +0200 > > [1]: https://src.fedoraproject.org/rpms/apcupsd > > [2]: > # cat /etc/apcupsd/apcupsd.conf > ## apcupsd.conf v1.1 ## > # > # for apcupsd release 3.14.14 (31 May 2016) - redhat > # > # "apcupsd" POSIX config file > > # > # Note that the apcupsd daemon must be restarted in order for changes to > # this configuration file to become active. > # > > # > # ========= General configuration parameters ============ > # > > # UPSNAME xxx > # Use this to give your UPS a name in log files and such. This > # is particulary useful if you have multiple UPSes. This does not > # set the EEPROM. It should be 8 characters or less. > #UPSNAME > > # UPSCABLE <cable> > # Defines the type of cable connecting the UPS to your computer. > # > # Possible generic choices for <cable> are: > # simple, smart, ether, usb > # > # Or a specific cable model number may be used: > # 940-0119A, 940-0127A, 940-0128A, 940-0020B, > # 940-0020C, 940-0023A, 940-0024B, 940-0024C, > # 940-1524C, 940-0024G, 940-0095A, 940-0095B, > # 940-0095C, 940-0625A, M-04-02-2000 > # > UPSCABLE usb > > # To get apcupsd to work, in addition to defining the cable > # above, you must also define a UPSTYPE, which corresponds to > # the type of UPS you have (see the Description for more details). > # You must also specify a DEVICE, sometimes referred to as a port. > # For USB UPSes, please leave the DEVICE directive blank. For > # other UPS types, you must specify an appropriate port or address. > # > # UPSTYPE DEVICE Description > # apcsmart /dev/tty** Newer serial character device, > appropriate for > # SmartUPS models using a serial cable (not > USB). > # > # usb <BLANK> Most new UPSes are USB. A blank DEVICE > # setting enables autodetection, which is > # the best choice for most installations. > # > # net hostname:port Network link to a master apcupsd through > apcupsd's > # Network Information Server. This is used > if the > # UPS powering your computer is connected to a > # different computer for monitoring. > # > # snmp hostname:port:vendor:community > # SNMP network link to an SNMP-enabled UPS > device. > # Hostname is the ip address or hostname of > the UPS > # on the network. Vendor can be can be > "APC" or > # "APC_NOTRAP". "APC_NOTRAP" will disable > SNMP trap > # catching; you usually want "APC". Port is > usually > # 161. Community is usually "private". > # > # netsnmp hostname:port:vendor:community > # OBSOLETE > # Same as SNMP above but requires use of the > # net-snmp library. Unless you have a > specific need > # for this old driver, you should use > 'snmp' instead. > # > # dumb /dev/tty** Old serial character device for use with > # simple-signaling UPSes. > # > # pcnet ipaddr:username:passphrase:port > # PowerChute Network Shutdown protocol > which can be > # used as an alternative to SNMP with the > AP9617 > # family of smart slot cards. ipaddr is the IP > # address of the UPS management card. > username and > # passphrase are the credentials for which > the card > # has been configured. port is the port > number on > # which to listen for messages from the > UPS, normally > # 3052. If this parameter is empty or > missing, the > # default of 3052 will be used. > # > # modbus /dev/tty** Serial device for use with newest > SmartUPS models > # supporting the MODBUS protocol. > # modbus <BLANK> Leave the DEVICE setting blank for MODBUS > over USB > # or set to the serial number of the UPS to > ensure > # that apcupsd binds to that particular unit > # (helpful if you have more than one USB UPS). > # > UPSTYPE usb > DEVICE > > # POLLTIME <int> > # Interval (in seconds) at which apcupsd polls the UPS for status. This > # setting applies both to directly-attached UPSes (UPSTYPE apcsmart, > usb, > # dumb) and networked UPSes (UPSTYPE net, snmp). Lowering this setting > # will improve apcupsd's responsiveness to certain events at the > cost of > # higher CPU utilization. The default of 60 is appropriate for most > # situations. > #POLLTIME 60 > > # LOCKFILE <path to lockfile> > # Path for device lock file. This is the directory into which the > lock file > # will be written. The directory must already exist; apcupsd will > not create > # it. The actual name of the lock file is computed from DEVICE. > # Not used on Win32. > LOCKFILE /var/lock > > # SCRIPTDIR <path to script directory> > # Directory in which apccontrol and event scripts are located. > SCRIPTDIR /etc/apcupsd > > # PWRFAILDIR <path to powerfail directory> > # Directory in which to write the powerfail flag file. This file > # is created when apcupsd initiates a system shutdown and is > # checked in the OS halt scripts to determine if a killpower > # (turning off UPS output power) is required. > PWRFAILDIR /etc/apcupsd > > # NOLOGINDIR <path to nologin directory> > # Directory in which to write the nologin file. The existence > # of this flag file tells the OS to disallow new logins. > NOLOGINDIR /etc > > > # > # ======== Configuration parameters used during power failures ========== > # > > # The ONBATTERYDELAY is the time in seconds from when a power failure > # is detected until we react to it with an onbattery event. > # > # This means that, apccontrol will be called with the powerout argument > # immediately when a power failure is detected. However, the > # onbattery argument is passed to apccontrol only after the > # ONBATTERYDELAY time. If you don't want to be annoyed by short > # powerfailures, make sure that apccontrol powerout does nothing > # i.e. comment out the wall. > ONBATTERYDELAY 6 > > # > # Note: BATTERYLEVEL, MINUTES, and TIMEOUT work in conjunction, so > # the first that occurs will cause the initation of a shutdown. > # > > # If during a power failure, the remaining battery percentage > # (as reported by the UPS) is below or equal to BATTERYLEVEL, > # apcupsd will initiate a system shutdown. > BATTERYLEVEL 50 > > # If during a power failure, the remaining runtime in minutes > # (as calculated internally by the UPS) is below or equal to MINUTES, > # apcupsd, will initiate a system shutdown. > MINUTES 10 > > # If during a power failure, the UPS has run on batteries for TIMEOUT > # many seconds or longer, apcupsd will initiate a system shutdown. > # A value of 0 disables this timer. > # > # Note, if you have a Smart UPS, you will most likely want to disable > # this timer by setting it to zero. That way, you UPS will continue > # on batteries until either the % charge remaing drops to or below > BATTERYLEVEL, > # or the remaining battery runtime drops to or below MINUTES. Of > course, > # if you are testing, setting this to 60 causes a quick system > shutdown > # if you pull the power plug. > # If you have an older dumb UPS, you will want to set this to less than > # the time you know you can run on batteries. > TIMEOUT 0 > > # Time in seconds between annoying users to signoff prior to > # system shutdown. 0 disables. > ANNOY 300 > > # Initial delay after power failure before warning users to get > # off the system. > ANNOYDELAY 60 > > # The condition which determines when users are prevented from > # logging in during a power failure. > # NOLOGON <string> [ disable | timeout | percent | minutes | always ] > NOLOGON disable > > # If KILLDELAY is non-zero, apcupsd will continue running after a > # shutdown has been requested, and after the specified time in > # seconds attempt to kill the power. This is for use on systems > # where apcupsd cannot regain control after a shutdown. > # KILLDELAY <seconds> 0 disables > KILLDELAY 0 > > # > # ==== Configuration statements for Network Information Server ==== > # > > # NETSERVER [ on | off ] on enables, off disables the network > # information server. If netstatus is on, a network information > # server process will be started for serving the STATUS and > # EVENT data over the network (used by CGI programs). > NETSERVER on > > # NISIP <dotted notation ip address> > # IP address on which NIS server will listen for incoming connections. > # This is useful if your server is multi-homed (has more than one > # network interface and IP address). Default value is 0.0.0.0 which > # means any incoming request will be serviced. Alternatively, you can > # configure this setting to any specific IP address of your server and > # NIS will listen for connections only on that interface. Use the > # loopback address (127.0.0.1) to accept connections only from the > # local machine. > NISIP 0.0.0.0 > > # NISPORT <port> default is 3551 as registered with the IANA > # port to use for sending STATUS and EVENTS data over the network. > # It is not used unless NETSERVER is on. If you change this port, > # you will need to change the corresponding value in the cgi directory > # and rebuild the cgi programs. > NISPORT 3551 > > # If you want the last few EVENTS to be available over the network > # by the network information server, you must define an EVENTSFILE. > EVENTSFILE /var/log/apcupsd.events > > # EVENTSFILEMAX <kilobytes> > # By default, the size of the EVENTSFILE will be not be allowed to > exceed > # 10 kilobytes. When the file grows beyond this limit, older EVENTS > will > # be removed from the beginning of the file (first in first out). The > # parameter EVENTSFILEMAX can be set to a different kilobyte value, > or set > # to zero to allow the EVENTSFILE to grow without limit. > EVENTSFILEMAX 10 > > # > # ========== Configuration statements used if sharing ============= > # a UPS with more than one machine > > # > # Remaining items are for ShareUPS (APC expansion card) ONLY > # > > # UPSCLASS [ standalone | shareslave | sharemaster ] > # Normally standalone unless you share an UPS using an APC ShareUPS > # card. > UPSCLASS standalone > > # UPSMODE [ disable | share ] > # Normally disable unless you share an UPS using an APC ShareUPS card. > UPSMODE disable > > # > # ===== Configuration statements to control apcupsd system logging > ======== > # > > # Time interval in seconds between writing the STATUS file; 0 disables > STATTIME 0 > > # Location of STATUS file (written to only if STATTIME is non-zero) > STATFILE /var/log/apcupsd.status > > # LOGSTATS [ on | off ] on enables, off disables > # Note! This generates a lot of output, so if > # you turn this on, be sure that the > # file defined in syslog.conf for LOG_NOTICE is a named pipe. > # You probably do not want this on. > LOGSTATS off > > # Time interval in seconds between writing the DATA records to > # the log file. 0 disables. > DATATIME 0 > > # FACILITY defines the logging facility (class) for logging to syslog. > # If not specified, it defaults to "daemon". This is useful > # if you want to separate the data logged by apcupsd from other > # programs. > #FACILITY DAEMON > > # > # ========== Configuration statements used in updating the UPS EPROM > ========= > # > > # > # These statements are used only by apctest when choosing "Set EEPROM > with conf > # file values" from the EEPROM menu. THESE STATEMENTS HAVE NO EFFECT > ON APCUPSD. > # > > # UPS name, max 8 characters > #UPSNAME UPS_IDEN > > # Battery date - 8 characters > #BATTDATE mm/dd/yy > > # Sensitivity to line voltage quality (H cause faster transfer to > batteries) > # SENSITIVITY H M L (default = H) > #SENSITIVITY H > > # UPS delay after power return (seconds) > # WAKEUP 000 060 180 300 (default = 0) > #WAKEUP 60 > > # UPS Grace period after request to power off (seconds) > # SLEEP 020 180 300 600 (default = 20) > #SLEEP 180 > > # Low line voltage causing transfer to batteries > # The permitted values depend on your model as defined by last letter > # of FIRMWARE or APCMODEL. Some representative values are: > # D 106 103 100 097 > # M 177 172 168 182 > # A 092 090 088 086 > # I 208 204 200 196 (default = 0 => not valid) > #LOTRANSFER 208 > > # High line voltage causing transfer to batteries > # The permitted values depend on your model as defined by last letter > # of FIRMWARE or APCMODEL. Some representative values are: > # D 127 130 133 136 > # M 229 234 239 224 > # A 108 110 112 114 > # I 253 257 261 265 (default = 0 => not valid) > #HITRANSFER 253 > > # Battery charge needed to restore power > # RETURNCHARGE 00 15 50 90 (default = 15) > #RETURNCHARGE 15 > > # Alarm delay > # 0 = zero delay after pwr fail, T = power fail + 30 sec, L = low > battery, N = never > # BEEPSTATE 0 T L N (default = 0) > #BEEPSTATE T > > # Low battery warning delay in minutes > # LOWBATT 02 05 07 10 (default = 02) > #LOWBATT 2 > > # UPS Output voltage when running on batteries > # The permitted values depend on your model as defined by last letter > # of FIRMWARE or APCMODEL. Some representative values are: > # D 115 > # M 208 > # A 100 > # I 230 240 220 225 (default = 0 => not valid) > #OUTPUTVOLTS 230 > > # Self test interval in hours 336=2 weeks, 168=1 week, ON=at power on > # SELFTEST 336 168 ON OFF (default = 336) > #SELFTEST 336 > > > > _______________________________________________ > Apcupsd-users mailing list > Apc...@li... > https://lists.sourceforge.net/lists/listinfo/apcupsd-users |