NAME
blazer_ser, blazer_usb - Driver for Megatec/Q1 protocol serial/USB
based UPS equipment
NOTE
This man page only documents the hardware-specific features of the
blazer driver. For information about the core driver, see nutupsdrv(8).
SUPPORTED HARDWARE
The blazer driver is known to work with various UPSes from Blazer,
Energy Sistem, Fenton Technologies, 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't been tested.
All devices with a serial interface (use the blazer_ser driver) and
many with a USB interface (use the blazer_usb driver) are supported.
EXTRA ARGUMENTS
You may need to override or provide defaults for some values, depending
on the make and model of your UPS. The following are the ones that most
likely will need changing (see ups.conf(5)):
default.battery.voltage.high = value
Maximum battery voltage that is reached after about 12 to 24
hours charging. If you want the driver to report a guesstimated
battery.charge, you need to specify this (see BATTERY CHARGE).
default.battery.voltage.low = value
Minimum battery voltage just before the UPS automatically shuts
down. If you want the driver to report a guesstimated
battery.charge, you need to specify this (see BATTERY CHARGE).
default.battery.voltage.nominal = value
override.battery.voltage.nominal = value
Some devices show a wrong nominal battery voltage (or none at
all), so you may need to override or set a default value.
override.battery.packs = value
Some devices report a part of the total battery voltage. For
instance, if battery.voltage.nominal is 24 V, but it reports a
battery.voltage of around 2 V, the number of battery.packs to
correct this reading would be 12. The driver will attempt to
detect this automatically, but if this fails somehow, you may
want to override this value.
ondelay = value
Time to wait before switching on the UPS (minutes). Note that a
value below 3 minutes, may cause earlier firmware versions to
not switch on automatically, so it defaults to 3 minutes.
offdelay = value
Time to wait before shutting down the UPS (seconds). This value
is truncated to units of 6 seconds (less than 60 seconds) or 60
seconds (more than 60 seconds). Defaults to 30 seconds.
norating
Some UPSes will lock up if you attempt to read rating
information from them. Setting this flag will make the driver
skip this step.
novendor
Some UPSes will lock up if you attempt to read vendor
information from them. Setting this flag will make the driver
skip this step.
runtimecal = value,value,value,value
Parameter used in the (optional) runtime estimation. This takes
two runtimes at different loads. Typically, this uses the
runtime at full load and the runtime at half load. For instance,
if your UPS has a rated runtime of 240 seconds at full load and
720 seconds at half load, you would enter
runtimecal = 270,100,720,50
The first load should always be higher than the second. If you
have values available for loads other than 100 and 50 %
respectively, you can use those too, but keep them spaced apart
as far as reasonably possible. Just don't get too close to no
load (prediction of runtime depends more on idle load for the
battery then).
chargetime = value
The time needed to fully recharge the battery after being fully
discharged. If not specified, the driver defaults to 43200
seconds (12 hours). Only used if runtimecal is also specified.
idleload= value
Minimum battery load used by the driver to estimate the runtime.
If not specified, the driver defaults to 10 %. Only used if
runtimecal is also specified.
SERIAL INTERFACE ONLY
cablepower = string
By default the driver will set DTR and clear RTS (normal). If
you find that your UPS isn't detected or the communication with
the UPS is unreliable, you may try if clear DTR and set RTS
(reverse), set DTR and RTS (both) or clear DTR and RTS (none)
improves this situation.
USB INTERFACE ONLY
vendorid = regex
productid = regex
vendor = regex
product = regex
serial = regex
Select a specific UPS, in case there is more than one connected
via USB. Each option specifies an extended regular expression
(see regex(7)) that must match the UPS's entire
vendor/product/serial string (minus any surrounding whitespace),
or the whole 4-digit hexadecimal code for vendorid and
productid. Try -DD for finding out the strings to match.
Examples:
-x vendor="Foo.Corporation.*"
-x vendorid=051d (APC)
-x product=".*(Smart|Back)-?UPS.*"
bus = regex
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]").
subdriver = string
Select a serial-over-USB subdriver to use. You have a choice
between phoenix ippon, cypress and krauler. When using this
option, it is mandatory to also specify the vendorid and
productid. Note that since nut-2.4.2 the ippon subdriver is used
where previously the phoenix was selected. If this doesn't work
for you, add the following to the ups.conf(5) entry for your
UPS:
vendorid = 06da
productid = 0003
subdriver = phoenix
UPS COMMANDS
This driver supports some instant commands (see upscmd(8)):
beeper.toggle
Toggle the UPS beeper. (Not available on some hardware.)
load.on
Turn on the load immediately.
load.off
Turn off the load immediately (see KNOWN PROBLEMS).
shutdown.return [value]
Turn off the load and return when power is back. Uses the timers
defined by ondelay and offdelay.
shutdown.stayoff [value]
Turn off the load and remain off (see KNOWN PROBLEMS). Uses the
timer defined by offdelay.
shutdown.stop
Stop a shutdown in progress.
test.battery.start.deep
Perform a long battery test (Not available on some hardware.)
test.battery.start.quick
Perform a (10 second) battery test.
test.battery.start value
Perform a battery test for the duration of num seconds
(truncated to units of 60 seconds).
test.battery.stop
Stop a running battery test (not available on some hardware.)
BATTERY CHARGE
Due to popular demand, this driver will report a guesstimated
battery.charge and optionally battery.runtime, provided you specified a
couple of the EXTRA PARAMETERS listed above.
If you specify both battery.voltage.high and battery.voltage.low in
ups.conf(5), but don't enter runtimecal, it will guesstimate the state
of charge by looking at the battery voltage alone. This is not reliable
under load, as this only gives reasonably accurate readings if you
disconnect the load, let the battery rest for a couple of minutes and
then measure the open cell voltage. This just isn't practical if the
power went out and the UPS is providing power for your systems.
battery.voltage - battery.voltage.low
battery.charge = ------------------------------------------ x 100 %
battery.voltage.high - battery.voltage.low
There is a way to get better readings without disconnecting the load
but this requires to keep track on how much (and how fast) current is
going in- and out of the battery. If you specified the runtimecal, the
driver will attempt to do this. Note however, that this heavily relies
on the values you enter and that the UPS must be able to report the
load as well. There are quite a couple of devices that report 0 % (or
any other fixed value) at all times, in which case this obviously
doesn't work.
The driver also has no way of determining the degradation of the
battery capacity over time, so you'll have to deal with this yourself
(by adjusting the values in runtimecal. Also note that the driver
guesses the initial state of charge based on the battery voltage, so
this may be less than 100 %, even when you are certain that they are
full. There is just no way to reliably measure this between 0 and 100 %
full charge.
This is better than nothing (but not by much). If any of the above
calculations is giving you incorrect readings, you are the one that put
in the values in ups.conf(5), so don't complain with the author. If you
need something better, buy a UPS that reports battery.charge and
battery.runtime all by itself without the help of a NUT driver.
KNOWN PROBLEMS
Some UPS commands aren't supported by all models. In most cases, the
driver will send a message to the system log when the user tries to
execute an unsupported command. Unfortunately, some models don't even
provide a way for the driver to check for this, so the unsupported
commands will silently fail.
Both the load.off and shutdown.stayoff instant commands are meant to
turn the load off indefinitely. However, some UPS models don't allow
this.
Some models report a bogus value for the beeper status (will always be
enabled or disabled). So, the beeper.toggle command may appear to have
no effect in the status reported by the driver when, in fact, it is
working fine.
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>
SEE ALSO
nutupsdrv(8), upsc(8), upscmd(8), upsrw(8)
Internet resources:
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
Mon Feb 16 2009