THANKYOUTHANKYOUTHANKYOUTHANKYOU!!!!!!

There was a smaller patch posted to the list for lines

-1389,9 +1390,10

a couple years ago, it helped some - BUT - it was still buggy.
I have a Compaq R3000, I will get this patch integrated pronto and test

Note that since the UPS relies on the voltage from the battery pack to
determine state of charge, it is quite useful to add in the battery pack
voltage to the logs as such:

--- upslog.c.orig       2012-07-31 10:38:58.000000000 -0700
+++ upslog.c    2014-02-20 09:23:14.000000000 -0800
@@ -50,6 +50,7 @@
        static  flist_t *fhead = NULL;

 #define DEFAULT_LOGFORMAT "%TIME @Y@m@d @H@M@S% %VAR battery.charge% " \
+               "%VAR battery.voltage% %VAR output.current% " \
                "%VAR input.voltage% %VAR ups.load% [%VAR ups.status%] " \
                "%VAR ups.temperature% %VAR input.frequency%"


Ted


On 11/3/2014 3:25 PM, thomas schorpp wrote:
Hi,

Am 13.02.2012 um 18:58 schrieb Arnaud Quette:
2012/2/6 thomas schorpp <[email protected]>:
Hi,

Hi Thomas,

I want the driver report the battery status from ABM charging
controllers
-patch attached- :


For now, I've tracked your patch here:
https://alioth.debian.org/tracker/index.php?func=detail&aid=313541&group_id=30602&atid=411544



Thanks, but no anonymous read access, so not very useful linking on
public lists:

"You've been redirected to this login page because you have tried
accessing a page that was not available to you as an anonymous user."

*or the charge estimation calculator of the driver is broken:

battery.capacity.nominal: 17.00
battery.charge: 93.9
battery.runtime: 1620
battery.status.abm: FT
battery.voltage: 27.70
battery.voltage.maximum: 28.20
battery.voltage.minimum: 20.00
battery.voltage.nominal: 24.00
device.mfr: Compaq
device.model: UPS 1000 VA FW -0026
device.serial: E00230050


as mentioned in the manpage and source code, no battery.charge data is
returned from the device.
"the driver will guestimate a value based on the nominal battery
min/max and the current battery voltage."

Maybe I've found a better "guesstimation", -PATCH found cleaning up old
stuff attached-


so it may be due to both.
It may also be a percentage of the nominal level, which may be not
reachable after some time.

We're talking about lead/acid batteries here? A lead battery not
reaching its rated nominal after charge is usually considered to be broken,
ask Your car garage mechanic ;-)

And now it's after "some (EU warranty) time" for my batteries:

battery.capacity.nominal: 17.00
battery.charge: 98.3
battery.runtime: 2280
battery.status.abm: RS
battery.voltage: 25.90
battery.voltage.maximum: 28.20
battery.voltage.minimum: 20.00
battery.voltage.nominal: 24.00
ups.mfr: Compaq
ups.model: UPS 1000 VA FW -0026
ups.serial: E00230050

Voltage still above "nominal" in ABM resting state.

And one more, the "panel test" isn't a "panel test", it's a complete
selftest including the controller, inverter and fan under load here.

Here's the last patch for people using NUT and still have got an
upscode2 talking UPS, who may find it useful, pls report breakage.


cheers,
Arnaud


y
tom

--- drivers/upscode2.c 2012-05-15 13:22:07.000000000 +0200
+++ drivers/upscode2.c 2012-07-18 15:39:15.000000000 +0200
@@ -32,7 +32,7 @@
* Powerware 9305
*
* Also tested against
- * Compaq T1500h (Per J?nsson <[email protected]>)
+ * Compaq T1000h/T1500h (T.Schorpp, <[email protected]>, Per
J?nsson <[email protected]>)
* Powerware 9120 (Gorm J. Siiger <[email protected]>)
* Fiskars PowerServer 10 (Per Larsson <[email protected]>)
*/
@@ -45,7 +45,7 @@
#include <math.h>

#define DRIVER_NAME "UPScode II UPS driver"
-#define DRIVER_VERSION "0.88"
+#define DRIVER_VERSION "0.89abm"

/* driver description structure */
upsdrv_info_t upsdrv_info = {
@@ -54,7 +54,7 @@
"H K Lygre, <[email protected]>\n" \
"Niels Baggesen <[email protected]>\n" \
"Niklas Edmundsson <[email protected]>",
- DRV_EXPERIMENTAL,
+ DRV_BETA,
{ NULL }
};

@@ -262,7 +262,7 @@
{ "STAT", t_list, NULL, 0, 0, att },
{ "STBO", t_status, NULL, UPSC_STAT_ONBATT },
{ "STBL", t_status, NULL, UPSC_STAT_LOBATT },
- { "STBM", t_ignore },
+ { "STBM", t_string, "battery.status.abm" },
{ "STBP", t_status, NULL, UPSC_STAT_BYPASS },
{ "STEA", t_list, NULL, 0, 0, env },
{ "STEM", t_list, NULL, 0, 0, env },
@@ -412,8 +412,8 @@
{ "shutdown.stop", "UPPU", NULL },
{ "shutdown.reboot", "UPPC", "IJHLDMGCIU" },
{ "shutdown.reboot.graceful", NULL, NULL },
- { "test.panel.start", "UPIS", NULL },
- { "test.panel.stop", NULL, NULL },
+ { "test.selftest.start", "UPIS", NULL }, /* Spec:"UPIS(cr)INITIATE
SELF TEST" not "panel test" */
+ { "test.selftest.stop", NULL, NULL },
{ "test.failure.start", NULL, NULL },
{ "test.failure.stop", NULL, NULL },
{ "test.battery.start", "UPBT", "1" },
@@ -1363,6 +1363,7 @@
static float batt_charge_pct(void)
{
float chg=-1;
+ float batt_volt_rs = (batt_volt_nom * 26/24); /* ABM specs Vrs at
108.333 % Vnom */

/* This is only a rough estimate of charge status while charging.
* When on battery something like Peukert's equation should be used */
@@ -1389,9 +1390,10 @@
chg *= (100/maxcurr);
}
/* Old method, assumes battery high/low-voltages provided by UPS are
- * applicable to battery charge, but they usually aren't */
+ * applicable to battery charge, but they usually aren't, cause high is
a UPS internal and/or battery
+ * ABSOLUTE MAXIMUM RATING, not reported as "nominal" value, the
upscode2 spec maybe wrong. */
else if (batt_volt_low > 0 && batt_volt_high > 0 && batt_volt > 0) {
- if (batt_volt > batt_volt_high) {
+ if (batt_volt > batt_volt_rs) {
chg=100;
}
else if (batt_volt < batt_volt_low) {
@@ -1399,7 +1401,7 @@
}
else {
chg = (batt_volt - batt_volt_low) /
- (batt_volt_high - batt_volt_low);
+ (batt_volt_rs - batt_volt_low);
chg*=100;
}
}


_______________________________________________
Nut-upsdev mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsdev


_______________________________________________
Nut-upsdev mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsdev

Reply via email to