new upstream 2.8.0

This commit is contained in:
lagertonne 2022-06-29 12:37:36 +02:00
parent fc7f4b43c1
commit b2b0c9995a
836 changed files with 137090 additions and 30018 deletions

View file

@ -4,13 +4,21 @@
# Notes:
# - sources (.txt) and groff formats are both distributed,
# - only sources are versioned ; groff files are generated at worst
# during 'make dist'
# during 'make dist' (while preparing a release tarball)
# - HTML files are built upon request, if AsciiDoc is available,
# - groff update will only happen if AsciiDoc is available too,
# - all this can probably (and hopefully) be improved, but I've not
# found a way to do pattern replacement on the fly for target deps!
# FIXME: investigate an autogen.sh hook
# - Ref: http://www.gnu.org/software/hello/manual/automake/Man-pages.html
# - WITH_MANS can be enabled if either we are building man-pages, or if
# the --with-doc=man=auto detected an inability to build the man-pages
# but enabled the DOC_INSTALL_DISTED_MANS toggle so we deliver disted
# files from source tree
# Is "egrep == grep -E" always valid? (maybe all a job for configure.ac)
EGREP = egrep
#EGREP = grep -E
# Base configuration and client manpages, always installed
SRC_CONF_PAGES = \
@ -21,6 +29,7 @@ SRC_CONF_PAGES = \
upsmon.conf.txt \
upssched.conf.txt
if WITH_MANS
MAN_CONF_PAGES = \
nut.conf.5 \
ups.conf.5 \
@ -28,6 +37,7 @@ MAN_CONF_PAGES = \
upsd.users.5 \
upsmon.conf.5 \
upssched.conf.5
endif
man5_MANS = $(MAN_CONF_PAGES)
@ -39,36 +49,50 @@ HTML_CONF_MANS = \
upsmon.conf.html \
upssched.conf.html
# NOTE: Currently SRC_DRIVERTOOL_PAGES are a separate list to generate
# a linkman-drivertool-names.txt file, but historically remain part of
# MAN/HTML_CLIENT_PAGES in the bigger picture.
SRC_DRIVERTOOL_PAGES = \
nut-driver-enumerator.txt \
upsdrvctl.txt \
upsdrvsvcctl.txt
SRC_CLIENT_PAGES = \
$(SRC_DRIVERTOOL_PAGES) \
nutupsdrv.txt \
upsc.txt \
upscmd.txt \
upsd.txt \
upsdrvctl.txt \
upslog.txt \
upsmon.txt \
upsrw.txt \
upssched.txt
if WITH_MANS
MAN_CLIENT_PAGES = \
nutupsdrv.8 \
nut-driver-enumerator.8 \
upsc.8 \
upscmd.8 \
upsd.8 \
upsdrvctl.8 \
upsdrvsvcctl.8 \
upslog.8 \
upsmon.8 \
upsrw.8 \
upssched.8
endif
man8_MANS = $(MAN_CLIENT_PAGES)
HTML_CLIENT_MANS = \
nutupsdrv.html \
nut-driver-enumerator.html \
upsc.html \
upscmd.html \
upsd.html \
upsdrvctl.html \
upsdrvsvcctl.html \
upslog.html \
upsmon.html \
upsrw.html \
@ -76,7 +100,9 @@ HTML_CLIENT_MANS = \
SRC_TOOL_PAGES = nut-scanner.txt nut-recorder.txt
if WITH_MANS
MAN_TOOL_PAGES = nut-scanner.8 nut-recorder.8
endif
man8_MANS += $(MAN_TOOL_PAGES)
@ -91,6 +117,7 @@ SRC_CGI_PAGES = \
upsstats.cgi.txt \
upsimage.cgi.txt
if WITH_MANS
MAN5_CGI_PAGES = \
hosts.conf.5 \
upsset.conf.5 \
@ -100,11 +127,11 @@ MAN8_CGI_PAGES = \
upsset.cgi.8 \
upsstats.cgi.8 \
upsimage.cgi.8
endif
if WITH_CGI
man5_MANS += $(MAN5_CGI_PAGES)
man8_MANS += $(MAN8_CGI_PAGES)
man5_MANS += $(MAN5_CGI_PAGES)
man8_MANS += $(MAN8_CGI_PAGES)
endif
HTML_CGI_MANS = \
@ -145,7 +172,7 @@ SRC_DEV_PAGES = \
nutscan.txt \
nutscan_scan_snmp.txt \
nutscan_scan_usb.txt \
nutscan_scan_xml_http.txt \
nutscan_scan_xml_http_range.txt \
nutscan_scan_nut.txt \
nutscan_scan_avahi.txt \
nutscan_scan_ipmi.txt \
@ -162,7 +189,66 @@ SRC_DEV_PAGES = \
libupsclient-config.txt \
skel.txt
if WITH_MANS
# NOTE: nutclient_*.3 has no source counterpart (libnutclient_*.txt)
LIBNUTCLIENT_MISC_DEPS= \
nutclient_authenticate.3 \
nutclient_logout.3 \
nutclient_device_login.3 \
nutclient_get_device_num_logins.3 \
nutclient_device_master.3 \
nutclient_device_forced_shutdown.3
$(LIBNUTCLIENT_MISC_DEPS): libnutclient_misc.3
touch $@
LIBNUTCLIENT_TCP_DEPS= \
nutclient_tcp_create_client.3 \
nutclient_tcp_disconnect.3 \
nutclient_tcp_get_timeout.3 \
nutclient_tcp_is_connected.3 \
nutclient_tcp_reconnect.3 \
nutclient_tcp_set_timeout.3
$(LIBNUTCLIENT_TCP_DEPS): libnutclient_tcp.3
touch $@
LIBNUTCLIENT_GENERAL_DEPS= \
nutclient_destroy.3
$(LIBNUTCLIENT_GENERAL_DEPS): libnutclient_general.3
touch $@
LIBNUTCLIENT_VARIABLES_DEPS= \
nutclient_get_device_rw_variables.3 \
nutclient_get_device_variable_description.3 \
nutclient_get_device_variables.3 \
nutclient_get_device_variable_values.3 \
nutclient_has_device_variable.3 \
nutclient_set_device_variable_value.3 \
nutclient_set_device_variable_values.3
$(LIBNUTCLIENT_VARIABLES_DEPS): libnutclient_variables.3
touch $@
LIBNUTCLIENT_COMMANDS_DEPS= \
nutclient_execute_device_command.3 \
nutclient_get_device_command_description.3 \
nutclient_get_device_commands.3 \
nutclient_has_device_command.3
$(LIBNUTCLIENT_COMMANDS_DEPS): libnutclient_commands.3
touch $@
LIBNUTCLIENT_DEVICES_DEPS= \
nutclient_get_device_description.3 \
nutclient_get_devices.3 \
nutclient_has_device.3
$(LIBNUTCLIENT_DEVICES_DEPS): libnutclient_devices.3
touch $@
MAN3_DEV_PAGES = \
upsclient.3 \
upscli_add_host_cert.3 \
@ -175,7 +261,9 @@ MAN3_DEV_PAGES = \
upscli_list_next.3 \
upscli_list_start.3 \
upscli_readline.3 \
upscli_readline_timeout.3 \
upscli_sendline.3 \
upscli_sendline_timeout.3 \
upscli_splitaddr.3 \
upscli_splitname.3 \
upscli_ssl.3 \
@ -183,42 +271,21 @@ MAN3_DEV_PAGES = \
upscli_upserror.3 \
libnutclient.3 \
libnutclient_commands.3 \
$(LIBNUTCLIENT_COMMANDS_DEPS) \
libnutclient_devices.3 \
$(LIBNUTCLIENT_DEVICES_DEPS) \
libnutclient_general.3 \
$(LIBNUTCLIENT_GENERAL_DEPS) \
libnutclient_misc.3 \
$(LIBNUTCLIENT_MISC_DEPS) \
libnutclient_tcp.3 \
$(LIBNUTCLIENT_TCP_DEPS) \
libnutclient_variables.3 \
nutclient_authenticate.3 \
nutclient_destroy.3 \
nutclient_device_forced_shutdown.3 \
nutclient_device_login.3 \
nutclient_device_master.3 \
nutclient_execute_device_command.3 \
nutclient_get_device_command_description.3 \
nutclient_get_device_commands.3 \
nutclient_get_device_description.3 \
nutclient_get_device_num_logins.3 \
nutclient_get_device_rw_variables.3 \
nutclient_get_devices.3 \
nutclient_get_device_variable_description.3 \
nutclient_get_device_variables.3 \
nutclient_get_device_variable_values.3 \
nutclient_has_device.3 \
nutclient_has_device_command.3 \
nutclient_has_device_variable.3 \
nutclient_logout.3 \
nutclient_set_device_variable_value.3 \
nutclient_set_device_variable_values.3 \
nutclient_tcp_create_client.3 \
nutclient_tcp_disconnect.3 \
nutclient_tcp_get_timeout.3 \
nutclient_tcp_is_connected.3 \
nutclient_tcp_reconnect.3 \
nutclient_tcp_set_timeout.3 \
$(LIBNUTCLIENT_VARIABLES_DEPS) \
nutscan.3 \
nutscan_scan_snmp.3 \
nutscan_scan_usb.3 \
nutscan_scan_xml_http.3 \
nutscan_scan_xml_http_range.3 \
nutscan_scan_nut.3 \
nutscan_scan_avahi.3 \
nutscan_scan_ipmi.3 \
@ -233,14 +300,21 @@ MAN3_DEV_PAGES = \
nutscan_get_serial_ports_list.3 \
nutscan_init.3
upscli_readline_timeout.3: upscli_readline.3
touch $@
upscli_sendline_timeout.3: upscli_sendline.3
touch $@
MAN1_DEV_PAGES = \
libupsclient-config.1
endif
if WITH_DEV
man3_MANS = $(MAN3_DEV_PAGES)
man3_MANS = $(MAN3_DEV_PAGES)
if !WITH_PKG_CONFIG
man1_MANS = $(MAN1_DEV_PAGES)
man1_MANS = $(MAN1_DEV_PAGES)
endif
# WITH_DEV
endif
@ -273,7 +347,7 @@ HTML_DEV_MANS = \
nutscan.html \
nutscan_scan_snmp.html \
nutscan_scan_usb.html \
nutscan_scan_xml_http.html \
nutscan_scan_xml_http_range.html \
nutscan_scan_nut.html \
nutscan_scan_avahi.html \
nutscan_scan_ipmi.html \
@ -295,7 +369,7 @@ HTML_DEV_MANS = \
# (--with-drivers=...)
if SOME_DRIVERS
man8_MANS += $(DRIVER_MAN_LIST)
man8_MANS += $(DRIVER_MAN_LIST)
else
@ -329,7 +403,8 @@ SRC_SERIAL_PAGES = \
mge-utalk.txt \
oneac.txt \
microdowell.txt \
nutdrv_qx.txt \
microsol-apc.txt \
nutdrv_siemens_sitop.txt \
optiups.txt \
powercom.txt \
powerpanel.txt \
@ -343,6 +418,7 @@ SRC_SERIAL_PAGES = \
victronups.txt \
apcupsd-ups.txt
if WITH_MANS
MAN_SERIAL_PAGES = \
al175.8 \
apcsmart.8 \
@ -369,9 +445,10 @@ MAN_SERIAL_PAGES = \
metasys.8 \
mge-shut.8 \
mge-utalk.8 \
nutdrv_qx.8 \
oneac.8 \
microdowell.8 \
microsol-apc.8 \
nutdrv_siemens_sitop.8 \
optiups.8 \
powercom.8 \
powerpanel.8 \
@ -384,9 +461,10 @@ MAN_SERIAL_PAGES = \
upscode2.8 \
victronups.8 \
apcupsd-ups.8
endif
if WITH_SERIAL
man8_MANS += $(MAN_SERIAL_PAGES)
man8_MANS += $(MAN_SERIAL_PAGES)
endif
HTML_SERIAL_MANS = \
@ -415,9 +493,10 @@ HTML_SERIAL_MANS = \
metasys.html \
mge-shut.html \
mge-utalk.html \
nutdrv_qx.html \
oneac.html \
microdowell.html \
microsol-apc.html \
nutdrv_siemens_sitop.html \
optiups.html \
powercom.html \
powerpanel.html \
@ -433,10 +512,12 @@ HTML_SERIAL_MANS = \
# (--with-snmp)
SRC_SNMP_PAGES = snmp-ups.txt
if WITH_MANS
MAN_SNMP_PAGES = snmp-ups.8
endif
if WITH_SNMP
man8_MANS += $(MAN_SNMP_PAGES)
man8_MANS += $(MAN_SNMP_PAGES)
endif
HTML_SNMP_MANS = snmp-ups.html
@ -447,88 +528,142 @@ SRC_USB_LIBUSB_PAGES = \
blazer-common.txt \
blazer_usb.txt \
nutdrv_atcl_usb.txt \
nutdrv_qx.txt \
richcomm_usb.txt \
riello_usb.txt \
tripplite_usb.txt \
usbhid-ups.txt
if WITH_MANS
MAN_USB_LIBUSB_PAGES = \
bcmxcp_usb.8 \
blazer_usb.8 \
nutdrv_atcl_usb.8 \
nutdrv_qx.8 \
richcomm_usb.8 \
riello_usb.8 \
tripplite_usb.8 \
usbhid-ups.8
endif
if WITH_USB
man8_MANS += $(MAN_USB_LIBUSB_PAGES)
man8_MANS += $(MAN_USB_LIBUSB_PAGES)
endif
HTML_USB_LIBUSB_MANS = \
bcmxcp_usb.html \
blazer_usb.html \
nutdrv_qx.html \
nutdrv_atcl_usb.html \
richcomm_usb.html \
riello_usb.html \
tripplite_usb.html \
usbhid-ups.html
# (--with-serial / --with-usb)
SRC_SERIAL_USB_PAGES = \
nutdrv_qx.txt
if WITH_MANS
MAN_SERIAL_USB_PAGES = \
nutdrv_qx.8
endif
if WITH_SERIAL
man8_MANS += $(MAN_SERIAL_USB_PAGES)
else
if WITH_USB
man8_MANS += $(MAN_SERIAL_USB_PAGES)
endif
endif
HTML_SERIAL_USB_MANS = \
nutdrv_qx.html
# (--with-neon)
SRC_NETXML_PAGES = netxml-ups.txt
if WITH_MANS
MAN_NETXML_PAGES = netxml-ups.8
endif
if WITH_NEON
man8_MANS += $(MAN_NETXML_PAGES)
man8_MANS += $(MAN_NETXML_PAGES)
endif
HTML_NETXML_MANS = netxml-ups.html
# (--with-powerman)
SRC_POWERMAN_PAGES = powerman-pdu.txt
if WITH_MANS
MAN_POWERMAN_PAGES = powerman-pdu.8
endif
if WITH_LIBPOWERMAN
man8_MANS += $(MAN_POWERMAN_PAGES)
man8_MANS += $(MAN_POWERMAN_PAGES)
endif
HTML_POWERMAN_MANS = powerman-pdu.html
# (--with-ipmi)
SRC_IPMIPSU_PAGES = nut-ipmipsu.txt
if WITH_MANS
MAN_IPMIPSU_PAGES = nut-ipmipsu.8
endif
if WITH_IPMI
man8_MANS += $(MAN_IPMIPSU_PAGES)
man8_MANS += $(MAN_IPMIPSU_PAGES)
endif
HTML_IPMIPSU_MANS = nut-ipmipsu.html
SRC_MACOSX_PAGES = macosx-ups.txt
if WITH_MANS
MAN_MACOSX_PAGES = macosx-ups.8
endif
if WITH_MACOSX
man8_MANS += $(MAN_MACOSX_PAGES)
man8_MANS += $(MAN_MACOSX_PAGES)
endif
HTML_MACOSX_MANS = macosx-ups.html
SRC_LINUX_I2C_PAGES = asem.txt
MAN_LINUX_I2C_PAGES = asem.8
if WITH_LINUX_I2C
man8_MANS += $(LINUX_I2C_PAGES)
SRC_MODBUS_PAGES = phoenixcontact_modbus.txt \
generic_modbus.txt \
huawei-ups2000.txt \
socomec_jbus.txt \
adelsystem_cbi.txt
if WITH_MANS
MAN_MODBUS_PAGES = phoenixcontact_modbus.8 \
generic_modbus.8 \
huawei-ups2000.8 \
socomec_jbus.8 \
adelsystem_cbi.8
endif
HTML_LINUX_I2C_MANS = asem.html
if WITH_MODBUS
man8_MANS += $(MAN_MODBUS_PAGES)
endif
HTML_MODBUS_MANS = phoenixcontact_modbus.html \
generic_modbus.html \
huawei-ups2000.html \
socomec_jbus.html \
adelsystem_cbi.html
SRC_LINUX_I2C_PAGES = asem.txt pijuice.txt
if WITH_MANS
MAN_LINUX_I2C_PAGES = asem.8 pijuice.8
endif
if WITH_LINUX_I2C
man8_MANS += $(MAN_LINUX_I2C_PAGES)
endif
HTML_LINUX_I2C_MANS = asem.html pijuice.html
# SOME_DRIVERS
endif
MAN_MANS = \
MAN_MANS =
if WITH_MANS
MAN_MANS += \
$(MAN_CONF_PAGES) \
$(MAN_CLIENT_PAGES) \
$(MAN_TOOL_PAGES) \
@ -539,31 +674,60 @@ MAN_MANS = \
$(MAN_SERIAL_PAGES) \
$(MAN_SNMP_PAGES) \
$(MAN_USB_LIBUSB_PAGES) \
$(MAN_SERIAL_USB_PAGES) \
$(MAN_NETXML_PAGES) \
$(MAN_POWERMAN_PAGES) \
$(MAN_IPMIPSU_PAGES) \
$(MAN_MACOSX_PAGES) \
$(MAN_MODBUS_PAGES) \
$(MAN_LINUX_I2C_PAGES)
endif
SRC_DRIVERS_PAGES = \
$(SRC_SERIAL_PAGES) \
$(SRC_SNMP_PAGES) \
$(SRC_USB_LIBUSB_PAGES) \
$(SRC_SERIAL_USB_PAGES) \
$(SRC_NETXML_PAGES) \
$(SRC_POWERMAN_PAGES) \
$(SRC_IPMIPSU_PAGES) \
$(SRC_MACOSX_PAGES) \
$(SRC_MODBUS_PAGES) \
$(SRC_LINUX_I2C_PAGES)
# distribute everything, even those not installed by default
# Note that 'dist' target requires AsciiDoc!
EXTRA_DIST = \
SRC_ALL_PAGES = \
$(SRC_CONF_PAGES) \
$(SRC_CLIENT_PAGES) \
$(SRC_TOOL_PAGES) \
$(SRC_CGI_PAGES) \
$(SRC_DEV_PAGES) \
$(SRC_SERIAL_PAGES) \
$(SRC_SNMP_PAGES) \
$(SRC_USB_LIBUSB_PAGES) \
$(SRC_NETXML_PAGES) \
$(SRC_POWERMAN_PAGES) \
$(SRC_IPMIPSU_PAGES) \
$(SRC_MACOSX_PAGES) \
$(SRC_LINUX_I2C_PAGES) \
$(SRC_DRIVERS_PAGES)
EXTRA_DIST = \
$(SRC_ALL_PAGES) \
$(MAN_MANS) \
asciidoc.conf
if ! WITH_MANS
if ! SKIP_MANS
# Cause "make dist" to fail, unless caller (like the stack of distcheck-dmf)
# runs ./configure --with-doc=skip (or --with-doc=man=skip specifically)
EXTRA_DIST += dist
dist:
@echo "ERROR: Manpage building was disabled by configure script, and these pages are required for our proper 'make dist'" >&2 ; false
endif
endif
# For builds done from dist'ed sources, there may be a conflict of timestamps
# between original *.txt files and pre-built manpages etc. leading to skipping
# of manpage re-generation even if that activity is possible and requested.
# Possibly a cleaner, but less portable, solution would be to touch the
# generated files to long ago. Current solution assumes good valid clocks :)
dist-hook:
@echo "Fix up manpage source timestamps" && cd $(distdir) && touch $(SRC_ALL_PAGES)
HTML_MANS = \
$(HTML_CONF_MANS) \
$(HTML_CLIENT_MANS) \
@ -573,53 +737,244 @@ HTML_MANS = \
$(HTML_SERIAL_MANS) \
$(HTML_SNMP_MANS) \
$(HTML_USB_LIBUSB_MANS) \
$(HTML_SERIAL_USB_MANS) \
$(HTML_NETXML_MANS) \
$(HTML_POWERMAN_MANS) \
$(HTML_IPMIPSU_MANS) \
$(HTML_MACOSX_MANS) \
$(HTML_MODBUS_MANS) \
$(HTML_LINUX_I2C_MANS)
# Note: target documents, except nutupsdrv.txt itself, start the
# list of drivers with `- linkman:nutupsdrv[8]` entry
# To regenerate these files, do `make distclean` first
LINKMAN_INCLUDE_GENERATED = linkman-driver-names.txt linkman-drivertool-names.txt
LINKMAN_INCLUDE_CONSUMERS = index.txt upsd.txt nutupsdrv.txt
linkman-driver-names.txt:
@if test x"$(srcdir)" != x"$(builddir)" ; then \
if ! test -s "$(builddir)/$@" && test -s "$(srcdir)/$(@F)" ; then \
ln -fs "$(srcdir)/$(@F)" "$(builddir)/" ; \
fi ; \
fi
@if test -s "$@" ; then exit 0 ; fi ; \
(LC_ALL=C; LANG=C; export LC_ALL LANG; \
for F in $(SRC_DRIVERS_PAGES) ; do echo "$$F" ; done \
| grep -vE '^nutupsdrv\.txt$$' \
| sort -n | uniq \
| sed 's,^\(.*\)\.txt$$,- linkman:\1[8],' ; \
) > "$@"
linkman-drivertool-names.txt:
@if test x"$(srcdir)" != x"$(builddir)" ; then \
if ! test -s "$(builddir)/$@" && test -s "$(srcdir)/$(@F)" ; then \
ln -fs "$(srcdir)/$(@F)" "$(builddir)/" ; \
fi ; \
fi
@if test -s "$@" ; then exit 0 ; fi ; \
(LC_ALL=C; LANG=C; export LC_ALL LANG; \
for F in $(SRC_DRIVERTOOL_PAGES) ; do echo "$$F" ; done \
| sort -n | uniq \
| sed 's,^\(.*\)\.txt$$,- linkman:\1[8],' ; \
) > "$@"
# Dependencies are about particular filenames, since over time
# we might have several use-cases for LINKMAN_INCLUDE_GENERATED:
$(LINKMAN_INCLUDE_CONSUMERS): linkman-driver-names.txt linkman-drivertool-names.txt
# These files are generated when we build from git source so not tracked in
# git, and not part of tarball (to be in builddir) - so not in EXTRA_DIST.
DISTCLEANFILES = $(LINKMAN_INCLUDE_GENERATED)
all:
html-man: $(HTML_MANS) index.html
all-html html-man: $(HTML_MANS) index.html
CLEANFILES = *.xml *.html
# Have a way to build all man pages, not just those that fit currently
# configured drivers, daemons, developer aspect, etc.
all-man man-man: $(MAN_MANS)
if WITH_MANS
if ! SKIP_MANS
check-local: check-man
else
check-local: check-man-txt check-man-pages
@echo "Man-page generation was SKIPPED per user request, so pregenerated pages were sanity-checked (if any)" >&2
endif
else
check-local: check-man-txt check-man-pages
@echo "Man-page generation was not done, so pregenerated pages were sanity-checked (if any)" >&2
endif
check-man: check-man-txt check-man-pages check-html-man
# the "for" loops might better use $^ but it might be not portable
check-man-html: check-html-man
check-html-man: $(HTML_MANS)
@FAILED=""; CHECKED=0; LANG=C; LC_ALL=C; export LANG; export LC_ALL; \
for F in $(HTML_MANS) ; do \
CHECKED="`expr $$CHECKED + 1`"; \
test -s "$$F" && { file "$$F" | $(EGREP) -i '(XML|HTML.*document)' > /dev/null ; } || FAILED="$$FAILED $$F" ; \
done; if test -n "$$FAILED" ; then \
echo "FAILED HTML-man sanity check for:$$FAILED" >&2 ; file $$FAILED >&2 ; exit 1; \
fi; echo "PASSED HTML-man sanity check (checked $$CHECKED files)"; exit 0
# Note: many man-pages here have code samples and are mis-identified as C code
check-man-page: check-man-pages
# Man-pages may be pre-generated (srcdir), or re-built (builddir)
check-man-pages: $(MAN_MANS)
@FAILED=""; CHECKED=0; LANG=C; LC_ALL=C; export LANG; export LC_ALL; \
for F in $(MAN_MANS) ; do \
CHECKED="`expr $$CHECKED + 1`"; \
( test -s "$(abs_srcdir)/$$F" && { file "$(abs_srcdir)/$$F" | $(EGREP) -i '(roff.* input|C source|ASCII text)' > /dev/null ; } ) || \
( test -s "$(abs_builddir)/$$F" && { file "$(abs_builddir)/$$F" | $(EGREP) -i '(roff.* input|C source|ASCII text)' > /dev/null ; } ) || \
FAILED="$$FAILED $$F" ; \
done; if test -n "$$FAILED" ; then \
echo "FAILED man-page sanity check for:$$FAILED" >&2 ; \
( echo "SRCDIR:"; cd "$(abs_srcdir)/" && file $$FAILED ; \
echo "BUILDDIR:"; cd "$(abs_builddir)/" && file $$FAILED ; \
) >&2 ; exit 1; \
fi; echo "PASSED man-page sanity check (checked $$CHECKED files)"; exit 0
check-man-source: check-man-txt
# Note: (GNU) make can helpfully add VPATH to the short source filenames
# which we had listed above, so the "case" below handles two possibilities
check-man-txt: $(SRC_ALL_PAGES)
@FAILED=""; CHECKED=0; LANG=C; LC_ALL=C; export LANG; export LC_ALL; \
( cd $(abs_srcdir) ) || exit; \
for F in $(SRC_ALL_PAGES) ; do \
CHECKED="`expr $$CHECKED + 1`"; \
case "$$F" in \
*/*) ;; \
*) F="$(abs_srcdir)/$$F" ;; \
esac ; \
test -s "$$F" && { file "$$F" | $(EGREP) -i '(ASCII|UTF-8|Unicode|ISO-8859|English).* text' > /dev/null ; } || FAILED="$$FAILED $$F" ; \
done; if test -n "$$FAILED" ; then \
echo "FAILED man-source sanity check for:$$FAILED" >&2 ; file $$FAILED >&2 ; exit 1; \
fi; echo "PASSED man-source sanity check (checked $$CHECKED files)"; exit 0
CLEANFILES = *-spellchecked
SUFFIXES = .txt .html .1 .3 .5 .8
# For builds with allowed installation of prebuild man pages, check that
# they exist in sources (make would pull them automatically as a fallback
# from failed lookup in build products). For builds that require rebuild
# of man pages, abort with error if build product is missing.
if DOC_INSTALL_DISTED_MANS
SRC_PREBUILT_CLAUSE=|| [ -r "$(srcdir)/`basename $@`" ]
else
SRC_PREBUILT_CLAUSE=
endif
if HAVE_ASCIIDOC
CLEANFILES += *.1 *.3 *.5 *.8 *.xml *.html *.pdf
# Working around a2x not friendly to parallelized runs.
# See more details in the main NUT docs/Makefile.am
DOCBUILD_BEGIN = { \
if test -n "$${A2X_OUTDIR}" && test "$${A2X_OUTDIR}" != '.' ; then \
rm -rf "./$${A2X_OUTDIR}" || true ; \
test -d "$@" && rm -rf "$@" || true ; \
mkdir -p "./$${A2X_OUTDIR}" || exit ; \
for F in $(LINKMAN_INCLUDE_GENERATED) ; do \
if [ -s "./$$F" ] ; then ln -f -s "../../$$F" "./$${A2X_OUTDIR}/" ; else \
if [ -s "$(abs_srcdir)/$$F" ] ; then ln -f -s "$(abs_srcdir)/$$F" "./$${A2X_OUTDIR}/" ; fi ; fi ; \
done ; \
else A2X_OUTDIR='.' ; fi; \
if test -s "${builddir}/docbook-xsl.css" \
&& test -r "${builddir}/docbook-xsl.css" \
&& ! test -w "${builddir}/docbook-xsl.css" \
; then chmod u+w "${builddir}/docbook-xsl.css" ; fi ; \
chmod -R u+w "./$${A2X_OUTDIR}" || true ; \
if test x"$(srcdir)" != x"$(builddir)" ; then \
if ! test -s "$(builddir)/$<" && test -s "$(srcdir)/`basename $<`" ; then \
ln -fs "$(srcdir)/`basename $<`" "$(builddir)/" ; \
fi ; \
fi ; \
A2X_VERBOSE="$(ASCIIDOC_VERBOSE)"; if [ "$(V)" = 1 ]; then A2X_VERBOSE="--verbose"; fi; \
}
# Note that documents with sub-pages (see LIBNUTCLIENT_*_DEPS above)
# may generate multiple files in one go... so we move "*" and hope
# for no required hidden files (or would have to `find` them all).
DOCBUILD_END = { \
if test -n "$${A2X_OUTDIR}" && test "$${A2X_OUTDIR}" != '.' ; then \
chmod -R u+w "./$${A2X_OUTDIR}" || true ; \
test -d "$@" && rm -rf "$@" || true ; \
for F in $(LINKMAN_INCLUDE_GENERATED) ; do \
rm -f "./$${A2X_OUTDIR}/$$F" || true ; \
done ; \
mv -f "./$${A2X_OUTDIR}/$(@F)" ./ || exit ; \
mv -f "./$${A2X_OUTDIR}/"*.* ./ 2>/dev/null || true ; \
rm -rf "./$${A2X_OUTDIR}" ; \
fi ; \
}
### Regarding absolute paths in attributes below: by default asciidoc
### resolves include paths relative to the main document, so while we
### see the relative builddir as "." in the makefile, for included
### data it would mean the source directory where the .txt resides.
.txt.html:
$(ASCIIDOC) --backend=xhtml11 \
--attribute localdate=`TZ=UTC date +%Y-%m-%d` \
--attribute localtime=`TZ=UTC date +%H:%M:%S` \
@A2X_OUTDIR="tmp/man-html.$(@F).$$$$" ; \
echo " DOC-MAN-HTML Generating $@"; \
$(DOCBUILD_BEGIN) ; RES=0; \
$(ASCIIDOC) --backend=xhtml11 $${A2X_VERBOSE} \
--attribute localdate="`TZ=UTC date +%Y-%m-%d`" \
--attribute localtime="`TZ=UTC date +%H:%M:%S`" \
--attribute nutversion="@PACKAGE_VERSION@" \
-o $@ $<
--attribute srcdir="$(abs_srcdir)" \
--attribute builddir="$(abs_builddir)" \
-o "$${A2X_OUTDIR}/$(@F)" $< || RES=$$? ; \
$(DOCBUILD_END) ; exit $$RES
### Prior to Asciidoc ~8.6.8, the --destination-dir flag didn't seem to affect the location of the intermediate .xml file.
A2X_MANPAGE_OPTS = --doctype manpage --format manpage \
--xsltproc-opts "--nonet" \
### This parameter is currently required; see docs/Makefile.am for more detail.
A2X_MANPAGE_OPTS = --doctype manpage --format manpage $${A2X_VERBOSE} \
--xsltproc-opts="--nonet" \
--attribute mansource="Network UPS Tools" \
--attribute manversion="@PACKAGE_VERSION@" \
--attribute manmanual="NUT Manual" \
--destination-dir=.
--attribute srcdir="$(abs_srcdir)" \
--attribute builddir="$(abs_builddir)" \
--destination-dir="$${A2X_OUTDIR}"
.txt.1:
$(A2X) $(A2X_MANPAGE_OPTS) $<
@A2X_OUTDIR="tmp/man1.$(@F).$$$$" ; \
echo " DOC-MAN Generating $@"; \
$(DOCBUILD_BEGIN) ; RES=0; \
$(A2X) $(A2X_MANPAGE_OPTS) $< || RES=$$? ; \
$(DOCBUILD_END) ; exit $$RES
.txt.3:
$(A2X) $(A2X_MANPAGE_OPTS) $<
@A2X_OUTDIR="tmp/man3.$(@F).$$$$" ; \
echo " DOC-MAN Generating $@"; \
$(DOCBUILD_BEGIN) ; RES=0; \
$(A2X) $(A2X_MANPAGE_OPTS) $< || RES=$$? ; \
$(DOCBUILD_END) ; exit $$RES
.txt.5:
$(A2X) $(A2X_MANPAGE_OPTS) $<
@A2X_OUTDIR="tmp/man5.$(@F).$$$$" ; \
echo " DOC-MAN Generating $@"; \
$(DOCBUILD_BEGIN) ; RES=0; \
$(A2X) $(A2X_MANPAGE_OPTS) $< || RES=$$? ; \
$(DOCBUILD_END) ; exit $$RES
.txt.8:
$(A2X) $(A2X_MANPAGE_OPTS) $<
@A2X_OUTDIR="tmp/man8.$(@F).$$$$" ; \
echo " DOC-MAN Generating $@"; \
$(DOCBUILD_BEGIN) ; RES=0; \
$(A2X) $(A2X_MANPAGE_OPTS) $< || RES=$$? ; \
$(DOCBUILD_END) ; exit $$RES
else !HAVE_ASCIIDOC
.txt.html:
@if [ -r "$@" ]; then \
@if [ -r "$@" ] $(SRC_PREBUILT_CLAUSE); then \
echo "Not (re)building $@ manual page, since 'asciidoc', 'xmllint' or 'xsltproc' were not found." ; \
else \
echo "Could not find prebuilt $@ manual page." ; \
@ -628,7 +983,7 @@ else !HAVE_ASCIIDOC
fi
.txt.1:
@if [ -r "$@" ]; then \
@if [ -r "$@" ] $(SRC_PREBUILT_CLAUSE); then \
echo "Not (re)building $@ manual page, since 'asciidoc', 'xmllint' or 'xsltproc' were not found." ; \
else \
echo "Could not find prebuilt $@ manual page." ; \
@ -637,7 +992,7 @@ else !HAVE_ASCIIDOC
fi
.txt.3:
@if [ -r "$@" ]; then \
@if [ -r "$@" ] $(SRC_PREBUILT_CLAUSE); then \
echo "Not (re)building $@ manual page, since 'asciidoc', 'xmllint' or 'xsltproc' were not found." ; \
else \
echo "Could not find prebuilt $@ manual page." ; \
@ -646,7 +1001,7 @@ else !HAVE_ASCIIDOC
fi
.txt.5:
@if [ -r "$@" ]; then \
@if [ -r "$@" ] $(SRC_PREBUILT_CLAUSE); then \
echo "Not (re)building $@ manual page, since 'asciidoc', 'xmllint' or 'xsltproc' were not found." ; \
else \
echo "Could not find prebuilt $@ manual page." ; \
@ -655,7 +1010,7 @@ else !HAVE_ASCIIDOC
fi
.txt.8:
@if [ -r "$@" ]; then \
@if [ -r "$@" ] $(SRC_PREBUILT_CLAUSE); then \
echo "Not (re)building $@ manual page, since 'asciidoc', 'xmllint' or 'xsltproc' were not found." ; \
else \
echo "Could not find prebuilt $@ manual page." ; \
@ -664,3 +1019,21 @@ else !HAVE_ASCIIDOC
fi
endif !HAVE_ASCIIDOC
# NOTE: Due to portability, we do not use a GNU percent-wildcard extension:
#%-spellchecked: % Makefile.am $(top_srcdir)/docs/Makefile.am $(abs_srcdir)/$(NUT_SPELL_DICT)
# $(MAKE) -s -f $(top_builddir)/docs/Makefile SPELLCHECK_SRC_ONE="$<" SPELLCHECK_DIR="$(srcdir)" $@
# NOTE: Portable suffix rules do not allow prerequisites, so we shim them here
# by a wildcard target in case the make implementation can put the two together.
*.txt-spellchecked: Makefile.am $(abs_top_srcdir)/docs/Makefile.am $(abs_srcdir)/$(NUT_SPELL_DICT)
.txt.txt-spellchecked:
$(MAKE) -s -f $(top_builddir)/docs/Makefile SPELLCHECK_SRC_ONE="$<" SPELLCHECK_DIR="$(srcdir)" $@
spellcheck spellcheck-interactive spellcheck-sortdict:
$(MAKE) -f $(top_builddir)/docs/Makefile SPELLCHECK_SRC="$(SRC_ALL_PAGES)" SPELLCHECK_DIR="$(srcdir)" $@
MAINTAINERCLEANFILES = Makefile.in .dirstamp
clean-local:
rm -rf tmp

File diff suppressed because it is too large Load diff

160
docs/man/adelsystem_cbi.8 Normal file
View file

@ -0,0 +1,160 @@
'\" t
.\" Title: adelsystem_cbi
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "ADELSYSTEM_CBI" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
adelsystem_cbi \- Driver for the ADELSYSTEM CB/CBI DC\-UPS
.SH "SYNOPSIS"
.sp
\fBadelsystem_cbi\fR \-h
.sp
\fBadelsystem_cbi\fR \-a \fIDEVICE_NAME\fR [\fIOPTIONS\fR]
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
This man page only documents the specific features of the \fBadelsystem_cbi\fR driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.sp .5v
.RE
.SH "SUPPORTED HARDWARE"
.sp
This is the driver for the adelsystem cb/cbi dc\-ups devices\&.
.sp
The driver has been tested against CBI2801224A, all in one 12/24Vdc DC\-UPS\&.
.PP
More information about this UPS can be found here:
.RS 4
https://www\&.adelsystem\&.com/en/products/dc\-ups\-/
.RE
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in the \fBups.conf\fR(5) file:
.SS "Serial:"
.PP
\fBser_baud_rate\fR=\fIvalue\fR
.RS 4
A integer specifying the serial port baud rate (default 9600)\&.
.RE
.PP
\fBser_data_bit\fR=\fIvalue\fR
.RS 4
A integer specifying the serial port data bit (default 8)\&.
.RE
.PP
\fBser_parity\fR=\fIvalue\fR
.RS 4
A character specifying the serial port parity (default N)\&.
.RE
.PP
\fBser_stop_bit\fR=\fIvalue\fR
.RS 4
An integer specifying the serial port stop bit (default 1)\&.
.RE
.SS "Modbus:"
.PP
\fBdev_slave_id\fR=\fIvalue\fR
.RS 4
An integer specifying the device modbus slave ID (default 1)\&.
.RE
.SH "CONFIGURATION"
.sp
Here is an example of adelsystem_cbi driver configuration in \fBups\&.conf\fR file:
.sp
.if n \{\
.RS 4
.\}
.nf
[adelsystem_cbi]
driver = adelsystem_cbi
port = /dev/ttyUSB0
desc = "adelsystem cb/cbi ups driver"
# serial settings
ser_baud_rate = 9600
ser_parity = N
ser_data_bit = 8
ser_stop_bit = 1
# modbus slave id
dev_slave_id = 5
.fi
.if n \{\
.RE
.\}
.SH "INSTANT COMMANDS"
.sp
This driver support the following instant commands:
.PP
load\&.off
.RS 4
executes "instant poweroff"
.RE
.SH "INSTALLATION"
.sp
This driver is not built by default\&. You can build it by installing libmodbus and running configure \-\-with\-modbus=yes\&.
.sp
You also need to give proper permissions on the local serial device file (/dev/ttyUSB0 for example) to allow the run\-time NUT driver user account to access it\&.
.SH "AUTHOR"
.sp
Dimitris Economou <dimitris\&.s\&.economou@gmail\&.com>
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8), \fBups.conf\fR(5)
.SS "Internet resources:"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
libmodbus home page:
http://libmodbus\&.org
.RE

111
docs/man/adelsystem_cbi.txt Normal file
View file

@ -0,0 +1,111 @@
ADELSYSTEM_CBI(8)
=================
NAME
----
adelsystem_cbi - Driver for the ADELSYSTEM CB/CBI DC-UPS
SYNOPSIS
--------
*adelsystem_cbi* -h
*adelsystem_cbi* -a 'DEVICE_NAME' ['OPTIONS']
NOTE: This man page only documents the specific features of the *adelsystem_cbi*
driver. For information about the core driver, see linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This is the driver for the adelsystem cb/cbi dc-ups devices.
The driver has been tested against CBI2801224A, all in one 12/24Vdc DC-UPS.
More information about this UPS can be found here: ::
https://www.adelsystem.com/en/products/dc-ups-/
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
linkman:ups.conf[5] file:
Serial:
~~~~~~
*ser_baud_rate*='value'::
A integer specifying the serial port baud rate (default 9600).
*ser_data_bit*='value'::
A integer specifying the serial port data bit (default 8).
*ser_parity*='value'::
A character specifying the serial port parity (default N).
*ser_stop_bit*='value'::
An integer specifying the serial port stop bit (default 1).
Modbus:
~~~~~~
*dev_slave_id*='value'::
An integer specifying the device modbus slave ID (default 1).
CONFIGURATION
-------------
Here is an example of adelsystem_cbi driver configuration in *ups.conf* file:
----
[adelsystem_cbi]
driver = adelsystem_cbi
port = /dev/ttyUSB0
desc = "adelsystem cb/cbi ups driver"
# serial settings
ser_baud_rate = 9600
ser_parity = N
ser_data_bit = 8
ser_stop_bit = 1
# modbus slave id
dev_slave_id = 5
----
INSTANT COMMANDS
----------------
This driver support the following instant commands:
load.off::
executes "instant poweroff"
INSTALLATION
------------
This driver is not built by default. You can build it by installing
libmodbus and running `configure --with-modbus=yes`.
You also need to give proper permissions on the local serial device
file (/dev/ttyUSB0 for example) to allow the run-time NUT driver user
account to access it.
AUTHOR
------
Dimitris Economou <dimitris.s.economou@gmail.com>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8], linkman:ups.conf[5]
Internet resources:
~~~~~~~~~~~~~~~~~~~
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* libmodbus home page: http://libmodbus.org

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: al175
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "AL175" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "AL175" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -46,7 +46,7 @@ Eltek MPSU4000 with AL175 alarm module
.RE
.\}
.sp
It may also work with other UPSes equiped with AL175 alarm module, but they have not been tested\&.
It may also work with other UPSes equipped with AL175 alarm module, but they have not been tested\&.
.sp
AL175 have to be configured to operate in COMLI mode\&. See documentation supplied with your hardware on how to do it\&.
.SH "EXTRA ARGUMENTS"

View file

@ -3,21 +3,24 @@ AL175(8)
NAME
----
al175 - Driver for Eltek UPS models with AL175 alarm module
NOTE
----
This man page only documents the hardware-specific features of the
*al175* driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
The *al175* driver is known to work with the following UPSes:
Eltek MPSU4000 with AL175 alarm module
It may also work with other UPSes equiped with AL175 alarm module,
It may also work with other UPSes equipped with AL175 alarm module,
but they have not been tested.
@ -26,11 +29,13 @@ See documentation supplied with your hardware on how to do it.
EXTRA ARGUMENTS
---------------
This driver does not support any extra settings in the
linkman:ups.conf[5].
INSTANT COMMANDS
----------------
This driver supports some extra commands (see linkman:upscmd[8]):
*test.battery.start*::
@ -41,6 +46,7 @@ Stop a battery test.
VARIABLES
---------
Besides status, this driver reads UPS state into following variables:
- *ups.test.result*
@ -53,12 +59,14 @@ Besides status, this driver reads UPS state into following variables:
KNOWN ISSUES AND BUGS
---------------------
* Shutdown is not supported. FIXME
* The driver was reworked to meet the project code quality criteria, without
testing on real hardware. Some bugs may have crept in.
AUTHOR
------
Kirill Smelkov <kirr@mns.spb.ru>
SEE ALSO
@ -66,8 +74,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: apcsmart-old
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "APCSMART\-OLD" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "APCSMART\-OLD" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -112,9 +112,13 @@ Mode 4 exploits an oddity in the CS 350 models since they only seem to support t
Some older APC UPS models return bogus data in the status register during a front panel test\&. This is usually detected and discarded, but some other unexpected values have occasionally slipped through\&.
.sp
APC UPS models with both USB and serial ports require a power cycle when switching from USB communication to serial, and perhaps vice versa\&.
.SH "AUTHOR"
.SH "AUTHORS AND HISTORY"
.sp
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&. This driver was called newapc for a time and was renamed in the 1\&.5 series\&. In 2\&.6\&.2 the driver was renamed to apcsmart\-old, being superseded by updated version with new features\&.
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&.
.sp
This driver was called newapc for a time and was renamed in the 1\&.5 series\&.
.sp
In 2\&.6\&.2 the driver was renamed to apcsmart\-old, being superseded by updated version with new features\&.
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -1,7 +1,7 @@
APCSMART-OLD(8)
===============
NAME
NAME
----
apcsmart-old - Driver for American Power Conversion Smart Protocol UPS equipment
@ -83,21 +83,27 @@ other unexpected values have occasionally slipped through.
APC UPS models with both USB and serial ports require a power cycle when
switching from USB communication to serial, and perhaps vice versa.
AUTHOR
------
AUTHORS AND HISTORY
-------------------
Nigel Metheringham <Nigel.Metheringham@Intechnology.co.uk> (drawing
heavily on the original apcsmart driver by Russell Kroll). This driver
was called newapc for a time and was renamed in the 1.5 series. In 2.6.2
the driver was renamed to apcsmart-old, being superseded by updated version
with new features.
heavily on the original `apcsmart` driver by Russell Kroll).
This driver was called `newapc` for a time and was renamed in
the 1.5 series.
In 2.6.2 the driver was renamed to `apcsmart-old`, being superseded
by updated version with new features.
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: apcsmart
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "APCSMART" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "APCSMART" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -89,7 +89,7 @@ Smart\-UPS 900I
.PP
"new" models
.RS 4
These models usually come from late 1990s / pre\-2009 times\&. They are often referred as "3rd\&. gen"\&. For the most part, they have programmable EEPROM, report supported commands and capabilites, and should work just fine with the apcsmart driver\&.
These models usually come from late 1990s / pre\-2009 times\&. They are often referred as "3rd\&. gen"\&. For the most part, they have programmable EEPROM, report supported commands and capabilities, and should work just fine with the apcsmart driver\&.
.RE
.PP
"microlink" models
@ -99,9 +99,11 @@ WARNING: these are not
supported by
\fBapcsmart\fR
(or
\fBapcupsd\fR, for that matter, if you\(cqre wondering)\&. Around 2007, APC (now APC Schneider) decided to go back to its proprietry roots, and all the new models (SMT, SMX, SURTD) use completely different protocol and cables\&. If you purchased a new APC UPS \- that uses cable with RJ45 on the one end, and DB\-9 on the other \- then you have such model\&. Your only option to support it through
\fBapcupsd\fR, for that matter, if you\(cqre wondering)\&. Around 2007, APC (now APC Schneider) decided to go back to its proprietary roots, and all the new models (SMT, SMX, SURTD) use completely different protocol and cables\&. If you purchased a new APC UPS \- that uses cable with RJ45 on the one end, and DB\-9 on the other \- then you have such model\&. Your only option to support it through
\fBNUT\fR
is to purchase a "legacy communications card" \- part #AP9620 (google \*(AqAP9620\*(Aq for more details)\&. Or if that\(cqs not an option, rely on official software\&.
is to purchase a "legacy communications card" \- part #AP9620 (google
\fIAP9620\fR
for more details)\&. Or if that\(cqs not an option, rely on official software\&.
.RE
.PP
Microsol models
@ -140,7 +142,7 @@ Back\-UPS BZ2200BI\-BR
Another thing to remember is that Smart protocol is not USB protocol\&. If you have UPS with both USB and serial ports, then depending on how you connect it, you will need either apcsmart or usbhid\-ups driver\&.
.SH "CABLING"
.sp
This driver expects to see a 940\-0024C cable or a clone by default\&. You can switch to the 940\-0095B dual\-mode cable support with the \*(Aqcable=\*(Aq definition described below\&.
This driver expects to see a 940\-0024C cable or a clone by default\&. You can switch to the 940\-0095B dual\-mode cable support with the \fIcable=\fR definition described below\&.
.sp
If your 940\-xx24X cable is broken or missing, use this diagram to build a clone:
.sp
@ -171,7 +173,7 @@ Alternatively, you can also provide it on the command line using:
\-x \fBcable\fR=940\-0095B
.SH "TTY MODES"
.sp
By default the driver works in canonical mode, but it proved to be a problem in Windows systems\&. Furthermore there\(cqs a possibility of some obscure serial cards or serial\-USB converters that could cause problems as well\&. You can use \*(Aqttymode=\*(Aq option to force non\-canonical discipline in \fBups.conf\fR(5):
By default the driver works in canonical mode, but it proved to be a problem in Windows systems\&. Furthermore there\(cqs a possibility of some obscure serial cards or serial\-USB converters that could cause problems as well\&. You can use \fIttymode=\fR option to force non\-canonical discipline in \fBups.conf\fR(5):
.sp
\fBttymode\fR=raw
.sp
@ -203,47 +205,53 @@ APC hardware supports a lot of shutdown methods, that themselves can differ in b
This is most basic command present in probably all APC models\&. It will hibernate the UPS, and subsequently wake it up when the mains supply returns\&.
\fBThe command doesn\(cqt work if the UPS is running on mains\&.\fR
.PP
"old" models
"old" models:
.RS 4
The behaviour here is unfortunately pretty primitive \- when the power returns, the UPS just wakes up\&. No grace periods, no min\&. battery charge condition, etc\&. This is probably not what you want\&.
.RE
.PP
"new" models
"new" models:
.RS 4
The behaviour here is as expected \- the power is cut off after the EEPROM defined grace period\&. The UPS will wake up when the power returns, after the EEPROM defined delay AND if the EEPROM defined min\&. battery charge level is met\&. The delay is counted from the power\*(Aqs return\&.
The behaviour here is as expected \- the power is cut off after the EEPROM defined grace period\&. The UPS will wake up when the power returns, after the EEPROM defined delay AND if the EEPROM defined min\&. battery charge level is met\&. The delay is counted from the power\(cqs return\&.
.RE
.RE
.PP
\fBCS\fR (aka "force OB hack")
.RS 4
This is a trick to make UPS power down even if it\*(Aqs running on mains\&. Immediately before issuing
This is a trick to make UPS power down even if it\(cqs running on mains\&. Immediately before issuing
\fBS\fR, "simulate power failure" is issued\&. The remaining behaviour is as in
\fBS\fR
case\&.
.sp
There\(cqs a delay between "simulate power failure" and
\fBS\fR
\- by default set to 3\&.5s\&. You can control it through
\fBcshdelay\fR
option (allowed values are from 0 to 9\&.9)\&.
.sp
The name came from APC CS models, where such trick was used to power down UPSes in consistent fashion using only
\fBS\fR\&. It\*(Aqs better to use
\fBS\fR\&. It\(cqs better to use
\fB@nnn\fR
command if your UPS supports it (and is not too old, see below)\&.
.RE
.PP
\fB@nnn\fR (hard hibernate)
.RS 4
This is basic command used to hibernate UPS regardless if it\*(Aqs running on batteries or on mains\&. The option takes 3 digits argument which can be used to specify additional wakeup delay (in 6 minute units)\&.
This is basic command used to hibernate UPS regardless if it\(cqs running on batteries or on mains\&. The option takes 3 digits argument which can be used to specify additional wake\-up delay (in 6 minute units)\&.
.PP
"old" models
"old" models:
.RS 4
The behaviour is \- unfortunately \- similary primitive to
The behaviour is \- unfortunately \- similarly primitive to
\fBS\fR\&. The UPS unconditionally wakes up after nnn*6 minutes \-
\fBit doesn\*(Aqt care if the power returned !\fR
If nnn = 000, then UPS will do precisely nothing\&. On those models you\*(Aqre better specifying nnn > 0, if you can estimate the kind of power problems that might be happening in your environment\&. Another thing to consider with "old" models \- you might lose the connection with the UPS, until it wakes up (with
\fBit doesn\(cqt care if the power returned !\fR
If nnn = 000, then UPS will do precisely nothing\&. On those models you\(cqre better specifying nnn > 0, if you can estimate the kind of power problems that might be happening in your environment\&. Another thing to consider with "old" models \- you might lose the connection with the UPS, until it wakes up (with
\fBS\fR, the serial connection is kept alive)\&.
.RE
.PP
"new" models
"new" models:
.RS 4
All the usual variables defined in EEPROM are respected (see
\fBS\fR)\&. Additionally, if nnn > 0, the nnn*6 minutes are added to EEPROM defined delay\&. UPS will not power up if it\*(Aqs running on batteries, contrary to what "old" models used to do \- the combined delay is counted from the moment of power return\&.
\fBS\fR)\&. Additionally, if nnn > 0, the nnn*6 minutes are added to EEPROM defined delay\&. UPS will not power up if it\(cqs running on batteries, contrary to what "old" models used to do \- the combined delay is counted from the moment of power return\&.
.RE
.sp
Supposedly there exist models that take 2 digits instead of 3\&. Just in case, NUT also supports such variation\&. You have to provide exactly 2 digits to trigger it (\fBawd\fR
@ -270,18 +278,18 @@ This option takes a single digit (0\-5) as an argument\&. See below for details\
.PP
\fBadvorder\fR=no|[0\-4]+
.RS 4
This option takes string of digits as an argument\&. Methods listed are tried in turn until one of them succeedes\&. Note that the meaning of digits is different from
This option takes string of digits as an argument\&. Methods listed are tried in turn until one of them succeeds\&. Note that the meaning of digits is different from
\fBsdtype\fR\&. See below for details\&.
.RE
.PP
\fBawd\fR=[0\-9]{1,3}
.RS 4
This option lets you specify additional wakeup delay used by
This option lets you specify additional wake\-up delay used by
\fB@\fR\&. If you provide exactly 2 digits, the driver will try 2 digits variation (see previous section for more info)\&. Otherwise standard 3 digits variation is used\&.
\fBNote: the time unit is 6 minutes !\fR
.RE
.sp
Keep in mind that \fBsdtype\fR and \fBadvorder\fR are mutually exclusive\&. If \fBadvorder\fR is provided, \fBsdtype\fR is ignored\&. If \fBadvorder\fR is set to \*(Aqno\*(Aq, \fBsdtype\fR is used instead\&.
Keep in mind that \fBsdtype\fR and \fBadvorder\fR are mutually exclusive\&. If \fBadvorder\fR is provided, \fBsdtype\fR is ignored\&. If \fBadvorder\fR is set to \fIno\fR, \fBsdtype\fR is used instead\&.
.sp
If nothing is provided, \fBNUT\fR will assume \fBsdtype\fR=0 \- which is generally fine for anything not too ancient or not too quirky\&.
.SS "SDTYPE"
@ -330,14 +338,14 @@ issue hard hibernate (\fB@\fR)
.ps -1
.br
.sp
Hard hibernate\*(Aqs additional wakeup delay can be provided by \fBawd\fR\&.
Hard hibernate\(cqs additional wake\-up delay can be provided by \fBawd\fR\&.
.sp .5v
.RE
.SS "ADVORDER"
.sp
The argument is either a word \*(Aqno\*(Aq, or a string of 1 \- 5 digits in [0 \- 4] range\&. Each digit maps to the one of shutdown methods supported by APC UPSes\&. Methods listed in this way are tried in order, until one of them succedes\&.
The argument is either a word \fIno\fR, or a string of 1 \- 5 digits in [0 \- 4] range\&. Each digit maps to the one of shutdown methods supported by APC UPSes\&. Methods listed in this way are tried in order, until one of them succeeds\&.
.sp
If \fBadvorder\fR is undefined or set to \*(Aqno\*(Aq, \fBsdtype\fR is used instead\&.
If \fBadvorder\fR is undefined or set to \fIno\fR, \fBsdtype\fR is used instead\&.
.sp
The mapping is as follows:
.TS
@ -397,7 +405,7 @@ T}
.ps -1
.br
.sp
Hard hibernate\*(Aqs additional wakeup delay can be provided by \fBawd\fR\&.
Hard hibernate\(cqs additional wake\-up delay can be provided by \fBawd\fR\&.
.sp .5v
.RE
.SH "IGNORING LB STATE"
@ -435,7 +443,7 @@ This would cause apcsmart to go into shutdown \fIonly\fR if detected battery cha
.sp
You could ask \- why bother ? Well, the reason is already hinted above\&. APC units can be very picky about the batteries, and their firmware can underestimate the remaining runtime (especially right after going into OB state)\&. \fBignorelb\fR option and \fBoverride\&.*\fR let you remain in control of the UPS, not UPS in control of you\&.
.sp
Furthermore, this allows to specify conditions similary to how it\(cqs done in apcupsd daemon, so it should be welcome by people used to that software\&.
Furthermore, this allows to specify conditions similarly to how it\(cqs done in apcupsd daemon, so it should be welcome by people used to that software\&.
.SH "SUPPORTED INSTANT COMMANDS"
.sp
The apcsmart driver exposes following instant commands:
@ -452,7 +460,7 @@ executes "force OB hack"
.PP
shutdown\&.return at:<nbr>
.RS 4
executes "hard hibernate" with <nbr>*6 minutes additional wakeup delay (<nbr> format is the same as of
executes "hard hibernate" with <nbr>*6 minutes additional wake\-up delay (<nbr> format is the same as of
\fBawd\fR
option)
.RE
@ -467,7 +475,7 @@ load\&.off
executes "instant poweroff"
.RE
.sp
All the above commands must be issued 2nd time to have any effect (no less than 3 seconds, and no more than 15 seconds after the initial call)\&. Those commands are mostly useful for manual testing, when your machine is not powered by the UPS you\*(Aqre testing\&.
All the above commands must be issued 2nd time to have any effect (no less than 3 seconds, and no more than 15 seconds after the initial call)\&. Those commands are mostly useful for manual testing, when your machine is not powered by the UPS you\(cqre testing\&.
.sp
Other supported commands:
.sp
@ -571,15 +579,19 @@ calibrate\&.stop
.RE
.SH "PREVIOUS DRIVER VERSION"
.sp
Previous driver is still available as \fBapcsmart\-old\fR, should there be any need to use earlier version (bugs, incompatiblities with new functionality, etc\&.)\&. In due time, \fBapcsmart\-old\fR will be phased out completely, but this won\(cqt happen until the new version gets solid exposure with no pending issues\&.
Previous driver is still available as \fBapcsmart\-old\fR, should there be any need to use earlier version (bugs, incompatibilities with new functionality, etc\&.)\&. In due time, \fBapcsmart\-old\fR will be phased out completely, but this won\(cqt happen until the new version gets solid exposure with no pending issues\&.
.SH "BUGS"
.sp
Some older APC UPS models return bogus data in the status register during a front panel test\&. This is usually detected and discarded, but some other unexpected values have occasionally slipped through\&.
.sp
APC UPS models with both USB and serial ports require a power cycle when switching from USB communication to serial, and perhaps vice versa\&.
.SH "AUTHOR"
.SH "AUTHORS AND HISTORY"
.sp
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&. This driver was called newapc for a time and was renamed in the 1\&.5 series\&. In 2\&.6\&.2 it was renamed to apcsmart\-old, being superseded by updated version with new features, which is maintained by Michal Soltys <soltys@ziu\&.info>
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&.
.sp
This driver was called newapc for a time and was renamed in the 1\&.5 series\&.
.sp
In 2\&.6\&.2 it was renamed to apcsmart\-old, being superseded by updated version with new features, which is maintained by Michal Soltys <soltys@ziu\&.info>
.SH "SEE ALSO"
.sp
\fBnutupsdrv\fR(8), \fBups.conf\fR(5), \fBusbhid-ups\fR(8), \fBsolis\fR(8)

View file

@ -1,7 +1,7 @@
APCSMART(8)
===========
NAME
NAME
----
apcsmart - Driver for American Power Conversion Smart Protocol UPS equipment
@ -46,18 +46,18 @@ division isn't strict by any means, and the borders between those are pretty fuz
"new" models::
These models usually come from late 1990s / pre-2009 times. They are often
referred as "3rd. gen". For the most part, they have programmable EEPROM,
report supported commands and capabilites, and should work just fine with the
report supported commands and capabilities, and should work just fine with the
apcsmart driver.
"microlink" models::
WARNING: these are not _natively_ supported by *apcsmart* (or *apcupsd*,
for that matter, if you're wondering). Around 2007, APC (now APC Schneider)
decided to go back to its proprietry roots, and all the new models (SMT,
decided to go back to its proprietary roots, and all the new models (SMT,
SMX, SURTD) use completely different protocol and cables. If you purchased
a new APC UPS - that uses cable with RJ45 on the one end, and DB-9 on the
other - then you have such model. Your only option to support it through
*NUT* is to purchase a "legacy communications card" - part #AP9620 (google
\'AP9620' for more details). Or if that's not an option, rely on official
'AP9620' for more details). Or if that's not an option, rely on official
software.
Microsol models::
@ -80,7 +80,7 @@ CABLING
-------
This driver expects to see a 940-0024C cable or a clone by default. You
can switch to the 940-0095B dual-mode cable support with the \'cable='
can switch to the 940-0095B dual-mode cable support with the 'cable='
definition described below.
If your 940-xx24X cable is broken or missing, use this diagram to build
@ -108,7 +108,7 @@ TTY MODES
By default the driver works in canonical mode, but it proved to be a problem in
Windows systems. Furthermore there's a possibility of some obscure serial cards
or serial-USB converters that could cause problems as well. You can use
\'ttymode=' option to force non-canonical discipline in linkman:ups.conf[5]:
'ttymode=' option to force non-canonical discipline in linkman:ups.conf[5]:
*ttymode*=raw
@ -128,48 +128,54 @@ behaviour quite a bit, depending on the model.
This is most basic command present in probably all APC models. It will
hibernate the UPS, and subsequently wake it up when the mains supply
returns. *The command doesn't work if the UPS is running on mains.*
"old" models:::
+
--
"old" models: ::
The behaviour here is unfortunately pretty primitive - when the power
returns, the UPS just wakes up. No grace periods, no min. battery
charge condition, etc. This is probably not what you want.
"new" models:::
"new" models: ::
The behaviour here is as expected - the power is cut off after the
EEPROM defined grace period. The UPS will wake up when the power
returns, after the EEPROM defined delay AND if the EEPROM defined min.
battery charge level is met. The delay is counted from the power\'s
battery charge level is met. The delay is counted from the power's
return.
--
+
*CS* (aka "force OB hack")::
This is a trick to make UPS power down even if it\'s running on mains.
This is a trick to make UPS power down even if it's running on mains.
Immediately before issuing *S*, "simulate power failure" is issued. The
remaining behaviour is as in *S* case.
+
There's a delay between "simulate power failure" and *S* - by default set to
3.5s. You can control it through *cshdelay* option (allowed values are from 0
to 9.9).
+
The name came from APC CS models, where such trick was used to power down
UPSes in consistent fashion using only *S*. It\'s better to use *@nnn*
UPSes in consistent fashion using only *S*. It's better to use *@nnn*
command if your UPS supports it (and is not too old, see below).
*@nnn* (hard hibernate)::
This is basic command used to hibernate UPS regardless if it\'s
This is basic command used to hibernate UPS regardless if it's
running on batteries or on mains. The option takes 3 digits argument which
can be used to specify additional wakeup delay (in 6 minute units).
can be used to specify additional wake-up delay (in 6 minute units).
+
--
"old" models:::
The behaviour is - unfortunately - similary primitive to *S*. The UPS
unconditionally wakes up after $$nnn*6$$ minutes - *it doesn\'t care if the
"old" models: ::
The behaviour is - unfortunately - similarly primitive to *S*. The UPS
unconditionally wakes up after $$nnn*6$$ minutes - *it doesn't care if the
power returned !* If nnn = 000, then UPS will do precisely nothing. On
those models you\'re better specifying nnn > 0, if you can estimate
those models you're better specifying nnn > 0, if you can estimate
the kind of power problems that might be happening in your environment.
Another thing to consider with "old" models - you might lose the
connection with the UPS, until it wakes up (with *S*, the serial
connection is kept alive).
"new" models:::
"new" models: ::
All the usual variables defined in EEPROM are respected (see *S*).
Additionally, if nnn > 0, the $$nnn*6$$ minutes are added to EEPROM
defined delay. UPS will not power up if it\'s running on batteries,
defined delay. UPS will not power up if it's running on batteries,
contrary to what "old" models used to do - the combined delay is counted
from the moment of power return.
--
@ -197,17 +203,17 @@ There are three options used to control the shutdown behaviour.
*advorder*=no|[0-4]+::
This option takes string of digits as an argument. Methods listed are tried
in turn until one of them succeedes. Note that the meaning of digits is
in turn until one of them succeeds. Note that the meaning of digits is
different from *sdtype*. See below for details.
*awd*=[0-9]{1,3}::
This option lets you specify additional wakeup delay used by *@*. If you
This option lets you specify additional wake-up delay used by *@*. If you
provide exactly 2 digits, the driver will try 2 digits variation (see
previous section for more info). Otherwise standard 3 digits variation is
used. *Note: the time unit is 6 minutes !*
Keep in mind that *sdtype* and *advorder* are mutually exclusive. If *advorder*
is provided, *sdtype* is ignored. If *advorder* is set to \'no', *sdtype* is
is provided, *sdtype* is ignored. If *advorder* is set to 'no', *sdtype* is
used instead.
If nothing is provided, *NUT* will assume *sdtype*=0 - which is generally fine
@ -234,16 +240,16 @@ issue "force OB hack" (*CS*)
5::
issue hard hibernate (*@*)
NOTE: Hard hibernate\'s additional wakeup delay can be provided by *awd*.
NOTE: Hard hibernate's additional wake-up delay can be provided by *awd*.
ADVORDER
~~~~~~~~
The argument is either a word \'no', or a string of 1 - 5 digits in [0 - 4]
The argument is either a word 'no', or a string of 1 - 5 digits in [0 - 4]
range. Each digit maps to the one of shutdown methods supported by APC UPSes.
Methods listed in this way are tried in order, until one of them succedes.
Methods listed in this way are tried in order, until one of them succeeds.
If *advorder* is undefined or set to \'no', *sdtype* is used instead.
If *advorder* is undefined or set to 'no', *sdtype* is used instead.
The mapping is as follows:
@ -254,7 +260,7 @@ The mapping is as follows:
3:: instant poweroff (*Z*)
4:: "force OB hack" (*CS*)
NOTE: Hard hibernate\'s additional wakeup delay can be provided by *awd*.
NOTE: Hard hibernate's additional wake-up delay can be provided by *awd*.
IGNORING LB STATE
-----------------
@ -263,7 +269,7 @@ APC units - even if they report LB mode - will not go into shutdown
automatically. This gives us even more control with reference to "when to
actually shutdown PSU". Since version 2.6.2, NUT supports *ignorelb* option in
driver's section of linkman:ups.conf[5]. When such option is in effect,
the core driver will ignore LB state as reported by specific driver and
the core driver will ignore LB state as reported by specific driver and
start shutdown basing the decision _only_ on two conditions:
battery.charge < battery.charge.low
@ -289,8 +295,6 @@ shutdown. You might want to disable this condition entirely, when relying on
such feature).
Simple example:
[source,conf]
----
[apc]
ignorelb
@ -307,7 +311,7 @@ remaining runtime (especially right after going into OB state). *ignorelb*
option and *$$override.*$$* let you remain in control of the UPS, not UPS in control
of you.
Furthermore, this allows to specify conditions similary to how it's done in
Furthermore, this allows to specify conditions similarly to how it's done in
apcupsd daemon, so it should be welcome by people used to that software.
@ -321,7 +325,7 @@ executes soft hibernate
shutdown.return cs::
executes "force OB hack"
shutdown.return at:<nbr>::
executes "hard hibernate" with $$<nbr>*6$$ minutes additional wakeup delay (<nbr> format
executes "hard hibernate" with $$<nbr>*6$$ minutes additional wake-up delay (<nbr> format
is the same as of *awd* option)
shutdown.stayoff::
executes "delayed poweroff"
@ -331,7 +335,7 @@ executes "instant poweroff"
All the above commands must be issued 2nd time to have any effect (no less than 3
seconds, and no more than 15 seconds after the initial call). Those commands are
mostly useful for manual testing, when your machine is not powered by the UPS
you\'re testing.
you're testing.
Other supported commands:
@ -349,7 +353,7 @@ PREVIOUS DRIVER VERSION
-----------------------
Previous driver is still available as *apcsmart-old*, should there be any need to
use earlier version (bugs, incompatiblities with new functionality, etc.). In
use earlier version (bugs, incompatibilities with new functionality, etc.). In
due time, *apcsmart-old* will be phased out completely, but this won't happen until
the new version gets solid exposure with no pending issues.
@ -363,14 +367,18 @@ other unexpected values have occasionally slipped through.
APC UPS models with both USB and serial ports require a power cycle when
switching from USB communication to serial, and perhaps vice versa.
AUTHOR
------
AUTHORS AND HISTORY
-------------------
Nigel Metheringham <Nigel.Metheringham@Intechnology.co.uk> (drawing
heavily on the original apcsmart driver by Russell Kroll). This driver
was called newapc for a time and was renamed in the 1.5 series. In 2.6.2
it was renamed to apcsmart-old, being superseded by updated version with
new features, which is maintained by Michal Soltys <soltys@ziu.info>
heavily on the original `apcsmart` driver by Russell Kroll).
This driver was called `newapc` for a time and was renamed in
the 1.5 series.
In 2.6.2 it was renamed to `apcsmart-old`, being superseded by
updated version with new features, which is maintained by Michal
Soltys <soltys@ziu.info>
SEE ALSO
--------
@ -380,6 +388,7 @@ linkman:solis[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
// vim: tw=80 ai si ts=8 sts=4 sw=4 et :

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: apcupsd-ups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "APCUPSD\-UPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "APCUPSD\-UPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -34,7 +34,7 @@ apcupsd-ups \- Driver for apcupsd client access
This man page only documents the specific features of the \fBapcupsd\-ups\fR driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "DESCRIPTION"
.sp
This driver is a client to \fBapcupsd\fR\&.
This driver is a client to \fBapcupsd\fR (another UPS monitoring project)\&.
.sp
\fBapcupsd\-ups\fR acts as an \fBapcupsd\fR client, simply forwarding data\&. This can be useful in cases where both protocols are required in a network, or in case apcupsd has a required UPS access mode missing from NUT\&.
.SH "EXTRA ARGUMENTS"
@ -62,7 +62,7 @@ For instance:
.\}
.SH "BACKGROUND"
.sp
This driver was originally written in one evening to allow interworking with \fBapcupsd\fR\&.
This driver was originally written in one evening to allow interoperating with \fBapcupsd\fR\&.
.SH "SUPPORTED VARIABLES"
.sp
The following variables are translated from \fBapcupsd\fR to NUT\&. All times should be converted to seconds (please file a bug if you notice a mismatch in units)\&.
@ -352,6 +352,26 @@ Andreas Steinmetz
\fBups.conf\fR(5), \fBnutupsdrv\fR(8)
.SS "Internet Resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
The apcupsd home page: http://www\&.apcupsd\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The apcupsd home page:
http://www\&.apcupsd\&.org/
.RE

View file

@ -3,17 +3,20 @@ APCUPSD-UPS(8)
NAME
----
apcupsd-ups - Driver for apcupsd client access
NOTE
----
This man page only documents the specific features of the
*apcupsd-ups* driver. For information about the core driver, see
linkman:nutupsdrv[8].
DESCRIPTION
-----------
This driver is a client to *apcupsd*.
This driver is a client to *apcupsd* (another UPS monitoring project).
*apcupsd-ups* acts as an *apcupsd* client, simply forwarding data.
This can be useful in cases where both protocols are required in a network,
@ -37,13 +40,15 @@ For instance:
BACKGROUND
----------
This driver was originally written in one evening to allow interworking with *apcupsd*.
This driver was originally written in one evening to allow interoperating
with *apcupsd*.
SUPPORTED VARIABLES
-------------------
The following variables are translated from *apcupsd* to NUT. All times should be
converted to seconds (please file a bug if you notice a mismatch in units).
The following variables are translated from *apcupsd* to NUT.
All times should be converted to seconds (please file a bug
if you notice a mismatch in units).
[width="50%",cols="m,m",options="header"]
|===============================
@ -85,6 +90,7 @@ converted to seconds (please file a bug if you notice a mismatch in units).
LIMITATIONS
-----------
Access to *apcupsd* is strictly read only: no commands can be issued. This
stems from the design of *apcupsd*, where the settings are changed in
*apctest*. In order to run *apctest*, *apcupsd* must be stopped (and *apcupsd*
@ -92,6 +98,7 @@ exposes the UPS to the network).
AUTHOR
------
Andreas Steinmetz
SEE ALSO
@ -102,6 +109,6 @@ linkman:nutupsdrv[8]
Internet Resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
The apcupsd home page: http://www.apcupsd.org/
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* The apcupsd home page: http://www.apcupsd.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: asem
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "ASEM" "8" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "ASEM" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -71,7 +71,7 @@ Beware that the SystemIO memory used by the I2C controller is reserved by ACPI\&
.SH "KNOWN ISSUES AND BUGS"
.sp
The driver shutdown function is not implemented, so other arrangements must be made to turn off the UPS\&.
.SH "AUTHORS"
.SH "AUTHOR"
.sp
Giuseppe Corbelli <giuseppe\&.corbelli@copanitalia\&.com>
.SH "SEE ALSO"
@ -80,8 +80,38 @@ Giuseppe Corbelli <giuseppe\&.corbelli@copanitalia\&.com>
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
PB1300 specifications: http://www\&.asem\&.it/en/products/industrial\-automation/box\-pcs/performance/pb1300/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
PB1300 specifications:
http://www\&.asem\&.it/en/products/industrial\-automation/box\-pcs/performance/pb1300/
.RE
.sp
BQ2060 datasheet: http://www\&.ti\&.com/lit/ds/symlink/bq2060\&.pdf
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
BQ2060 datasheet:
http://www\&.ti\&.com/lit/ds/symlink/bq2060\&.pdf
.RE
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE

View file

@ -3,16 +3,19 @@ ASEM(8)
NAME
----
asem - driver for UPS in ASEM PB1300
NOTE
----
This man page only documents the hardware-specific features of the
*asem* driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
The *asem* driver supports the UPS in ASEM PB1300 embedded PCs. Likely other
I2C devices from the same manufacturer will work too, since this is a "custom"
charger.
@ -35,12 +38,13 @@ This driver also supports the following optional settings:
*lb*='num'::
Set the low battery threshold to 'num' volts.
*hb*='num'::
Set the high battery threshold to 'num' volts.
INSTALLATION
------------
This driver is specific to the Linux I2C API, and requires the lm_sensors
libi2c-dev or its equivalent to compile.
@ -60,11 +64,13 @@ DIAGNOSTICS
KNOWN ISSUES AND BUGS
---------------------
The driver shutdown function is not implemented, so other arrangements must be
made to turn off the UPS.
AUTHORS
-------
AUTHOR
------
Giuseppe Corbelli <giuseppe.corbelli@copanitalia.com>
SEE ALSO
@ -72,12 +78,13 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
PB1300 specifications: http://www.asem.it/en/products/industrial-automation/box-pcs/performance/pb1300/
BQ2060 datasheet: http://www.ti.com/lit/ds/symlink/bq2060.pdf
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* PB1300 specifications:
http://www.asem.it/en/products/industrial-automation/box-pcs/performance/pb1300/
* BQ2060 datasheet: http://www.ti.com/lit/ds/symlink/bq2060.pdf
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: bcmxcp
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BCMXCP" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BCMXCP" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -58,7 +58,8 @@ Communication speed for the UPS\&. If this is set to 9600, it tries to connect t
.sp -1
.IP \(bu 2.3
.\}
\fBshutdown_delay =\fR\fI120\fR
\fBshutdown_delay =\fR
\fI120\fR
.RE
.sp
.RS 4
@ -69,7 +70,8 @@ Communication speed for the UPS\&. If this is set to 9600, it tries to connect t
.sp -1
.IP \(bu 2.3
.\}
\fBbaud_rate =\fR\fInone\fR
\fBbaud_rate =\fR
\fInone\fR
.RE
.SH "INSTANT COMMANDS"
.sp

View file

@ -8,12 +8,14 @@ bcmxcp - Driver for UPSes supporting the serial BCM/XCP protocol
NOTE
----
This man page only documents the hardware-specific features of the
bcmxcp driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver should recognize all serial BCM/XCP-compatible UPSes. It has
been developed and tested on Powerware PW5115 and PW9120 hardware. If your UPS
has a USB connection, you may also consult the linkman:bcmxcp_usb[8] driver
@ -21,11 +23,12 @@ documentation.
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
This driver supports the following optional settings in the
linkman:ups.conf[5].
*shutdown_delay=*'delay'::
The number of seconds that the UPS should wait between receiving the
The number of seconds that the UPS should wait between receiving the
shutdown command (`upsdrvctl shutdown`) and actually shutting off.
*baud_rate=*'rate'::
@ -33,18 +36,20 @@ Communication speed for the UPS. If this is set to 9600, it tries to connect
to the UPS at 9600bps. If it fails to communicate, it will go into baud-hunting.
It starts at 1200 and goes up to 19200. If it succeeds, it tell you the speed it
connected with. If not included in the config, it defaults to baud-hunting.
DEFAULT VALUES FOR THE EXTRA ARGUMENTS
--------------------------------------
- *shutdown_delay =* '120'
- *baud_rate =* 'none'
INSTANT COMMANDS
----------------
This driver supports the following Instant Commands:
*shutdown.return*::
Turn off the load and return when power is back.
Turn off the load and return when power is back.
*shutdown.stayoff*::
Turn off the load and remain off.
@ -54,7 +59,7 @@ Start a battery test.
*outlet.n.shutdown.return*::
Turn off the load on outlet 'n' and return when power is back.
('n' is the outlet number reported by the upsc command)
('n' is the outlet number reported by the upsc command)
TODO LIST
---------
@ -67,22 +72,28 @@ Access the config register to change settings.
BUGS
----
None known.
AUTHOR
------
Tore Ørpetveit <tore@orpetveit.net>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
The USB BCM/XCP driver:
~~~~~~~~~~~~~~~~~~~~~~~
linkman:bcmxcp_usb[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: bcmxcp_usb
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BCMXCP_USB" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BCMXCP_USB" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -71,7 +71,7 @@ Start a battery test\&.
BCM/XCP supports reporting a wide range of UPS alarm conditions\&.
.RE
.PP
\fBReport UPS statistics informations\fR
\fBReport UPS statistics information\fR
.RS 4
BCM/XCP supports reporting of UPS statistics data\&.
.RE
@ -102,9 +102,29 @@ bcmxcp_usb only supports 1 UPS at this time\&. You can put the "auto" value for
.SS ""Got EPERM: Operation not permitted upon driver startup""
.sp
You have forgotten to install the hotplug files, as explained in the INSTALLATION section above\&. Don\(cqt forget to restart hotplug so that it applies these changes\&.
.SH "AUTHOR"
.SH "AUTHORS"
.sp
Tore Ørpetveit <tore@orpetveit\&.net>, Wolfgang Ocker <weo@weo1\&.de>
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Tore Ørpetveit <tore@orpetveit\&.net>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Wolfgang Ocker <weo@weo1\&.de>
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -3,10 +3,12 @@ BCMXCP_USB(8)
NAME
----
bcmxcp_usb - Experimental driver for UPSes supporting the BCM/XCP protocol over USB
NOTE
----
This man page only documents the hardware-specific features of the
bcmxcp_usb driver. For information about the core driver, see
linkman:nutupsdrv[8].
@ -14,6 +16,7 @@ This driver is a variant of the serial driver bcmxcp and uses the same core code
SUPPORTED HARDWARE
------------------
This driver should recognize all BCM/XCP-compatible UPSes that are connected
via USB. It has been developed and tested on Powerware PW3501 hardware. It also has
been tested on PW5110 hardware.
@ -21,23 +24,25 @@ been tested on PW5110 hardware.
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
This driver supports the following optional settings in the
linkman:ups.conf[5].
*shutdown_delay=*'delay'::
The number of seconds that the UPS should wait between receiving the
The number of seconds that the UPS should wait between receiving the
shutdown command and actually shutting off.
DEFAULT VALUES FOR THE EXTRA ARGUMENTS
--------------------------------------
*shutdown_delay =*'120'
INSTANT COMMANDS
----------------
This driver supports the following Instant Commands:
*shutdown.return*::
Turn off the load and return when power is back.
Turn off the load and return when power is back.
*shutdown.stayoff*::
Turn off the load and remain off.
@ -51,11 +56,12 @@ TODO LIST
*Report UPS alarm status*::
BCM/XCP supports reporting a wide range of UPS alarm conditions.
*Report UPS statistics informations*::
*Report UPS statistics information*::
BCM/XCP supports reporting of UPS statistics data.
EXPERIMENTAL DRIVER
-------------------
This driver has been tagged experimental, even if it has been reported
to be stable. Thus it is not suitable for production systems and it is
not built by default. This is mainly due to the fact that it is a
@ -63,6 +69,7 @@ new driver.
INSTALLATION
------------
This driver is not built by default. You can build it by using
"configure --with-usb=yes". Note that it will also install other USB
drivers.
@ -74,6 +81,7 @@ must have execution flag set (ie using chmod +x ...).
IMPLEMENTATION
--------------
bcmxcp_usb only supports 1 UPS at this time. You can put the
"auto" value for port in `ups.conf`, i.e.:
@ -83,6 +91,7 @@ bcmxcp_usb only supports 1 UPS at this time. You can put the
KNOWN ISSUES AND BUGS
---------------------
"Got EPERM: Operation not permitted upon driver startup"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@ -90,18 +99,21 @@ You have forgotten to install the hotplug files, as explained
in the INSTALLATION section above. Don't forget to restart
hotplug so that it applies these changes.
AUTHOR
------
Tore Ørpetveit <tore@orpetveit.net>,
Wolfgang Ocker <weo@weo1.de>
AUTHORS
-------
* Tore Ørpetveit <tore@orpetveit.net>
* Wolfgang Ocker <weo@weo1.de>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: belkin
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BELKIN" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BELKIN" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -37,6 +37,8 @@ This man page only documents the hardware\-specific features of the belkin drive
The \fBbelkin\fR driver is known to support the Regulator Pro 525 (F6C525\-SER)\&. Other similar models such as the 425 and 625 should also work\&.
.sp
The Trust UPS and older Belkin units are not supported\&.
.sp
This driver only supports serial connections\&. If your UPS has a USB port, please consult the Hardware Compatibility List (HCL) to see which of the USB drivers you should use\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver does not support any extra settings in the \fBups.conf\fR(5)\&.
@ -63,6 +65,9 @@ the driver doesn\(cqt go anywhere near these character sequences, so it won\(cqt
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
.SS "Other Belkin drivers:"
.sp
\fBbelkinunv\fR(8), \fBblazer_ser\fR(8), \fBblazer_usb\fR(8), \fBusbhid-ups\fR(8)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -3,27 +3,32 @@ BELKIN(8)
NAME
----
belkin - Driver for Belkin serial UPS equipment
NOTE
----
This man page only documents the hardware-specific features of the
belkin driver. For information about the core driver, see
belkin driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
The *belkin* driver is known to support the Regulator Pro 525 (F6C525-SER).
Other similar models such as the 425 and 625 should also work.
The Trust UPS and older Belkin units are not supported.
This driver only supports serial connections. If your UPS has a USB port,
please consult the Hardware Compatibility List (HCL) to see which of the USB
drivers you should use.
EXTRA ARGUMENTS
---------------
This driver does not support any extra settings in the
This driver does not support any extra settings in the
linkman:ups.conf[5].
BUGS
@ -42,8 +47,18 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Other Belkin drivers:
~~~~~~~~~~~~~~~~~~~~~
linkman:belkinunv[8],
linkman:blazer_ser[8],
linkman:blazer_usb[8],
linkman:usbhid-ups[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: belkinunv
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BELKINUNV" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BELKINUNV" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -32,6 +32,8 @@ belkinunv \- Driver for Belkin "Universal UPS" and compatible
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the belkin driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.sp
This driver only supports serial connections\&. If your UPS has a USB port, please consult the Hardware Compatibility List (HCL) to see which of the USB drivers you should use\&.
.SH "SUPPORTED HARDWARE"
.sp
The belkinunv driver is known to work with the Belkin Universal UPS models F6C800\-UNV and F6C120\-UNV, and is expected to work with other Belkin Universal UPS models\&. The driver only supports serial communication, not USB\&.
@ -318,10 +320,16 @@ When used with the \fB\-x wait\fR option, the exit status is normally \fB0\fR\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver does not support any extra settings in \fBups.conf\fR(5)\&.
.SH "AUTHOR"
.sp
Peter Selinger <selinger@users\&.sourceforge\&.net>
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
.SS "Other Belkin drivers:"
.sp
\fBbelkinunv\fR(8), \fBblazer_ser\fR(8), \fBblazer_usb\fR(8), \fBusbhid-ups\fR(8)
.SS "Internet resources:"
.sp
.RS 4
@ -346,7 +354,5 @@ http://www\&.networkupstools\&.org/
.\}
The documentation for the protocol used by this UPS:
belkin\-universal\-ups\&.html
(replica on NUT site)
.RE
.SH "AUTHOR"
.sp
Peter Selinger <selinger@users\&.sourceforge\&.net>

View file

@ -8,12 +8,18 @@ belkinunv - Driver for Belkin "Universal UPS" and compatible
NOTE
----
This man page only documents the hardware-specific features of the
belkin driver. For information about the core driver, see
belkin driver. For information about the core driver, see
linkman:nutupsdrv[8].
This driver only supports serial connections. If your UPS has a USB port,
please consult the Hardware Compatibility List (HCL) to see which of the USB
drivers you should use.
SUPPORTED HARDWARE
------------------
The belkinunv driver is known to work with the Belkin Universal UPS
models F6C800-UNV and F6C120-UNV, and is expected to work with other
Belkin Universal UPS models. The driver only supports serial
@ -28,6 +34,7 @@ are supported using the linkman:genericups[8] driver with
SOFT SHUTDOWN WORKAROUND
------------------------
One problem with the Belkin Universal UPS is that it cannot enter a
soft shutdown (shut down the load until AC power returns) unless the
batteries are completely depleted. Thus, one cannot just shut off the
@ -51,7 +58,7 @@ system reboots in this case. If AC power does not come back on, the
UPS will eventually run out of batteries, kill the computer's power
supply, and go into soft shutdown mode, which means everything will
reboot properly when the power returns. In either case, a deadlock is
avoided.
avoided.
In addition, if an optional integer argument is given to the *-x wait*
option, this causes *belkinunv* to wait not only for AC power to be present,
@ -69,6 +76,7 @@ startup scripts.
OPTIONS
-------
See also linkman:nutupsdrv[8] for generic options. Never use the
*-k* option with this driver; it does not work properly.
@ -92,7 +100,7 @@ used in a startup
script, to ensure the computer remains bootable even if the UPS has
been disconnected during the power failure (for instance, you attached
your computer to a generator, carried it to a neighbor's house, or
whatever).
whatever).
*-x flash*::
This option only has an effect when used in conjunction with the *-x wait*
@ -122,6 +130,7 @@ line.
VARIABLES
---------
*battery.charge*::
*battery.runtime*::
@ -245,7 +254,7 @@ load is online
*ACFAIL*::
AC failure. Note that this refers to the AC input, and thus it is not
the same as "OB". An AC failure can occur at any time, for instance,
during a battery test, or when the UPS load is off.
during a battery test, or when the UPS load is off.
*OVER*::
overload
@ -264,7 +273,7 @@ charging
*DEPLETED*::
the battery is depleted. When the UPS raises this flag, it
simultaneously switches off the load.
simultaneously switches off the load.
*RB*::
replace battery
@ -323,20 +332,32 @@ EXTRA ARGUMENTS
This driver does not support any extra settings in linkman:ups.conf[5].
AUTHOR
------
Peter Selinger <selinger@users.sourceforge.net>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Other Belkin drivers:
~~~~~~~~~~~~~~~~~~~~~
linkman:belkinunv[8],
linkman:blazer_ser[8],
linkman:blazer_usb[8],
linkman:usbhid-ups[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
- The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
- The documentation for the protocol used by this UPS:
link:http://www.mscs.dal.ca/~selinger/ups/belkin-universal-ups.html[belkin-universal-ups.html]
AUTHOR
------
Peter Selinger <selinger@users.sourceforge.net>
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* The documentation for the protocol used by this UPS:
link:http://www.mscs.dal.ca/~selinger/ups/belkin-universal-ups.html[belkin-universal-ups.html]
(link:https://networkupstools.org/protocols/belkin-universal.html[replica
on NUT site])

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: bestfcom
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BESTFCOM" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BESTFCOM" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -40,13 +40,49 @@ Best Power Fortress/Ferrups implementing the Fortress UPS Protocol (f\-command s
This driver does not support any extra settings in the \fBups.conf\fR(5)\&.
.SH "AUTHORS"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Kent Polk (bestfcom)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Andreas Wrede, John Stone (bestuferrups)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Grant Taylor (bestfort)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Russell Kroll (bestups)
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -8,38 +8,40 @@ bestfcom - Driver for Best Power Fortress/Ferrups
NOTE
----
This man page only documents the hardware-specific features of the
bestfcom driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
Best Power Fortress/Ferrups implementing the Fortress UPS Protocol
(f-command set).
EXTRA ARGUMENTS
---------------
This driver does not support any extra settings in the
This driver does not support any extra settings in the
linkman:ups.conf[5].
AUTHORS
-------
Kent Polk (bestfcom)
Andreas Wrede, John Stone (bestuferrups)
Grant Taylor (bestfort)
Russell Kroll (bestups)
* Kent Polk (bestfcom)
* Andreas Wrede, John Stone (bestuferrups)
* Grant Taylor (bestfort)
* Russell Kroll (bestups)
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: bestfortress
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BESTFORTRESS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BESTFORTRESS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -50,9 +50,29 @@ Set the full\-scale value of the
\fBups\&.load\fR
variable\&.
.RE
.SH "AUTHOR"
.SH "AUTHORS"
.sp
Holger Dietze <holger\&.dietze@advis\&.de>, Stuart D\&. Gathman <stuart@bmsi\&.com>
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Holger Dietze <holger\&.dietze@advis\&.de>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Stuart D\&. Gathman <stuart@bmsi\&.com>
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -15,10 +15,12 @@ linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports old Best Fortress UPS equipment using a serial connection.
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
linkman:ups.conf[5]:
@ -28,22 +30,26 @@ Set the speed of the serial connection - 1200, 2400, 4800 or 9600.
*max_load*='VA'::
Set the full-scale value of the *ups.load* variable.
AUTHOR
------
Holger Dietze <holger.dietze@advis.de>,
Stuart D. Gathman <stuart@bmsi.com>
AUTHORS
-------
* Holger Dietze <holger.dietze@advis.de>
* Stuart D. Gathman <stuart@bmsi.com>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
The newer Best Power drivers:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
linkman:bestups[8], linkman:bestuferrups[8], linkman:bestfcom[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: bestuferrups
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BESTUFERRUPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BESTUFERRUPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -40,11 +40,38 @@ Best Power Micro\-Ferrups ME3100, probably other similar models too\&.
This driver does not support any extra settings in the \fBups.conf\fR(5)\&.
.SH "AUTHORS"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Andreas Wrede, John Stone (bestuferrups)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Grant Taylor (bestfort)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Russell Kroll (bestups)
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -8,35 +8,38 @@ bestuferrups - Driver for Best Power Micro-Ferrups
NOTE
----
This man page only documents the hardware-specific features of the
bestuferrups driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
Best Power Micro-Ferrups ME3100, probably other similar models too.
EXTRA ARGUMENTS
---------------
This driver does not support any extra settings in the
This driver does not support any extra settings in the
linkman:ups.conf[5].
AUTHORS
-------
Andreas Wrede, John Stone (bestuferrups)
Grant Taylor (bestfort)
Russell Kroll (bestups)
* Andreas Wrede, John Stone (bestuferrups)
* Grant Taylor (bestfort)
* Russell Kroll (bestups)
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: bestups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BESTUPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BESTUPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -32,6 +32,11 @@ bestups \- Driver for Best Power / SOLA (Phoenixtec protocol) UPS equipment
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the bestups driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "NOTE"
.sp
Please note that this driver is deprecated and will not receive new development\&. If it works for managing your devices \(em fine, but if you are running it to try setting up a new device, please consider the newer \fBnutdrv_qx\fR(8) instead, which should handle all \fIQ*\fR protocol variants for NUT\&.
.sp
Please do also report if your device works with this driver, but \fBnutdrv_qx\fR(8) would not actually support it with any subdriver!
.SH "SUPPORTED HARDWARE"
.sp
\fBbestups\fR was designed to monitor Best Power UPS hardware like the Fortress, Fortress Telecom, Axxium Rackmount and Patriot Pro\&. It also recognizes and supports SOLA units such as the 325, 520 and 620\&. In addition, the Best 610 is supported using the \(oqID\(cq option\&.
@ -90,12 +95,32 @@ Example: a Best 610 1\&.5KVA unit would use the string "610,1500,120,120,10\&.0,
.sp
The battery charge percentage value (in battery\&.charge) is derived from the voltage data that the UPS returns, since the UPS doesn\(cqt return that value directly\&. On some hardware, the charge will remain at 100% for a long time and then drops quickly shortly before the battery runs out\&. You can confirm from the battery\&.voltage readings that this is a problem with the UPS and not this driver\&.
.sp
Similarly, the float from the charger in some models forces the battery charge percentage back up to 100% immedately after the UPS goes back on\-line, so you can\(cqt tell when it is really recharged\&.
Similarly, the float from the charger in some models forces the battery charge percentage back up to 100% immediately after the UPS goes back on\-line, so you can\(cqt tell when it is really recharged\&.
.sp
Finally, some models give one value for the battery\(cqs nominal voltage and yet actually have a nominal voltage slightly below that\&. This leads to things such as the perpetual 98\&.7% charge on the author\(cqs Fortress 750, even when it\(cqs been charging for weeks\&. You can use nombattvolt= in \fBups.conf\fR(8) to fix this\&.
.SH "AUTHOR"
.SH "AUTHORS"
.sp
Russell Kroll, Jason White
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Russell Kroll
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Jason White
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -10,14 +10,28 @@ NOTE
----
This man page only documents the hardware-specific features of the
bestups driver. For information about the core driver, see
bestups driver. For information about the core driver, see
linkman:nutupsdrv[8].
NOTE
----
Please note that this driver is deprecated and will not receive
new development. If it works for managing your devices -- fine,
but if you are running it to try setting up a new device, please
consider the newer linkman:nutdrv_qx[8] instead, which should
handle all 'Q*' protocol variants for NUT.
Please do also report if your device works with this driver,
but linkman:nutdrv_qx[8] would not actually support it with any
subdriver!
SUPPORTED HARDWARE
------------------
*bestups* was designed to monitor Best Power UPS hardware like the Fortress,
Fortress Telecom, Axxium Rackmount and Patriot Pro. It also recognizes
and supports SOLA units such as the 325, 520 and 620. In addition, the
and supports SOLA units such as the 325, 520 and 620. In addition, the
Best 610 is supported using the `ID' option.
Other UPS hardware using the Phoenixtec protocol should also work, but
@ -54,31 +68,31 @@ case you can set `battvoltmult = 12` in linkman:ups.conf[8] to fix this.
*ID=*'string'::
Set the Identification response string. This should only be used
with hardware that supports the Phoenixtec protocol status inquiry
commands, but not the "ID" command, such as the Best/SOLA 610. Format
with hardware that supports the Phoenixtec protocol status inquiry
commands, but not the "ID" command, such as the Best/SOLA 610. Format
of the ID string is: AAA,BBBB,CCC,DDD,EE.E,FF.F
+
AAA is the three-character identification for the UPS model.
+
BBBB is the output power in VA (volt amperes). B is an integer number
BBBB is the output power in VA (volt amperes). B is an integer number
ranging from 0 to 9.
+
CCC is the Nominal Input Voltage. C is an integer number ranging from 0
CCC is the Nominal Input Voltage. C is an integer number ranging from 0
to 9. The unit is Volts AC.
+
DDD is the Nominal Output Voltage. D is an integer number ranging from 0
DDD is the Nominal Output Voltage. D is an integer number ranging from 0
to 9. The unit is Volts AC.
+
EE.E is the Battery Voltage that will cause the UPS to shut itself off.
E is an integer number ranging from 0 to 9. Then unit is Volts DC and a
EE.E is the Battery Voltage that will cause the UPS to shut itself off.
E is an integer number ranging from 0 to 9. Then unit is Volts DC and a
decimal point is present.
+
FF.F or FFF.F is the Battery Voltage at full charge. F is an integer
number ranging from 0 to 9. Then unit is Volts DC. Typically, for 700VA,
1KVA and 1.5KVA units, the format is FF.F. For 2KVA and 3KVA units, the
FF.F or FFF.F is the Battery Voltage at full charge. F is an integer
number ranging from 0 to 9. Then unit is Volts DC. Typically, for 700VA,
1KVA and 1.5KVA units, the format is FF.F. For 2KVA and 3KVA units, the
format is FFF.F.
+
Example: a Best 610 1.5KVA unit would use the string
Example: a Best 610 1.5KVA unit would use the string
"610,1500,120,120,10.0,48.0".
BUGS
@ -89,29 +103,33 @@ the voltage data that the UPS returns, since the UPS doesn't return that
value directly. On some hardware, the charge will remain at 100% for a
long time and then drops quickly shortly before the battery runs out.
You can confirm from the `battery.voltage` readings that this is a problem
with the UPS and not this driver.
with the UPS and not this driver.
Similarly, the float from the charger in some models forces the battery
charge percentage back up to 100% immedately after the UPS goes back
charge percentage back up to 100% immediately after the UPS goes back
on-line, so you can't tell when it is really recharged.
Finally, some models give one value for the battery's nominal voltage and
yet actually have a nominal voltage slightly below that. This leads to
things such as the perpetual 98.7% charge on the author's Fortress 750,
even when it's been charging for weeks. You can use `nombattvolt=` in
even when it's been charging for weeks. You can use `nombattvolt=` in
linkman:ups.conf[8] to fix this.
AUTHOR
------
Russell Kroll, Jason White
AUTHORS
-------
* Russell Kroll
* Jason White
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,9 +1,22 @@
NOTE
----
This man page only documents the hardware-specific features of the
blazer driver. For information about the core driver, see
linkman:nutupsdrv[8].
NOTE
----
Please note that this driver is deprecated and will not receive
new development. If it works for managing your devices -- fine,
but if you are running it to try setting up a new device, please
consider the newer linkman:nutdrv_qx[8] instead, which should
handle all 'Q*' protocol variants for NUT.
Please do also report if your device works with this driver,
but linkman:nutdrv_qx[8] would not actually support it with any
subdriver!
SUPPORTED HARDWARE
------------------
@ -144,10 +157,18 @@ Examples:
*bus =* 'regex'::
Select a UPS on a specific USB bus or group of busses. The argument is
Select a UPS on a specific USB bus or group of buses. The argument is
a regular expression that must match the bus name where the UPS is
connected (e.g. bus="002", bus="00[2-3]").
*device =* 'regex'::
Select a UPS on a specific USB device or group of devices. The argument is
a regular expression that must match the device name where the UPS is
connected (e.g. device="001", device="00[1-2]").
Note that device numbers are not guaranteed by the OS to be stable across
re-boots or device re-plugging.
*subdriver =* 'string'::
Select a serial-over-USB subdriver to use. You have a choice between *phoenix*,
@ -296,8 +317,8 @@ The temperature and load value is known to be bogus in some models.
AUTHORS
-------
Arjen de Korte <adkorte-guest at alioth.debian.org>,
Alexander Gordeev <lasaine at lvk.cs.msu.su>
* Arjen de Korte <adkorte-guest at alioth.debian.org>
* Alexander Gordeev <lasaine at lvk.cs.msu.su>
SEE ALSO
@ -315,7 +336,5 @@ linkman:nutupsdrv[8], linkman:upsc[8], linkman:upscmd[8], linkman:upsrw[8]
Internet Resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
The NUT HCL: http://www.networkupstools.org/stable-hcl.html
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* The NUT HCL: http://www.networkupstools.org/stable-hcl.html

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: blazer_ser
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BLAZER_SER" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BLAZER_SER" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -32,6 +32,11 @@ blazer_ser \- Driver for Megatec/Q1 protocol serial based UPS equipment
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the blazer driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "NOTE"
.sp
Please note that this driver is deprecated and will not receive new development\&. If it works for managing your devices \(em fine, but if you are running it to try setting up a new device, please consider the newer \fBnutdrv_qx\fR(8) instead, which should handle all \fIQ*\fR protocol variants for NUT\&.
.sp
Please do also report if your device works with this driver, but \fBnutdrv_qx\fR(8) would not actually support it with any subdriver!
.SH "SUPPORTED HARDWARE"
.sp
The blazer driver is known to work with various UPSes from Blazer, Energy Sistem, Fenton Technologies, General Electric, Mustek and many others\&. The NUT compatibility table lists all the known supported models\&. Keep in mind, however, that other models not listed there may also be supported, but haven\(cqt been tested\&.
@ -260,12 +265,52 @@ Some models report a bogus value for the beeper status (will always be \fIenable
The temperature and load value is known to be bogus in some models\&.
.SH "AUTHORS"
.sp
Arjen de Korte <adkorte\-guest at alioth\&.debian\&.org>, Alexander Gordeev <lasaine at lvk\&.cs\&.msu\&.su>
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Arjen de Korte <adkorte\-guest at alioth\&.debian\&.org>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Alexander Gordeev <lasaine at lvk\&.cs\&.msu\&.su>
.RE
.SH "SEE ALSO"
.sp
\fBblazer_usb\fR(8), \fBnutupsdrv\fR(8), \fBupsc\fR(8), \fBupscmd\fR(8), \fBupsrw\fR(8)
.SS "Internet Resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
The NUT HCL: http://www\&.networkupstools\&.org/stable\-hcl\&.html
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT HCL:
http://www\&.networkupstools\&.org/stable\-hcl\&.html
.RE

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: blazer_usb
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "BLAZER_USB" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "BLAZER_USB" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -32,6 +32,11 @@ blazer_usb \- Driver for Megatec/Q1 protocol USB based UPS equipment
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the blazer driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "NOTE"
.sp
Please note that this driver is deprecated and will not receive new development\&. If it works for managing your devices \(em fine, but if you are running it to try setting up a new device, please consider the newer \fBnutdrv_qx\fR(8) instead, which should handle all \fIQ*\fR protocol variants for NUT\&.
.sp
Please do also report if your device works with this driver, but \fBnutdrv_qx\fR(8) would not actually support it with any subdriver!
.SH "SUPPORTED HARDWARE"
.sp
The blazer driver is known to work with various UPSes from Blazer, Energy Sistem, Fenton Technologies, General Electric, Mustek and many others\&. The NUT compatibility table lists all the known supported models\&. Keep in mind, however, that other models not listed there may also be supported, but haven\(cqt been tested\&.
@ -183,7 +188,12 @@ Examples:
.PP
\fBbus =\fR \fIregex\fR
.RS 4
Select a UPS on a specific USB bus or group of busses\&. The argument is a regular expression that must match the bus name where the UPS is connected (e\&.g\&. bus="002", bus="00[2\-3]")\&.
Select a UPS on a specific USB bus or group of buses\&. The argument is a regular expression that must match the bus name where the UPS is connected (e\&.g\&. bus="002", bus="00[2\-3]")\&.
.RE
.PP
\fBdevice =\fR \fIregex\fR
.RS 4
Select a UPS on a specific USB device or group of devices\&. The argument is a regular expression that must match the device name where the UPS is connected (e\&.g\&. device="001", device="00[1\-2]")\&. Note that device numbers are not guaranteed by the OS to be stable across re\-boots or device re\-plugging\&.
.RE
.PP
\fBsubdriver =\fR \fIstring\fR
@ -323,12 +333,52 @@ Some models report a bogus value for the beeper status (will always be \fIenable
The temperature and load value is known to be bogus in some models\&.
.SH "AUTHORS"
.sp
Arjen de Korte <adkorte\-guest at alioth\&.debian\&.org>, Alexander Gordeev <lasaine at lvk\&.cs\&.msu\&.su>
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Arjen de Korte <adkorte\-guest at alioth\&.debian\&.org>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Alexander Gordeev <lasaine at lvk\&.cs\&.msu\&.su>
.RE
.SH "SEE ALSO"
.sp
\fBblazer_ser\fR(8), \fBnutupsdrv\fR(8), \fBupsc\fR(8), \fBupscmd\fR(8), \fBupsrw\fR(8)
.SS "Internet Resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
The NUT HCL: http://www\&.networkupstools\&.org/stable\-hcl\&.html
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT HCL:
http://www\&.networkupstools\&.org/stable\-hcl\&.html
.RE

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: clone
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "CLONE" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "CLONE" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -71,7 +71,7 @@ Set the timer (in seconds) before the outlet is turned off after the shutdown co
.PP
\fBondelay\fR=\fInum\fR
.RS 4
Set the timer (in seconds) for the outlet to switch on in case the power returns after the oulet has been switched off\&. Defaults to 30 seconds\&.
Set the timer (in seconds) for the outlet to switch on in case the power returns after the outlet has been switched off\&. Defaults to 30 seconds\&.
.RE
.PP
\fBmincharge\fR=\fIvalue\fR
@ -91,45 +91,44 @@ The port specification in the \fBups.conf\fR(5) reference the driver socket that
.RS 4
.\}
.nf
[realups]
driver = usbhid\-ups
port = auto
.fi
.if n \{\
.RE
.\}
.sp
.if n \{\
.RS 4
.\}
.nf
[clone\-outlet\-1]
driver = clone
port = usbhid\-ups\-realups
load\&.on = outlet\&.1\&.load\&.on
load\&.off = outlet\&.1\&.load\&.off
load\&.status = outlet\&.1\&.status
[\&.\&.\&.]
[realups]
driver = usbhid\-ups
port = auto
[clone\-outlet\-1]
driver = clone
port = usbhid\-ups\-realups
load\&.on = outlet\&.1\&.load\&.on
load\&.off = outlet\&.1\&.load\&.off
load\&.status = outlet\&.1\&.status
[\&.\&.\&.]
.fi
.if n \{\
.RE
.\}
.SH "IMPORTANT"
.sp
Unlike a real UPS, you should \fBnot\fR configure a upsmon master for this driver\&. When a upsmon master sees the OB LB flags and tells the upsd server it is OK to initiate the shutdown sequence, the server will latch the FSD status and it will not be possible to restart the systems connected without restarting the upsd server\&.
Unlike a real UPS, you should \fBnot\fR configure a upsmon primary mode for this driver\&. When a upsmon primary sees the OB LB flags and tells the upsd server it is OK to initiate the shutdown sequence, the server will latch the FSD status and it will not be possible to restart the systems connected without restarting the upsd server\&.
.sp
This will be a problem if the power returns after the clone UPS initiated the shutdown sequence on it\(cqs outlet, but returns before the real UPS begins shutting down\&. The solution is in the clone driver, that will insert the FSD flag if needed without the help of a upsmon master\&.
This will be a problem if the power returns after the clone UPS initiated the shutdown sequence on it\(cqs outlet, but returns before the real UPS begins shutting down\&. The solution is in the clone driver, that will insert the FSD flag if needed without the help of a upsmon primary\&.
.SH "CAVEATS"
.sp
The clone UPS will follow the status on the real UPS driver\&. You can only make the clone UPS shutdown earlier than the real UPS driver, not later\&. If the real UPS driver initiates a shutdown, the clone UPS driver will immediately follow\&.
.sp
Be aware that the commands to shutdown/restart an outlet on the real UPS drivers are not affected, so if you tell the real UPS driver to shutdown the outlet of the clone UPS driver, your clients will lose power without warning\&.
.sp
If you use service management frameworks like systemd or SMF to manage the dependencies between driver instances and other units, then you may have to set up special dependencies (e\&.g\&. with systemd "drop\-in" snippet files) to queue your clone drivers to start after the "real" device drivers\&.
.SH "AUTHOR"
.sp
Arjen de Korte <adkorte\-guest@alioth\&.debian\&.org>
.SH "SEE ALSO"
.sp
\fBupscmd\fR(1), \fBupsrw\fR(1), \fBups.conf\fR(5), \fBnutupsdrv\fR(8)
.SS "Dummy driver:"
.sp
The "repeater" mode of \fIdummy\-ups\fR driver is in some ways similar to the \fIclone\fR driver, by relaying information from a locally or remotely running "real" device driver (and NUT data server)\&.
.sp
\fBdummy-ups\fR(8)
.SS "Internet Resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -3,22 +3,26 @@ CLONE(8)
NAME
----
clone - UPS driver clone
NOTE
----
This man page only documents the specific features of the
clone driver. For information about the core driver, see
linkman:nutupsdrv[8].
DESCRIPTION
-----------
This driver, which sits on top of another driver socket, allows users to group
clients to a particular outlet of a device and deal with this output as if it
was a normal UPS.
EXTRA ARGUMENTS
---------------
This driver supports the following settings:
*load.off*='command'::
@ -46,7 +50,7 @@ was issued. Defaults to 120 seconds.
*ondelay*='num'::
Set the timer (in seconds) for the outlet to switch on in case the power
returns after the oulet has been switched off. Defaults to 30 seconds.
returns after the outlet has been switched off. Defaults to 30 seconds.
*mincharge*='value'::
Set the remaining battery level when the clone UPS switches to LB
@ -58,9 +62,11 @@ Set the remaining battery runtime when the clone UPS switches to LB
IMPLEMENTATION
--------------
The port specification in the linkman:ups.conf[5] reference the driver
socket that the "real" UPS driver is using. For example:
------
[realups]
driver = usbhid-ups
port = auto
@ -72,11 +78,13 @@ socket that the "real" UPS driver is using. For example:
load.off = outlet.1.load.off
load.status = outlet.1.status
[...]
------
IMPORTANT
---------
Unlike a real UPS, you should *not* configure a upsmon master for this
driver. When a upsmon master sees the OB LB flags and tells the upsd server
Unlike a real UPS, you should *not* configure a upsmon primary mode for this
driver. When a upsmon primary sees the OB LB flags and tells the upsd server
it is OK to initiate the shutdown sequence, the server will latch the FSD
status and it will not be possible to restart the systems connected without
restarting the upsd server.
@ -84,10 +92,11 @@ restarting the upsd server.
This will be a problem if the power returns after the clone UPS initiated
the shutdown sequence on it's outlet, but returns before the real UPS begins
shutting down. The solution is in the clone driver, that will insert the
FSD flag if needed without the help of a upsmon master.
FSD flag if needed without the help of a upsmon primary.
CAVEATS
-------
The clone UPS will follow the status on the real UPS driver. You can only
make the clone UPS shutdown earlier than the real UPS driver, not later.
If the real UPS driver initiates a shutdown, the clone UPS driver will
@ -98,8 +107,19 @@ drivers are not affected, so if you tell the real UPS driver to shutdown
the outlet of the clone UPS driver, your clients will lose power without
warning.
If you use service management frameworks like systemd or SMF to manage the
dependencies between driver instances and other units, then you may have
to set up special dependencies (e.g. with systemd "drop-in" snippet files)
to queue your `clone` drivers to start after the "real" device drivers.
//////////////////////////////////////
TODO later: declare the driver as "optional", see
https://github.com/networkupstools/nut/issues/1389
//////////////////////////////////////
AUTHOR
------
Arjen de Korte <adkorte-guest@alioth.debian.org>
SEE ALSO
@ -110,6 +130,16 @@ linkman:upsrw[1],
linkman:ups.conf[5],
linkman:nutupsdrv[8]
Dummy driver:
~~~~~~~~~~~~~
The "repeater" mode of 'dummy-ups' driver is in some ways similar to the
'clone' driver, by relaying information from a locally or remotely running
"real" device driver (and NUT data server).
linkman:dummy-ups[8]
Internet Resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: dummy-ups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "DUMMY\-UPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "DUMMY\-UPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -31,22 +31,110 @@
dummy-ups \- Driver for multi\-purpose UPS emulation
.SH "NOTE"
.sp
This man page only documents the specific features of the dummy\-ups driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
This man page only documents the specific features of the \fBdummy\-ups\fR driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "DESCRIPTION"
.sp
This program is a multi\-purpose UPS emulation tool\&. Its behavior depends on the running mode:
This program is a multi\-purpose UPS emulation tool\&. Its general behavior depends on the running mode: "dummy" ("dummy\-once" or "dummy\-loop"), or "repeater"\&.
.SS "Dummy Mode"
.sp
\fBdummy\-ups\fR looks like a standard device driver to \fBupsd\fR(8) and allows one to change any value for testing purposes\&. It is both interactive, controllable through the \fBupsrw\fR(1) and \fBupscmd\fR(1) commands (or equivalent graphical tool), and batchable through script files\&. It can be configured, launched and used as any other real driver\&. This mode is mostly useful for development and testing purposes\&.
In this mode, \fBdummy\-ups\fR looks like a standard NUT device driver to \fBupsd\fR(8) and allows one to change any value for testing purposes\&. It is both interactive, controllable through the \fBupsrw\fR(1) and \fBupscmd\fR(1) commands (or equivalent graphical tool), and batchable through script files\&. It can be configured, launched and used as any other "real" NUT driver\&. This mode is mostly useful for development and testing purposes\&.
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
See below about the differences of dummy\-once vs\&. dummy\-loop modes \(em the former may be more suitable for "interactive" uses and tests\&.
.sp .5v
.RE
.SS "Repeater Mode"
.sp
\fBdummy\-ups\fR acts as a NUT client, simply forwarding data\&. This can be useful for supervision purposes\&. This can also allow some load sharing between several UPS instances, using a point\-to\-point communication with the UPS\&.
In this mode, \fBdummy\-ups\fR acts as a NUT client, simply forwarding data\&. This can be useful for supervision purposes\&. This mode can also allow some load sharing between several upsd instances communicating with ultimate NUT clients, with a "central" one using a point\-to\-point communication with the UPS\&. This arrangement can also help with networked UPSes, whose network management cards can be overwhelmed with a farm of servers directly polling SNMP or other protocols every few seconds\&.
.SH "IMPLEMENTATION"
.sp
The port specification depends on the running mode, and allows the driver to select the right mode\&.
The port specification in ups\&.conf depends on the running mode, and allows the driver to select the right mode of operation\&.
.sp
Since NUT v2\&.8\&.0, the mode specification in ups\&.conf allows users to override the mode of operation which would be otherwise guessed by the driver\&.
.SS "Dummy Mode"
.sp
Port is a definition file name for \fBdummy\-ups\fR\&. This can either be an absolute or a relative path name\&. In the latter case the NUT sysconfig directory (ie /etc/nut, /usr/local/ups/etc, \&...) is prepended\&.
In this context, port in the ups\&.conf block defines a file name for the \fBdummy\-ups\fR to read data from\&. This can either be an absolute or a relative path name\&. In the latter case the NUT sysconfig directory (i\&.e\&. /etc/nut, /usr/local/ups/etc, \&...) is prepended\&.
.sp
Since NUT v2\&.8\&.0 two aspects of this mode are differentiated:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
dummy\-once
reads the specified file once to the end (interrupting for
TIMER
lines, etc\&.) and does not re\-process it until the filesystem timestamp of the data file is changed; this reduces run\-time stress if you test with a lot of dummy devices, and allows use/test cases to
upsrw
variables into the driver instance \(em and they remain in memory until the driver is restarted (or the file is touched or modified);
.sp
Since NUT v2\&.8\&.0
dummy\-once
is assigned by default to files with a
*\&.dev
naming pattern\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
dummy\-loop
reads the specified file again and again, with a short sleep between the processing cycles; for sequence files using a
TIMER
keyword (see below), or for use/test cases which modify file contents with external means, this allows an impression of a device whose state changes over time\&.
.sp
Before NUT v2\&.8\&.0 this was the only aspect, so a simple
dummy
mode value maps to this behavior for backwards compatibility\&.
.sp
Since NUT v2\&.8\&.0
dummy\-loop
is assigned by default to files with a
*\&.seq
naming pattern, and
dummy
is assigned by default to files with other naming patterns that the driver could not classify\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
Said defaulting based on filename pattern can break third\-party test scripts which earlier expected *\&.dev files to work as a looping sequence with a TIMER keywords to change values slowly\&. Now such files should get processed to the end once\&.
.sp
Specify mode=dummy\-loop driver option or rename the data file used in the port option for legacy behavior\&.
.sp
Use/Test\-cases which modified such files content externally should not be impacted\&.
.sp .5v
.RE
.sp
For instance:
.sp
@ -54,22 +142,55 @@ For instance:
.RS 4
.\}
.nf
[dummy]
[dummy1]
driver = dummy\-ups
port = evolution500\&.dev
desc = "dummy\-ups in dummy mode"
port = evolution500\&.seq
desc = "dummy\-ups in dummy\-loop mode"
.fi
.if n \{\
.RE
.\}
.sp
This file is generally named "something\&.dev"\&. It contains a list of all valid data and associated values, and has the same format as an \fBupsc\fR(8) dump (<varname>: <value>)\&. So you can easily create definition files from an existing UPS using "upsc > file\&.dev"\&. It can also be empty, in which case only a basic set of data is available: device\&.\fB, driver\&.\fR, ups\&.mfr, ups\&.model, ups\&.status
.if n \{\
.RS 4
.\}
.nf
[dummy2]
driver = dummy\-ups
port = epdu\-managed\&.dev
desc = "dummy\-ups in dummy\-once mode"
.fi
.if n \{\
.RE
.\}
.sp
Samples definition files are available in the "data" directory of the nut source tree, and generally in the sysconfig directory of your system distribution\&.
This file is generally named something\&.dev or something\&.seq\&. It contains a list of all valid variables and associated values (you can later use upsrw only to modify values of these variables), and has the same format as an \fBupsc\fR(8) dump (<varname>: <value>)\&. So you can easily create definition files from an existing UPS using upsc > file\&.dev\&.
.sp
Since \fBdummy\-ups\fR will loop on reading this file, you can dynamically modify it to interact with the driver\&. This will avoid message spam into your system log files, if you are using NUT default configuration\&.
Note that the Network UPS project provides an extensive DDL (Devices Dumps Library) with files which can be used for modelling real devices\&. Entries for the DDL library are best prepared with the tools/nut\-ddl\-dump\&.sh script from NUT sources instead of plain upsc, to provide some additional data points from other NUT clients as well\&.
.sp
You can also use the "TIMER <seconds>" instruction to create scheduled events sequences\&. For example, the following sequence will loop on switching ups\&.status between "OL", "OB" and "OB LB" every minute:
The file can also be empty, in which case only a basic set of data is available: device\&.*, driver\&.*, ups\&.mfr, ups\&.model, ups\&.status as filled by the driver itself\&.
.sp
Some sample definition files are available in the data directory of the NUT source tree, and generally in the sysconfig or share directory of your system distribution\&.
.sp
Since \fBdummy\-ups\fR will usually loop on reading this file, you can dynamically modify it with some external process to "interact" with the driver\&. This will avoid message spam into your system log files, if you are using NUT default configuration\&.
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
By default since NUT v2\&.8\&.0, it will not loop on files in dummy\-once mode, e\&.g\&. those with a \&.dev extension, unless their timestamp changes\&.
.sp .5v
.RE
.sp
You can also use the TIMER <seconds> instruction to create scheduled event sequences (such files are traditionally named with the \&.seq extension)\&. For example, the following sequence will loop on switching ups\&.status between "OL", "OB" and "OB LB" every minute:
.sp
.if n \{\
.RS 4
@ -79,17 +200,19 @@ ups\&.status: OL
TIMER 60
ups\&.status: OB
TIMER 60
ups\&.status: LB
ups\&.status: OB LB
TIMER 60
.fi
.if n \{\
.RE
.\}
.sp
It is wise to end the script with a TIMER\&. Otherwise dummy\-ups will directly go back to the beginning of the file\&.
It is wise to end the script for dummy\-loop mode with a TIMER keyword\&. Otherwise dummy\-ups will directly go back to the beginning of the file and, in particular, forget any values you could have just set with upsrw\&.
.sp
Note that to avoid CPU overload with an infinite loop, the driver "sleeps" a bit between file\-reading cycles (currently this delay is hardcoded to one second), independently of (and/or in addition to) any TIMER keywords\&.
.SS "Repeater Mode"
.sp
Port is the name of a remote UPS, using the NUT form, ie:
In this context, port in the ups\&.conf block is the name of a remote UPS, using the NUT format, i\&.e\&.:
.sp
.if n \{\
.RS 4
@ -108,40 +231,52 @@ For instance:
.\}
.nf
[repeater]
driver = dummy\-ups
port = ups@hostname
desc = "dummy\-ups in repeater mode"
driver = dummy\-ups
port = ups1@remotehost
desc = "dummy\-ups in repeater mode"
.fi
.if n \{\
.RE
.\}
.sp
Unlike UPS specifications in the rest of NUT, the @hostname portion is not optional \- it is the @ character which enables Repeater Mode\&. To refer to an UPS on the same host as \fBdummy\-ups\fR, use port = upsname@localhost\&.
.sp
Note that to avoid CPU overload with an infinite loop, the driver "sleeps" a bit between data\-requesting cycles (currently this delay is hardcoded to one second), so propagation of data updates available to a remote upsd may lag by this much\&.
.SH "INTERACTION"
.sp
Once the driver is loaded in dummy mode, you can change any variables, except those of the driver\&.* and server\&.* collections\&. You can do this by either editing the definition file, or use the \fBupsrw\fR(1) and \fBupscmd\fR(1) commands\&.
.sp
Note that in simulation mode, new variables can be added on the fly, by adding these to the definition file\&. Conversely, if you need to remove variable (such as transient ones, like ups\&.alarm), simply update these by setting an empty value\&. As a result, they will get removed from the data\&.
Note that in simulation mode, new variables can be added on the fly, but only by adding these to the definition file (and waiting for it to be re\-read)\&. That is, the driver should not allow to define a new variable via upsrw\&.
.sp
In repeater mode, the driver acts according to the capabilities of the UPS, and so support the same instant commands and settable values\&.
Conversely, if you need to remove a variable (such as transient ones, like ups\&.alarm), simply update these by setting an empty value\&. As a result, they will get removed from the data\&.
.sp
In repeater mode, the driver acts according to the capabilities of the UPS, and so supports the same instant commands and settable values\&.
.SH "BACKGROUND"
.sp
Dummy Mode was originally written in one evening to replace the previous dummycons testing driver, which was too limited, and required a terminal for interaction\&.
Dummy Mode was originally written in one evening to replace the previous \fIdummycons\fR testing driver, which was too limited, and required a terminal for interaction\&.
.sp
\fBdummy\-ups\fR is useful for NUT client development, and other testing purposes\&.
.sp
It also helps the NUT Quality Assurance effort, by automating some tests on the NUT framework\&.
.sp
It now offers a repeater mode\&. This will help in building the Meta UPS approach, which allows one to build a virtual device, composed of several other devices (either UPS, PDUs)\&.
It now offers a repeater mode\&. This will help in building the Meta UPS approach, which allows one to build a virtual device, composed of several other devices (either UPS, PDUs), or perhaps represent the same device which supports several communication protocols and different media (Serial, USB, SNMP\&...)
.SH "BUGS"
.sp
Instant commands are not yet supported in Dummy Mode, and data need name/value checking enforcement, as well as boundaries or enumeration definition\&.
.SH "CAVEATS"
.sp
If you use service management frameworks like systemd or SMF to manage the dependencies between driver instances and the data server, and some of these drivers are dummy\-ups in repeater mode representing data from another driver running on the same system, then you may have to set up special dependencies (e\&.g\&. with systemd "drop\-in" snippet files) to allow your nut\-server to start after the "real" device drivers and before such repeater drivers (without a responding server, they would fail to start anyway)\&. This may also need special care in upsd\&.conf and/or ups\&.conf files to not block the system start\-up for too long while the repeater driver has not started\&.
.SH "AUTHOR"
.sp
Arnaud Quette
.SH "SEE ALSO"
.sp
\fBupscmd\fR(1), \fBupsrw\fR(1), \fBups.conf\fR(5), \fBnutupsdrv\fR(8)
.SS "Clone driver:"
.sp
The "repeater" mode of \fIdummy\-ups\fR driver is in some ways similar to the \fIclone\fR driver, which sits on top of another driver socket, and allows users to group clients to a particular outlet of a device and deal with this output as if it were a normal UPS\&.
.sp
\fBclone\fR(8)
.SS "Internet Resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -3,141 +3,262 @@ DUMMY-UPS(8)
NAME
----
dummy-ups - Driver for multi-purpose UPS emulation
NOTE
----
This man page only documents the specific features of the
dummy-ups driver. For information about the core driver, see
*dummy-ups* driver. For information about the core driver, see
linkman:nutupsdrv[8].
DESCRIPTION
-----------
This program is a multi-purpose UPS emulation tool.
Its behavior depends on the running mode:
Its general behavior depends on the running mode: "dummy" ("dummy-once"
or "dummy-loop"), or "repeater".
////////////////////////////////////////
...or "meta" eventually.
////////////////////////////////////////
Dummy Mode
~~~~~~~~~~
*dummy-ups* looks like a standard device driver to linkman:upsd[8] and
allows one to change any value for testing purposes. It is both interactive,
controllable through the linkman:upsrw[1] and linkman:upscmd[1] commands (or
equivalent graphical tool), and batchable through script files. It can be
configured, launched and used as any other real driver. This mode is mostly
useful for development and testing purposes.
In this mode, *dummy-ups* looks like a standard NUT device driver to
linkman:upsd[8] and allows one to change any value for testing purposes.
It is both interactive, controllable through the linkman:upsrw[1] and
linkman:upscmd[1] commands (or equivalent graphical tool), and batchable
through script files. It can be configured, launched and used as any other
"real" NUT driver. This mode is mostly useful for development and testing
purposes.
NOTE: See below about the differences of `dummy-once` vs. `dummy-loop`
modes -- the former may be more suitable for "interactive" uses and tests.
Repeater Mode
~~~~~~~~~~~~~
*dummy-ups* acts as a NUT client, simply forwarding data. This can be useful
for supervision purposes. This can also allow some load sharing between several
UPS instances, using a point-to-point communication with the UPS.
In this mode, *dummy-ups* acts as a NUT client, simply forwarding data.
This can be useful for supervision purposes. This mode can also allow some
load sharing between several `upsd` instances communicating with ultimate
NUT clients, with a "central" one using a point-to-point communication with
the UPS. This arrangement can also help with networked UPSes, whose network
management cards can be overwhelmed with a farm of servers directly polling
SNMP or other protocols every few seconds.
////////////////////////////////////////
Future intention: Meta mode to aggregate several drivers as one device
e.g. to represent same UPS with Serial + USB + SNMP links, and/or cover
an SNMP UPS that supports different data in different MIBs.
////////////////////////////////////////
IMPLEMENTATION
--------------
The port specification depends on the running mode, and allows the driver to
select the right mode.
The `port` specification in `ups.conf` depends on the running mode, and allows
the driver to select the right mode of operation.
Since NUT v2.8.0, the `mode` specification in `ups.conf` allows users to
override the mode of operation which would be otherwise guessed by the driver.
Dummy Mode
~~~~~~~~~~
Port is a definition file name for *dummy-ups*. This can either
be an absolute or a relative path name. In the latter case the NUT
sysconfig directory (ie /etc/nut, /usr/local/ups/etc, ...) is prepended.
In this context, `port` in the `ups.conf` block defines a file name for the
*dummy-ups* to read data from. This can either be an absolute or a relative
path name. In the latter case the NUT sysconfig directory (i.e. `/etc/nut`,
`/usr/local/ups/etc`, ...) is prepended.
Since NUT v2.8.0 two aspects of this mode are differentiated:
* `dummy-once` reads the specified file once to the end (interrupting for
`TIMER` lines, etc.) and does not re-process it until the filesystem
timestamp of the data file is changed; this reduces run-time stress if
you test with a lot of dummy devices, and allows use/test cases to
`upsrw` variables into the driver instance -- and they remain in memory
until the driver is restarted (or the file is touched or modified);
+
Since NUT v2.8.0 `dummy-once` is assigned by default to files with a `*.dev`
naming pattern.
* `dummy-loop` reads the specified file again and again, with a short sleep
between the processing cycles; for sequence files using a `TIMER` keyword
(see below), or for use/test cases which modify file contents with external
means, this allows an impression of a device whose state changes over time.
+
Before NUT v2.8.0 this was the only aspect, so a simple `dummy` mode value
maps to this behavior for backwards compatibility.
+
Since NUT v2.8.0 `dummy-loop` is assigned by default to files with a `*.seq`
naming pattern, and `dummy` is assigned by default to files with other
naming patterns that the driver could not classify.
[NOTE]
======
Said defaulting based on filename pattern can break third-party
test scripts which earlier expected `*.dev` files to work as a
looping sequence with a `TIMER` keywords to change values slowly.
Now such files should get processed to the end once.
Specify `mode=dummy-loop` driver option or rename the data file
used in the `port` option for legacy behavior.
Use/Test-cases which modified such files content externally should
not be impacted.
======
For instance:
[dummy]
[dummy1]
driver = dummy-ups
port = evolution500.dev
desc = "dummy-ups in dummy mode"
port = evolution500.seq
desc = "dummy-ups in dummy-loop mode"
This file is generally named "something.dev". It contains a list of all
valid data and associated values, and has the same format as an linkman:upsc[8]
dump (<varname>: <value>). So you can easily create definition
files from an existing UPS using "upsc > file.dev".
It can also be empty, in which case only a basic set of data is available:
device.*, driver.*, ups.mfr, ups.model, ups.status
[dummy2]
driver = dummy-ups
port = epdu-managed.dev
desc = "dummy-ups in dummy-once mode"
Samples definition files are available in the "data" directory of the nut source
tree, and generally in the sysconfig directory of your system distribution.
This file is generally named `something.dev` or `something.seq`. It contains
a list of all valid variables and associated values (you can later use `upsrw`
only to modify values of these variables), and has the same format as an
linkman:upsc[8] dump (`<varname>: <value>`). So you can easily create
definition files from an existing UPS using `upsc > file.dev`.
Since *dummy-ups* will loop on reading this file, you can dynamically modify
it to interact with the driver. This will avoid message spam into your
system log files, if you are using NUT default configuration.
Note that the Network UPS project provides an extensive
link:https://networkupstools.org/ddl/index.html[DDL (Devices Dumps Library)]
with files which can be used for modelling real devices.
Entries for the DDL library are best prepared with the
link:https://raw.githubusercontent.com/networkupstools/nut/master/tools/nut-ddl-dump.sh[`tools/nut-ddl-dump.sh`]
script from NUT sources instead of plain `upsc`, to provide some additional
data points from other NUT clients as well.
You can also use the "TIMER <seconds>" instruction to create scheduled events
sequences. For example, the following sequence will loop on switching ups.status
The file can also be empty, in which case only a basic set of data is
available: `device.*`, `driver.*`, `ups.mfr`, `ups.model`, `ups.status`
as filled by the driver itself.
Some sample definition files are available in the `data` directory of the
NUT source tree, and generally in the sysconfig or share directory of your
system distribution.
Since *dummy-ups* will usually loop on reading this file, you can dynamically
modify it with some external process to "interact" with the driver.
This will avoid message spam into your system log files, if you are
using NUT default configuration.
NOTE: By default since NUT v2.8.0, it will not loop on files in `dummy-once`
mode, e.g. those with a `.dev` extension, unless their timestamp changes.
You can also use the `TIMER <seconds>` instruction to create scheduled event
sequences (such files are traditionally named with the `.seq` extension).
For example, the following sequence will loop on switching `ups.status`
between "OL", "OB" and "OB LB" every minute:
ups.status: OL
TIMER 60
ups.status: OB
TIMER 60
ups.status: LB
ups.status: OB LB
TIMER 60
It is wise to end the script with a TIMER. Otherwise dummy-ups will directly
go back to the beginning of the file.
It is wise to end the script for `dummy-loop` mode with a `TIMER` keyword.
Otherwise `dummy-ups` will directly go back to the beginning of the file
and, in particular, forget any values you could have just set with `upsrw`.
Note that to avoid CPU overload with an infinite loop, the driver "sleeps"
a bit between file-reading cycles (currently this delay is hardcoded to one
second), independently of (and/or in addition to) any `TIMER` keywords.
Repeater Mode
~~~~~~~~~~~~~
Port is the name of a remote UPS, using the NUT form, ie:
In this context, `port` in the `ups.conf` block is the name of a remote UPS,
using the NUT format, i.e.:
<upsname>@<hostname>[:<port>]
For instance:
[repeater]
[repeater]
driver = dummy-ups
port = ups@hostname
port = ups1@remotehost
desc = "dummy-ups in repeater mode"
Unlike UPS specifications in the rest of NUT, the `@hostname` portion is not
optional - it is the `@` character which enables Repeater Mode. To refer to an
UPS on the same host as *dummy-ups*, use `port = upsname@localhost`.
Note that to avoid CPU overload with an infinite loop, the driver "sleeps" a
bit between data-requesting cycles (currently this delay is hardcoded to one
second), so propagation of data updates available to a remote `upsd` may lag
by this much.
INTERACTION
-----------
Once the driver is loaded in dummy mode, you can change any variables, except
those of the driver.* and server.* collections.
those of the `driver.*` and `server.*` collections.
You can do this by either editing the definition file, or use the
linkman:upsrw[1] and linkman:upscmd[1] commands.
Note that in simulation mode, new variables can be added on the fly, by
adding these to the definition file. Conversely, if you need to remove
variable (such as transient ones, like ups.alarm), simply update these
by setting an empty value. As a result, they will get removed from the data.
Note that in simulation mode, new variables can be added on the fly, but only
by adding these to the definition file (and waiting for it to be re-read).
That is, the driver should not allow to define a new variable via `upsrw`.
In repeater mode, the driver acts according to the capabilities of the UPS, and
so support the same instant commands and settable values.
Conversely, if you need to remove a variable (such as transient ones, like
`ups.alarm`), simply update these by setting an empty value. As a result,
they will get removed from the data.
In repeater mode, the driver acts according to the capabilities of the UPS,
and so supports the same instant commands and settable values.
BACKGROUND
----------
Dummy Mode was originally written in one evening to replace the previous
dummycons testing driver, which was too limited, and required a terminal for
interaction.
'dummycons' testing driver, which was too limited, and required a terminal
for interaction.
*dummy-ups* is useful for NUT client development, and other testing purposes.
It also helps the NUT Quality Assurance effort, by automating some tests on the
NUT framework.
It also helps the NUT Quality Assurance effort, by automating some tests on
the NUT framework.
It now offers a repeater mode. This will help in building the Meta UPS approach,
which allows one to build a virtual device, composed of several other devices
(either UPS, PDUs).
(either UPS, PDUs), or perhaps represent the same device which supports
several communication protocols and different media (Serial, USB, SNMP...)
BUGS
----
Instant commands are not yet supported in Dummy Mode, and data need name/value
checking enforcement, as well as boundaries or enumeration definition.
CAVEATS
-------
If you use service management frameworks like systemd or SMF to manage
the dependencies between driver instances and the data server, and some
of these drivers are `dummy-ups` in repeater mode representing data
from another driver running on the same system, then you may have to
set up special dependencies (e.g. with systemd "drop-in" snippet files)
to allow your `nut-server` to start after the "real" device drivers and
before such repeater drivers (without a responding server, they would fail
to start anyway). This may also need special care in `upsd.conf` and/or
`ups.conf` files to not block the system start-up for too long while the
repeater driver has not started.
//////////////////////////////////////
TODO later: declare the driver as "optional", see
https://github.com/networkupstools/nut/issues/1389
//////////////////////////////////////
AUTHOR
------
Arnaud Quette
SEE ALSO
@ -148,6 +269,17 @@ linkman:upsrw[1],
linkman:ups.conf[5],
linkman:nutupsdrv[8]
Clone driver:
~~~~~~~~~~~~~
The "repeater" mode of 'dummy-ups' driver is in some ways similar to the
'clone' driver, which sits on top of another driver socket, and allows
users to group clients to a particular outlet of a device and deal with
this output as if it were a normal UPS.
linkman:clone[8]
Internet Resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: etapro
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "ETAPRO" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "ETAPRO" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -3,33 +3,41 @@ ETAPRO(8)
NAME
----
etapro - Driver for ETA UPS equipment
NOTE
----
This man page only documents the hardware-specific features of the
etapro driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports ETA UPS equipment with the "PRO" option for smart mode.
EXTRA ARGUMENTS
---------------
This driver does not support any extra settings in the
linkman:ups.conf[5].
AUTHOR
------
Marek Michalkiewicz <marekm@amelek.gda.pl>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: everups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "EVERUPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "EVERUPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -3,22 +3,25 @@ EVERUPS(8)
NAME
----
everups - Driver for Ever UPS models
NOTE
----
This man page only documents the hardware-specific features of the
everups driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver should recognize the NET *-DPC and AP *-PRO models.
EXTRA ARGUMENTS
---------------
This driver does not support any extra settings in the
This driver does not support any extra settings in the
linkman:ups.conf[5].
BUGS
@ -30,6 +33,7 @@ don't sleep and force a reboot.
AUTHOR
------
Bartek Szady <bszx@bszxdomain.edu.eu.org>
SEE ALSO
@ -37,8 +41,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: gamatronic
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "GAMATRONIC" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "GAMATRONIC" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -3,16 +3,19 @@ GAMATRONIC(8)
NAME
----
gamatronic - Driver for Gamatronic UPS equipment
NOTE
----
This man page only documents the hardware-specific features of the
gamatronic driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
Various - Rebuilt to work with Gamatronic UPS Units, but should recognize any
UPS that speaks the SEC protocol at 1200-19200 bps.
@ -24,6 +27,7 @@ linkman:ups.conf[5].
AUTHOR
------
Nadav Moskovitch <blutz@walla.com>
SEE ALSO
@ -31,8 +35,10 @@ SEE ALSO
The core driver
~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources
~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

355
docs/man/generic_modbus.8 Normal file
View file

@ -0,0 +1,355 @@
'\" t
.\" Title: generic_modbus
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "GENERIC_MODBUS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
generic_modbus \- Driver for contact (direct) signal UPS devices connected via modbus remote I/O gateways
.SH "SYNOPSIS"
.sp
\fBgeneric_modbus\fR \-h
.sp
\fBgeneric_modbus\fR \-a \fIDEVICE_NAME\fR [\fIOPTIONS\fR]
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
This man page only documents the specific features of the \fBgeneric_modbus\fR driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.sp .5v
.RE
.SH "SUPPORTED HARDWARE"
.sp
This is a generic modbus driver expected to work with contact (direct) signal UPS devices, connected via modbus RIO (remote I/O) either serial or TCP/IP\&.
.sp
The driver has been tested against PULS UPS (model UB40\&.241) via MOXA ioLogikR1212 (RS485) and ioLogikE1212 (TCP/IP)\&.
.PP
More information about this UPS can be found here:
.RS 4
https://products\&.pulspower\&.com/ca/ubc10\-241\-n1\&.html
.RE
.PP
More information about Moxa ioLogik R1212, E1212 can be found here:
.RS 4
https://www\&.moxa\&.com/en/products/industrial\-edge\-connectivity/controllers\-and\-ios
.RE
.sp
The PULS UPS UB40\&.241 supports the following signals:
.sp
.if n \{\
.RS 4
.\}
.nf
Ready contact (DO) <\-\-> HB
Buffering contact (DO) <\-\-> OL | OB
Battery\-low (DO) <\-\-> LB
Replace Battery (DO) <\-\-> RB
Inhibit (DI) <\-\-> FSD
.fi
.if n \{\
.RE
.\}
.sp
Digital port direction (DI/DO) assumes the device perspective
.sp
The driver\(cqs concept is to map the UPS states (as defined in NUT) onto UPS contacts\*(Aq states\&. The driver has an extended configuration interface implemented using variables defined in ups\&.conf\&.
.SH "HARDWARE INTERCONNECTION"
.sp
The commission of modbus remote I/O server as well as UPS device is carried out following the corresponding instruction manuals\&. The following figure depicts the anticipated communication path and hardware interconnection:
.sp
.if n \{\
.RS 4
.\}
.nf
+\-\-\-\-\-\-+ +\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-+ +\-\-\-\-\-\-\-\-\-\-\-\-+ +\-\-\-\-\-\-\-\-\-\-\-\-+
| UPSD | <\-\-\-> | GENERIC_MODBUS | <\-\-\-> | MODBUS RIO | <\-\-\-> | UPS DEVICE |
+\-\-\-\-\-\-+ (1) +\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-+ (2) +\-\-\-\-\-\-\-\-\-\-\-\-+ (3) +\-\-\-\-\-\-\-\-\-\-\-\-+
| |
+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-+
HOST CONTROLLER
(1) Unix IPC
(2) RS232 | TCP/IP
(3) contacts
.fi
.if n \{\
.RE
.\}
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in the \fBups.conf\fR(5) file:
.SS "Generic:"
.PP
\fBdevice_mfr\fR=\fIvalue\fR
.RS 4
A string specifying the manufacturer of the UPS device (default UNKNOWN)\&.
.RE
.PP
\fBdevice_model\fR=\fIvalue\fR
.RS 4
A string specifying the model of the UPS device (default UNKNOWN)\&.
.RE
.SS "Serial:"
.PP
\fBser_baud_rate\fR=\fIvalue\fR
.RS 4
A integer specifying the serial port baud rate (default 9600)\&.
.RE
.PP
\fBser_data_bit\fR=\fIvalue\fR
.RS 4
A integer specifying the serial port data bit (default 8)\&.
.RE
.PP
\fBser_parity\fR=\fIvalue\fR
.RS 4
A character specifying the serial port parity (default N)\&.
.RE
.PP
\fBser_stop_bit\fR=\fIvalue\fR
.RS 4
An integer specifying the serial port stop bit (default 1)\&.
.RE
.SS "Modbus:"
.PP
\fBrio_slave_id\fR=\fIvalue\fR
.RS 4
An integer specifying the RIO modbus slave ID (default 1)\&.
.RE
.SS "States (X = OL, OB, LB, HB, RB, CHRG, DISCHRG, FSD)"
.PP
\fB<X>_addr\fR=\fIvalue\fR
.RS 4
A number specifying the modbus address for the X state\&.
.RE
.PP
\fB<X>_regtype\fR=\fIvalue\fR
.RS 4
A number specifying the modbus register type for the X state
.RE
.PP
Default values:
.RS 4
.sp
.if n \{\
.RS 4
.\}
.nf
1 for X = OL, OB, LB ,HB, RB, CHRG, DISCHRG
0 for X = FSD
.fi
.if n \{\
.RE
.\}
.RE
.PP
Valid values:
.RS 4
.sp
.if n \{\
.RS 4
.\}
.nf
0:COIL, 1:INPUT_B, 2:INPUT_R, 3:HOLDING
.fi
.if n \{\
.RE
.\}
.RE
.PP
\fB<X>_noro\fR=\fIvalue\fR
.RS 4
A number specifying the contact configuration for the X state (default 1)\&.
.RE
.PP
Valid values:
.RS 4
.sp
.if n \{\
.RS 4
.\}
.nf
0:NC, 1:NO
.fi
.if n \{\
.RE
.\}
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
NO stands for normally open and NC for normally closed contact
.sp .5v
.RE
.RE
.SS "Shutdown"
.PP
\fBFSD_pulse_duration\fR=\fIvalue\fR
.RS 4
A number specifying the duration in ms for the inhibit pulse\&. If it\(cqs not defined, signal has only one transition depending on FSD_noro configuration\&.
.sp
Examples for FSD signal configuration:
.RE
.sp
.if n \{\
.RS 4
.\}
.nf
FSD_noro = 1
FSD_pulse_duration = 150
+\-\-\-\-\-+
| |
inhibit pulse >\-\-\-\-\-+ +\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\->
<\-\-\->
150ms
FSD_noro = 0
inhibit pulse >\-\-\-\-\-+
|
+\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\->
.fi
.if n \{\
.RE
.\}
.SH "CONFIGURATION"
.sp
Here is an example of generic_modbus driver configuration in \fBups\&.conf\fR file:
.sp
.if n \{\
.RS 4
.\}
.nf
[generic_modbus]
driver = generic_modbus
port = /dev/ttyUSB0
desc = "generic ups driver"
# device info
device_mfr = "PULS"
device_model = "UB40\&.241"
# serial settings
ser_baud_rate = 9600
ser_parity = N
ser_data_bit = 8
ser_stop_bit = 1
# modbus slave id
rio_slave_id = 5
# UPS signal state attributes
OB_addr = 0x0
OB_regtype = 1
OB_noro = 0
LB_addr = 0x1
LB_regtype = 1
HB_addr = 0x2
HB_regtype = 1
RB_addr = 0x3
RB_regtype = 1
FSD_addr = 0x0
FSD_regtype = 0
FSD_pulse_duration = 150
.fi
.if n \{\
.RE
.\}
.SH "INSTANT COMMANDS"
.sp
This driver support the following instant commands:
.PP
load\&.off
.RS 4
executes "instant poweroff"
.RE
.SH "INSTALLATION"
.sp
This driver is not built by default\&. You can build it by installing libmodbus and running configure \-\-with\-modbus=yes\&.
.sp
You also need to give proper permissions on the local serial device file (/dev/ttyUSB0 for example) to allow the run\-time NUT driver user account to access it\&.
.SH "OTHER NOTES"
.sp
The generic_modbus driver intends to support generic UPS devices with contact signals through modbus TCP/RTU gateways (also known as RIO \(em remote I/Os)\&. The data and signal path looks like this:
.sp
.if n \{\
.RS 4
.\}
.nf
[UPSD] <\-\-\- IPC \-\-\-> [GENERIC_UPS] <\-\-\- modbus TCP/RTU \-\-\-> MODBUS\-RIO <\-\-\- contacts \-\-\-> [UPS DEVICE]
.fi
.if n \{\
.RE
.\}
.sp
On the other hand, you can setup any kind of modbus server, and configure the generic_modbus driver to connect and read or write specific registers\&. Your application / modbus server could then drive NUT statuses (e\&.g\&. OL, OB, HB etc) by writing over those registers\&.
.SH "AUTHOR"
.sp
Dimitris Economou <dimitris\&.s\&.economou@gmail\&.com>
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8), \fBups.conf\fR(5)
.SS "Internet resources:"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
libmodbus home page:
http://libmodbus\&.org
.RE

247
docs/man/generic_modbus.txt Normal file
View file

@ -0,0 +1,247 @@
GENERIC_MODBUS(8)
=================
NAME
----
generic_modbus - Driver for contact (direct) signal UPS devices connected via modbus remote I/O gateways
SYNOPSIS
--------
*generic_modbus* -h
*generic_modbus* -a 'DEVICE_NAME' ['OPTIONS']
NOTE: This man page only documents the specific features of the *generic_modbus*
driver. For information about the core driver, see linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This is a generic modbus driver expected to work with contact (direct) signal
UPS devices, connected via modbus RIO (remote I/O) either serial or TCP/IP.
The driver has been tested against PULS UPS (model UB40.241)
via MOXA ioLogikR1212 (RS485) and ioLogikE1212 (TCP/IP).
More information about this UPS can be found here: ::
https://products.pulspower.com/ca/ubc10-241-n1.html
More information about Moxa ioLogik R1212, E1212 can be found here: ::
https://www.moxa.com/en/products/industrial-edge-connectivity/controllers-and-ios
The PULS UPS UB40.241 supports the following signals:
----
Ready contact (DO) <--> HB
Buffering contact (DO) <--> OL | OB
Battery-low (DO) <--> LB
Replace Battery (DO) <--> RB
Inhibit (DI) <--> FSD
----
Digital port direction (DI/DO) assumes the device perspective
The driver's concept is to map the UPS states (as defined in NUT) onto
UPS contacts' states. The driver has an extended configuration interface
implemented using variables defined in ups.conf.
HARDWARE INTERCONNECTION
------------------------
The commission of modbus remote I/O server as well as UPS device is carried
out following the corresponding instruction manuals. The following figure
depicts the anticipated communication path and hardware interconnection:
----
+------+ +----------------+ +------------+ +------------+
| UPSD | <---> | GENERIC_MODBUS | <---> | MODBUS RIO | <---> | UPS DEVICE |
+------+ (1) +----------------+ (2) +------------+ (3) +------------+
| |
+-------------------+
HOST CONTROLLER
(1) Unix IPC
(2) RS232 | TCP/IP
(3) contacts
----
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
linkman:ups.conf[5] file:
Generic:
~~~~~~~
*device_mfr*='value'::
A string specifying the manufacturer of the UPS device (default UNKNOWN).
*device_model*='value'::
A string specifying the model of the UPS device (default UNKNOWN).
Serial:
~~~~~~
*ser_baud_rate*='value'::
A integer specifying the serial port baud rate (default 9600).
*ser_data_bit*='value'::
A integer specifying the serial port data bit (default 8).
*ser_parity*='value'::
A character specifying the serial port parity (default N).
*ser_stop_bit*='value'::
An integer specifying the serial port stop bit (default 1).
Modbus:
~~~~~~
*rio_slave_id*='value'::
An integer specifying the RIO modbus slave ID (default 1).
States (X = OL, OB, LB, HB, RB, CHRG, DISCHRG, FSD)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*<X>_addr*='value'::
A number specifying the modbus address for the X state.
*<X>_regtype*='value'::
A number specifying the modbus register type for the X state
Default values: ::
+
----
1 for X = OL, OB, LB ,HB, RB, CHRG, DISCHRG
0 for X = FSD
----
Valid values: ::
+
----
0:COIL, 1:INPUT_B, 2:INPUT_R, 3:HOLDING
----
*<X>_noro*='value'::
A number specifying the contact configuration for the X state (default 1).
Valid values: ::
+
----
0:NC, 1:NO
----
+
NOTE: NO stands for normally open and NC for normally closed contact
Shutdown
~~~~~~~~
*FSD_pulse_duration*='value'::
A number specifying the duration in ms for the inhibit pulse.
If it's not defined, signal has only one transition depending
on FSD_noro configuration.
+
Examples for FSD signal configuration:
----
FSD_noro = 1
FSD_pulse_duration = 150
+-----+
| |
inhibit pulse >-----+ +------------------>
<--->
150ms
FSD_noro = 0
inhibit pulse >-----+
|
+------------------------>
----
CONFIGURATION
-------------
Here is an example of generic_modbus driver configuration in *ups.conf* file:
----
[generic_modbus]
driver = generic_modbus
port = /dev/ttyUSB0
desc = "generic ups driver"
# device info
device_mfr = "PULS"
device_model = "UB40.241"
# serial settings
ser_baud_rate = 9600
ser_parity = N
ser_data_bit = 8
ser_stop_bit = 1
# modbus slave id
rio_slave_id = 5
# UPS signal state attributes
OB_addr = 0x0
OB_regtype = 1
OB_noro = 0
LB_addr = 0x1
LB_regtype = 1
HB_addr = 0x2
HB_regtype = 1
RB_addr = 0x3
RB_regtype = 1
FSD_addr = 0x0
FSD_regtype = 0
FSD_pulse_duration = 150
----
INSTANT COMMANDS
----------------
This driver support the following instant commands:
load.off::
executes "instant poweroff"
INSTALLATION
------------
This driver is not built by default. You can build it by installing
libmodbus and running `configure --with-modbus=yes`.
You also need to give proper permissions on the local serial device
file (/dev/ttyUSB0 for example) to allow the run-time NUT driver user
account to access it.
OTHER NOTES
-----------
The `generic_modbus` driver intends to support generic UPS devices with
contact signals through modbus TCP/RTU gateways (also known as RIO --
remote I/Os). The data and signal path looks like this:
----
[UPSD] <--- IPC ---> [GENERIC_UPS] <--- modbus TCP/RTU ---> MODBUS-RIO <--- contacts ---> [UPS DEVICE]
----
On the other hand, you can setup any kind of modbus server, and configure
the `generic_modbus` driver to connect and read or write specific registers.
Your application / modbus server could then drive NUT statuses (e.g. OL, OB,
HB etc) by writing over those registers.
AUTHOR
------
Dimitris Economou <dimitris.s.economou@gmail.com>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8], linkman:ups.conf[5]
Internet resources:
~~~~~~~~~~~~~~~~~~~
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* libmodbus home page: http://libmodbus.org

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: genericups
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "GENERICUPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "GENERICUPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -36,7 +36,7 @@ This man page only documents the specific features of the genericups driver\&. F
.sp
This driver supports hardware from many different manufacturers as it only uses the very simplest of signaling schemes\&. Contact closure refers to a kind of interface where basic high/low signals are provided to indicate status\&. This kind of UPS can only report line power and battery status\&.
.sp
This means that you will only get the essentials in ups\&.status: OL, OB, and LB\&. Anything else requires a smarter UPS\&.
This means that you will only get the essentials in ups\&.status: OL, OB, and LB (some UPSes may also support RB and BYPASS)\&. Anything else requires a smarter UPS\&.
.SH "CABLING"
.sp
Cabling is different for every kind of UPS\&. See the table below for information on what is known to work with a given UPS type\&.
@ -137,6 +137,16 @@ LB
Low battery
.RE
.PP
RB
.RS 4
Replace battery
.RE
.PP
BYPASS
.RS 4
Battery bypass active or no battery installed
.RE
.PP
SD
.RS 4
Shutdown load
@ -172,10 +182,27 @@ DTR
Data Terminal Ready\&. Sent by the PC\&.
.RE
.PP
DSR
.RS 4
Data Set Ready\&. Received from the UPS\&.
.RE
.PP
ST
.RS 4
Send a BREAK on the transmit data line
.RE
.PP
NULL
.RS 4
Disable this signal\&. Disabled signal will always be low except for OL which will always be high\&.
.RE
.PP
none
.RS 4
Alias to
NULL
which matches some other documentation\&.
.RE
.sp
A "\-" in front of a signal name (like \-RNG) means that the indicated condition is signaled with an active low signal\&. For example, [LB=\-RNG] means the battery is low when the ring indicate line goes low, and that the battery is OK when that line is held high\&.
.SH "UPS TYPES"
@ -475,6 +502,18 @@ Check docs/cables/powerware\&.txt
.if n \{\
.RE
.\}
.sp
23 = Generic FTTx (Fiber to the x) battery backup with 4\-wire telemetry interface
.sp
.if n \{\
.RS 4
.\}
.nf
[CP=RTS] [OL=CTS] [LB=\-DCD] [RB=\-RNG] [BYPASS=\-DSR] [SD=none]
.fi
.if n \{\
.RE
.\}
.SH "SIMILAR MODELS"
.sp
Many different UPS companies make models with similar interfaces\&. The RUPS cable seems to be especially popular in the "power strip" variety of UPS found in office supply stores\&. If your UPS works with an entry in the table above, but the model or manufacturer information don\(cqt match, don\(cqt despair\&. You can fix that easily by using the mfr and model variables documented above in your \fBups.conf\fR(5)\&.
@ -581,13 +620,13 @@ Types 7 and 10 should both work with the PhoenixTec A1000\&.
.sp
There is no way to reliably detect a contact\-closure UPS\&. This means the driver will start up happily even if no UPS is detected\&. It also means that if the connection between the UPS and computer is interrupted, you may not be able to sense this in software\&.
.sp
Most contact\-closure UPSes will not power down the load if the line power is present\&. This can create a race when using slave \fBupsmon\fR(8) systems\&. See the \fBupsmon\fR(8) man page for more information\&.
Most contact\-closure UPSes will not power down the load if the line power is present\&. This can create a race when using secondary \fBupsmon\fR(8) systems\&. See the \fBupsmon\fR(8) man page for more information\&.
.sp
The solution to both of these problems is to upgrade to a smart protocol UPS of some kind that allows detection and proper load cycling on command\&.
.SH "SEE ALSO"
.SS "The core driver"
.sp
\fBnutupsdrv\fR(8)
.SS "Internet resources"
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -3,30 +3,36 @@ GENERICUPS(8)
NAME
----
genericups - Driver for contact-closure UPS equipment
NOTE
----
This man page only documents the specific features of the genericups
This man page only documents the specific features of the genericups
driver. For information about the core driver, see linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports hardware from many different manufacturers as it only
uses the very simplest of signaling schemes. Contact closure refers to a
kind of interface where basic high/low signals are provided to indicate
This driver supports hardware from many different manufacturers as it only
uses the very simplest of signaling schemes. Contact closure refers to a
kind of interface where basic high/low signals are provided to indicate
status. This kind of UPS can only report line power and battery status.
This means that you will only get the essentials in ups.status: OL, OB,
and LB. Anything else requires a smarter UPS.
and LB (some UPSes may also support RB and BYPASS). Anything else requires
a smarter UPS.
CABLING
-------
Cabling is different for every kind of UPS. See the table below for
Cabling is different for every kind of UPS. See the table below for
information on what is known to work with a given UPS type.
EXTRA ARGUMENTS
---------------
This driver supports the following settings in the linkman:ups.conf[5]:
upstype='type'::
@ -37,25 +43,25 @@ are available.
mfr='string'::
Optional. The very nature of a generic UPS driver sometimes means that
the stock manufacturer data has no relation to the actual hardware that is
attached. With the `mfr` setting, you can change the value that is seen by
Optional. The very nature of a generic UPS driver sometimes means that
the stock manufacturer data has no relation to the actual hardware that is
attached. With the `mfr` setting, you can change the value that is seen by
clients that monitor this UPS.
model='string'::
Optional. This is like `mfr` above, but it overrides the model string
Optional. This is like `mfr` above, but it overrides the model string
instead.
serial='string'::
Optional. This is like `mfr` above and intended to record the identification
string of the UPS. It is titled "serial" because usually this string is
string of the UPS. It is titled "serial" because usually this string is
referred to as the serial number.
sdtime='value'::
Optional. The driver will sleep for this many seconds after setting the
Optional. The driver will sleep for this many seconds after setting the
shutdown signal. This is necessary for some hardware which requires a
sustained level to activate the shutdown sequence.
+
@ -88,13 +94,18 @@ recognizes a low battery condition when DCD is not held high.
TYPE INFORMATION
----------------
The essence of a UPS definition in this driver is how it uses the serial
The essence of a UPS definition in this driver is how it uses the serial
lines that are available. These are the abbreviations you will see below:
OL:: On line (no power failure) (opposite of OB - on battery)
LB:: Low battery
RB:: Replace battery
BYPASS:: Battery bypass active or no battery installed
SD:: Shutdown load
CP:: Cable power (must be present for cable to have valid reading)
@ -109,78 +120,85 @@ RNG:: Ring indicate. Received from the UPS.
DTR:: Data Terminal Ready. Sent by the PC.
DSR:: Data Set Ready. Received from the UPS.
ST:: Send a BREAK on the transmit data line
A "-" in front of a signal name (like -RNG) means that the indicated
condition is signaled with an active low signal. For example, [LB=-RNG]
means the battery is low when the ring indicate line goes low, and that
NULL:: Disable this signal. Disabled signal will always be low except for OL
which will always be high.
none:: Alias to `NULL` which matches some other documentation.
A "-" in front of a signal name (like -RNG) means that the indicated
condition is signaled with an active low signal. For example, [LB=-RNG]
means the battery is low when the ring indicate line goes low, and that
the battery is OK when that line is held high.
UPS TYPES
---------
0 = UPSonic LAN Saver 600
0 = UPSonic LAN Saver 600
[CP=DTR+RTS] [OL=-CTS] [LB=DCD] [SD=DTR]
1 = APC Back-UPS/Back-UPS Pro/Smart-UPS with 940-0095A/C cable
1 = APC Back-UPS/Back-UPS Pro/Smart-UPS with 940-0095A/C cable
[CP=DTR] [OL=-RNG] [LB=DCD] [SD=RTS]
2 = APC Back-UPS/Back-UPS Pro/Smart-UPS with 940-0020B cable
2 = APC Back-UPS/Back-UPS Pro/Smart-UPS with 940-0020B cable
[CP=RTS] [OL=-CTS] [LB=DCD] [SD=DTR+RTS]
Type 2 has also been reported to work with the 940-0020C cable.
3 = PowerTech Comp1000 with DTR cable power
3 = PowerTech Comp1000 with DTR cable power
[CP=DTR] [OL=CTS] [LB=DCD] [SD=DTR+RTS]
4 = Generic RUPS Model
4 = Generic RUPS Model
[CP=RTS] [OL=CTS] [LB=-DCD] [SD=-RTS]
5 = Tripp Lite UPS with Lan2.2 interface (black 73-0844 cable)
5 = Tripp Lite UPS with Lan2.2 interface (black 73-0844 cable)
[CP=DTR] [OL=CTS] [LB=-DCD] [SD=DTR+RTS]
6 = Best Patriot with INT51 cable
6 = Best Patriot with INT51 cable
[CP=DTR] [OL=CTS] [LB=-DCD] [SD=RTS]
7 = CyberPower Power99
7 = CyberPower Power99
Also Upsonic Power Guardian PG-500, Belkin Belkin Home Office,
F6H350-SER, F6H500-SER, F6H650-SER, Eaton Management Card Contact - Config3
with cable 66033 (shutdown does not work)
[CP=RTS] [OL=CTS] [LB=-DCD] [SD=DTR]
8 = Nitram Elite 500
8 = Nitram Elite 500
[CP=DTR] [OL=CTS] [LB=-DCD] [SD=???]
9 = APC Back-UPS/Back-UPS Pro/Smart-UPS with 940-0023A cable
9 = APC Back-UPS/Back-UPS Pro/Smart-UPS with 940-0023A cable
[CP=none] [OL=-DCD] [LB=CTS] [SD=RTS]
10 = Victron Lite with crack cable
10 = Victron Lite with crack cable
[CP=RTS] [OL=CTS] [LB=-DCD] [SD=DTR]
11 = Powerware 3115
11 = Powerware 3115
[CP=DTR] [OL=-CTS] [LB=-DCD] [SD=ST]
12 = APC Back-UPS Office with 940-0119A cable
12 = APC Back-UPS Office with 940-0119A cable
[CP=RTS] [OL=-CTS] [LB=DCD] [SD=DTR]
13 = RPT Repoteck RPT-800A/RPT-162A
13 = RPT Repoteck RPT-800A/RPT-162A
[CP=DTR+RTS] [OL=DCD] [LB=-CTS] [SD=ST]
14 = Online P-series
14 = Online P-series
[CP=DTR] [OL=DCD] [LB=-CTS] [SD=RTS]
@ -219,21 +237,26 @@ UPS TYPES
[CP=RTS] [OL=CTS] [LB=-DCD] [SD=DTR]
23 = Generic FTTx (Fiber to the x) battery backup
with 4-wire telemetry interface
[CP=RTS] [OL=CTS] [LB=-DCD] [RB=-RNG] [BYPASS=-DSR] [SD=none]
SIMILAR MODELS
--------------
Many different UPS companies make models with similar interfaces. The
RUPS cable seems to be especially popular in the "power strip" variety of
Many different UPS companies make models with similar interfaces. The
RUPS cable seems to be especially popular in the "power strip" variety of
UPS found in office supply stores. If your UPS works with an entry in the
table above, but the model or manufacturer information don't match,
don't despair. You can fix that easily by using the mfr and model
don't despair. You can fix that easily by using the mfr and model
variables documented above in your linkman:ups.conf[5].
TESTING COMPATIBILITY
---------------------
If your UPS isn't listed above, you can try going through the list until
you find one that works. There is a lot of cable and interface reuse in
If your UPS isn't listed above, you can try going through the list until
you find one that works. There is a lot of cable and interface reuse in
the UPS world, and you may find a match.
To do this, first make sure nothing important is plugged into the
@ -244,7 +267,7 @@ supplied to the outlets.
Now, you can either attempt to make an educated guess based on the
documentation your manufacturer has provided (if any), or just start
going down the list.
going down the list.
Step 1
~~~~~~
@ -319,20 +342,20 @@ Change the port and upstype values to match your system.
NEW SUPPORT
-----------
If the above testing sequence fails, you will probably need to create a
new entry to support your hardware. All UPS types are determined from the
If the above testing sequence fails, you will probably need to create a
new entry to support your hardware. All UPS types are determined from the
table in the genericups.h file in the source tree.
On a standard 9 pin serial port, there are 6 lines that are used as the
standard "high/low" signal levels. 4 of them are incoming (to the PC,
from the UPS), and the other 2 are outgoing (to the UPS, from the PC).
On a standard 9 pin serial port, there are 6 lines that are used as the
standard "high/low" signal levels. 4 of them are incoming (to the PC,
from the UPS), and the other 2 are outgoing (to the UPS, from the PC).
The other 3 are the receive/transmit lines and the ground.
Be aware that many manufacturers remap pins within the cable. If you have
any doubts, a quick check with a multimeter should confirm whether the
cable is straight-through or not. Another thing to keep in mind is that
some cables have electronics in them to do special things. Some have
resistors and transistors on board to change behavior depending on what's
Be aware that many manufacturers remap pins within the cable. If you have
any doubts, a quick check with a multimeter should confirm whether the
cable is straight-through or not. Another thing to keep in mind is that
some cables have electronics in them to do special things. Some have
resistors and transistors on board to change behavior depending on what's
being supplied by the PC.
SPECIFIC MODEL NOTES
@ -340,17 +363,17 @@ SPECIFIC MODEL NOTES
These have been contributed by users of this driver.
The Centralion CL series may power down the load if the driver starts up
with the UPS running on battery as the default line settings contain the
The Centralion CL series may power down the load if the driver starts up
with the UPS running on battery as the default line settings contain the
shutdown sequence. - Neil Muller
The Tripp-Lite Internet Office 700 must be used with the black 73-0844
cable instead of the gray 73-0743 cable. This entry should work with any
of their models with the Lan 2.2 interface - see the sticker by the DB9
The Tripp-Lite Internet Office 700 must be used with the black 73-0844
cable instead of the gray 73-0743 cable. This entry should work with any
of their models with the Lan 2.2 interface - see the sticker by the DB9
connector on the UPS. - Stephen Brown
Type 5 should work with the Tripp-Lite Lan 2.1 interface and the 73-0724
cable. This was tested with the OmniSmart 675 PNP on Red Hat 7.2. - Q
Type 5 should work with the Tripp-Lite Lan 2.1 interface and the 73-0724
cable. This was tested with the OmniSmart 675 PNP on Red Hat 7.2. - Q
Giese
Types 7 and 10 should both work with the PhoenixTec A1000.
@ -358,16 +381,16 @@ Types 7 and 10 should both work with the PhoenixTec A1000.
BUGS
----
There is no way to reliably detect a contact-closure UPS. This means the
driver will start up happily even if no UPS is detected. It also means
that if the connection between the UPS and computer is interrupted, you
There is no way to reliably detect a contact-closure UPS. This means the
driver will start up happily even if no UPS is detected. It also means
that if the connection between the UPS and computer is interrupted, you
may not be able to sense this in software.
Most contact-closure UPSes will not power down the load if the line power
is present. This can create a race when using slave linkman:upsmon[8]
Most contact-closure UPSes will not power down the load if the line power
is present. This can create a race when using secondary linkman:upsmon[8]
systems. See the linkman:upsmon[8] man page for more information.
The solution to both of these problems is to upgrade to a smart protocol
The solution to both of these problems is to upgrade to a smart protocol
UPS of some kind that allows detection and proper load cycling on command.
SEE ALSO
@ -375,8 +398,10 @@ SEE ALSO
The core driver
~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources
~~~~~~~~~~~~~~~~~~
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: hosts.conf
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "HOSTS\&.CONF" "5" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "HOSTS\&.CONF" "5" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -36,4 +36,5 @@ linkman:upsset.cgi[8], linkman:upsstats.cgi[8], linkman:upsimage.cgi[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

489
docs/man/huawei-ups2000.8 Normal file
View file

@ -0,0 +1,489 @@
'\" t
.\" Title: huawei_ups2000
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "HUAWEI_UPS2000" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
huawei-ups2000 \- Driver for Huawei UPS2000 (1kVA\-3kVA) UPS with USB or RS\-232 serial Modbus connection\&.
.SH "SYNOPSIS"
.sp
\fBhuawei\-ups2000\fR \-h
.sp
\fBhuawei\-ups2000\fR \-a \fIDEVICE_NAME\fR [\fIOPTIONS\fR]
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
This man page only documents the hardware\-specific features of the huawei\-ups2000 driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.sp .5v
.RE
.SH "SUPPORTED HARDWARE"
.sp
This driver supports Huawei UPS2000 series, online (double conversion) UPS with the following characteristics\&.
.sp
.RS 4
.ie n \{\
\h'-04' 1.\h'+01'\c
.\}
.el \{\
.sp -1
.IP " 1." 4.2
.\}
Output power: 1 kVA to 3 kVA (higher power models are unsupported)\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04' 2.\h'+01'\c
.\}
.el \{\
.sp -1
.IP " 2." 4.2
.\}
Connection: USB or RS\-232 (USB is only supported on Linux 5\&.12 and newer kernels, read the section
\fBCabling\fR
carefully)\&.
.RE
.sp
The UPS2000 series has two variants: UPS2000\-A with a tower chassis, and UPS2000\-G with a rack\-mount chassis\&. Both should be equally supported, but more testers are needed\&.
.sp
Currently, it has been tested on the following models\&.
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
UPS2000\-A\-1KTTS (firmware: V2R1C1SPC40, P1\&.0\-D1\&.0)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
UPS2000\-A\-2KTTS (firmware: V2R1C1SPC50, P1\&.0\-D1\&.0)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
UPS2000\-G\-3KRTS (firmware: V2R1C1SPC40, P1\&.0\-D1\&.0)
.RE
.sp
If your model is not in the list, we encourage you to report successful or unsuccessful results to the bug tracker or the mailing list\&. Make sure to include the full model number of your UPS manually in your report, because the firmware only reports "UPS2000\-A" for all models, including the G series\&.
.sp
huawei\-ups2000 uses the libmodbus project, for Modbus implementation\&.
.SH "CABLING"
.sp
The UPS has a USB port and a RS\-232 port\&. Both are supported, but USB is only usable on Linux 5\&.12 and later, via the \fBxr_serial\fR kernel module (see subsection \fBUSB\fR for details)\&. RS\-232 is supported on all operating systems\&.
.sp
Only one port can be used at a time\&. When USB is used, RS\-232 should be unplugged from the UPS, and vice versa\&. Further, optional adapter cards, such as RS\-485 or SNMP, are not supported\&. They should be removed from the UPS\&.
.sp
Because the UPS port can be unresponsive under certain circumstances, it\(cqs recommended to power cycle your UPS after making a cabling change, especially after changing the port type\&. That is, turn off the UPS power output via the front panel, then unplug the UPS from line power input\&. Wait for the LCD screen to go black\&. Finally reconnect line power and restart your UPS\&.
.SS "USB"
.sp
The USB port on the UPS2000 is powered by a MaxLinear/Exar RX21V1410 USB\-to\-serial converter chip, it\(cqs only supported by Linux 5\&.12 or newer, via the \fBxr_serial\fR kernel module\&.
.sp
When the UPS2000 is connected via USB to a supported Linux system, you should see the following logs in \fBdmesg\fR\&.
.sp
.if n \{\
.RS 4
.\}
.nf
xr_serial 1\-1\&.2:1\&.1: xr_serial converter detected
usb 1\-1\&.2: xr_serial converter now attached to ttyUSB0
.fi
.if n \{\
.RE
.\}
.sp
The driver must be \fBxr_serial\fR\&. If your system doesn\(cqt have the necessary device driver, you will get this message instead:
.sp
.if n \{\
.RS 4
.\}
.nf
cdc_acm 1\-1\&.2:1\&.0: ttyACM0: USB ACM device
.fi
.if n \{\
.RE
.\}
.sp
The generic driver \fBcdc_acm\fR is incompatible and cannot be used\&. You should upgrade your Linux kernel to Linux 5\&.12 or newer\&.
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBWarning\fR
.ps -1
.br
.sp
On an unsupported system, the USB device can still be recognized as a USB ACM device, but communication is impossible, please don\(cqt waste your time on \fBcdc_acm\fR\&.
.sp .5v
.RE
.sp
If you\(cqre already running on Linux 5\&.12 or newer kernels, but still cannot see the \fBxr_serial\fR driver, it means the driver is not enabled in your kernel build\&. If you\(cqre a regular user, you should file a bug report to your Linux distro maintainers and ask them to enable \fBxr_serial\fR (kernel option CONFIG_USB_SERIAL_XR)\&.
.sp
When upgrading the Linux kernel isn\(cqt an option, or when you are using another operating system (e\&.g\&. FreeBSD), RS\-232 must be used\&.
.SS "RS\-232"
.sp
RS\-232 is supported on all operating systems, either via a built\-in serial port on your computer, or by using an external USB\-to\-RS\-232 converter\&. If you plan to use an USB\-to\-RS\-232 converter, make sure it\(cqs supported by your operating system\&.
.SH "INSTALLATION"
.sp
This driver is not built by default\&. You can build it by installing libmodbus (with development packages) and running
.sp
.if n \{\
.RS 4
.\}
.nf
configure \-\-with\-serial=yes \-\-with\-modbus=yes
.fi
.if n \{\
.RE
.\}
.sp
You also need to give proper (R/W) permissions on the local serial device file to allow the NUT driver run\-time user to access it\&. This may need additional setup for start\-up scripting, udev or upower rules, to apply the rights on every boot \(em especially if your device nodes are tracked by a virtual filesystem\&.
.sp
For example, a USB\-to\-serial converter can be identified as /dev/ttyACM0 or /dev/ttyUSB0 on Linux, or /dev/ttyU0 on FreeBSD (note the capital "U")\&. A built\-in serial port can be identified as /dev/ttyS0 on Linux or one of /dev/cua* names on FreeBSD\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in the \fBups.conf\fR(5) file:
.PP
\fBoffdelay=\fR\fIvalue\fR
.RS 4
Time to wait before shutting down the UPS (seconds), acceptable range is 6 seconds (0\&.1 minutes) to 5940 seconds (99 minutes)\&. Defaults to 60 seconds\&. Must be a multiple of 6 seconds\&. To ensure your system has adequate time to shut down after a power failure, it\(cqs highly recommended to adjust
\fBoffdelay\fR\&.
.RE
.PP
\fBrebootdelay=\fR\fIvalue\fR
.RS 4
Time to wait before rebooting the UPS (seconds), acceptable range is 6 seconds (0\&.1 minutes) to 5940 seconds (99 minutes)\&. Defaults to 60 seconds\&. Must be a multiple of 6 seconds\&. This is used by the
\fBshutdown\&.reboot\&.graceful\fR
instant command\&. If you\(cqve adjusted
\fBoffdelay\fR, you should also adjust
\fBrebootdelay\fR\&.
.RE
.PP
\fBondelay=\fR\fIvalue\fR
.RS 4
Time to wait before switching on the UPS (seconds), acceptable range is 60 seconds (1 minutes) to 5940 seconds (99 minutes)\&. Defaults to 60 seconds\&. Must be a multiple of 60 seconds (not 6 seconds)\&. You don\(cqt need to adjust this delay unless you have special requirements\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
Due to hardware limitation, in this driver, \fBondelay\fR is respected only when line power is available\&. If a power failure has occurred, the UPS and the load is always immediately switched on, as soon (or as late) as line power is restored\&.
.sp .5v
.RE
.SH "INSTANT COMMANDS"
.sp
This driver supports some instant commands (see \fBupscmd\fR(8)):
.PP
\fBshutdown\&.stayoff\fR
.RS 4
After an
\fBoffdelay\fR, turn off the load\&. When line power is back, remain off\&.
.RE
.PP
\fBshutdown\&.return\fR
.RS 4
After an
\fBoffdelay\fR, turn off the load\&. When line power is back, turn on the load, possibly after an
\fBondelay\fR\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
Normally, the load is turned on as soon as line power is back\&. But if line power is never lost, or has came back unexpectedly in the middle of an ongoing shutdown (an undesirable "power race" condition that many entry\-level products on the market fail to recover from), the load is turned on after an \fBondelay\fR\&. Thus, UPS2000 is unaffected by a power race, the load is guaranteed to always restart\&.
.sp .5v
.RE
.PP
\fBshutdown\&.reboot\fR
.RS 4
Like
\fBshutdown\&.return\fR, except that the load is turned off immediately (6 seconds in this implementation)\&.
.RE
.PP
\fBshutdown\&.reboot\&.graceful\fR
.RS 4
Like
\fBshutdown\&.return\fR, except that the load is turned off after a
\fBrebootdelay\fR, not an
\fBoffdelay\fR\&.
.RE
.PP
\fBbeeper\&.enable\fR
.RS 4
Enable the UPS beeper\&.
.RE
.PP
\fBbeeper\&.disable\fR
.RS 4
Disable the UPS beeper\&.
.RE
.PP
\fBbeeper\&.toggle\fR
.RS 4
Toggle the UPS beeper\&.
.RE
.PP
\fBbypass\&.start\fR
.RS 4
Put the UPS in bypass mode\&. Use with caution\&. It exposes your equipment to unregulated line power and provides no protection from power failures\&. Also, the UPS may shut down whenever the bypass input voltage is out of the nominal range\&. As a warning, the UPS beeps once every 10 seconds in bypass mode\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
The driver has a basic foolproof mechanism\&. If the bypass input is already abnormal due to a power failure, the driver refuses to enter bypass mode by aborting the command and logging an error\&. However, it offers no protection after the UPS has entered (or in the middle of entering) bypass mode\&. Thus, again, use with caution\&.
.sp .5v
.RE
.PP
\fBbypass\&.stop\fR
.RS 4
Put the UPS out of bypass mode\&.
.RE
.PP
\fBload\&.on\fR
.RS 4
Turn on the load immediately\&.
.RE
.PP
\fBload\&.off\fR
.RS 4
Turn off the load immediately\&. Use with caution, everything on the UPS will lost power\&.
.RE
.PP
\fBtest\&.battery\&.start\&.quick\fR
.RS 4
Perform a short battery test\&.
.RE
.PP
\fBtest\&.battery\&.start\&.deep\fR
.RS 4
Perform a long battery test\&.
.RE
.PP
\fBtest\&.battery\&.stop\fR
.RS 4
Stop a running battery test\&.
.RE
.SH "VARIABLES"
.sp
This driver supports some writable runtime variables (see \fBupsrw\fR(8)):
.PP
\fBups\&.beeper\&.status\fR
.RS 4
Enable or disable the UPS beeper,
\fBdisabled\fR
or
\fBenabled\fR\&.
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
The beeper can only be disabled completely, it cannot be temporally muted until the next alarm, but the option \fBmuted\fR is also accepted for convenience, \fBmuted\fR is treated as an alias of \fBdisabled\fR\&.
.sp .5v
.RE
.PP
\fBups\&.delay\&.shutdown\fR
.RS 4
Seconds to wait after shutdown with delay command\&. It\(cqs the runtime equivalent of
\fBoffdelay\fR\&. See description of
\fBoffdelay\fR\&.
.RE
.PP
\fBups\&.delay\&.reboot\fR
.RS 4
Seconds to wait before rebooting the UPS, it\(cqs the runtime equivalent of
\fBrebootdelay\fR\&. See description of
\fBrebootdelay\fR\&.
.RE
.PP
\fBups\&.delay\&.start\fR
.RS 4
Seconds to wait before restarting the load, it\(cqs the runtime equivalent of
\fBondelay\fR\&. See description of
\fBondelay\fR\&.
.RE
.SH "KNOWN ISSUES AND BUGS"
.SS "Battery status has a non\-fatal read failure"
.sp
It\(cqs usually harmless and can be safely ignored\&. It\(cqs only logged for informative purposes (\fBLOG_INFO\fR), not as a warning or error\&.
.SS "Data stale"
.sp
Under certain circumstances, some registers can return invalid values and trigger a "data stale" error\&. Once a data stale error has occurred, you should see error messages similar to the example below in the system log\&.
.sp
.if n \{\
.RS 4
.\}
.nf
huawei\-ups2000: register 2002 has invalid value a000,
upsd: Data for UPS [huawei] is stale \- check driver
upsd: UPS [huawei] data is no longer stale
.fi
.if n \{\
.RE
.\}
.sp
So far all known problems have been fixed by the author, but an unknown one cannot be ruled out\&. If you have encountered "data stale" problems during normal uses, please file a bug report with full logs attached\&.
.sp
Before troubleshooting or reporting a problem, it\(cqs important to check your \fBdmesg\fR log for USB connect and disconnect events to avoid wasting time on the NUT driver when the actual problem is USB\&. For example, if someone yanks the cable out of the USB port, or if a new USB device is plugged into a USB host/hub that is struggling to power its ports (common on single\-board computers like Raspberry Pi), or if you have flaky cabling or EMI noise, the serial converter can get disconnected from USB, at least briefly\&. This creates a permanent data stale, the driver must be restarted (plugging the USB back won\(cqt fix it, since the driver is still using the nonexistent serial device)\&. These USB problems usually have nothing to do with NUT\&. If it\(cqs the case, you should solve the underlying USB problem \- check the cable, check the converter, try a powered USB hub, try a full\-speed USB isolator, etc\&.
.SS "Serial port becomes unresponsive"
.sp
Some malformed commands are known to lock up the serial port (including USB, which is a USB\-to\-serial device)\&. Upon receiving them, UPS2000 stops all serial communications\&. The result is a completely unresponsive UPS, regardless of what you do \- restarting NUT, rebooting the computer \- cannot restore connectivity, as if someone has unplugged the RS\-232 cable\&. To recover, simply power cycle the UPS: Turn off the UPS output via the front panel, then unplug the UPS from line power\&. Wait for the LCD front screen to go black\&. Finally reconnect line power and restart your UPS\&.
.sp
That being said, a serial port lockup is unlikely to happen\&. To our best knowledge, this driver never sends malformed commands to the UPS (it was only a problem during early development)\&. Furthermore, due to a CRC checksum, they\(cqre unlikely to be accidentally generated\&.
.sp
Still, we recommend to power cycle your UPS after making a cabling change, especially after changing from RS\-485/USB to RS\-232, just to ensure the UPS selects the correct communication interface\&. Also, if you have discovered a reproducible serial port lockup problem, it can be an previously unknown bug, make sure to file a bug report\&.
.SS "USB is unsupported"
.sp
As previously stated, only RS\-232 is supported on all systems\&. USB requires a device\-specific driver, which is only available on Linux 5\&.12 and newer kernels\&.
.sp
On an unsupported system, the USB device can still be recognized as a USB ACM device, but in reality, communication is impossible\&. It can only be fixed by implementing a driver for your system, nothing can be done within NUT\&.
.sp
Finally, in the unlike scenario that you are using NUT on Microsoft Windows, you should be able to install the USB device driver following the steps in the Huawei UPS2000 (1 kVA\-3 kVA) Modbus Protocol Development Guide\&.
.SH "AUTHOR"
.sp
Yifeng Li <tomli@tomli\&.me>
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Huawei UPS2000\-A (1 kVA\-3 kVA) User Manual:
https://support\&.huawei\&.com/enterprise/en/doc/EDOC1000084260
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Huawei UPS2000 (1 kVA\-3 kVA) Modbus Protocol Development Guide:
https://support\&.huawei\&.com/enterprise/en/doc/EDOC1000110696
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
libmodbus home page:
http://libmodbus\&.org
.RE

364
docs/man/huawei-ups2000.txt Normal file
View file

@ -0,0 +1,364 @@
HUAWEI_UPS2000(8)
==================
NAME
----
huawei-ups2000 - Driver for Huawei UPS2000 (1kVA-3kVA) UPS with USB or
RS-232 serial Modbus connection.
SYNOPSIS
--------
*huawei-ups2000* -h
*huawei-ups2000* -a 'DEVICE_NAME' ['OPTIONS']
NOTE: This man page only documents the hardware-specific features of the
huawei-ups2000 driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports Huawei UPS2000 series, online (double conversion)
UPS with the following characteristics.
1. Output power: 1 kVA to 3 kVA (higher power models are unsupported).
2. Connection: USB or RS-232 (USB is only supported on Linux 5.12 and
newer kernels, read the section *Cabling* carefully).
The UPS2000 series has two variants: UPS2000-A with a tower chassis,
and UPS2000-G with a rack-mount chassis. Both should be equally supported,
but more testers are needed.
Currently, it has been tested on the following models.
* UPS2000-A-1KTTS (firmware: V2R1C1SPC40, P1.0-D1.0)
* UPS2000-A-2KTTS (firmware: V2R1C1SPC50, P1.0-D1.0)
* UPS2000-G-3KRTS (firmware: V2R1C1SPC40, P1.0-D1.0)
If your model is not in the list, we encourage you to report successful
or unsuccessful results to the bug tracker or the mailing list.
Make sure to include the full model number of your UPS manually
in your report, because the firmware only reports "UPS2000-A"
for all models, including the G series.
huawei-ups2000 uses the libmodbus project, for Modbus implementation.
CABLING
-------
The UPS has a USB port and a RS-232 port. Both are supported, but USB is
only usable on Linux 5.12 and later, via the *xr_serial* kernel module (see
subsection *USB* for details). RS-232 is supported on all operating systems.
Only one port can be used at a time. When USB is used, RS-232 should be
unplugged from the UPS, and vice versa. Further, optional adapter cards,
such as RS-485 or SNMP, are not supported. They should be removed from
the UPS.
Because the UPS port can be unresponsive under certain circumstances, it's
recommended to power cycle your UPS after making a cabling change, especially
after changing the port type. That is, turn off the UPS power output via the
front panel, then unplug the UPS from line power input. Wait for the LCD
screen to go black. Finally reconnect line power and restart your UPS.
USB
~~~~
The USB port on the UPS2000 is powered by a MaxLinear/Exar RX21V1410
USB-to-serial converter chip, it's only supported by Linux 5.12 or
newer, via the *xr_serial* kernel module.
When the UPS2000 is connected via USB to a supported Linux system,
you should see the following logs in *dmesg*.
xr_serial 1-1.2:1.1: xr_serial converter detected
usb 1-1.2: xr_serial converter now attached to ttyUSB0
The driver must be *xr_serial*. If your system doesn't have the
necessary device driver, you will get this message instead:
cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
The generic driver *cdc_acm* is incompatible and cannot be used.
You should upgrade your Linux kernel to Linux 5.12 or newer.
WARNING: On an unsupported system, the USB device can still be
recognized as a USB ACM device, but communication is impossible,
please don't waste your time on *cdc_acm*.
If you're already running on Linux 5.12 or newer kernels, but still
cannot see the *xr_serial* driver, it means the driver is not enabled
in your kernel build. If you're a regular user, you should file a bug
report to your Linux distro maintainers and ask them to enable
*xr_serial* (kernel option `CONFIG_USB_SERIAL_XR`).
When upgrading the Linux kernel isn't an option, or when you are using
another operating system (e.g. FreeBSD), RS-232 must be used.
RS-232
~~~~~~
RS-232 is supported on all operating systems, either via a built-in serial
port on your computer, or by using an external USB-to-RS-232 converter. If
you plan to use an USB-to-RS-232 converter, make sure it's supported by your
operating system.
INSTALLATION
------------
This driver is not built by default. You can build it by installing libmodbus
(with development packages) and running
configure --with-serial=yes --with-modbus=yes
You also need to give proper (R/W) permissions on the local serial device file
to allow the NUT driver run-time user to access it. This may need additional
setup for start-up scripting, udev or upower rules, to apply the rights on every
boot -- especially if your device nodes are tracked by a virtual filesystem.
For example, a USB-to-serial converter can be identified as `/dev/ttyACM0`
or `/dev/ttyUSB0` on Linux, or `/dev/ttyU0` on FreeBSD (note the capital "U").
A built-in serial port can be identified as `/dev/ttyS0` on Linux or one of
`/dev/cua*` names on FreeBSD.
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
linkman:ups.conf[5] file:
*offdelay=*'value'::
Time to wait before shutting down the UPS (seconds), acceptable range is
6 seconds (0.1 minutes) to 5940 seconds (99 minutes). Defaults to 60 seconds.
Must be a multiple of 6 seconds. To ensure your system has adequate time
to shut down after a power failure, it's highly recommended to adjust
*offdelay*.
*rebootdelay=*'value'::
Time to wait before rebooting the UPS (seconds), acceptable range is
6 seconds (0.1 minutes) to 5940 seconds (99 minutes). Defaults to 60 seconds.
Must be a multiple of 6 seconds. This is used by the *shutdown.reboot.graceful*
instant command. If you've adjusted *offdelay*, you should also adjust
*rebootdelay*.
*ondelay=*'value'::
Time to wait before switching on the UPS (seconds), acceptable range is
60 seconds (1 minutes) to 5940 seconds (99 minutes). Defaults to 60 seconds.
Must be a multiple of 60 seconds (not 6 seconds). You don't need to adjust
this delay unless you have special requirements.
NOTE: Due to hardware limitation, in this driver, *ondelay* is respected
only when line power is available. If a power failure has occurred, the
UPS and the load is always immediately switched on, as soon (or as late)
as line power is restored.
INSTANT COMMANDS
----------------
This driver supports some instant commands (see linkman:upscmd[8]):
*shutdown.stayoff*::
After an *offdelay*, turn off the load. When line power is back,
remain off.
*shutdown.return*::
After an *offdelay*, turn off the load. When line power is back,
turn on the load, possibly after an *ondelay*.
NOTE: Normally, the load is turned on as soon as line power is back.
But if line power is never lost, or has came back unexpectedly
in the middle of an ongoing shutdown (an undesirable "power race"
condition that many entry-level products on the market fail to
recover from), the load is turned on after an *ondelay*. Thus,
UPS2000 is unaffected by a power race, the load is guaranteed to
always restart.
*shutdown.reboot*::
Like *shutdown.return*, except that the load is turned off immediately
(6 seconds in this implementation).
*shutdown.reboot.graceful*::
Like *shutdown.return*, except that the load is turned off after a
*rebootdelay*, not an *offdelay*.
*beeper.enable*::
Enable the UPS beeper.
*beeper.disable*::
Disable the UPS beeper.
*beeper.toggle*::
Toggle the UPS beeper.
*bypass.start*::
Put the UPS in bypass mode. Use with caution. It exposes your equipment
to unregulated line power and provides no protection from power failures.
Also, the UPS may shut down whenever the bypass input voltage is out
of the nominal range. As a warning, the UPS beeps once every 10 seconds
in bypass mode.
NOTE: The driver has a basic foolproof mechanism. If the bypass input
is already abnormal due to a power failure, the driver refuses to enter
bypass mode by aborting the command and logging an error. However, it
offers no protection after the UPS has entered (or in the middle of
entering) bypass mode. Thus, again, use with caution.
*bypass.stop*::
Put the UPS out of bypass mode.
*load.on*::
Turn on the load immediately.
*load.off*::
Turn off the load immediately. Use with caution, everything on the UPS
will lost power.
*test.battery.start.quick*::
Perform a short battery test.
*test.battery.start.deep*::
Perform a long battery test.
*test.battery.stop*::
Stop a running battery test.
VARIABLES
---------
This driver supports some writable runtime variables (see linkman:upsrw[8]):
**ups.beeper.status**::
Enable or disable the UPS beeper, *disabled* or *enabled*.
NOTE: The beeper can only be disabled completely, it cannot be
temporally muted until the next alarm, but the option *muted* is
also accepted for convenience, *muted* is treated as an alias of
*disabled*.
**ups.delay.shutdown**::
Seconds to wait after shutdown with delay command. It's the runtime
equivalent of *offdelay*. See description of *offdelay*.
**ups.delay.reboot**::
Seconds to wait before rebooting the UPS, it's the runtime
equivalent of *rebootdelay*. See description of *rebootdelay*.
**ups.delay.start**::
Seconds to wait before restarting the load, it's the runtime
equivalent of *ondelay*. See description of *ondelay*.
KNOWN ISSUES AND BUGS
---------------------
Battery status has a non-fatal read failure
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It's usually harmless and can be safely ignored. It's only logged for
informative purposes (*LOG_INFO*), not as a warning or error.
Data stale
~~~~~~~~~~~
Under certain circumstances, some registers can return invalid values
and trigger a "data stale" error. Once a data stale error has occurred,
you should see error messages similar to the example below in the system
log.
huawei-ups2000: register 2002 has invalid value a000,
upsd: Data for UPS [huawei] is stale - check driver
upsd: UPS [huawei] data is no longer stale
So far all known problems have been fixed by the author, but an unknown one
cannot be ruled out. If you have encountered "data stale" problems during
normal uses, please file a bug report with full logs attached.
Before troubleshooting or reporting a problem, it's important to check
your *dmesg* log for USB connect and disconnect events to avoid wasting
time on the NUT driver when the actual problem is USB. For example, if
someone yanks the cable out of the USB port, or if a new USB device is
plugged into a USB host/hub that is struggling to power its ports
(common on single-board computers like Raspberry Pi), or if you have
flaky cabling or EMI noise, the serial converter can get disconnected
from USB, at least briefly. This creates a permanent data stale, the driver
must be restarted (plugging the USB back won't fix it, since the driver
is still using the nonexistent serial device). These USB problems usually
have nothing to do with NUT. If it's the case, you should solve the
underlying USB problem - check the cable, check the converter, try a
powered USB hub, try a full-speed USB isolator, etc.
Serial port becomes unresponsive
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Some malformed commands are known to lock up the serial port (including
USB, which is a USB-to-serial device). Upon receiving them, UPS2000 stops
all serial communications. The result is a completely unresponsive UPS,
regardless of what you do - restarting NUT, rebooting the computer -
cannot restore connectivity, as if someone has unplugged the RS-232 cable.
To recover, simply power cycle the UPS: Turn off the UPS output via the
front panel, then unplug the UPS from line power. Wait for the LCD front
screen to go black. Finally reconnect line power and restart your UPS.
That being said, a serial port lockup is unlikely to happen. To our best
knowledge, this driver never sends malformed commands to the UPS (it was
only a problem during early development). Furthermore, due to a CRC checksum,
they're unlikely to be accidentally generated.
Still, we recommend to power cycle your UPS after making a cabling change,
especially after changing from RS-485/USB to RS-232, just to ensure the
UPS selects the correct communication interface. Also, if you have
discovered a reproducible serial port lockup problem, it can be an
previously unknown bug, make sure to file a bug report.
USB is unsupported
~~~~~~~~~~~~~~~~~~~
As previously stated, only RS-232 is supported on all systems. USB
requires a device-specific driver, which is only available on Linux
5.12 and newer kernels.
On an unsupported system, the USB device can still be recognized as a
USB ACM device, but in reality, communication is impossible. It can
only be fixed by implementing a driver for your system, nothing can
be done within NUT.
Finally, in the unlike scenario that you are using NUT on Microsoft
Windows, you should be able to install the USB device driver following
the steps in the Huawei UPS2000 (1 kVA-3 kVA) Modbus Protocol Development
Guide.
AUTHOR
------
Yifeng Li <tomli@tomli.me>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* Huawei UPS2000-A (1 kVA-3 kVA) User Manual:
https://support.huawei.com/enterprise/en/doc/EDOC1000084260
* Huawei UPS2000 (1 kVA-3 kVA) Modbus Protocol Development Guide:
https://support.huawei.com/enterprise/en/doc/EDOC1000110696
* libmodbus home page: http://libmodbus.org

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: isbmex
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "ISBMEX" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "ISBMEX" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -15,6 +15,7 @@ linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports SOLA/BASIC Mexico ISBMEX protocol UPS equipment.
EXTRA ARGUMENTS
@ -25,6 +26,7 @@ linkman:ups.conf[5].
AUTHOR
------
Edscott Wilson Garcia <edscott@imp.mx>
SEE ALSO
@ -32,8 +34,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: ivtscd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "IVTSCD" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "IVTSCD" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -3,32 +3,40 @@ IVTSCD(8)
NAME
----
ivtscd - driver for the IVT Solar Controller Device
NOTE
----
This man page only documents the hardware-specific features of the
*ivtscd* driver. For information about the core driver, see
linkman:nutupsdrv[8].
DESCRIPTION
-----------
This driver allows to access the IVT SCD-series devices.
EXTRA ARGUMENTS
---------------
This driver does not support any extra argument.
AUTHOR
------
Arjen de Korte <adkorte-guest@alioth.debian.org>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -39,10 +39,12 @@ See the `nutclient.h` header for more information.
ERROR HANDLING
--------------
There is currently no specific mechanism around error handling.
SEE ALSO
--------
linkman:libnutclient_devices[3]
linkman:libnutclient_commands[3]
linkman:libnutclient_general[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient_commands
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT_COMMAND" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT_COMMAND" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -40,26 +40,121 @@ typedef void* NUTCLIENT_t;
.fi
.sp
.nf
strarr nutclient_get_device_commands(NUTCLIENT_t client, const char* dev);
int nutclient_has_device_command(NUTCLIENT_t client, const char* dev, const char* cmd);
char* nutclient_get_device_command_description(NUTCLIENT_t client, const char* dev, const char* cmd);
void nutclient_execute_device_command(NUTCLIENT_t client, const char* dev, const char* cmd);
typedef char** strarr;
.fi
.sp
.nf
strarr nutclient_get_device_commands(
NUTCLIENT_t client,
const char* dev);
.fi
.sp
.nf
int nutclient_has_device_command(
NUTCLIENT_t client,
const char* dev, const char* cmd);
.fi
.sp
.nf
char* nutclient_get_device_command_description(
NUTCLIENT_t client,
const char* dev, const char* cmd);
.fi
.sp
.nf
void nutclient_execute_device_command(
NUTCLIENT_t client,
const char* dev, const char* cmd,
const char* param="");
.fi
.SH "DESCRIPTION"
.sp
These functions allow to manage instant commands of devices\&.
.sp
The \fBnutclient_get_device_commands()\fR function retrieve the list of command names for a device\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_get_device_commands()\fR
function retrieves the list of command names for a device\&.
.sp
The \fBnutclient_has_device_command\fR function test if the specified command is supported by the device\&. Return 1 is supported and 0 if not\&.
The returned strarr must be freed by
\fIstrarr_free\fR\&.
.RE
.sp
The \fBnutclient_get_device_command_description\fR function retrieve the command description, if any\&. The resturned string must be freed\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_has_device_command\fR
function tests if the specified command is supported by the device\&.
.sp
The \fBnutclient_execute_device_command\fR intend to execute the instant command\&.
Return 1 is supported and 0 if not\&.
.RE
.sp
\fIdev\fR is the device name\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_get_device_command_description\fR
function retrieves the command description, if any\&.
.sp
\fIcmd\fR is the instant command name\&.
The returned string must be freed\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_execute_device_command\fR
intends to execute the instant command, with an optional parameter\&.
.RE
.sp
Common arguments:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIdev\fR
is the device name\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIcmd\fR
is the instant command name\&.
.RE
.SH "SEE ALSO"
.sp
\fBlibnutclient\fR(3) \fBlibnutclient_devices\fR(3) \fBlibnutclient_general\fR(3)

View file

@ -4,9 +4,11 @@ LIBNUTCLIENT_COMMANDS(3)
NAME
----
libnutclient_commands, nutclient_get_device_commands, nutclient_has_device_command,
nutclient_get_device_command_description, nutclient_execute_device_command -
Instant command related functions in Network UPS Tools high-level client access library
libnutclient_commands, nutclient_get_device_commands,
nutclient_has_device_command, nutclient_get_device_command_description,
nutclient_execute_device_command -
Instant command related functions in Network UPS Tools high-level client
access library
SYNOPSIS
--------
@ -15,33 +17,57 @@ SYNOPSIS
typedef void* NUTCLIENT_t;
strarr nutclient_get_device_commands(NUTCLIENT_t client, const char* dev);
int nutclient_has_device_command(NUTCLIENT_t client, const char* dev, const char* cmd);
char* nutclient_get_device_command_description(NUTCLIENT_t client, const char* dev, const char* cmd);
void nutclient_execute_device_command(NUTCLIENT_t client, const char* dev, const char* cmd);
typedef char** strarr;
strarr nutclient_get_device_commands(
NUTCLIENT_t client,
const char* dev);
int nutclient_has_device_command(
NUTCLIENT_t client,
const char* dev, const char* cmd);
char* nutclient_get_device_command_description(
NUTCLIENT_t client,
const char* dev, const char* cmd);
void nutclient_execute_device_command(
NUTCLIENT_t client,
const char* dev, const char* cmd,
const char* param="");
DESCRIPTION
-----------
These functions allow to manage instant commands of devices.
The *nutclient_get_device_commands()* function retrieve the list of command names for a device.
* The *nutclient_get_device_commands()* function retrieves
the list of command names for a device.
+
The returned strarr must be freed by 'strarr_free'.
The *nutclient_has_device_command* function test if the specified command is supported by the device.
* The *nutclient_has_device_command* function tests if the
specified command is supported by the device.
+
Return 1 is supported and 0 if not.
The *nutclient_get_device_command_description* function retrieve the command description, if any.
The resturned string must be freed.
* The *nutclient_get_device_command_description* function
retrieves the command description, if any.
+
The returned string must be freed.
The *nutclient_execute_device_command* intend to execute the instant command.
* The *nutclient_execute_device_command* intends to execute
the instant command, with an optional parameter.
'dev' is the device name.
Common arguments:
'cmd' is the instant command name.
* 'dev' is the device name.
* 'cmd' is the instant command name.
SEE ALSO
--------
linkman:libnutclient[3]
linkman:libnutclient_devices[3]
linkman:libnutclient_general[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient_devices
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT_DEVICES" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT_DEVICES" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -40,21 +40,81 @@ typedef void* NUTCLIENT_t;
.fi
.sp
.nf
typedef char** strarr;
.fi
.sp
.nf
strarr nutclient_get_devices(NUTCLIENT_t client);
.fi
.sp
.nf
int nutclient_has_device(NUTCLIENT_t client, const char* dev);
.fi
.sp
.nf
char* nutclient_get_device_description(NUTCLIENT_t client, const char* dev);
.fi
.SH "DESCRIPTION"
.sp
These functions allow to manage devices\&.
.sp
The \fBnutclient_get_devices()\fR function retrieve the list of devices monitored by a client\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_get_devices()\fR
function retrieves the list of devices monitored by a client\&.
.sp
The \fBnutclient_has_device()\fR function test if a device is monitored by a client\&.
The returned strarr must be freed by
\fIstrarr_free\fR\&.
.RE
.sp
The \fBnutclient_get_device_description()\fR function retrieve the device description\&. The returned description string must be freed\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_has_device()\fR
function tests if a device is monitored by a client\&.
.RE
.sp
\fIdev\fR is the device name\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The
\fBnutclient_get_device_description()\fR
function retrieves the device description\&.
.sp
The returned description string must be freed\&.
.RE
.sp
Common arguments:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIdev\fR
is the device name\&.
.RE
.SH "SEE ALSO"
.sp
\fBlibnutclient\fR(3) \fBlibnutclient_commands\fR(3) \fBlibnutclient_devices\fR(3) \fBlibnutclient_general\fR(3) \fBlibnutclient_variables\fR(3)

View file

@ -4,8 +4,10 @@ LIBNUTCLIENT_DEVICES(3)
NAME
----
libnutclient_devices, nutclient_get_devices, nutclient_has_device, nutclient_get_device_description -
Device related functions in Network UPS Tools high-level client access library
libnutclient_devices, nutclient_get_devices, nutclient_has_device,
nutclient_get_device_description -
Device related functions in Network UPS Tools high-level client access
library
SYNOPSIS
--------
@ -14,8 +16,12 @@ SYNOPSIS
typedef void* NUTCLIENT_t;
typedef char** strarr;
strarr nutclient_get_devices(NUTCLIENT_t client);
int nutclient_has_device(NUTCLIENT_t client, const char* dev);
char* nutclient_get_device_description(NUTCLIENT_t client, const char* dev);
DESCRIPTION
@ -23,21 +29,28 @@ DESCRIPTION
These functions allow to manage devices.
The *nutclient_get_devices()* function retrieve the list of devices monitored by a client.
* The *nutclient_get_devices()* function retrieves the list of devices
monitored by a client.
+
The returned strarr must be freed by 'strarr_free'.
The *nutclient_has_device()* function test if a device is monitored by a client.
* The *nutclient_has_device()* function tests if a device is monitored
by a client.
The *nutclient_get_device_description()* function retrieve the device description.
* The *nutclient_get_device_description()* function retrieves the device
description.
+
The returned description string must be freed.
'dev' is the device name.
Common arguments:
* 'dev' is the device name.
SEE ALSO
--------
linkman:libnutclient[3]
linkman:libnutclient_commands[3]
linkman:libnutclient_devices[3]
linkman:libnutclient_general[3]
linkman:libnutclient_variables[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient_general
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT_GENERAL" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT_GENERAL" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -49,6 +49,9 @@ typedef char** strarr;
.sp
.nf
strarr strarr_alloc(unsigned short count);
.fi
.sp
.nf
void strarr_free(strarr arr);
.fi
.SH "DESCRIPTION"

View file

@ -5,7 +5,8 @@ NAME
----
libnutclient_general, nutclient_destroy, strarr_alloc, strarr_free -
General and utility functions in Network UPS Tools high-level client access library
General and utility functions in Network UPS Tools high-level client
access library
SYNOPSIS
--------
@ -19,6 +20,7 @@ SYNOPSIS
typedef char** strarr;
strarr strarr_alloc(unsigned short count);
void strarr_free(strarr arr);
DESCRIPTION
@ -42,4 +44,5 @@ It also frees all pointed strings.
SEE ALSO
--------
linkman:libnutclient[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient_misc
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT_MISC" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT_MISC" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -28,7 +28,7 @@
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
libnutclient_misc, nutclient_authenticate, nutclient_logout, nutclient_device_login, nutclient_get_device_num_logins, nutclient_device_master, nutclient_device_forced_shutdown \- Miscelaneous functions in Network UPS Tools high\-level client access library
libnutclient_misc, nutclient_authenticate, nutclient_logout, nutclient_device_login, nutclient_get_device_num_logins, nutclient_device_master, nutclient_device_forced_shutdown \- Miscellaneous functions in Network UPS Tools high\-level client access library
.SH "SYNOPSIS"
.sp
.nf
@ -40,28 +40,67 @@ typedef void* NUTCLIENT_t;
.fi
.sp
.nf
void nutclient_authenticate(NUTCLIENT_t client, const char* login, const char* passwd);
void nutclient_authenticate(
NUTCLIENT_t client,
const char* login, const char* passwd);
.fi
.sp
.nf
void nutclient_logout(NUTCLIENT_t client);
.fi
.sp
.nf
void nutclient_device_login(NUTCLIENT_t client, const char* dev);
.fi
.sp
.nf
int nutclient_get_device_num_logins(NUTCLIENT_t client, const char* dev);
.fi
.sp
.nf
void nutclient_device_primary(NUTCLIENT_t client, const char* dev);
/* OBSOLETED name: */
void nutclient_device_master(NUTCLIENT_t client, const char* dev);
.fi
.sp
.nf
void nutclient_device_forced_shutdown(NUTCLIENT_t client, const char* dev);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutclient_authenticate()\fR function authenticate the user\&.
The \fBnutclient_authenticate()\fR function authenticates the user\&.
.sp
\fIlogin\fR is the user name\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIlogin\fR
is the user name\&.
.RE
.sp
\fIpasswd\fR is the user password\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIpasswd\fR
is the user password\&.
.RE
.sp
The \fBnutclient_logout()\fR function disconnect gracefully from the server\&.
The \fBnutclient_logout()\fR function disconnects gracefully from the server\&.
.sp
The \fBnutclient_device_login()\fR function log the fact that a system is drawing power from this UPS\&.
The \fBnutclient_device_login()\fR function logs the fact that a system is drawing power from this UPS\&.
.sp
The \fBnutclient_get_device_num_logins()\fR function retrieve the number of clients which have been logged for this device\&.
The \fBnutclient_get_device_num_logins()\fR function retrieves the number of clients which have been logged for this device\&.
.sp
The \fBnutclient_device_master()\fR function make sure that master\-level functions like FSD are available if necessary\&.
The \fBnutclient_device_master()\fR and \fBnutclient_device_primary()\fR (note: the former is obsoleted since NUT v2\&.8\&.0 in favor of the latter) functions make sure that primary\-mode functions like FSD are available if necessary\&.
.sp
The \fBnutclient_device_forced_shutdown()\fR function sets the "forced shutdown" flag on the device\&.
.sp

