Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
BELKINUNV(8)			   NUT Manual			    BELKINUNV(8)

NAME
     belkinunv - Driver for Belkin "Universal UPS" and compatible

SYNOPSIS
     belkinunv -h

     belkinunv -a UPS_NAME [OPTIONS]

	 Note

	 This  man  page  only	documents  the hardware-specific features of the
	 belkin driver. For information about the core driver, see nutupsdrv(8).

	 Note

	 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  Uni-
     versal UPS models. The driver only supports serial communication, not USB.

     The  Trust UPS and older Belkin units are not supported by this driver, and
     neither are the Belkin Home Office models (F6H500-SER and so  forth).  How-
     ever,  some  Belkin models, such as the Regulator Pro, are supported by the
     belkin(8) driver, and the Home Office models are supported using the gener-
     icups(8) driver with upstype=7.

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 UPS after oper-
     ating system shutdown; it will not come back on when the power  comes  back
     on.  Therefore,  the  belkinunv driver should never be used with the -k op-
     tion. Instead, the -x wait option is provided as a workaround.

     When called with the -x wait option, belkinunv behaves as a standalone pro-
     gram (i.e., it does not fork into the background). It performs  one  simple
     task:  it connects to the UPS, waits for AC power to return, and then exits
     with status 0.

     This is meant to be used in a shutdown script as follows:	during	a  shut-
     down,  after all filesystems have been remounted read-only, and just before
     the system would normally be halted: check /etc/killpower (or  similar)  to
     see if this shutdown was caused by upsmon(8), and if yes, call belkinunv -x
     wait.  If	AC  power  comes  back on, belkinunv exits, and things should be
     arranged so that the 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.

     In  addition,  if	an optional integer argument is given to the -x wait op-
     tion, this causes belkinunv to wait not only for AC power	to  be	present,
     but  also	for  the  battery charge to reach the given level. I use this as
     part of my startup scripts, to ensure that the batteries  are  sufficiently
     charged  before  the  computer  continues	booting. This should be put very
     early in the startup script, before any filesystems are mounted read/write,
     and before any filesystem checks are performed.

     Several other -x options are provided to fine-tune this behavior.	See  the
     options  below  for detailed descriptions. See the examples below for exam-
     ples of how to use belkinunv in shutdown and startup scripts.

OPTIONS
     See also nutupsdrv(8) for generic options. Never use  the	-k  option  with
     this driver; it does not work properly.

     -x wait[=level]
	 When  this option is used, belkinunv does not fork into the background,
	 but behaves as a standalone program. It connects to the UPS  and  waits
	 until	AC  power is present. If level is specified, it also waits until
	 the battery charge reaches at least the given level in  percent.  Then,
	 and  only  then,  belkinunv exits. In addition, while belkinunv runs in
	 this mode, it displays a status line with information on the UPS status
	 and battery level. This is intended for use in the computer's	shutdown
	 and startup scripts, as described under Soft Shutdown Workaround above.

     -x nohang
	 This  option  only  has  an effect when used in conjunction with the -x
	 wait option. It causes belkinunv to exit if a connection with	the  UPS
	 cannot be established or is lost, instead of retrying forever, which is
	 the  default behavior. The -x nohang option should be 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).

     -x flash
	 This  option  only  has  an effect when used in conjunction with the -x
	 wait option. It causes the UPS load to be shut off  for  a  short  time
	 ("flashed") just after the AC power has returned and the requested bat-
	 tery level (if any) has been attained. This is useful if slaves are at-
	 tached  to  this  UPS; the flash will cause all of them to reboot. Note
	 that, due to the design of the Belkin UPS hardware, the  load	shutdown
	 lasts	ca.  1--2 minutes; a shorter flash cannot be performed reliably.
	 Also, the computers will reboot at the scheduled time, on battery power
	 if necessary, even if AC power fails again in the meantime. This should
	 not be a problem, as your startup scripts can catch this situation.

     -x silent
	 This option only has an effect when used in  conjunction  with  the  -x
	 wait  option.	It suppresses the status line which belkinunv would nor-
	 mally print.

     -x dumbterm
	 This option only has an effect when used in  conjunction  with  the  -x
	 wait  option.	It  changes the way in which belkinunv prints its status
	 line. Normally, terminal control sequences are used  to  overwrite  the
	 same line with new status information, each time the status is updated.
	 This may not work on all terminals. If the -x dumbterm option is given,
	 each status update is written on a new line.

