Discussion:
[Nut-upsuser] Setting Battery Runtime Low
Poulton, Stuart W.L.
2010-12-14 08:54:45 UTC
Permalink
Dear All,

We have an Eaton 9395 UPS, with a ConnectUPS Web/SNMP card.

I've successfully configured NUT to talk to the SNMP card, however it reports a battery.runtime.low of 1 , not much use, how do I change this value, is it defined by the UPS itself, the SNMP card, or NUT ?

Output of upsc below.

Cheers

Stuart

rcs-manage-1:~ # !upsc
upsc phys-eaton
ambient.temperature: 27.0
ambient.temperature.high: 50.00
ambient.temperature.low: 0.00
battery.charge: 100.00
battery.current: 0.00
battery.runtime: 1659.00
battery.runtime.low: 1
battery.voltage: 515.00
device.mfr: Powerware Corporation
device.model: Physics/Astronomy
device.type: ups
driver.name: snmp-ups
driver.parameter.pollinterval: 2
driver.parameter.port: 192.168.10.25
driver.version: 2.4.3
driver.version.internal: 0.47 (mib: pw 0.6.1)
input.bypass.L1-N.voltage: 249.00
input.bypass.L2-N.voltage: 250.00
input.bypass.L3-N.voltage: 251.00
input.frequency: 50.10
input.L1-N.voltage: 249.00
input.L1.current: 183.00
input.L1.realpower: 42182.00
input.L2-N.voltage: 250.00
input.L2.current: 184.00
input.L2.realpower: 42366.00
input.L3-N.voltage: 250.00
input.L3.current: 184.00
input.L3.realpower: 42251.00
input.phases: 3.00
input.quality: 0.00
input.voltage.nominal: 239.00
output.frequency: 50.10
output.frequency.nominal: 50.00
output.L1-N.voltage: 240.00
output.L1.current: 150.00
output.L1.power.percent: 25.00
output.L1.realpower: 34656.00
output.L2-N.voltage: 240.00
output.L2.current: 189.00
output.L2.power.percent: 32.00
output.L2.realpower: 43783.00
output.L3-N.voltage: 240.00
output.L3.current: 168.00
output.L3.power.percent: 28.00
output.L3.realpower: 38859.00
output.phases: 3.00
output.voltage.nominal: 239.00
ups.firmware: FP: 1.38 INV: 1.38 RCT: 1.38 IFC: 1.10
ups.firmware.aux: ConnectUPS Web/SNMP Card V4.30
ups.mfr: Powerware Corporation
ups.model: Physics/Astronomy
ups.power: 34656.00
ups.power.nominal: 450000.00
ups.realpower.nominal: 409000.00
ups.status: OL
ups.test.result: Done and passed
ups.type: parallel redundancy
vendor.specific.abmstatus: Battery Resting
Arjen de Korte
2010-12-14 10:07:41 UTC
Permalink
Post by Poulton, Stuart W.L.
I've successfully configured NUT to talk to the SNMP card, however
it reports a battery.runtime.low of 1 , not much use, how do I
change this value, is it defined by the UPS itself, the SNMP card,
or NUT ?
This is a configurable value, setting the runtime remaining on battery
before the low battery warning is raised.

It looks like the driver uses the UPS-MIB::upsConfigLowBattTime OID
for this. According to IETF 1628, the units of this value is minutes.
So in order to correctly display this in the units NUT uses (seconds)
we need to multiply by 60 (similar to the
UPS-MIB::upsEstimatedMinutesRemaining that is used for battery.runtime).

So I guess what the UPS is trying to tell you, is that the runtime
remaining is before it will report battery low, is 60 seconds.
Depending on your UPS you might be able to change this value though
the 'upsrw' command (see 'man 8 upsrw'). Remember to input this value
in minutes for the time being, until we have fixed this.

Best regards, Arjen
--
Please keep list traffic on the list (off-list replies will be rejected)
Poulton, Stuart W.L.
2010-12-14 10:14:17 UTC
Permalink
Post by Arjen de Korte
This is a configurable value, setting the runtime remaining on battery
before the low battery warning is raised.
It looks like the driver uses the UPS-MIB::upsConfigLowBattTime OID
for this. According to IETF 1628, the units of this value is minutes.
So in order to correctly display this in the units NUT uses (seconds)
we need to multiply by 60 (similar to the
UPS-MIB::upsEstimatedMinutesRemaining that is used for
battery.runtime).
So I guess what the UPS is trying to tell you, is that the runtime
remaining is before it will report battery low, is 60 seconds.
Depending on your UPS you might be able to change this value though
the 'upsrw' command (see 'man 8 upsrw'). Remember to input this value
in minutes for the time being, until we have fixed this.
rcs-manage-1:/var/log # upsrw phys-eaton
[battery.runtime.low]
Remaining battery runtime when UPS switches to LB (seconds)
Type: UNKNOWN (unrecognized)

