MEGATEC_USB(8)
NAME
megatec_usb - Driver for Megatec protocol based USB UPS equipment
NOTE
This  man  page  only  documents  the hardware-specific features of the
megatec_usb driver. For information about the core driver, see  nutupsdrv(8).
Note.  This driver is experimental at the moment. It is currently being
worked on and may change over time. However, it is stable in  execution
and does what is needed.
SUPPORTED HARDWARE
The  megatec_usb  driver  is  known  to  work  with  various UPSes from
Krauler, Agiler, and Upsonic (Ablerex interface). Others that  use  the
Megatec protocol may work, but haven't been tested.
This  driver supports the USB versions of UPSs, if you have only serial
interface then use the straight megatec(8) driver.
If you find that this driver does not work, and you are sure that  your
hardware  speaks  megatec  protocol,  then  you  can easily extend this
driver. However, you will need to do some analysis of the commands that
are  sent to the UPS. Please see the forums for discussions on this and
how to extend this driver.
EXTENSIONS TO MEGATEC
This driver extends the standard megatec(8) driver to work with certain
UPSes  that  have a USB interface. These devices do not obey the normal
rules for HID USB devices and therefore the  newhidups(8)  driver  will
not work for them.
This  driver  takes  the standard serial interface and passes this over
USB to the UPS.  This means that most, but not all, commands  available
for the serial driver will work. For Krauler, Agiler, and Upsonic (with
Ablerex interface) UPSes it appears to give very similar results to the
serial  interface. The driver supports monitoring most of the usual UPS
variables, and also supports automatic shutdown.
EXTRA ARGUMENTS
- mfr=string
- Optional. Specify the UPS manufacturer name.
- model=string
 Optional. Specify the UPS model name.
- serial=string
 Optional. Specify the UPS serial number.
- lowbatt=float
 Optional. Low battery level (%). Overrides the hardware default level.
- ondelay=int
 Optional. Delay before the UPS is turned back on (minutes).
- offdelay=int
 Optional. Delay before the UPS is turned off (minutes).
- battvolts=float:float
 Optional. The battery voltage interval <empty:full> (volts).
- vendor=regex
- product=regex
- vendorid=regex
- productid=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=05b8 (Agiler)-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 "agiler" and "krauler" subdrivers currently.
UPS COMMANDS
This driver supports some extra 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. (Not yet supported)
- reset.input.minmax
- Reset minimum and maximum input voltage status. (Not yet supported)
- reset.watchdog
- Restarts the UPS watchdog timeout. The watchdog is started if it isn't running, which means the UPS shuts down one minute after this command is executed for the last time, restarting one minute afterwards. To cancel the watchdog, run the "shutdown.stop" command.
- shutdown.return
- Turn off the load and return when power is back. (Not yet supported)
- shutdown.stayoff
- Turn off the load and remain off. (Not yet supported)
- shutdown.stop
- Stop a shutdown in progress.
- test.battery.start.deep
- Perform a long battery test (Not available on some hardware.)
- test.battery.start
- Perform a (10 second) battery test.
- test.battery.stop
- Stop a running battery test. (Not available on some hardware.)
USER VARIABLES
The  behavior  of  the  driver can be controlled by some user definable
variables (see upsrw(8)):
- ups.delay.shutdown
- Interval to wait after shutdown with delay command (seconds)
- ups.delay.start
- Interval to wait before (re)starting the load (seconds)
KNOWN PROBLEMS
The battery charge (%) value is only a best-effort calculation and  may
be  incorrect,  or  non-existant, for some UPS models. In any case, you
can always resort to finding the voltages at which the battery  becomes
fully discharged and fully charged, and specify them manually using the
"battvolts" option.  If you do this, please notify the author  of  this
driver.
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.
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 value is also known to be bogus in some models.
AUTHORS
Carlos Rodrigues <carlos.efr at mail.telepac.pt>
Andrey Lelikov <nut-driver at lelik.org>
Alexander Gordeev <lasaine at lvk.cs.msu.su>
Jon Gough <jon.gough at eclipsesystems.com.au>
SEE ALSO
- megatec(8), nutupsdrv(8), upsc(8), upscmd(8), upsrw(8)
- Internet resources:
- The NUT (Network UPS Tools) home page: http://www.networkupstools.org/