VARIABLES
     battery.charge, battery.runtime
	 not supported by all hardware.

     battery.voltage,	battery.voltage.nominal,   input.frequency,   input.fre-
     quency.nominal
	 e.g. 60 for 60Hz

     input.sensitivity
	 writable: normal/medium/low

     input.transfer.high
	 writable: high transfer voltage point in V

     input.transfer.low
	 writable: low transfer voltage point in V

     input.voltage,  input.voltage.maximum,  input.voltage.minimum,  input.volt-
     age.nominal, output.frequency, output.voltage, ups.beeper.status
	 writable.  Values:  enabled/disabled/muted.  This variable controls the
	 state of the panel beeper.  Enabled  means  sound  when  the  alarm  is
	 present,  disabled means never sound, and muted means the sound is tem-
	 porarily disabled until the alarm would normally stop sounding. In  the
	 muted	state,	the  beeper  is automatically turned back on at the next
	 event (AC failure, battery test, etc). Also, the beeper can't be turned
	 off during a critical event (low battery). Note that not all UPS models
	 support the "disabled" state.

     ups.firmware, ups.load, ups.model, ups.power.nominal
	 e.g. 800 for an 800VA system

     ups.status
	 a list of flags; see the status flags below.

     ups.temperature
	 not supported by all hardware.

     ups.test.result, ups.delay.restart
	 time to restart (read only)

     ups.delay.shutdown
	 time to shutdown (read only). This is always a multiple of 60 seconds.

     ups.type
	 ONLINE/OFFLINE/LINEINT. This describes the basic  layout  of  this  UPS
	 (for GUI clients which want to draw an animated picture of power flow).
	 An  offline UPS has a direct connection from AC input to AC output, and
	 also a connection from AC input to the battery, and from the battery to
	 AC output. An online UPS lacks the direct connection from AC  input  to
	 AC  output, whereas a line interactive UPS lacks the connection from AC
	 input to the battery.

COMMANDS
     beeper.enable, beeper.disable, beeper.mute
	 Enable, disable or mute the panel beeper. Note that if  the  beeper  is
	 muted,  it  is automatically turned back on at the next event (AC fail-
	 ure, battery test, etc). Also, the beeper can't be turned muted  during
	 a critical event (low battery).

     reset.input.minmax
	 Reset the variables input.voltage.minimum and input.voltage.maximum.

     shutdown.reboot
	 Shut down load immediately for about 1--2 minutes.

     shutdown.reboot.graceful
	 After 40 second delay, shut down load for about 1--2 minutes.

     shutdown.stayoff
	 Shut  down load immediately and stay off. The only way it can be turned
	 back on is by manually pressing the front panel button.

     test.battery.start, test.battery.stop
	 Start/stop 10 second battery test.

     test.failure.start, test.failure.stop
	 Start/stop "deep" battery test.

STATUS FLAGS
     OB
	 load is on battery, including during tests

     OFF
	 load is off

     OL
	 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.

     OVER
	 overload

     OVERHEAT
	 overheat

     COMMFAULT
	 UPS fault

     LB
	 low battery

     CHRG
	 charging

     DEPLETED
	 the battery is depleted. When the UPS raises this flag,  it  simultane-
	 ously switches off the load.

     RB
	 replace battery

EXAMPLES
     Here  is  an example for how belkinunv should be used in a computer's shut-
     down script. These commands should go in the very last part of the shutdown
     script, after all file systems have been mounted read-only, and just before
     the computer halts. Note that belkinunv must be installed	in  a  directory
     which is still readable at that point.

	  # NEAR END OF SHUTDOWN SCRIPT:
	  # if shutdown was caused by UPS, perform Belkin UPS workaround.
	  if [ -f /etc/killpower ] || /usr/sbin/upsmon -K ; then
	     echo "Waiting for AC power, or for UPS batteries to run out..."
	     /usr/bin/belkinunv -x wait /dev/ttyS1

	     # we get here if the power came back on. Reboot.
	     echo "Power is back. Rebooting..."
	     reboot
	  fi

     And here is an example of how to use belkinunv in the startup script. These
     commands  should  go  near  the beginning of the startup script, before any
     file systems are mounted read/write, and before any file  system  integrity
     checks are done.

	  # NEAR BEGINNING OF STARTUP SCRIPT:
	  # if we are recovering from a power failure, wait for the UPS to
	  # charge to a comfortable level before writing anything to disk
	  if [ -f /etc/killpower ] || /usr/sbin/upsmon -K ; then
	     echo "Waiting for UPS battery charge to reach 60%..."
	     /usr/bin/belkinunv -x wait=60 -x nohang /dev/ttyS1
	  fi

EXIT STATUS
     When used normally, belkinunv forks into the background and its diagnostics
     are the same as for all NUT drivers, see nutupsdrv(8).

     When used with the -x wait option, the exit status is normally 0. If the -x
     nohang  option  has also been specified, an exit status of 1 indicates that
     communication with the UPS was lost. If the -x flash option has been speci-
     fied, an exit status of 2 indicates that the timed shutdown has failed.

EXTRA ARGUMENTS
     This driver does not support any extra settings in ups.conf(5).

AUTHOR
     Peter Selinger <selinger@users.sourceforge.net>

SEE ALSO
   The core driver:
     nutupsdrv(8)

   Other Belkin drivers:
     belkinunv(8), blazer_ser(8), blazer_usb(8), usbhid-ups(8)

   Internet resources:
     *	 The NUT (Network UPS Tools) home page: https://www.networkupstools.org/

     *	 The documentation for the protocol used  by  this  UPS:  belkin-univer-
	 sal-ups.html (replica on NUT site)

Network UPS Tools 2.8.5.	   08/04/2026			    BELKINUNV(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=belkinunv&sektion=8&manpath=FreeBSD+Ports+15.1.quarterly>

home | help