I suspect from this that it may not be configurable.

Thoughts ?

Cheers

Stuart
Arjen de Korte
2010-12-15 12:59:57 UTC
Permalink
Post by Poulton, Stuart W.L.
rcs-manage-1:/var/log # upsrw phys-eaton
[battery.runtime.low]
Remaining battery runtime when UPS switches to LB (seconds)
Type: UNKNOWN (unrecognized)
The definition in the MIB to NUT mapping is lacking a type for this
variable. Clients expect it to be either a string or an enumerated
value and the driver doesn't report either. This needs to be fixed in
the driver, there is no workaround.
Post by Poulton, Stuart W.L.
I suspect from this that it may not be configurable.
Maybe, but until this is fixed in the driver it's a driver bug. Note
that the snmp-ups driver is currently in dire need of an active
developer taking over the maintenance. Since I don't have a SNMP
capable UPS, I can't really work on it other than the occasional fix
for an obvious problem.

Best regards, Arjen
--
Please keep list traffic on the list (off-list replies will be rejected)
Arnaud Quette
2010-12-16 11:43:43 UTC
Permalink
2010/12/15 Arjen de Korte
Post by Poulton, Stuart W.L.
rcs-manage-1:/var/log # upsrw phys-eaton
Post by Poulton, Stuart W.L.
[battery.runtime.low]
Remaining battery runtime when UPS switches to LB (seconds)
Type: UNKNOWN (unrecognized)
The definition in the MIB to NUT mapping is lacking a type for this
variable. Clients expect it to be either a string or an enumerated value and
the driver doesn't report either. This needs to be fixed in the driver,
there is no workaround.
I suspect from this that it may not be configurable.
Maybe, but until this is fixed in the driver it's a driver bug. Note that
the snmp-ups driver is currently in dire need of an active developer taking
over the maintenance.
indeed, and a full rewrite is also needed, to support the subdrivers
approach as in usbhid-ups.
this would fix various issues and limitations, and would also unblock a few
patch that are stagging in my TODO stack.
Post by Poulton, Stuart W.L.
Since I don't have a SNMP capable UPS, I can't really work on it other than
the occasional fix for an obvious problem.
well, your NMC (in the evolution) is SNMP capable (beside the XML/HTTP
channel).
depending on your exact card reference and FW version, it will expose a
minimum or full set of IETF + MGE MIBS.

Arjen: if needed, I can also check to send you a more suitable card, but I
know that you're already quite busy.
so up to you, you know who to ask ;-)

cheers,
Arnaud
--
Linux / Unix Expert R&D - Eaton - http://powerquality.eaton.com
Network UPS Tools (NUT) Project Leader - http://www.networkupstools.org/
Debian Developer - http://www.debian.org
Free Software Developer - http://arnaud.quette.free.fr/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/nut-upsuser/attachments/20101216/a5181185/attachment.htm>
Arjen de Korte
2010-12-16 13:16:17 UTC
Permalink
Post by Arnaud Quette
indeed, and a full rewrite is also needed, to support the subdrivers
approach as in usbhid-ups.
Yes. Although it would be possible to add the lookup (forward and
reverse) functions like in usbhid-ups (which would allow for better
conversion between IOD <-> NUT values), it would be much better to
start from scratch here.
Post by Arnaud Quette
Post by Poulton, Stuart W.L.
Since I don't have a SNMP capable UPS, I can't really work on it other than
the occasional fix for an obvious problem.
well, your NMC (in the evolution) is SNMP capable (beside the XML/HTTP
channel).
Yes and no. It indeed does talk SNMP, but as far as I can see doesn't
support changing variables. The only method for changing the
'battery.runtime.low' parameter, is through the HTTP interface. I've
not been able to change a single variable through the SNMP interface.
Post by Arnaud Quette
depending on your exact card reference and FW version, it will expose a
minimum or full set of IETF + MGE MIBS.
Currently it reports

Network Management Card V6.00 HB (SNMP)
Network Management Card/Mosaic 4M 16M/HB (XML)

This is the latest firmware I could find for the NMC 66102 (technical
level 09).
Post by Arnaud Quette
Arjen: if needed, I can also check to send you a more suitable card, but I
know that you're already quite busy.
It would probably be easier to have access to a device with native
SNMP support. I don't need physical access to it, it's enough if I can
reach it through the net.

Best regards, Arjen
--
Please keep list traffic on the list (off-list replies will be rejected)
Loading...