[Nut-upsdev] more on 2.0.3-pre
Peter Selinger
selinger at mathstat.dal.ca
Sun Oct 2 21:45:43 UTC 2005
Hi Alfred,
thanks for your testing. I also have a Back-UPS ES 650, but it is
currently in my wife's office at work so I am not doing any testing
with it.
Thanks for catching the writable variables. That is of course useful
to make them writable in NUT. I have no idea why the writable
variables always also get the ST_FLAG_STRING flag - Arnaud, do you
know if this is necessary / sensible? Perhaps it is just a
copy-and-paste error.
Alfred, do you know if there are any other potentially writable
variables? Potential candidates are:
battery.charge.warning
input.transfer.low
input.transfer.high
"ups.beeper.status" is also writable in principle, but this is already
taken care of by instant commands.
Regarding the other change - NUT's status flags don't have slots for
"RemainingTimeLimitExpired" and "BatteryPresent". So adding these has
no effect other than removing some debug messages.
-- Peter
Alfred Ganz wrote:
>
> Gentlemen,
>
> I have now had a chance to run some initial tests of my changes to
> apc-hid.c of the current development tree. Running newhipups and
> inspecting the -DDDD output seems to indicate that with the fix below
> everything seems to work as expected. However, I have not yet shut
> my system in order to take the UPS out of action so that I can do my
> various tests with a lightbulb load. I still hope to do this before the
> end of this week.
>
> In the initial tests I found that a trick that I was using with the 2.0.2
> sources no longer works. I have therefore made a change for the second
> item in my previous message:
> >2) the rather lengthy, unsolicited status messages from my "Back-UPS ES 650"
> > return two variables that are not contained in the current table,
> > adding them avoids the indications that newhidups doesn't know what
> > to do with the variables, although the current change doesn't affect
> > status evaluation in any way either.
> Rather than using a NULL item mapping I am now using the hex_conversion
> mapping to accept the two items:
> UPS.PowerSummary.PresentStatus.BatteryPresent and
> UPS.PowerSummary.PresentStatus.RemainingTimeLimitExpired
> that are however still ignored, as it happened with the 2.0.2 changes.
>
> If the experts think it would be worthwhile to actually make the two
> items available (although they are not particularly useful), please let
> me know how they might be mapped, and I will add and test such a mapping.
>
> Here follows the modified patch, AG
>
> ---------------------------------------------------------------------------
> diff -ru nut-2.1.dev.orig/drivers/apc-hid.c nut-2.1.dev/drivers/apc-hid.c
> --- nut-2.1.dev.orig/drivers/apc-hid.c 2005-09-24 00:37:25.000000000 -0400
> +++ nut-2.1.dev/drivers/apc-hid.c 2005-10-02 14:38:00.000000000 -0400
> @@ -115,11 +115,14 @@
>
> /* Battery page */
> { "battery.charge", 0, 1, "UPS.PowerSummary.RemainingCapacity", NULL, "%.0f", HU_FLAG_OK, NULL },
> - { "battery.charge.low", ST_FLAG_STRING, 5, "UPS.PowerSummary.RemainingCapacityLimit", NULL,
> - "%.0f", HU_FLAG_OK, NULL }, /* Read only */
> + /* the following is writeable for the Back-UPS ES 650 */
> + { "battery.charge.low", ST_FLAG_RW | ST_FLAG_STRING, 5, "UPS.PowerSummary.RemainingCapacityLimit", NULL,
> + "%.0f", HU_FLAG_OK | HU_FLAG_SEMI_STATIC, NULL },
> { "battery.charge.warning", ST_FLAG_STRING, 5, "UPS.PowerSummary.WarningCapacityLimit", NULL, "%.0f", HU_FLAG_OK, NULL }, /* Read only */
> { "battery.runtime", 0, 0, "UPS.PowerSummary.RunTimeToEmpty", NULL, "%.0f", HU_FLAG_OK, NULL },
> - { "battery.runtime.low", 0, 0, "UPS.Battery.RemainingTimeLimit", NULL, "%.0f", HU_FLAG_OK, NULL },
> + /* the following is writeable for the Back-UPS ES 650 */
> + { "battery.runtime.low", ST_FLAG_RW | ST_FLAG_STRING, 5, "UPS.PowerSummary.RemainingTimeLimit", NULL,
> + "%.0f", HU_FLAG_OK | HU_FLAG_SEMI_STATIC, NULL },
> { "battery.voltage", 0, 0, "UPS.PowerSummary.Voltage", NULL, "%.1f", HU_FLAG_OK, NULL },
> { "battery.voltage.nominal", 0, 0, "UPS.Battery.ConfigVoltage", NULL,
> "%.1f", HU_FLAG_OK, NULL },
> @@ -161,6 +164,11 @@
> "%.0f", HU_FLAG_OK, &overbatt_info[0] },
> { "ups.status", 0, 1, "UPS.PowerSummary.PresentStatus.NeedReplacement", NULL,
> "%.0f", HU_FLAG_OK, &replacebatt_info[0] },
> + /* The following two are returned with long notification from Back-UPS ES 650 */
> + { "ups.status", 0, 1, "UPS.PowerSummary.PresentStatus.RemainingTimeLimitExpired", NULL,
> + "%.0f", HU_FLAG_OK, &hex_conversion[0]},
> + { "ups.status", 0, 1, "UPS.PowerSummary.PresentStatus.BatteryPresent", NULL,
> + "%.0f", HU_FLAG_OK, &hex_conversion[0]},
>
> /* Input page */
> { "input.voltage", 0, 0, "UPS.Input.Voltage", NULL, "%.1f", HU_FLAG_OK, NULL },
> ---------------------------------------------------------------------------
>
> --
> ----------------------------------------------------------------------
> Alfred Ganz alfred-ganz at agci.com
> AG Consulting, Inc. (203) 624-9667
> 440 Prospect Street # 11
> New Haven, CT 06511
> ----------------------------------------------------------------------
>
> _______________________________________________
> Nut-upsdev mailing list
> Nut-upsdev at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/nut-upsdev
>
More information about the Nut-upsdev
mailing list