ifndef::external_title[] NUT command and variable naming scheme ====================================== endif::external_title[] This is a dump of the standard variables and command names used in NUT. Don't use a name with any of the dstate functions unless it exists here. If you need a new variable or command name, contact the Development Team first. Put another way: if you make up a name that's not in this list and it gets into the tree, and then we come up with a better name later, clients that use the undocumented variable will break when it is changed. NOTE: "opaque" means programs should not attempt to parse the value for that variable as it may vary greatly from one UPS to the next. These strings are best handled directly by the user. Variables --------- device: General unit information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ NOTE: some of these data will be redundant with ups.* information during a transition period. The ups.* data will then be removed. [options="header"] |==================================================================================== | Name | Description | Example value | device.model | Device model | BladeUPS | device.mfr | Device manufacturer | Eaton | device.serial | Device serial number (opaque string) | WS9643050926 | device.type | Device type (ups, pdu, scd, psu) | ups | device.description | Device description (opaque string) | Some ups | device.contact | Device administrator name (opaque string) | John Doe | device.location | Device physical location (opaque string) | 1rst floor | device.part | Device part number (opaque string) | 123456789 | device.macaddr | Physical network address of the device | 68:b5:99:f5:89:27 |===================================================================================== ups: General unit information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [options="header"] |=============================================================================== | Name | Description | Example value | ups.status | UPS status | linkdoc:developer-guide[OL,_status_data] | ups.alarm | UPS alarms | OVERHEAT | ups.time | Internal UPS clock time (opaque string) | 12:34 | ups.date | Internal UPS clock date (opaque string) | 01-02-03 | ups.model | UPS model | SMART-UPS 700 | ups.mfr | UPS manufacturer | APC | ups.mfr.date | UPS manufacturing date (opaque string) | 10/17/96 | ups.serial | UPS serial number (opaque string) | WS9643050926 | ups.vendorid | Vendor ID for USB devices | 0463 | ups.productid | Product ID for USB devices | 0001 | ups.firmware | UPS firmware (opaque string) | 50.9.D | ups.firmware.aux | Auxiliary device firmware | 4Kx | ups.temperature | UPS temperature (degrees C) | 042.7 | ups.load | Load on UPS (percent) | 023.4 | ups.load.high | Load when UPS switches to overload condition ("OVER") (percent) | 100 | ups.id | UPS system identifier (opaque string) | Sierra | ups.delay.start | Interval to wait before restarting the load (seconds) | 0 | ups.delay.reboot | Interval to wait before rebooting the UPS (seconds) | 60 | ups.delay.shutdown | Interval to wait after shutdown with delay command (seconds) | 20 | ups.timer.start | Time before the load will be started (seconds) | 30 | ups.timer.reboot | Time before the load will be rebooted (seconds) | 10 | ups.timer.shutdown | Time before the load will be shutdown (seconds) | 20 | ups.test.interval | Interval between self tests (seconds) | 1209600 (two weeks) | ups.test.result | Results of last self test (opaque string) | Bad battery pack | ups.test.date | Date of last self test (opaque string) | 07/17/12 | ups.display.language | Language to use on front panel (*** opaque) | E | ups.contacts | UPS external contact sensors (*** opaque) | F0 | ups.efficiency | Efficiency of the UPS (ratio of the output current on the input current) (percent) | 95 | ups.power | Current value of apparent power (Volt-Amps) | 500 | ups.power.nominal | Nominal value of apparent power (Volt-Amps) | 500 | ups.realpower | Current value of real power (Watts) | 300 | ups.realpower.nominal | Nominal value of real power (Watts) | 300 | ups.beeper.status | UPS beeper status (enabled, disabled or muted) | enabled | ups.type | UPS type (*** opaque) | offline | ups.watchdog.status | UPS watchdog status (enabled or disabled) | disabled | ups.start.auto | UPS starts when mains is (re)applied | yes | ups.start.battery | Allow to start UPS from battery | yes | ups.start.reboot | UPS coldstarts from battery (enabled or disabled) | yes |=============================================================================== NOTE: When present, the value of *ups.start.auto* has an impact on shutdown.* commands. For the sake of coherence, shutdown commands will set *ups.start.auto* to the right value before issuing the command. Ie, shutdown.stayoff will first set *ups.start.auto* to *no*, while shutdown.return will set it to *yes*. input: Incoming line/power information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [options="header"] |=============================================================================== | Name | Description | Example value | input.voltage | Input voltage | 121.5 | input.voltage.maximum | Maximum incoming voltage seen | 130 | input.voltage.minimum | Minimum incoming voltage seen | 100 | input.voltage.nominal | Nominal input voltage | 120 | input.voltage.extended | Extended input voltage range | no | input.transfer.reason | Reason for last transfer to battery (*** opaque) | T | input.transfer.low | Low voltage transfer point | 91 | input.transfer.high | High voltage transfer point | 132 | input.transfer.low.min | smallest settable low voltage transfer point | 85 | input.transfer.low.max | greatest settable low voltage transfer point | 95 | input.transfer.high.min | smallest settable high voltage transfer point | 131 | input.transfer.high.max | greatest settable high voltage transfer point | 136 | input.sensitivity | Input power sensitivity | H (high) | input.quality | Input power quality (*** opaque) | FF | input.current | Input current (A) | 4.25 | input.current.nominal | Nominal input current (A) | 5.0 | input.frequency | Input line frequency (Hz) | 60.00 | input.frequency.nominal | Nominal input line frequency (Hz) | 60 | input.frequency.low | Input line frequency low (Hz) | 47 | input.frequency.high | Input line frequency high (Hz) | 63 | input.frequency.extended | Extended input frequency range | no | input.transfer.boost.low | Low voltage boosting transfer point | 190 | input.transfer.boost.high | High voltage boosting transfer point | 210 | input.transfer.trim.low | Low voltage trimming transfer point | 230 | input.transfer.trim.high | High voltage trimming transfer point | 240 |=============================================================================== output: Outgoing power/inverter information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [options="header"] |=============================================================================== | Name | Description | Example value | output.voltage | Output voltage (V) | 120.9 | output.voltage.nominal | Nominal output voltage (V) | 120 | output.frequency | Output frequency (Hz) | 59.9 | output.frequency.nominal | Nominal output frequency (Hz) | 60 | output.current | Output current (A) | 4.25 | output.current.nominal | Nominal output current (A) | 5.0 |=============================================================================== Three-phase additions ~~~~~~~~~~~~~~~~~~~~~ The additions for three-phase measurements would produce a very long table due to all the combinations that are possible, so these additions are broken down to their base components. Phase Count Determination ^^^^^^^^^^^^^^^^^^^^^^^^^ input.phases (3 for three-phase, absent or 1 for 1phase) output.phases (as for input.phases) DOMAINs ^^^^^^^ Any input or output is considered a valid DOMAIN. input (should really be called input.mains, but keep this for compat) input.bypass input.servicebypass output (should really be called output.load, but keep this for compat) output.bypass output.inverter output.servicebypass Specification (SPEC) ^^^^^^^^^^^^^^^^^^^^ Voltage, current, frequency, etc are considered to be a specification of the measurement. With this notation, the old 1phase naming scheme becomes DOMAIN.SPEC Example: `input.current` CONTEXT ^^^^^^^ When in three-phase mode, we need some way to specify the target for most measurements in more detail. We call this the CONTEXT. With this notation, the naming scheme becomes DOMAIN.CONTEXT.SPEC when in three-phase mode. Example: `input.L1.current` Valid CONTEXTs ^^^^^^^^^^^^^^ L1-L2 \ L2-L3 \ L3-L1 for voltage measurements L1-N / L2-N / L3-N / L1 \ L2 for currrent and power measurements L3 / N - for current measurement Valid SPECs ^^^^^^^^^^^ Valid with/without context (ie. per phase or aggregated/averaged) [options="header"] |=============================================================================== | Name | Description | current | Current (A) | current.maximum | Maximum seen current (A) | current.minimum | Minimum seen current (A) | current.peak | Peak current | voltage | Voltage (V) | voltage.nominal | Nominal voltage (V) | voltage.maximum | Maximum seen voltage (V) | voltage.minimum | Minimum seen voltage (V) | power | Apparent power (VA) | power.maximum | Maximum seen apparent power (VA) | power.minimum | Minimum seen apparent power (VA) | power.percent | Percentage of apparent power related to maximum load | power.maximum.percent | Maximum seen percentage of apparent power | power.minimum.percent | Minimum seen percentage of apparent power | realpower | Real power (W) | powerfactor | Power Factor (dimensionless value between 0.00 and 1.00) | crestfactor | Crest Factor (dimensionless value greater or equal to 1) |=============================================================================== Valid without context (ie. aggregation of all phases): [options="header"] |=============================================================================== | Name | Description | frequency | Frequency (Hz) | frequency.nominal | Nominal frequency (Hz) |=============================================================================== EXAMPLES ~~~~~~~~ Partial Three phase - Three phase example: input.phases: 3 input.frequency: 50.0 input.L1.current: 133.0 input.bypass.L1-L2.voltage: 398.3 output.phases: 3 output.L1.power: 35700 output.powerfactor: 0.82 Partial Three phase - One phase example: input.phases: 3 input.L2.current: 48.2 input.N.current: 3.4 input.L3-L1.voltage: 405.4 input.frequency: 50.1 output.phases: 1 output.current: 244.2 output.voltage: 120 output.frequency.nominal: 60.0 battery: Any battery details ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [options="header"] |=============================================================================== | Name | Description | Example value | battery.charge | Battery charge (percent) | 100.0 | battery.charge.low | Remaining battery level when UPS switches to LB (percent) | 20 | battery.charge.restart | Minimum battery level for UPS restart after power-off | 20 | battery.charge.warning | Battery level when UPS switches to "Warning" state (percent) | 50 | battery.voltage | Battery voltage (V) | 24.84 | battery.voltage.nominal | Nominal battery voltage (V) | 024 | battery.voltage.low | Minimum battery voltage, that triggers FSD status | 21,52 | battery.voltage.high | Maximum battery voltage (Ie battery.charge = 100) | 26,9 | battery.capacity | Battery capacity (Ah) | 7.2 | battery.current | Battery current (A) | 1.19 | battery.current.total | Total battery current (A) | 1.19 | battery.temperature | Battery temperature (degrees C) | 050.7 | battery.runtime | Battery runtime (seconds) | 1080 | battery.runtime.low | Remaining battery runtime when UPS switches to LB (seconds) | 180 | battery.runtime.restart | Minimum battery runtime for UPS restart after power-off (seconds) | 120 | battery.alarm.threshold | Battery alarm threshold | 0 (immediate) | battery.date | Battery change date (opaque string) | 11/14/00 | battery.mfr.date | Battery manufacturing date (opaque string) | 2005/04/02 | battery.packs | Number of battery packs | 001 | battery.packs.bad | Number of bad battery packs | 000 | battery.type | Battery chemistry (opaque string) | PbAc | battery.protection | Prevent deep discharge of battery | yes | battery.energysave | Switch off when running on battery and no/low load | no |=============================================================================== ambient: Conditions from external probe equipment ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ NOTE: multiple sensors can be exposed using the indexed notation. 'ambient.*', without index or using '0', relates to the embedded sensor. For example: 'ambient.temperature' represent the embedded sensor temperature. Other sensors (external, communication card, ...) can use indexes from '1' to 'n'. For example: 'ambient.1.temperature' for the first external sensor temperature. [options="header"] |=============================================================================== | Name | Description | Example value | ambient.n.temperature | Ambient temperature (degrees C) | 25.40 | ambient.n.temperature.alarm | Temperature alarm (enabled/disabled) | enabled | ambient.n.temperature.high | Temperature threshold high (degrees C) | 40 | ambient.n.temperature.low | Temperature threshold low (degrees C) | 5 | ambient.n.temperature.maximum | Maximum temperature seen (degrees C) | 37.6 | ambient.n.temperature.minimum | Minimum temperature seen (degrees C) | 18.1 | ambient.n.humidity | Ambient relative humidity (percent) | 038.8 | ambient.n.humidity.alarm | Relative humidity alarm (enabled/disabled) | enabled | ambient.n.humidity.high | Relative humidity threshold high (percent) | 80 | ambient.n.humidity.low | Relative humidity threshold high (percent) | 10 | ambient.n.humidity.maximum | Maximum relative humidity seen (percent) | 60 | ambient.n.humidity.minimum | Minimum relative humidity seen (percent) | 13 |=============================================================================== outlet: Smart outlet management ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ NOTE: *n* stands for the outlet index. For more information, refer to the NUT outlets management and PDU notes chapter of the user manual. A special case is "outlet.0" which is equivalent to "outlet", and represent the whole set of outlets of the device. [options="header"] |=============================================================================== | Name | Description | Example value | outlet.n.id | Outlet system identifier (opaque string) | 1 | outlet.n.desc | Outlet description (opaque string) | Main outlet | outlet.n.switch | Outlet switch control (on/off) | on | outlet.n.status | Outlet switch status (on/off) | on | outlet.n.switchable | Outlet switch ability (yes/no) | yes | outlet.n.autoswitch.charge.low | Remaining battery level to power off this outlet (percent) | 80 | outlet.n.battery.charge.low | Remaining battery level to power off this outlet (percent) | 80 | outlet.n.delay.shutdown | Interval to wait before shutting down this outlet (seconds) | 180 | outlet.n.delay.start | Interval to wait before restarting this outlet (seconds) | 120 | outlet.n.timer.shutdown | Time before the outlet load will be shutdown (seconds) | 20 | outlet.n.timer.start | Time before the outlet load will be started (seconds) | 30 | outlet.n.current | Current (A) | 0.19 | outlet.n.current.maximum | Maximum seen current (A) | 0.56 | outlet.n.realpower | Current value of real power (W) | 28 | outlet.n.voltage | Voltage (V) | 247.0 | outlet.n.powerfactor | Power Factor (dimensionless value between 0 and 1) | 0.85 | outlet.n.crestfactor | Crest Factor (dimensionless, equal to or greater than 1) | 1.41 | outlet.n.power | Apparent power (VA) | 46 |=============================================================================== driver: Internal driver information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [options="header"] |=============================================================================== | Name | Description | Example value | driver.name | Driver name | usbhid-ups | driver.version | Driver version (NUT release) | X.Y.Z | driver.version.internal | Internal driver version | 1.23.45 | driver.version.data | Version of the internal data mapping, for generic drivers | Eaton HID 1.31 | driver.parameter.xxx | Parameter xxx (ups.conf or cmdline -x) setting | (varies) | driver.flag.xxx | Flag xxx (ups.conf or cmdline -x) status | enabled (or absent) |=============================================================================== server: Internal server information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [options="header"] |=============================================================================== | Name | Description | Example value | server.info | Server information | Network UPS Tools upsd vX.Y.Z - http://www.networkupstools.org/ | server.version | Server version | X.Y.Z |=============================================================================== Instant commands ---------------- [options="header"] |======================================================================== | Name | Description | load.off | Turn off the load immediately | load.on | Turn on the load immediately | load.off.delay | Turn off the load possibly after a delay | load.on.delay | Turn on the load possibly after a delay | shutdown.return | Turn off the load possibly after a delay and return when power is back | shutdown.stayoff | Turn off the load possibly after a delay and remain off even if power returns | shutdown.stop | Stop a shutdown in progress | shutdown.reboot | Shut down the load briefly while rebooting the UPS | shutdown.reboot.graceful | After a delay, shut down the load briefly while rebooting the UPS | test.panel.start | Start testing the UPS panel | test.panel.stop | Stop a UPS panel test | test.failure.start | Start a simulated power failure | test.failure.stop | Stop simulating a power failure | test.battery.start | Start a battery test | test.battery.start.quick | Start a "quick" battery test | test.battery.start.deep | Start a "deep" battery test | test.battery.stop | Stop the battery test | calibrate.start | Start runtime calibration | calibrate.stop | Stop runtime calibration | bypass.start | Put the UPS in bypass mode | bypass.stop | Take the UPS out of bypass mode | reset.input.minmax | Reset minimum and maximum input voltage status | reset.watchdog | Reset watchdog timer (forced reboot of load) | beeper.enable | Enable UPS beeper/buzzer | beeper.disable | Disable UPS beeper/buzzer | beeper.mute | Temporarily mute UPS beeper/buzzer | beeper.toggle | Toggle UPS beeper/buzzer | outlet.n.shutdown.return | Turn off the outlet possibly after a delay and return when power is back | outlet.n.load.off | Turn off the outlet immediately | outlet.n.load.on | Turn on the outlet immediately | outlet.n.load.cycle | Power cycle the outlet immediately |========================================================================