View file

@ -4,10 +4,10 @@ LIBNUTCLIENT_MISC(3)
NAME
----
libnutclient_misc, nutclient_authenticate, nutclient_logout,
nutclient_device_login, nutclient_get_device_num_logins,
libnutclient_misc, nutclient_authenticate, nutclient_logout,
nutclient_device_login, nutclient_get_device_num_logins,
nutclient_device_master, nutclient_device_forced_shutdown -
Miscelaneous functions in Network UPS Tools high-level client access library
Miscellaneous functions in Network UPS Tools high-level client access library
SYNOPSIS
--------
@ -16,37 +16,49 @@ SYNOPSIS
typedef void* NUTCLIENT_t;
void nutclient_authenticate(NUTCLIENT_t client, const char* login, const char* passwd);
void nutclient_authenticate(
NUTCLIENT_t client,
const char* login, const char* passwd);
void nutclient_logout(NUTCLIENT_t client);
void nutclient_device_login(NUTCLIENT_t client, const char* dev);
int nutclient_get_device_num_logins(NUTCLIENT_t client, const char* dev);
void nutclient_device_primary(NUTCLIENT_t client, const char* dev);
/* OBSOLETED name: */
void nutclient_device_master(NUTCLIENT_t client, const char* dev);
void nutclient_device_forced_shutdown(NUTCLIENT_t client, const char* dev);
DESCRIPTION
-----------
The *nutclient_authenticate()* function authenticate the user.
The *nutclient_authenticate()* function authenticates the user.
'login' is the user name.
* 'login' is the user name.
'passwd' is the user password.
* 'passwd' is the user password.
The *nutclient_logout()* function disconnect gracefully from the server.
The *nutclient_logout()* function disconnects gracefully from the server.
The *nutclient_device_login()* function log the fact that a system
The *nutclient_device_login()* function logs the fact that a system
is drawing power from this UPS.
The *nutclient_get_device_num_logins()* function retrieve the number of clients
which have been logged for this device.
The *nutclient_get_device_num_logins()* function retrieves the number of
clients which have been logged for this device.
The *nutclient_device_master()* function make sure that master-level
functions like FSD are available if necessary.
The *nutclient_device_master()* and *nutclient_device_primary()* (note:
the former is obsoleted since NUT v2.8.0 in favor of the latter) functions
make sure that primary-mode functions like FSD are available if necessary.
The *nutclient_device_forced_shutdown()* function sets the "forced shutdown" flag on the device.
The *nutclient_device_forced_shutdown()* function sets the "forced shutdown"
flag on the device.
'dev' is the device name.
SEE ALSO
--------
linkman:libnutclient[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient_tcp
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT_TCP" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT_TCP" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -33,6 +33,8 @@ libnutclient_tcp, nutclient_tcp_create_client, nutclient_tcp_is_connected, nutcl
.sp
.nf
#include <nutclient\&.h>
#include <cstdint> /* uint16_t */
#include <ctime> /* time_t */
.fi
.sp
.nf
@ -40,12 +42,28 @@ typedef NUTCLIENT_t NUTCLIENT_TCP_t;
.fi
.sp
.nf
NUTCLIENT_TCP_t nutclient_tcp_create_client(const char* host, unsigned short port);
NUTCLIENT_TCP_t nutclient_tcp_create_client(
const char* host, uint16_t port);
.fi
.sp
.nf
int nutclient_tcp_is_connected(NUTCLIENT_TCP_t client);
.fi
.sp
.nf
void nutclient_tcp_disconnect(NUTCLIENT_TCP_t client);
.fi
.sp
.nf
int nutclient_tcp_reconnect(NUTCLIENT_TCP_t client);
void nutclient_tcp_set_timeout(NUTCLIENT_TCP_t client, long timeout);
long nutclient_tcp_get_timeout(NUTCLIENT_TCP_t client);
.fi
.sp
.nf
void nutclient_tcp_set_timeout(NUTCLIENT_TCP_t client, time_t timeout);
.fi
.sp
.nf
time_t nutclient_tcp_get_timeout(NUTCLIENT_TCP_t client);
.fi
.SH "DESCRIPTION"
.sp
@ -53,9 +71,29 @@ These functions allow to manage connections to \fBupsd\fR(8) using NUT TCP proto
.sp
The \fBnutclient_tcp_create_client()\fR function create the \fINUTCLIENT_TCP_t\fR context and intend to connect to upsd at \fIhost\fR and \fIport\fR\&. The context must be freed by \fInutclient_destroy()\fR
.sp
\fIhost\fR can be a sever name or a valid IPv4 or IPv6 adress like "localhost", "127\&.0\&.0\&.1" or "::1"\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIhost\fR
can be a sever name or a valid IPv4 or IPv6 address like "localhost", "127\&.0\&.0\&.1" or "::1"\&.
.RE
.sp
\fIport\fR is a valid TCP port, genrally 3493\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIport\fR
is a valid TCP port, generally 3493\&.
.RE
.sp
The \fBnutclient_tcp_is_connected()\fR function test if the connection is valid\&.
.sp

View file

@ -7,48 +7,64 @@ NAME
libnutclient_tcp, nutclient_tcp_create_client, nutclient_tcp_is_connected,
nutclient_tcp_disconnect, nutclient_tcp_reconnect,
nutclient_tcp_set_timeout, nutclient_tcp_get_timeout -
TCP protocol related function for Network UPS Tools high-level client access library
TCP protocol related function for Network UPS Tools high-level client
access library
SYNOPSIS
--------
#include <nutclient.h>
#include <cstdint> /* uint16_t */
#include <ctime> /* time_t */
typedef NUTCLIENT_t NUTCLIENT_TCP_t;
NUTCLIENT_TCP_t nutclient_tcp_create_client(const char* host, unsigned short port);
NUTCLIENT_TCP_t nutclient_tcp_create_client(
const char* host, uint16_t port);
int nutclient_tcp_is_connected(NUTCLIENT_TCP_t client);
void nutclient_tcp_disconnect(NUTCLIENT_TCP_t client);
int nutclient_tcp_reconnect(NUTCLIENT_TCP_t client);
void nutclient_tcp_set_timeout(NUTCLIENT_TCP_t client, long timeout);
long nutclient_tcp_get_timeout(NUTCLIENT_TCP_t client);
void nutclient_tcp_set_timeout(NUTCLIENT_TCP_t client, time_t timeout);
time_t nutclient_tcp_get_timeout(NUTCLIENT_TCP_t client);
DESCRIPTION
-----------
These functions allow to manage connections to linkman:upsd[8] using NUT TCP protocol.
These functions allow to manage connections to linkman:upsd[8]
using NUT TCP protocol.
The *nutclient_tcp_create_client()* function create the 'NUTCLIENT_TCP_t' context and
intend to connect to upsd at 'host' and 'port'. The context must be freed by 'nutclient_destroy()'
The *nutclient_tcp_create_client()* function create the 'NUTCLIENT_TCP_t'
context and intend to connect to upsd at 'host' and 'port'.
The context must be freed by 'nutclient_destroy()'
'host' can be a sever name or a valid IPv4 or IPv6 adress like "localhost", "127.0.0.1" or "::1".
* 'host' can be a sever name or a valid IPv4 or IPv6 address like
"localhost", "127.0.0.1" or "::1".
'port' is a valid TCP port, genrally 3493.
* 'port' is a valid TCP port, generally 3493.
The *nutclient_tcp_is_connected()* function test if the connection is valid.
The *nutclient_tcp_disconnect()* function force to disconnect the specified connection.
The *nutclient_tcp_disconnect()* function force to disconnect the specified
connection.
The *nutclient_tcp_reconnect()* function force to reconnect a connection,
disconnecting it if needed.
The *nutclient_tcp_set_timeout()* function set the timeout duration for I/O operations.
The *nutclient_tcp_set_timeout()* function set the timeout duration
for I/O operations.
The *nutclient_tcp_get_timeout()* function retrieve the timeout duration for I/O operations.
The *nutclient_tcp_get_timeout()* function retrieve the timeout duration
for I/O operations.
'timeout' values are specified in seconds, negatives values for blocking.
SEE ALSO
--------
linkman:libnutclient[3]
linkman:libnutclient_general[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libnutclient_variables
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBNUTCLIENT_VARIABL" "3" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBNUTCLIENT_VARIABL" "3" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -40,39 +40,110 @@ typedef void* NUTCLIENT_t;
.fi
.sp
.nf
strarr nutclient_get_device_variables(NUTCLIENT_t client, const char* dev);
strarr nutclient_get_device_rw_variables(NUTCLIENT_t client, const char* dev);
int nutclient_has_device_variable(NUTCLIENT_t client, const char* dev, const char* var);
char* nutclient_get_device_variable_description(NUTCLIENT_t client, const char* dev, const char* var);
strarr nutclient_get_device_variable_values(NUTCLIENT_t client, const char* dev, const char* var);
void nutclient_set_device_variable_value(NUTCLIENT_t client, const char* dev, const char* var, const char* value);
void nutclient_set_device_variable_values(NUTCLIENT_t client, const char* dev, const char* var, const strarr values);
typedef char** strarr;
.fi
.sp
.nf
strarr nutclient_get_device_variables(NUTCLIENT_t client,
const char* dev);
.fi
.sp
.nf
strarr nutclient_get_device_rw_variables(NUTCLIENT_t client,
const char* dev);
.fi
.sp
.nf
int nutclient_has_device_variable(NUTCLIENT_t client,
const char* dev, const char* var);
.fi
.sp
.nf
char* nutclient_get_device_variable_description(NUTCLIENT_t client,
const char* dev, const char* var);
.fi
.sp
.nf
strarr nutclient_get_device_variable_values(NUTCLIENT_t client,
const char* dev, const char* var);
.fi
.sp
.nf
void nutclient_set_device_variable_value(NUTCLIENT_t client,
const char* dev, const char* var, const char* value);
.fi
.sp
.nf
void nutclient_set_device_variable_values(NUTCLIENT_t client,
const char* dev, const char* var, const strarr values);
.fi
.SH "DESCRIPTION"
.sp
These functions allow to manage variables of devices\&.
.sp
The \fBnutclient_get_device_variables()\fR function retrieve the list of variables names for a device\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
The \fBnutclient_get_device_variables()\fR function retrieves the list of variables names for a device\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
.sp
The \fBnutclient_get_device_rw_variables\fR function retrieve the list of read\-write variables names for a device\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
The \fBnutclient_get_device_rw_variables\fR function retrieves the list of read\-write variables names for a device\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
.sp
The \fBnutclient_has_device_variable\fR function test if the specified variable is supported by the device\&. Return 1 is supported and 0 if not\&.
The \fBnutclient_has_device_variable\fR function tests if the specified variable is supported by the device\&. Return 1 is supported and 0 if not\&.
.sp
The \fBnutclient_get_device_variable_description\fR function retrieve the variable description, if any\&. The resturned string must be freed\&.
The \fBnutclient_get_device_variable_description\fR function retrieves the variable description, if any\&. The returned string must be freed\&.
.sp
The \fBnutclient_get_device_variable_values\fR returns variable values (generally only one)\&. The returned strarr must be freed by \fIstrarr_free\fR\&.
.sp
The \fBnutclient_set_device_variable_value\fR intend to set the value of the specified variable\&.
The \fBnutclient_set_device_variable_value\fR intends to set the value of the specified variable\&.
.sp
The \fBnutclient_set_device_variable_values\fR intend to set multiple values of the specified variable\&.
The \fBnutclient_set_device_variable_values\fR intends to set multiple values of the specified variable\&.
.sp
\fIdev\fR is the device name\&.
Common arguments:
.sp
\fIvar\fR is the variable name\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIdev\fR
is the device name\&.
.RE
.sp
\fIvalue\fR is the variable value\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIvar\fR
is the variable name\&.
.RE
.sp
\fIvalues\fR is the variable array of values\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIvalue\fR
is the variable value\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIvalues\fR
is the variable array of values\&.
.RE
.SH "SEE ALSO"
.sp
\fBlibnutclient\fR(3) \fBlibnutclient_devices\fR(3) \fBlibnutclient_general\fR(3)

View file

@ -6,9 +6,11 @@ NAME
libnutclient_variables, nutclient_get_device_variables,
nutclient_get_device_rw_variables, nutclient_has_device_variable,
nutclient_get_device_variable_description, nutclient_get_device_variable_values,
nutclient_get_device_variable_description,
nutclient_get_device_variable_values,
nutclient_set_device_variable_value, nutclient_set_device_variable_values -
Variable related functions in Network UPS Tools high-level client access library
Variable related functions in Network UPS Tools high-level client access
library
SYNOPSIS
--------
@ -17,48 +19,73 @@ SYNOPSIS
typedef void* NUTCLIENT_t;
strarr nutclient_get_device_variables(NUTCLIENT_t client, const char* dev);
strarr nutclient_get_device_rw_variables(NUTCLIENT_t client, const char* dev);
int nutclient_has_device_variable(NUTCLIENT_t client, const char* dev, const char* var);
char* nutclient_get_device_variable_description(NUTCLIENT_t client, const char* dev, const char* var);
strarr nutclient_get_device_variable_values(NUTCLIENT_t client, const char* dev, const char* var);
void nutclient_set_device_variable_value(NUTCLIENT_t client, const char* dev, const char* var, const char* value);
void nutclient_set_device_variable_values(NUTCLIENT_t client, const char* dev, const char* var, const strarr values);
typedef char** strarr;
strarr nutclient_get_device_variables(NUTCLIENT_t client,
const char* dev);
strarr nutclient_get_device_rw_variables(NUTCLIENT_t client,
const char* dev);
int nutclient_has_device_variable(NUTCLIENT_t client,
const char* dev, const char* var);
char* nutclient_get_device_variable_description(NUTCLIENT_t client,
const char* dev, const char* var);
strarr nutclient_get_device_variable_values(NUTCLIENT_t client,
const char* dev, const char* var);
void nutclient_set_device_variable_value(NUTCLIENT_t client,
const char* dev, const char* var, const char* value);
void nutclient_set_device_variable_values(NUTCLIENT_t client,
const char* dev, const char* var, const strarr values);
DESCRIPTION
-----------
These functions allow to manage variables of devices.
The *nutclient_get_device_variables()* function retrieve the list of variables names for a device.
The *nutclient_get_device_variables()* function retrieves the list
of variables names for a device.
The returned strarr must be freed by 'strarr_free'.
The *nutclient_get_device_rw_variables* function retrieve the list of read-write variables names for a device.
The *nutclient_get_device_rw_variables* function retrieves the list
of read-write variables names for a device.
The returned strarr must be freed by 'strarr_free'.
The *nutclient_has_device_variable* function test if the specified variable is supported by the device.
The *nutclient_has_device_variable* function tests if the specified
variable is supported by the device.
Return 1 is supported and 0 if not.
The *nutclient_get_device_variable_description* function retrieve the variable description, if any.
The resturned string must be freed.
The *nutclient_get_device_variable_description* function retrieves
the variable description, if any.
The returned string must be freed.
The *nutclient_get_device_variable_values* returns variable values (generally only one).
The *nutclient_get_device_variable_values* returns variable values
(generally only one).
The returned strarr must be freed by 'strarr_free'.
The *nutclient_set_device_variable_value* intend to set the value of the specified variable.
The *nutclient_set_device_variable_value* intends to set the value
of the specified variable.
The *nutclient_set_device_variable_values* intend to set multiple values of the specified variable.
The *nutclient_set_device_variable_values* intends to set multiple
values of the specified variable.
'dev' is the device name.
Common arguments:
'var' is the variable name.
* 'dev' is the device name.
'value' is the variable value.
* 'var' is the variable name.
'values' is the variable array of values.
* 'value' is the variable value.
* 'values' is the variable array of values.
SEE ALSO
--------
linkman:libnutclient[3]
linkman:libnutclient_devices[3]
linkman:libnutclient_general[3]

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: libupsclient-config
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIBUPSCLIENT\-CONFIG" "1" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIBUPSCLIENT\-CONFIG" "1" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -4,10 +4,12 @@ LIBUPSCLIENT-CONFIG(1)
NAME
----
libupsclient-config - script to get information about the installed version of libupsclient
libupsclient-config - script to get information about the installed
version of libupsclient
SYNOPSIS
--------
*libupsclient-config* [--version] [--libs] [--cflags]
DESCRIPTION
@ -15,7 +17,7 @@ DESCRIPTION
*libupsclient-config* is a tool that is used to determine the compiler and
linker flags that should be used to compile and link programs that use
*libupsclient* from the Network UPS Tools project.
*libupsclient* from the Network UPS Tools project.
OPTIONS
-------
@ -33,6 +35,7 @@ Print the compiler flags that are necessary to compile a *libupsclient* program.
AUTHORS
-------
This manual page was written by Arnaud Quette <aquette.dev@gmail.com>.
SEE ALSO
@ -42,5 +45,5 @@ linkman:upsclient[3]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: liebert-esp2
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIEBERT\-ESP2" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIEBERT\-ESP2" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -32,9 +32,27 @@ liebert-esp2 \- Driver for Liebert UPS, using the ESP\-II serial protocol
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the liebert\-esp2 driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "SPECIAL CABLING NOTE"
.sp
Be aware that an RS\-232 cable with ONLY the RX, TX and ground pin must be used when interfacing with GXT2 series UPS units (and possibly others), since the handshaking lines are used for purposes other than RS\-232 flow control\&. Use of a standard RS\-232 cable with full handshaking may result in undesired operation and/or shutdown\&. It is therefore advisable to confirm the proper cable/wiring with the diagram provided in the manual with your UPS\&.
.SH "SUPPORTED HARDWARE"
.sp
Tested to work on the following units:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Liebert GXT2\-6000RT208
.RE
.sp
This is an experimental driver\&. You have been warned\&.
.sp
This driver currently does not support modification of configuration parameters, such as the low battery warning time and automatic restart policy\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in \fBups.conf\fR(5):
@ -43,9 +61,40 @@ This driver supports the following optional settings in \fBups.conf\fR(5):
.RS 4
Set the speed of the serial connection \- 1200, 2400 (default), 4800, 9600 or 19200\&.
.RE
.SH "AUTHOR"
.SH "AUTHORS"
.sp
Richard Gregory <R\&.Gregory at liverpool\&.ac\&.uk>, Arjen de Korte <adkorte\-guest at alioth\&.debian\&.org>
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Richard Gregory <R\&.Gregory at liverpool\&.ac\&.uk>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Arjen de Korte <adkorte\-guest at alioth\&.debian\&.org>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Nash Kaminski <nashkaminski at kaminski\&.io>
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View file

@ -1,21 +1,40 @@
LIEBERT-ESP2(8)
==============
NAME
NAME
----
liebert-esp2 - Driver for Liebert UPS, using the ESP-II serial protocol
NOTE
----
This man page only documents the hardware-specific features of the
liebert-esp2 driver. For information about the core driver, see
liebert-esp2 driver. For information about the core driver, see
linkman:nutupsdrv[8].
SPECIAL CABLING NOTE
--------------------
Be aware that an RS-232 cable with ONLY the RX, TX and ground pin
must be used when interfacing with GXT2 series UPS units (and possibly others),
since the handshaking lines are used for purposes other than RS-232 flow control.
Use of a standard RS-232 cable with full handshaking may result in
undesired operation and/or shutdown. It is therefore advisable to confirm
the proper cable/wiring with the diagram provided in the manual with your UPS.
SUPPORTED HARDWARE
------------------
Tested to work on the following units:
* Liebert GXT2-6000RT208
This is an experimental driver. You have been warned.
This driver currently does not support modification of configuration parameters,
such as the low battery warning time and automatic restart policy.
EXTRA ARGUMENTS
---------------
@ -24,17 +43,22 @@ This driver supports the following optional settings in linkman:ups.conf[5]:
*baudrate=*'num'::
Set the speed of the serial connection - 1200, 2400 (default), 4800, 9600 or 19200.
AUTHOR
------
Richard Gregory <R.Gregory at liverpool.ac.uk>, Arjen de Korte <adkorte-guest at alioth.debian.org>
AUTHORS
-------
* Richard Gregory <R.Gregory at liverpool.ac.uk>
* Arjen de Korte <adkorte-guest at alioth.debian.org>
* Nash Kaminski <nashkaminski at kaminski.io>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: liebert
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "LIEBERT" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "LIEBERT" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -8,12 +8,14 @@ liebert - Driver for Liebert contact-closure UPS equipment
NOTE
----
This man page only documents the hardware-specific features of the
liebert driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports some Liebert UPS equipment with a contact-closure
interface. This includes the UPStation GXT2 with their contact-closure
cable. The smart mode ("Multilink") cable is not supported by this
@ -42,8 +44,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: macosx-ups
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 03/02/2016
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "MACOSX\-UPS" "8" "03/02/2016" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "MACOSX\-UPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -43,7 +43,7 @@ If the UPS is visible in the Energy Saver preferences pane of System Preferences
.RS 4
Due to changes in the way that Mac OS X lists power sources, the
\fBport\fR
parameter no longer has any effect\&. The rest of NUT still requres a value here, and our traditional "don\(cqt care" value is
parameter no longer has any effect\&. The rest of NUT still requires a value here, and our traditional "don\(cqt care" value is
auto\&.
.RE
.PP
@ -63,7 +63,7 @@ This driver is a monitoring\-only driver, and cannot shut down an UPS on its own
The default distribution of \fBapcupsd\fR installs a kernel extension which prevents Mac OS X from attaching to the UPS\&. In order to use this driver after installing apcupsd, you must first run the apcupsd\-uninstall script and reboot\&.
.sp
Note that other UPS monitoring solutions may show more detail than what is provided by the built\-in Mac OS X driver\&. In particular, voltages other than the battery voltage, as well as current and frequency, are typically not shown\&. It may be possible to monitor these values with \fBapcupsd\fR (for APC hardware only) or \fBusbhid-ups\fR(8)\&.
.SH "AUTHORS"
.SH "AUTHOR"
.sp
Charles Lepple <clepple+nut at gmail\&.com>
.SH "SEE ALSO"
@ -74,6 +74,26 @@ Charles Lepple <clepple+nut at gmail\&.com>
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
The apcupsd home page: http://www\&.apcupsd\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The apcupsd home page:
http://www\&.apcupsd\&.org/
.RE

View file

@ -3,16 +3,19 @@ MACOSX-UPS(8)
NAME
----
macosx-ups - monitor for Mac OS X built-in UPS and battery driver
NOTE
----
This man page only documents the hardware-specific features of the
*macosx-ups* driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
*macosx-ups* supports any USB HID Power Device Class (PDC) UPS which is
matched by the Mac OS X built-in drivers. It also can monitor a laptop
internal battery as though it were an UPS.
@ -23,9 +26,10 @@ Preferences, this driver should be able to monitor it.
EXTRA ARGUMENTS
----------------
*port*=auto::
Due to changes in the way that Mac OS X lists power sources, the *port*
parameter no longer has any effect. The rest of NUT still requres a value here,
parameter no longer has any effect. The rest of NUT still requires a value here,
and our traditional "don't care" value is `auto`.
*model*='regex'::
@ -60,8 +64,9 @@ the battery voltage, as well as current and frequency, are typically not
shown. It may be possible to monitor these values with *apcupsd* (for APC
hardware only) or linkman:usbhid-ups[8].
AUTHORS
-------
AUTHOR
------
Charles Lepple <clepple+nut at gmail.com>
SEE ALSO
@ -71,10 +76,11 @@ linkman:usbhid-ups[8], *pmset*(8), *regex*(3)
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
The apcupsd home page: http://www.apcupsd.org/
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* The apcupsd home page: http://www.apcupsd.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: masterguard
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "MASTERGUARD" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "MASTERGUARD" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -32,9 +32,14 @@ masterguard \- Driver for Masterguard UPS equipment
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the masterguard driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "NOTE"
.sp
Please note that this driver is deprecated and will not receive new development\&. If it works for managing your devices \(em fine, but if you are running it to try setting up a new device, please consider the newer \fBnutdrv_qx\fR(8) instead, which should handle all \fIQ*\fR protocol variants for NUT\&.
.sp
Please do also report if your device works with this driver, but \fBnutdrv_qx\fR(8) would not actually support it with any subdriver!
.SH "SUPPORTED HARDWARE"
.sp
This driver supports Masterguard UPS equipment\&.
This driver supports Masterguard UPS equipment (serial connection only)\&.
.SH "EXTRA ARGUMENTS"
.PP
\fBCS\fR
@ -45,6 +50,9 @@ Cancel the shutdown procedure\&.
.sp
Michael Spanier <mail@michael\-spanier\&.de>
.SH "SEE ALSO"
.SS "Newer driver:"
.sp
\fBnutdrv_qx\fR(8)
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)

View file

@ -3,17 +3,33 @@ MASTERGUARD(8)
NAME
----
masterguard - Driver for Masterguard UPS equipment
NOTE
----
This man page only documents the hardware-specific features of the
masterguard driver. For information about the core driver, see
linkman:nutupsdrv[8].
NOTE
----
Please note that this driver is deprecated and will not receive
new development. If it works for managing your devices -- fine,
but if you are running it to try setting up a new device, please
consider the newer linkman:nutdrv_qx[8] instead, which should
handle all 'Q*' protocol variants for NUT.
Please do also report if your device works with this driver,
but linkman:nutdrv_qx[8] would not actually support it with any
subdriver!
SUPPORTED HARDWARE
------------------
This driver supports Masterguard UPS equipment.
This driver supports Masterguard UPS equipment (serial connection only).
EXTRA ARGUMENTS
---------------
@ -23,15 +39,23 @@ Cancel the shutdown procedure.
AUTHOR
------
Michael Spanier <mail@michael-spanier.de>
SEE ALSO
--------
Newer driver:
~~~~~~~~~~~~~
linkman:nutdrv_qx[8]
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: metasys
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "METASYS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "METASYS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -1,7 +1,7 @@
METASYS(8)
==========
NAME
NAME
----
metasys - Driver for Meta System UPS equipment
@ -10,7 +10,7 @@ NOTE
----
This man page only documents the hardware-specific features of the
metasys driver. For information about the core driver, see
metasys driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
@ -32,16 +32,19 @@ The driver should support all the common features of the ups models:
CABLING
-------
The needed cable is a standard pin-to-pin serial cable with at least
pins 2, 3, and 5 (on DB9 connector) connected.
EXTRA ARGUMENTS
---------------
This driver supports no extra arguments from linkman:ups.conf[5].
BUGS
----
This driver has been tested on Meta System HF Millennium 820 and
This driver has been tested on Meta System HF Millennium 820 and
ally HF 1000 only.
Any information about the use of the driver with the other listed
@ -49,6 +52,7 @@ UPS are really welcome.
AUTHOR
------
Fabio Di Niro <blaxwan@users.sourceforge.net>
SEE ALSO
@ -56,8 +60,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: mge-shut
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "MGE\-SHUT" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "MGE\-SHUT" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -89,7 +89,7 @@ The default value is 30 (in seconds)\&. Usually this
\fBmust be greater\fR
than offdelay, but the driver will
\fBnot\fR
warn you upon startup if it isn\(cqt\&. Some UPS\(cqes will restart no matter what, even if the power is (still) out at the moment this timer elapses\&. In that case, you could try if setting
warn you upon startup if it isn\(cqt\&. Some UPSes will restart no matter what, even if the power is (still) out at the moment this timer elapses\&. In that case, you could try if setting
\fIondelay = \-1\fR
in
\fBups\&.conf\fR

View file

@ -1,4 +1,4 @@
MGE-SHUT(8)
MGE-SHUT(8)
===========
NAME
@ -44,7 +44,7 @@ sent (via the *-k* switch).
+
The default value is 20 (in seconds). Usually this *must be lower* than
'ondelay', but the driver will *not* warn you upon startup if it isn't.
*ondelay*='num'::
Set the timer for the UPS to switch on in case the power returns after the
kill power command had been sent but before the actual switch off. This
@ -53,7 +53,7 @@ a power failure.
+
The default value is 30 (in seconds). Usually this *must be greater*
than offdelay, but the driver will *not* warn you upon startup if it
isn't. Some UPS'es will restart no matter what, even if the power is
isn't. Some UPSes will restart no matter what, even if the power is
(still) out at the moment this timer elapses. In that case, you could try
if setting 'ondelay = -1' in *ups.conf* helps.
+
@ -90,8 +90,10 @@ SEE ALSO
The core driver
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources
~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: mge-utalk
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "MGE\-UTALK" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "MGE\-UTALK" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -54,22 +54,93 @@ This man page only documents the hardware\-specific features of the mge\-utalk d
.sp
mge\-utalk supports the following legacy units, using the MGE UTalk protocol:
.sp
.if n \{\
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.nf
Pulsar ESV+,
Pulsar ES+,
Pulsar EL,
Pulsar EX,
Pulsar EXtreme,
Comet EXtreme,
Comet (Utalk Serial Card, ref 66060),
Galaxy (Utalk Serial Card, ref 66060)\&.
.fi
.if n \{\
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Pulsar ESV+
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Pulsar ES+
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Pulsar EL
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Pulsar EX
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Pulsar EXtreme
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Comet EXtreme
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Comet (Utalk Serial Card, ref 66060)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Galaxy (Utalk Serial Card, ref 66060)
.RE
.sp
This driver also support some newer models with backward UTalk compatibility, such as Pulsar Evolution and Pulsar EXtreme C\&. As these models also support the SHUT protocol, prefer mge\-shut for serial communication, or use the USB port, if available, with the usbhid\-ups driver\&.
.SH "EXTRA ARGUMENTS"
@ -108,9 +179,84 @@ Set this flag if you are running Linux on an Oldworld Macintosh box (all beige A
.SS "Repetitive timeout and staleness"
.sp
Older models, such as ES/ESV ones, might report repetitive "data stale" errors\&. This is due to the fact that these models don\(cqt support too much polling\&. To solve this problem, add "pollinterval=20" in ups\&.conf, and change the value of MAXAGE to 25 in upsd\&.conf, and DEADTIME to 25 in upsmon\&.conf\&.
.SH "AUTHOR"
.SH "AUTHORS"
.sp
Hans Ekkehard Plesser, Arnaud Quette, Martin Loyer, Patrick Agrain, Nicholas Reilly, Dave Abbott, Marek Kralewski
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Hans Ekkehard Plesser
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Arnaud Quette
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Martin Loyer
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Patrick Agrain
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Nicholas Reilly
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Dave Abbott
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Marek Kralewski
.RE
.SH "SEE ALSO"
.SS "The core driver"
.sp

View file

@ -1,4 +1,4 @@
MGE-UTALK(8)
MGE-UTALK(8)
============
NAME
@ -14,7 +14,7 @@ SYNOPSIS
*mge-utalk* -a 'UPS_NAME' ['OPTIONS']
NOTE: This man page only documents the hardware-specific features of the
mge-utalk driver. For information about the core driver, see
mge-utalk driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
@ -22,14 +22,14 @@ SUPPORTED HARDWARE
mge-utalk supports the following legacy units, using the MGE UTalk protocol:
Pulsar ESV+,
Pulsar ES+,
Pulsar EL,
Pulsar EX,
Pulsar EXtreme,
Comet EXtreme,
Comet (Utalk Serial Card, ref 66060),
Galaxy (Utalk Serial Card, ref 66060).
* Pulsar ESV+
* Pulsar ES+
* Pulsar EL
* Pulsar EX
* Pulsar EXtreme
* Comet EXtreme
* Comet (Utalk Serial Card, ref 66060)
* Galaxy (Utalk Serial Card, ref 66060)
This driver also support some newer models with backward UTalk compatibility,
such as Pulsar Evolution and Pulsar EXtreme C. As these models also support
@ -75,24 +75,26 @@ This is due to the fact that these models don't support too much polling.
To solve this problem, add "pollinterval=20" in ups.conf, and change the value
of MAXAGE to 25 in upsd.conf, and DEADTIME to 25 in upsmon.conf.
AUTHOR
------
AUTHORS
-------
Hans Ekkehard Plesser,
Arnaud Quette,
Martin Loyer,
Patrick Agrain,
Nicholas Reilly,
Dave Abbott,
Marek Kralewski
* Hans Ekkehard Plesser
* Arnaud Quette
* Martin Loyer
* Patrick Agrain
* Nicholas Reilly
* Dave Abbott
* Marek Kralewski
SEE ALSO
--------
The core driver
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources
~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: microdowell
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "MICRODOWELL" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "MICRODOWELL" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View file

@ -15,8 +15,9 @@ linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver was developed for the Enterprise Nxx and Bxx models. Other
Microdowell models may work, too.
This driver was developed for the Enterprise Nxx and Bxx models.
Other Microdowell models may work, too.
EXTRA ARGUMENTS
---------------
@ -26,6 +27,7 @@ linkman:ups.conf[5].
AUTHOR
------
Elio Corbolante <eliocor@microdowell.com>
SEE ALSO
@ -33,8 +35,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

146
docs/man/microsol-apc.8 Normal file
View file

@ -0,0 +1,146 @@
'\" t
.\" Title: microsol-apc
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "MICROSOL\-APC" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
microsol-apc \- Driver for APC Back\-UPS BR UPS equipment
.SH "NOTE"
.sp
This man page only documents the hardware\-specific features of the microsol\-apc driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "SUPPORTED HARDWARE"
.sp
This driver supports the following UPS models:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
APC Back\-UPS BZ1500\-BR
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
APC Back\-UPS BZ2200I\-BR
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
APC Back\-UPS BZ2200BI\-BR
.RE
.sp
In 2009, Schneider Electric acquired Microsol Technologies, and by 2012, the entire Microsol line was being sold under the APC brand\&. This driver supports these newer, APC\-branded models\&. Older equipment should use \fBsolis\fR(8)\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver support the following extra optional settings in the \fBups.conf\fR(5)\&.
.sp
\fBbattext = n\fR \- (default = 0, no extra battery, where n = Ampere*hour )
.sp
\fBprgshut = 1\fR \- (default = 0, no programmable shutdown )
.SH "COMMANDS"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
shutdown\&.return \- Shut down in \&.3 minutes and restart in \&.3 minutes
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
shutdown\&.stayoff \- Shut down in \&.3 minutes and do not return
.RE
.SH "ISSUES"
.sp
For other APC\-Microsol models, the reported voltages, currents and power will be incorrect, as the communication protocol reports unprocessed data instead of real values, needing model\-specific post\-processing by the driver\&. Monitoring of UPS state (on\-battery/on\-line, critical battery) should work for other models, but is untested\&.
.SH "AUTHORS"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Ygor A\&. S\&. Regados <ygorre@tutanota\&.com>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Roberto P\&. Velloso <rvelloso@gmail\&.com>
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Silvino B\&. Magalhães <sbm2yk@gmail\&.com>
.RE
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

73
docs/man/microsol-apc.txt Normal file
View file

@ -0,0 +1,73 @@
MICROSOL-APC(8)
===============
NAME
----
microsol-apc - Driver for APC Back-UPS BR UPS equipment
NOTE
----
This man page only documents the hardware-specific features of the
microsol-apc driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports the following UPS models:
* APC Back-UPS BZ1500-BR
* APC Back-UPS BZ2200I-BR
* APC Back-UPS BZ2200BI-BR
In 2009, Schneider Electric acquired Microsol Technologies, and by 2012, the
entire Microsol line was being sold under the APC brand. This driver supports
these newer, APC-branded models. Older equipment should use linkman:solis[8].
EXTRA ARGUMENTS
---------------
This driver support the following extra optional settings in the
linkman:ups.conf[5].
*battext = n* - (default = 0, no extra battery, where n = Ampere*hour )
*prgshut = 1* - (default = 0, no programmable shutdown )
COMMANDS
--------
* shutdown.return - Shut down in .3 minutes and restart in .3 minutes
* shutdown.stayoff - Shut down in .3 minutes and do not return
ISSUES
------
For other APC-Microsol models, the reported voltages, currents and power will
be incorrect, as the communication protocol reports unprocessed data instead of
real values, needing model-specific post-processing by the driver. Monitoring
of UPS state (on-battery/on-line, critical battery) should work for other
models, but is untested.
AUTHORS
-------
* Ygor A. S. Regados <ygorre@tutanota.com>
* Roberto P. Velloso <rvelloso@gmail.com>
* Silvino B. Magalhães <sbm2yk@gmail.com>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: netxml-ups
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "NETXML\-UPS" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "NETXML\-UPS" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -34,7 +34,7 @@ netxml-ups \- Driver for Eaton / MGE Network Management Card / Proxy (XML/HTTP P
This man page only documents the hardware\-specific features of the netxml\-ups driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "SUPPORTED HARDWARE"
.sp
netxml\-ups support all recent Eaton / MGE models which use a Network Management Card or Proxy (MGE XML/HTTP protocol based)\&. This applies to both Eaton (previously MGE Office Protection Systems) and to MGE UPS SYSTEMS\&. Supported card and proxy models are:
netxml\-ups supports all recent Eaton / MGE models which use a Network Management Card or Proxy (MGE XML/HTTP protocol based)\&. This applies to both Eaton (previously MGE Office Protection Systems) and to MGE UPS SYSTEMS\&. Supported card and proxy models are:
.sp
.RS 4
.ie n \{\
@ -142,6 +142,11 @@ Set the shutdown timer, in seconds\&. After
\fIvalue\fR
seconds running on battery, the local system will receive a notification to shutdown\&. Defaults to "none" (disabled)\&.
.RE
.PP
\fBdo_convert_deci\fR
.RS 4
If this flag value is present, the driver assumes you have a very old MGE networked UPS (or rather an old network management card firmware) which serves certain measurements spelled 10x too big in the XML markup\&. Originally such measurements were decimated by the driver \(em but this is wrong for newer, more sane, devices \(em so this behavior was deprecated and is now disabled by default\&. Enabling this flag in configuration of a particular driver instance restores the old behavior for those measurements\&.
.RE
.SH "IMPLEMENTATION"
.sp
The hostname of the UPS is specified with the "port" value in \fBups\&.conf\fR, i\&.e\&.:

View file

@ -1,20 +1,23 @@
netxml-ups(8)
=============
NAME
NAME
----
netxml-ups - Driver for Eaton / MGE Network Management Card / Proxy
(XML/HTTP Protocol) equipment
NOTE
----
This man page only documents the hardware-specific features of the
netxml-ups driver. For information about the core driver, see
netxml-ups driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
netxml-ups support all recent Eaton / MGE models which use a Network
netxml-ups supports all recent Eaton / MGE models which use a Network
Management Card or Proxy (MGE XML/HTTP protocol based). This applies to both
Eaton (previously MGE Office Protection Systems) and to MGE UPS SYSTEMS.
Supported card and proxy models are:
@ -24,7 +27,7 @@ Supported card and proxy models are:
* NMC Transverse (Ref 66074),
* NMC & Modbus/JBus (Ref 66103),
* Network Management Proxy,
* ePDU Monitored (newer version).
* ePDU Monitored (newer version).
Older models, such as SNMP card (Ref 66062 and Ref 66045), use the SNMP
protocol and should use the linkman:snmp-ups[8] driver with the "mibs=mge"
@ -32,7 +35,8 @@ parameter.
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
This driver supports the following optional settings in the
linkman:ups.conf[5]:
*timeout*='value'::
@ -66,8 +70,18 @@ Set the shutdown timer, in seconds. After 'value' seconds running on battery,
the local system will receive a notification to shutdown.
Defaults to "none" (disabled).
*do_convert_deci*::
If this flag value is present, the driver assumes you have a very old
MGE networked UPS (or rather an old network management card firmware)
which serves certain measurements spelled 10x too big in the XML markup.
Originally such measurements were decimated by the driver -- but this is
wrong for newer, more sane, devices -- so this behavior was deprecated
and is now disabled by default. Enabling this flag in configuration of a
particular driver instance restores the old behavior for those measurements.
IMPLEMENTATION
--------------
The hostname of the UPS is specified with the "port" value in
*ups.conf*, i.e.:
@ -85,6 +99,7 @@ linkman:ups.conf[5]) to at least 5 seconds.
KNOWN ISSUES
------------
Don't connect to the UPS through a proxy. Although it would be trivial to add
support for proxies, this is not recommended and don't ask for it. Not only
because it will prevent the driver to make a persistent connection to the UPS,
@ -93,6 +108,7 @@ whatever reason), the driver will no longer be able to reach the UPS.
AUTHORS
-------
Arjen de Korte <adkorte-guest@alioth.debian.org>
SEE ALSO
@ -100,8 +116,10 @@ SEE ALSO
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -0,0 +1,158 @@
'\" t
.\" Title: nut-driver-enumerator
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "NUT\-DRIVER\-ENUMERA" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
nut-driver-enumerator \- tool to map NUT device entries to service instances
.SH "SYNOPSIS"
.sp
\fBnut\-driver\-enumerator\&.sh\fR \-h
.sp
\fBnut\-driver\-enumerator\&.sh\fR (no args)
.sp
\fBnut\-driver\-enumerator\&.sh\fR [\-\-COMMAND]
.SH "DESCRIPTION"
.sp
\fBnut\-driver\-enumerator\&.sh\fR implements the set\-up and querying of the mapping between NUT driver configuration sections for each individual monitored device, and the operating system service management framework service instances into which such drivers are wrapped for independent execution and management (on platforms where NUT currently supports this integration \(em currently this covers Linux distributions with systemd and systems derived from Solaris 10 codebase, including proprietary Sun/Oracle Solaris and numerous open\-source illumos distributions with SMF)\&. It may be not installed in packaging for other operating systems\&.
.sp
This script provides a uniform interface for further NUT tools such as \fBupsdrvsvcctl\fR(8) to implement their logic as platform\-independently as was possible and practical\&. It is not currently intended for end\-user consumption (and so is located in the \fIlibexec\fR directory), with \fBupsdrvsvcctl\fR exposing the most useful data and actions with its \fIlist\fR and \fIresync\fR arguments\&.
.sp
One part of the platform complexity that \fBnut\-driver\-enumerator\&.sh\fR hides is the difference of rules for valid service instance names in various frameworks, as well as system tools and naming patterns involved\&.
.SH "COMMANDS"
.PP
\fBnut\-driver\-enumerator\&.sh (no args)\fR
.RS 4
Update wrapping of devices into services
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-daemon(=freq)\fR
.RS 4
Update wrapping of devices into services in an infinite loop; Default freq is 60 sec\&.
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-reconfigure\fR
.RS 4
Stop and un\-register all service instances and recreate them (e\&.g\&. if new dependency template was defined in a new version of the script or package)
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-get\-service\-framework\fR
.RS 4
Print the detected service management framework in this OS
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-list\-devices\fR
.RS 4
Print list of devices in NUT config
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-list\-services\fR
.RS 4
Print list of service instances which wrap registered NUT devices (full name of service unit)
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-list\-instances\fR
.RS 4
Print list of service instances which wrap registered NUT devices (just instance suffix)
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-get\-service\-for\-device DEV\fR
.RS 4
Print the full name of service unit which wraps a NUT device named
DEV
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-get\-device\-for\-service SVC\fR
.RS 4
Print the NUT device name for full or instance\-suffix name of a service unit
SVC
which wraps it
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-list\-services\-for\-devices\fR
.RS 4
Print a TAB\-separated list of service units and corresponding NUT device names which each such unit wraps
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-show\-all\-configs\fR
.RS 4
Show the complete normalized list of device configuration blocks (same as used later by the parser in the script to make decisions)
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-show\-device\-config DEV\fR
.RS 4
Show configuration block of the specified NUT device
.RE
.PP
\fBnut\-driver\-enumerator\&.sh \-\-show\-device\-config\-value DEV KEY\fR
.RS 4
Show single configuration key of the specified NUT device
.RE
.SH "ENVIRONMENT VARIABLES"
.sp
By default \fBnut\-driver\-enumerator\&.sh\fR executed without arguments would automatically start any newly registered service instances wrapping the NUT devices, and would also restart the nut\-server service if the configuration was changed\&. Environment variable AUTO_START=no disables this default part of the action\&.
.sp
Also see below for environment variable REPORT_RESTART_42=no value\&.
.SH "DIAGNOSTICS"
.sp
\fBnut\-driver\-enumerator\&.sh\fR will return a zero exit code if it had nothing to do (all currently defined drivers match all of the currently defined service instances, one\-to\-one) and if it had no errors in its operation\&.
.sp
Other codes can be returned as a result of re\-synchronization of mappings:
.PP
\fB42\fR
.RS 4
NUT device sections and system service instances differed before, but now match up \(em so now the caller should likely restart some services\&. Note that the drivers\*(Aq service instances may have been started or stopped as required (by
AUTO_START=yes) \(em but maybe the upsmon or upssched services should restart\&. If you pass environment variable
REPORT_RESTART_42=no
then this codepath would return 0 (as a non\-error exit code)\&. In default mode, such non\-null reconfiguration should cause the nut\-driver\-enumerator service to restart and this would propagate to other NUT services that depend on it\&.
.RE
.PP
\fB13\fR
.RS 4
Sections and services differed, and still do not match up
.RE
.PP
\fB1\fR
.RS 4
Bad inputs, e\&.g\&. unrecognized service management framework
.RE
.PP
\fB2\fR
.RS 4
Absent or unreadable
ups\&.conf
file
.RE
.SH "AUTHOR"
.sp
Jim Klimov <jimklimov+nut@gmail\&.com>
.SH "SEE ALSO"
.sp
\fBupsdrvsvcctl\fR(8), \fBups.conf\fR(5)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -0,0 +1,150 @@
NUT-DRIVER-ENUMERATOR(8)
========================
NAME
----
nut-driver-enumerator - tool to map NUT device entries to service instances
SYNOPSIS
--------
*nut-driver-enumerator.sh* -h
*nut-driver-enumerator.sh* (no args)
*nut-driver-enumerator.sh* [--COMMAND]
DESCRIPTION
-----------
*nut-driver-enumerator.sh* implements the set-up and querying of the
mapping between NUT driver configuration sections for each individual
monitored device, and the operating system service management framework
service instances into which such drivers are wrapped for independent
execution and management (on platforms where NUT currently supports
this integration -- currently this covers Linux distributions with
systemd and systems derived from Solaris 10 codebase, including
proprietary Sun/Oracle Solaris and numerous open-source illumos
distributions with SMF). It may be not installed in packaging for
other operating systems.
This script provides a uniform interface for further NUT tools
such as linkman:upsdrvsvcctl[8] to implement their logic as
platform-independently as was possible and practical. It is not
currently intended for end-user consumption (and so is located in
the 'libexec' directory), with *upsdrvsvcctl* exposing the most
useful data and actions with its 'list' and 'resync' arguments.
One part of the platform complexity that *nut-driver-enumerator.sh*
hides is the difference of rules for valid service instance names
in various frameworks, as well as system tools and naming patterns
involved.
COMMANDS
--------
*nut-driver-enumerator.sh (no args)*::
Update wrapping of devices into services
*nut-driver-enumerator.sh --daemon(=freq)*::
Update wrapping of devices into services in an infinite loop;
Default freq is 60 sec.
*nut-driver-enumerator.sh --reconfigure*::
Stop and un-register all service instances and recreate them
(e.g. if new dependency template was defined in a new
version of the script or package)
*nut-driver-enumerator.sh --get-service-framework*::
Print the detected service management framework in this OS
*nut-driver-enumerator.sh --list-devices*::
Print list of devices in NUT config
*nut-driver-enumerator.sh --list-services*::
Print list of service instances which wrap registered
NUT devices (full name of service unit)
*nut-driver-enumerator.sh --list-instances*::
Print list of service instances which wrap registered
NUT devices (just instance suffix)
*nut-driver-enumerator.sh --get-service-for-device DEV*::
Print the full name of service unit which wraps a NUT
device named `DEV`
*nut-driver-enumerator.sh --get-device-for-service SVC*::
Print the NUT device name for full or instance-suffix name of
a service unit `SVC` which wraps it
*nut-driver-enumerator.sh --list-services-for-devices*::
Print a TAB-separated list of service units and corresponding
NUT device names which each such unit wraps
*nut-driver-enumerator.sh --show-all-configs*::
Show the complete normalized list of device configuration blocks
(same as used later by the parser in the script to make decisions)
*nut-driver-enumerator.sh --show-device-config DEV*::
Show configuration block of the specified NUT device
*nut-driver-enumerator.sh --show-device-config-value DEV KEY*::
Show single configuration key of the specified NUT device
ENVIRONMENT VARIABLES
---------------------
By default *nut-driver-enumerator.sh* executed without arguments would
automatically start any newly registered service instances wrapping the
NUT devices, and would also restart the `nut-server` service if the
configuration was changed. Environment variable `AUTO_START=no` disables
this default part of the action.
Also see below for environment variable `REPORT_RESTART_42=no` value.
DIAGNOSTICS
-----------
*nut-driver-enumerator.sh* will return a zero exit code if it had nothing
to do (all currently defined drivers match all of the currently defined
service instances, one-to-one) and if it had no errors in its operation.
Other codes can be returned as a result of re-synchronization of mappings:
*42*::
NUT device sections and system service instances differed before, but
now match up -- so now the caller should likely restart some services.
Note that the drivers' service instances may have been started or stopped
as required (by `AUTO_START=yes`) -- but maybe the upsmon or upssched
services should restart.
If you pass environment variable `REPORT_RESTART_42=no` then
this codepath would return 0 (as a non-error exit code).
In default mode, such non-null reconfiguration should cause
the nut-driver-enumerator service to restart and this would
propagate to other NUT services that depend on it.
*13*::
Sections and services differed, and still do not match up
*1*::
Bad inputs, e.g. unrecognized service management framework
*2*::
Absent or unreadable `ups.conf` file
AUTHOR
------
Jim Klimov <jimklimov+nut@gmail.com>
SEE ALSO
--------
linkman:upsdrvsvcctl[8], linkman:ups.conf[5]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: nut-ipmipsu
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "NUT\-IPMIPSU" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "NUT\-IPMIPSU" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -223,6 +223,26 @@ Arnaud Quette <arnaud\&.quette@free\&.fr>
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
The NUT (Network UPS Tools) home page:
http://www\&.networkupstools\&.org/
.RE
.sp
GNU FreeIPMI home page: http://www\&.gnu\&.org/software/freeipmi/
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
GNU FreeIPMI home page:
http://www\&.gnu\&.org/software/freeipmi/
.RE

View file

@ -1,4 +1,4 @@
NUT-IPMIPSU(8)
NUT-IPMIPSU(8)
==============
NAME
@ -100,16 +100,19 @@ Here is an example output for a Dell r610 server:
AUTHOR
------
Arnaud Quette <arnaud.quette@free.fr>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
GNU FreeIPMI home page: http://www.gnu.org/software/freeipmi/
* The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
* GNU FreeIPMI home page: http://www.gnu.org/software/freeipmi/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: nut-recorder
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "NUT\-RECORDER" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "NUT\-RECORDER" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -96,8 +96,9 @@ You can then define a dummy device in \fBups.conf\fR(5):
.sp
Arnaud Quette
.SH "SEE ALSO"
.SS "The dummy\-ups driver:"
.sp
\fBdummy-ups\fR(8)
.SH "INTERNET RESOURCES"
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -1,17 +1,19 @@
NUT-RECORDER(8)
===============
NAME
----
nut-recorder - utility to record device status and values changes
SYNOPSIS
--------
*nut-recorder* 'device-name' [output-file] [interval]
DESCRIPTION
-----------
*nut-recorder* is an utility to record sequences from running devices (such as
power failures, or any other value changes) from upsd, and dump it in a .seq
format.
@ -21,6 +23,7 @@ to replay the sequence.
OPTIONS
-------
'device-name'::
Record the changes of this device. The format for this option is
@ -60,14 +63,18 @@ You can then define a dummy device in linkman:ups.conf[5]:
AUTHOR
------
Arnaud Quette
SEE ALSO
--------
The dummy-ups driver:
~~~~~~~~~~~~~~~~~~~~~
linkman:dummy-ups[8]
INTERNET RESOURCES
------------------
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: nut-scanner
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "NUT\-SCANNER" "8" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "NUT\-SCANNER" "8" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -103,7 +103,7 @@ Scan NUT compatible power supplies available via IPMI on the current host, or ov
.PP
\fB\-E\fR | \fB\-\-eaton_serial\fR \fIserial ports\fR
.RS 4
Scan Eaton devices (XCP and SHUT) available via serial bus on the current host\&. This option must be requested explicitely, even for a complete scan\&.
Scan Eaton devices (XCP and SHUT) available via serial bus on the current host\&. This option must be requested explicitly, even for a complete scan\&.
\fIserial ports\fR
can be expressed in various forms:
.sp
@ -127,7 +127,7 @@ to scan all serial ports\&.
.sp -1
.IP \(bu 2.3
.\}
a single charcater indicating a port number (\fI0\fR
a single character indicating a port number (\fI0\fR
(zero) for /dev/ttyS0 and /dev/ttyUSB0 on Linux,
\fI1\fR
for COM1 on Windows,
@ -144,7 +144,7 @@ for /dev/ttya on Solaris\&...)
.IP \(bu 2.3
.\}
a range of N characters, hyphen separated, describing the range of ports using
\fIX\-Y\fR, where X and Y are characters refering to the port number\&.
\fIX\-Y\fR, where X and Y are characters referring to the port number\&.
.RE
.sp
.RS 4
@ -229,7 +229,9 @@ used for authenticated SNMPv3 messages\&. This parameter is mandatory if you set
.RS 4
Set the
\fIauthentication protocol\fR
used for authenticated SNMPv3 messages\&. Allowed values are MD5 or SHA\&. Default value is MD5\&.
used for authenticated SNMPv3 messages\&. Allowed values are MD5, SHA, SHA256, SHA384 or SHA512 (depending on Net\-SNMP library capabilities; check help of the
nut\-scanner
binary program for the run\-time supported list)\&. Default value is MD5\&.
.RE
.PP
\fB\-W\fR | \fB\-\-authPassword\fR \fIauthentication pass phrase\fR
@ -245,7 +247,9 @@ to authNoPriv or authPriv\&.
.RS 4
Set the
\fIprivacy protocol\fR
used for encrypted SNMPv3 messages\&. Allowed values are DES or AES\&. Default value is DES\&.
used for encrypted SNMPv3 messages\&. Allowed values are DES, AES, AES192 or AES256 (depending on Net\-SNMP library capabilities; check help of the
nut\-scanner
binary program for the run\-time supported list)\&. Default value is DES\&.
.RE
.PP
\fB\-X\fR | \fB\-\-privPassword\fR \fIprivacy pass phrase\fR
@ -275,7 +279,7 @@ Specify the IPMI 1\&.5 authentication type to use (NONE, STRAIGHT_PASSWORD_KEY,
IPMI interface , thus in IPMI 1\&.5 mode\&.
.RE
.PP
\fB\-D\fR | \fB\-\-cipher_suite_id\fR \fIcipher suite identifier\fR
\fB\-L\fR | \fB\-\-cipher_suite_id\fR \fIcipher suite identifier\fR
.RS 4
Specify the IPMI 2\&.0 cipher suite ID to use\&. The Cipher Suite ID identifies a set of authentication, integrity, and confidentiality algorithms to use for IPMI 2\&.0 communication\&. The authentication algorithm identifies the algorithm to use for session setup, the integrity algorithm identifies the algorithm to use for session packet signatures, and the confidentiality algorithm identifies the algorithm to use for payload encryption (default=3)\&.
.sp
@ -429,6 +433,11 @@ Display available bus that can be scanned , depending on how the binary has been
.RS 4
Display only scan result\&. No information on currently scanned bus is displayed\&.
.RE
.PP
\fB\-D\fR | \fB\-\-nut_debug_level\fR
.RS 4
Raise the debugging level\&. Use this multiple times to see more details\&.
.RE
.SH "EXAMPLES"
.sp
To scan USB devices only:
@ -461,6 +470,6 @@ To scan for Eaton serial devices on ports 1 and 2 (COM1 and COM2 on Windows):
.SH "SEE ALSO"
.sp
\fBups.conf\fR(5)
.SH "INTERNET RESOURCES"
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View file

@ -1,13 +1,14 @@
NUT-SCANNER(8)
==============
NAME
----
nut-scanner - scan communication buses for NUT devices
SYNOPSIS
--------
*nut-scanner* -h
*nut-scanner* ['OPTIONS']
@ -29,6 +30,7 @@ both during compilation and runtime, then SNMP discovery will be available.
OPTIONS
-------
*-h*::
Display the help text.
@ -54,7 +56,7 @@ List all NUT-compatible USB devices currently plugged in.
Scan SNMP devices. Requires at least a 'start IP', and optionally, an 'end IP'. See specific SNMP OPTIONS for community and security settings.
*-M* | *--xml_scan*::
Scan XML/HTTP devices. Broadcast a network message on the current network interfaces to retrieve XML/HTTP capable devices. No IP required.
Scan XML/HTTP devices. Broadcast a network message on the current network interfaces to retrieve XML/HTTP capable devices. No IP required.
*-O* | *--oldnut_scan*::
Scan NUT devices (i.e. upsd daemon) on IP ranging from 'start IP' to 'end IP'.
@ -67,14 +69,14 @@ Scan NUT compatible power supplies available via IPMI on the current host, or ov
*-E* | *--eaton_serial* 'serial ports'::
Scan Eaton devices (XCP and SHUT) available via serial bus on the current host.
This option must be requested explicitely, even for a complete scan.
This option must be requested explicitly, even for a complete scan.
'serial ports' can be expressed in various forms:
- 'auto' to scan all serial ports.
- a single charcater indicating a port number ('0' (zero) for /dev/ttyS0 and
- a single character indicating a port number ('0' (zero) for /dev/ttyS0 and
/dev/ttyUSB0 on Linux, '1' for COM1 on Windows, 'a' for /dev/ttya on Solaris...)
- a range of N characters, hyphen separated, describing the range of
ports using 'X-Y', where X and Y are characters refering to the port number.
ports using 'X-Y', where X and Y are characters referring to the port number.
- a single port name.
- a list of ports name, coma separated, like '/dev/ttyS1,/dev/ttyS4'.
@ -116,13 +118,13 @@ Set the 'security level' used for SNMPv3 messages. Allowed values are: noAuthNoP
Set the 'security name' used for authenticated SNMPv3 messages. This parameter is mandatory if you set 'security level'.
*-w* | *--authProtocol* 'authentication protocol'::
Set the 'authentication protocol' used for authenticated SNMPv3 messages. Allowed values are MD5 or SHA. Default value is MD5.
Set the 'authentication protocol' used for authenticated SNMPv3 messages. Allowed values are MD5, SHA, SHA256, SHA384 or SHA512 (depending on Net-SNMP library capabilities; check help of the `nut-scanner` binary program for the run-time supported list). Default value is MD5.
*-W* | *--authPassword* 'authentication pass phrase'::
Set the 'authentication pass phrase' used for authenticated SNMPv3 messages. This parameter is mandatory if you set 'security level' to authNoPriv or authPriv.
*-x* | *--privProtocol* 'privacy protocol'::
Set the 'privacy protocol' used for encrypted SNMPv3 messages. Allowed values are DES or AES. Default value is DES.
Set the 'privacy protocol' used for encrypted SNMPv3 messages. Allowed values are DES, AES, AES192 or AES256 (depending on Net-SNMP library capabilities; check help of the `nut-scanner` binary program for the run-time supported list). Default value is DES.
*-X* | *--privPassword* 'privacy pass phrase'::
Set the 'privacy pass phrase' used for encrypted SNMPv3 messages. This parameter is mandatory if you set 'security level' to authPriv.
@ -140,7 +142,7 @@ Specify the password to use when authenticating with the remote host (mandatory
Specify the IPMI 1.5 authentication type to use (NONE, STRAIGHT_PASSWORD_KEY, MD2, and MD5) with the remote host (default=MD5).
This forces connection through the 'lan' IPMI interface , thus in IPMI 1.5 mode.
*-D* | *--cipher_suite_id* 'cipher suite identifier'::
*-L* | *--cipher_suite_id* 'cipher suite identifier'::
Specify the IPMI 2.0 cipher suite ID to use. The Cipher Suite ID identifies a set of authentication, integrity, and
confidentiality algorithms to use for IPMI 2.0 communication. The authentication algorithm identifies the algorithm
to use for session setup, the integrity algorithm identifies the algorithm to use for session packet signatures, and the
@ -173,6 +175,9 @@ Display available bus that can be scanned , depending on how the binary has been
*-q* | *--quiet*::
Display only scan result. No information on currently scanned bus is displayed.
*-D* | *--nut_debug_level*::
Raise the debugging level. Use this multiple times to see more details.
EXAMPLES
--------
@ -210,7 +215,7 @@ SEE ALSO
linkman:ups.conf[5]
INTERNET RESOURCES
------------------
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View file

@ -1,13 +1,13 @@
'\" t
.\" Title: nut.conf
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
.\" Date: 12/29/2015
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 04/26/2022
.\" Manual: NUT Manual
.\" Source: Network UPS Tools 2.7.3.1
.\" Source: Network UPS Tools 2.8.0
.\" Language: English
.\"
.TH "NUT\&.CONF" "5" "12/29/2015" "Network UPS Tools 2\&.7\&.3\&." "NUT Manual"
.TH "NUT\&.CONF" "5" "04/26/2022" "Network UPS Tools 2\&.8\&.0" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -94,7 +94,7 @@ above indicates that no upsmon should be running\&.
.PP
\fBPOWEROFF_WAIT\fR
.RS 4
Optional\&. At the end of an emergency system halt, the upsmon master will signal the UPS to switch off\&. This may fail for a number of reasons\&. Most notably is the case that mains power returns during the shutdown process\&. See the section "Power races" in /usr/share/doc/nut/FAQ\&.txt\&.gz\&. The system will wait this long for the UPS to cut power, and then reboot\&. It should be long enough to exhaust the batteries, in case line power continues to be unavailable\&. On the other hand, it should not be so long that the system remains offline for an unreasonable amount of time if line power has returned\&. See sleep(1) for compatible time syntax\&. If you specify the time in seconds, use the "s" suffix\&.
Optional\&. At the end of an emergency system halt, the upsmon primary will signal the UPS to switch off\&. This may fail for a number of reasons\&. Most notably is the case that mains power returns during the shutdown process\&. See the section "Power races" in /usr/share/doc/nut/FAQ\&.txt\&.gz\&. The system will wait this long for the UPS to cut power, and then reboot\&. It should be long enough to exhaust the batteries, in case line power continues to be unavailable\&. On the other hand, it should not be so long that the system remains offline for an unreasonable amount of time if line power has returned\&. See sleep(1) for compatible time syntax\&. If you specify the time in seconds, use the "s" suffix\&.
.RE
.if n \{\
.sp
@ -118,57 +118,25 @@ this workaround might be dangerous under some circumstances\&. Please read http:
.RS 4
.\}
.nf
# /etc/nut/nut\&.conf\&. See nut\&.conf(5)
.fi
.if n \{\
.RE
.\}
.sp
.if n \{\
.RS 4
.\}
.nf
MODE=none
.fi
.if n \{\
.RE
.\}
.sp
.if n \{\
.RS 4
.\}
.nf
UPSD_OPTIONS=""
.fi
.if n \{\
.RE
.\}
.sp
.if n \{\
.RS 4
.\}
.nf
UPSMON_OPTIONS=""
.fi
.if n \{\
.RE
.\}
.sp
.if n \{\
.RS 4
.\}
.nf
# POWEROFF_WAIT=15m
# /etc/nut/nut\&.conf\&. See nut\&.conf(5)
MODE=none
UPSD_OPTIONS=""
UPSMON_OPTIONS=""
# POWEROFF_WAIT=15m
.fi
.if n \{\
.RE
.\}
.SH "INTEGRATION"
.sp
An init script, such as /etc/init\&.d/nut, is expected to source this file in order to determine which component(s) has to be started\&.
An init script, such as /etc/init\&.d/nut, is expected to source this file in order to determine which components have to be started\&.
.SH "SEE ALSO"
.sp
\fBups.conf\fR(5), \fBupsd.conf\fR(5), \fBupsd.users\fR(5), \fBupsmon.conf\fR(5)
.SH "INTERNET RESOURCES"
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

Some files were not shown because too many files have changed in this diff Show more