Skip to content

Commit b02a94c

Browse files
Merge 0e0db5c into 2cbdaea
2 parents 2cbdaea + 0e0db5c commit b02a94c

File tree

6 files changed

+17
-0
lines changed

6 files changed

+17
-0
lines changed

NEWS.adoc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,11 @@ https://github.com/networkupstools/nut/milestone/12
111111
return the correct command length, resolving a bug for all commands using
112112
the `,XX` slave address placeholder. This also enables support for the
113113
`test.battery.start.deep` (`TUD`) command. [#3141]
114+
* `nutdrv_qx_masterguard` sub-driver adds a `clear.fault.record` instant
115+
command to clear the fault record. Also adds two experimental variables:
116+
`battery.ageing.factor` (Battery ageing factor in promille) and
117+
`battery.calibration.factor` (Battery calibration factor in percent).
118+
Tested on A1000 and A2000 units. [#3181]
114119

115120
- `powerp-bin` and `powerp-txt` driver updates:
116121
* Their `upsdrv_initinfo()` methods did not explicitly reference the

data/cmdvartab

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,7 @@ CMDDESC test.battery.stop "Stop the battery test"
257257
CMDDESC test.system.start "Start a system test"
258258
CMDDESC calibrate.start "Start run time calibration"
259259
CMDDESC calibrate.stop "Stop run time calibration"
260+
CMDDESC clear.fault.record "Clear fault/error record"
260261
CMDDESC bypass.start "Put the UPS in Bypass mode"
261262
CMDDESC bypass.stop "Take the UPS out of Bypass mode"
262263
CMDDESC experimental.ecomode.start "Put UPS in High Efficiency (aka ECO) mode"

docs/man/nutdrv_qx.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -525,6 +525,9 @@ Perform a battery test for the duration of 'value' seconds (truncated to 60 seco
525525
MASTERGUARD PROTOCOL
526526
~~~~~~~~~~~~~~~~~~~~
527527

528+
*clear.fault.record*::
529+
Clear fault/error record
530+
528531
*beeper.enable*::
529532
Enable the UPS beeper.
530533

docs/nut-names.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1080,6 +1080,8 @@ to last as part of NUT standard protocol in the long run.
10801080
[options="header"]
10811081
|========================================================================
10821082
| Name | Driver/Devices | Description
1083+
| clear.fault.record | nutdrv_qx_masterguard => Masterguard
1084+
| Clear fault/error record
10831085
| experimental.test.beeper.start | nutdrv_hashx => Atlantis Land
10841086
| Start testing the UPS beeper
10851087
| experimental.test.beeper.stop | nutdrv_hashx => Atlantis Land

docs/nut.dict

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2889,6 +2889,7 @@ prog
28892889
progname
28902890
prognames
28912891
progs
2892+
promille
28922893
proxied
28932894
prtconf
28942895
ps

drivers/nutdrv_qx_masterguard.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -767,6 +767,8 @@ static item_t masterguard_qx2nut[] = {
767767
*/
768768
/* type flags rw command answer len leading value from to dfl qxflags precmd preans preproc */
769769
{ "battery.charge", 0, NULL, "GBS,XX\r", "", 43, '(', "", 4, 6, "%.0f", 0, masterguard_add_slaveaddr, NULL, NULL },
770+
{ "experimental.battery.ageing.factor", 0, NULL, "GBS,XX\r", "", 43, '(', "", 18, 21, "%.0f", QX_FLAG_NONUT, masterguard_add_slaveaddr, NULL, NULL },
771+
{ "experimental.battery.calibration.factor", 0, NULL, "GBS,XX\r", "", 43, '(', "", 33, 35, "%.0f", QX_FLAG_NONUT, masterguard_add_slaveaddr, NULL, NULL },
770772
/*
771773
* hhhh: hold time (minutes)
772774
* HHHH: recharge time to 90% (minutes)
@@ -864,6 +866,7 @@ static item_t masterguard_qx2nut[] = {
864866
/* test.system.start */
865867
/* calibrate.start */
866868
/* calibrate.stop */
869+
{ "clear.fault.record", 0, NULL, "FCLR,XX\r", "", 0, '\0', "", 0, 0, NULL, QX_FLAG_CMD, masterguard_add_slaveaddr, NULL, NULL },
867870
{ "bypass.start", 0, NULL, "FOFF\r", "", 0, '\0', "", 0, 0, NULL, QX_FLAG_CMD, NULL, NULL, NULL },
868871
{ "bypass.stop", 0, NULL, "FON\r", "", 0, '\0', "", 0, 0, NULL, QX_FLAG_CMD, NULL, NULL, NULL },
869872
/* reset.input.minmax */
@@ -1061,6 +1064,8 @@ static void masterguard_makevartable(void) {
10611064
addvar(VAR_VALUE, "fault_3", "Fault record 3");
10621065
addvar(VAR_VALUE, "fault_4", "Fault record 4");
10631066
addvar(VAR_VALUE, "fault_5", "Fault record 5 (oldest)");
1067+
addvar(VAR_VALUE, "experimental.battery.ageing.factor", "Battery ageing factor (promille, 1000=new)");
1068+
addvar(VAR_VALUE, "experimental.battery.calibration.factor", "Battery calibration factor (percent)");
10641069
}
10651070

10661071

0 commit comments

Comments
 (0)