Skip to content

drivers/powercom-hid.c: add Output section shutdown for RPT/BNT-AP series#3324

Open
Vladdrako wants to merge 1 commit intonetworkupstools:masterfrom
Vladdrako:powercom
Open

drivers/powercom-hid.c: add Output section shutdown for RPT/BNT-AP series#3324
Vladdrako wants to merge 1 commit intonetworkupstools:masterfrom
Vladdrako:powercom

Conversation

@Vladdrako
Copy link
Contributor

Some Powercom UPS models (e.g. RPT-800AP, BNT-AP) experience unreliable shutdown.return behavior when using the PowerSummary section (UPS.PowerSummary.DelayBeforeShutdown, ReportID 0x0f). While the initial shutdown command works, after several shutdown.return cycles the UPS fails to restart and remains in a powered-off state instead of turning back on.

Comparison with the vendor's UPSMON PRO software behavior (by reading back register values via NUT debug mode) revealed that the vendor software uses the Output section register (UPS.Output.DelayBeforeShutdown, ReportID 0x23) instead. This 8-bit register accepts a discrete delay index (1-18) per the protocol specification:

Index 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Value 12s 18s 24s 30s 36s 42s 48s 54s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m

Using the Output section register provides reliable shutdown.return behavior across repeated cycles.

This commit adds:

  • powercom_shutdown_output_nuf(): converts offdelay seconds to the nearest discrete delay index for the Output section register.

  • shutdown.return and shutdown.stayoff command mappings via UPS.Output.DelayBeforeShutdown, placed before the existing PowerSummary mappings so they take priority on affected models.

The existing PowerSummary shutdown commands are preserved as fallback for models that use them (e.g. SKP, IMP, VGD series).

Note: the Output section shutdown is silent, unlike the PowerSummary shutdown which produces audible warning beeps (double short beeps) during the countdown before powering off.

Tested on: Powercom RPT-800AP (VendorID 0x0d9f, ProductID 0x0004)

…ries

Some Powercom UPS models (e.g. RPT-800AP, BNT-AP) experience
unreliable shutdown.return behavior when using the PowerSummary
section (UPS.PowerSummary.DelayBeforeShutdown, ReportID 0x0f).
While the initial shutdown command works, after several
shutdown.return cycles the UPS fails to restart and remains in
a powered-off state instead of turning back on.

Comparison with the vendor's UPSMON PRO software behavior (by
reading back register values via NUT debug mode) revealed that
the vendor software uses the Output section register
(UPS.Output.DelayBeforeShutdown, ReportID 0x23) instead. This 8-bit register accepts a discrete delay index (1-18)
per the protocol specification:

  Index  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18
  Value 12s 18s 24s 30s 36s 42s 48s 54s  1m  2m  3m  4m  5m  6m  7m  8m  9m 10m

Using the Output section register provides reliable shutdown.return
behavior across repeated cycles.

This commit adds:

- powercom_shutdown_output_nuf(): converts offdelay seconds to the
  nearest discrete delay index for the Output section register.

- shutdown.return and shutdown.stayoff command mappings via
  UPS.Output.DelayBeforeShutdown, placed before the existing
  PowerSummary mappings so they take priority on affected models.

The existing PowerSummary shutdown commands are preserved as fallback
for models that use them (e.g. SKP, IMP, VGD series).

Note: the Output section shutdown is silent, unlike the PowerSummary
shutdown which produces audible warning beeps (double short beeps)
during the countdown before powering off.

Tested on: Powercom RPT-800AP (VendorID 0x0d9f, ProductID 0x0004)

Signed-off-by: Vladysslv Andreichykov <vladdrako007@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant