[Nut-upsdev] [Nut-upsuser] APC Smart-UPS X 1500 Restart Issue.
Jain, Arvind
AJain at dataram.com
Tue Aug 24 01:07:08 UTC 2010
I have applied a workaround for this issue. I have updated the
/etc/init.d/halt to call the following script instead of
'/sbin/upsdrvctl shutdown'.
[root at DVXSAJ02 ~]# cat /opt/bin/check_ups_status.sh
#!/bin/sh
# This script is called from /etc/init.d/halt.
# Purpose:
# If the file /etc/killpower is present, check for UPS status.
# If AC is present, reboot system.
# If UPS is on battery, sleep and recheck after 30 seconds.
# If UPS runs out of battery, system will stop and get powered-on when
AC is back. Check BIOS for this setting.
# Notes: File system is mounted read-only when this script is called.
# $ups_out will contain the following if AC is Present:
# 0.087258 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type:
Input, ReportID: 0x07, Offset: 2, Size: 1, Value: 1.000000
# $ups_out will contain the following if AC is Not Present:
# 0.087237 Path: UPS.PowerSummary.PresentStatus.ACPresent, Type:
Input, ReportID: 0x07, Offset: 2, Size: 1, Value: 0.000000
[ ! -f /etc/killpower ] && exit 0
first_time=1
while [ 1 ]
do
( sleep 5; /usr/bin/killall usbhid-ups 2> /dev/null ) &
ups_out=`/sbin/usbhid-ups -D -a scups 2>&1 | grep
UPS.PowerSummary.PresentStatus.ACPresent | grep Input`
ac_present=`echo $ups_out | sed 's/.*\<Value\>: \([10]*\).*/\1/'`
if [ $ac_present = "1" ]; then
echo
echo "UPS - AC is present"
echo "Rebooting system..."
/sbin/reboot
exit 0
else
if [ $first_time = "1" ]; then
echo -n "UPS - On Battery, sleeping..."
first_time=0
else
echo -n "."
fi
fi
sleep 30
done
[root at DVXSAJ02 ~]#
This sleeps until AC power returns. When battery runs out, system stop
and reboots when power is back.
Any comments?
________________________________
From: nut-upsuser-bounces+ajain=dataram.com at lists.alioth.debian.org
[mailto:nut-upsuser-bounces+ajain=dataram.com at lists.alioth.debian.org]
On Behalf Of Jain, Arvind
Sent: Friday, August 20, 2010 11:57 AM
To: nut-upsuser at lists.alioth.debian.org
Subject: [Nut-upsuser] APC Smart-UPS X 1500 Restart Issue.
APC Smart-UPS X 1500 Restart Issue.
Hi All,
I have installed nut-2.4.3. I have manually modified the files apc-hid.c
and udev-rules to support 5G APC UPS. I took sample code from the 2.5
development tree.
Shutdown process is working very well -- upsmon creates the file
/etc/killpower - shutdown script checks for the file and issues
/sbin/upsdrvctl shutdown - UPS cuts the power off. All is well.
I am facing an issue when power is reapplied to the UPS. Following is
the behavior I see:
1. Power comes back to the outlet.
2. System powers up.
3. When system reaches "Starting udev", UPS power cycles again.
Above cycle repeats forever.
If I cut the power to UPS for ~20 mins and then re-apply power to UPS,
system comes back fine.
I was searching through the mail-list and I see some other people are
experiencing similar issue:
Link:
http://lists.alioth.debian.org/pipermail/nut-upsuser/2010-July/006118.ht
ml
I was wondering if there is a resolution for this issue.
My environment:
[root at DVXSAJ02 etc]# uname -a
Linux DVXSAJ02 2.6.20.21-133.xssmp #1 SMP Sat Aug 14 10:13:27 EDT 2010
x86_64 x86_64 x86_64 GNU/Linux
[root at DVXSAJ02 etc]# cat /etc/redhat-release
CentOS release 5.4 (Final)
[root at DVXSAJ02 etc]# upsc scups
battery.charge: 89
battery.charge.low: 10
battery.charge.warning: 50
battery.runtime: 1673
battery.runtime.low: 376
battery.type: PbAc
battery.voltage: 54.2
battery.voltage.nominal: 48.0
device.mfr: American Power Conversion
device.model: Smart-UPS X 1500
device.serial: AS0946124031
device.type: ups
driver.flag.pollonly: enabled
driver.name: usbhid-ups
driver.parameter.offdelay: 20
driver.parameter.ondelay: 30
driver.parameter.pollfreq: 15
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.version: 2.4.3
driver.version.data: APC HID 0.95
driver.version.internal: 0.34
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.firmware: COM 02.3 / UPS 02.2
ups.mfr: American Power Conversion
ups.mfr.date: 2009/12/19
ups.model: Smart-UPS X 1500
ups.productid: 0003
ups.serial: AS0946124031
ups.status: OL CHRG
ups.timer.reboot: -1
ups.timer.shutdown: -1
ups.vendorid: 051d
[root at DVXSAJ02 etc]#
[root at DVXSAJ02 etc]# cat /etc/sysconfig/ups
# If the UPS is locally attached set it to "yes"
SERVER=yes
# Any options to pass to upsd
UPSD_OPTIONS=
# Added MODEL=upsdrvctl so that /etc/init.d/halt will issue
"/sbin/upsdrvctl shutdown"
MODEL=upsdrvctl
# This *must* be the same as in /etc/ups/upsmon.conf
POWERDOWNFLAG=/etc/killpower
#
# [End]
[root at DVXSAJ02 etc]# cat /etc/ups/ups.conf
..
[scups]
driver = usbhid-ups
port = auto
desc = "UPS on USB"
pollonly
offdelay=20
ondelay=30
pollfreq=15
Any suggestion is welcome.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/nut-upsdev/attachments/20100823/06dfa52d/attachment-0001.htm>
More information about the Nut-upsdev
mailing list