SB-Bus Commands

The Fluke interface is controlled by a group of SB-Bus commands. Two main groups of commands exist, system commands and control commands. System commands can be recognized by the preceding asterisk * symbol. All other commands are the control commands and they control the specific functions of the Fluke interface. Only the system commands can be executed when the device is selected by the general call address 255 ($FF).
Upper and lower case characters are treated as equals by the Fluke interface for commands as well as for their parameters.
Parameters are separated from the command by at least one space. Multiple parameters are separated from each other by a comma (without extra spaces). A command is parsed and executed after the reception of a CR character.

You can repeat the last command, including its parameters, by simply sending a single CR character to the device. You'll get a NOTHING TO REPEAT ERROR message if no command was previously executed though.

The following description uses a special notation to simplify the explanation. Optional parameters are enclosed in square brackets [...]. You shouldn't type the square brackets yourself if you want to use such a parameter, it's just an indication that the parameter is optional!
If you can choose between multiple parameters the pipe symbol | is used to separate the possible parameters you can choose from (eg: XOFF | ACK means either use XOFF or ACK as parameter).
Sometimes a parameter is a value or a variable piece of text. Such parameters are written in italic and lower-case notation in this description (eg: address).
I often include spaces in the parameter descriptions for readability only. You shouldn't include these spaces in or between the parameters yourself, for the Fluke interface will not understand you if you do.

Here are a few examples of commands and parameters:

*ERROR?
No parameter given, no parameter required.

*FLOW ACK | XOFF
Use the word ACK or the word XOFF as parameter. *SLAVE address | $address
Use a value (eg. 170), or a hexadicimal value (eg $9A) as parameter. The description of the command will show you what the legal range of the value is.

READ? [H[OLD]]
The outer brackets show that the whole parameter is optional, so the command may also be given without a parameter. The brackets around OLD indicate that you can either type H or HOLD as parameter.

MAX? [ [A[BS]] | [S[IGNED]] [,H[OLD]] ]
This is obviously the most complex notation of all parameters in this document. The outer brackets indicate that the MAX? command may be given without any parameters, parameters are all optional. Then we see that we may choose between the ABS and the SIGNED parameter, or their abbreviation A or S.
Finally we may also type the HOLD (or H) parameter. If it is the second parameter, it must be preceded by a comma to separate both parameters.

Important Note

All timings for the Fluke interface are derived from the display clock frequency. Therefore it is very important that the display is not frozen while logging values or when you're interested in minimum, maximum or mean values.
The display of the Fluke 8010 and 8012 can be frozen by shorting the mA and Common inputs together. I don't recommend you to use this function too often, or too long for it WILL destroy your display! This is not a fault of the SB Fluke interface, but is caused by the way Fluke originally freezes the reading! They simply stop the clock of the ADC, which also stops the alternating phases of the display clock, causing it to burn in eventually.

System Commands

*CATALOG?

Use: *CATALOG?

This system command displays all available SB-Bus commands of the Fluke interface. All command names are sent to the master computer, separated by a CR character.

This command can be used together with Acknowledge flow control. If Acknowledge flow control is activated the master must send an acknowledge every time it receives one of the commands from the total list.
Transmission will be terminated if the master responds with an error acknowledge (! or ?) 10 times in a row, in which case the Fluke interface will send a final execution error prompt !> . Transmission is also terminated if an illegal acknowledge character is received from the master or when the master sends an ESC character.

The *CATALOG? command produces the following alphabetically ordered list:

*CATALOG?
*ERROR?
*FAST
*FLOW
*FLOW?
*HOLD
*ID?
*LOCS
*REMS
*RST
*SLAVE
*SLOW
*TRIG
*TST?
AVG?
CLEAR
DUMP?
HOLD
INTERVAL
INTERVAL?
LIST?
MAX?
MEAN?
MIN?
OPTION
READ?
SAMPLES?
START
STATUS?
STOP
=>

The *CATALOG? command doesn't allow any parameters.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

ABORTED ERROR
The user aborted the catalog list by sending the ESC character.

TOO MANY ERRORS
More than 10 successive error acknowledges were received during the transfer under Acknowledge flow control.

*ERROR?

Use: *ERROR?

The *ERROR? command gives you a description of the last command's error cause. Remember that you have to give the *ERROR? command directly after receiving an error prompt, otherwise the cause may be overwritten by the error state of the latest commands.

In fact you only need to give the *ERROR? command if an execution error prompt is received !> . The => prompt will always result in the NO ERROR message, while the ?> prompt will always generate a SYNTAX ERROR message.

Please refer to SB-Bus Errors for a complete list of all possible error messages.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*FAST

Use: *FAST

After this command the Fluke interface is switched to the fast respond mode. In this mode it won't delay after sending a CR character, as it would do if it were switched to slow mode.
The fast mode is the default mode of operation.

You can switch to slow mode by sending the *SLOW command.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*FLOW

Use: *FLOW XOFF | ACK

This command sets the flow control mode of the SB-Bus to either XON/XOFF or Acknowledge.. The default flow control mode is XON/XOFF.
Remember that the Acknowledge flow control (ACK parameter) is an additional flow control and that the XON/XOFF flow control always remains active.

Examples:

*FLOW XOFF
The Acknowledge flow control mode is now switched off.

*FLOW ACK
The Acknowledge flow control mode is switched on, together with the XON/XOFF flow control.

In order to save some program memory the parsing routine is satisfied if it finds the first character of the parameter to be an X or an A. All following characters are ignored.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed

MISSING PARAMETER ERROR
No parameter was given. A parameter is required by this command.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed.

*FLOW?

Use: *FLOW?

With this command you can find out whether the Acknowledge flow control is active or not.

This command will give one of two possible answers:

XON/XOFF         Only the XON/XOFF flow control mode is active.
ACKNOWLEDGE      Acknowledge flow control and XON/XOFF flow control are both active.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*HOLD

Use: *HOLD

This command sets the SB-Bus interface into the HOLD mode, which means that the next command will not be executed directly but will be placed on hold. The command which is placed on hold is not executed until the *TRIG command is given.
When you give the *HOLD command while the hold mode mode is already active (with or without a command waiting to be executed) it will terminate the hold mode. Naturally this will generate an execution error, and the command that was placed in hold will be discarded.
The hold mode will also be terminated if a new SB-Bus address is received before a command is actually placed on hold, even if this new address is the interface's own address. You may send as many SB-Bus addresses as you like if a command is already placed on hold without affecting this waiting command.
Finally the hold mode will be terminated if an attempt is made to give a new command while a command is still on hold, because the interface can have only one command in hold. This means the *TRIG command is the only command that is allowed while a command is placed on hold.

Please note that this a completely different command than the HOLD command (without the asterisk), which is used to freeze the statistical values.

The commands that are to be put on hold must be given completely, including the required parameters. Such a command is parsed immediately, including the parameters. If a parameter error is detected you receive the error prompt, and the hold mode is terminated.

The *ERROR? command can not be placed on hold. This command will always report the last error cause directly, without affecting the hold mode in any way.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

HOLD MODE DEACTIVATED
The hold mode was deactivated because you gave the *HOLD command while the hold mode was already active.

*ID?

Use: *ID?

An SB-Bus device must answer with its name and software version number when it receives this command.

The Fluke interface can respond with one of two strings, depending on the selected meter model:

Fluke 8010 V1.2
Fluke 8012 V1.2

You will have to set the appropriate meter model using the OPTION command before the *ID? command can respond with the proper answer.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*LOCS

Use: *LOCS

This command would allow local control of the device. But since the Fluke interface does not have any local controls, this command has no effect. It is only included for protocol compatibility reasons.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*REMS

Use: *REMS

This command would not allow local control of the device. But since the Fluke interface does not have any local controls, this command has no effect. It is only included for protocol compatibility reasons.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*RST

Use: *RST

This command resets the Fluke interface. Resetting has the same effect as though the system was switched off and back on again. After reset the interface is not selected anymore, so it won't respond with an OK prompt.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*SLAVE

Use: *SLAVE address | $address

The Fluke interface can be set to answer to any SB-Bus address you like. This address is stored in NV-RAM and can be changed with the *SLAVE command.

When the Fluke interface is switched on for the very first time it will respond to the SB-Bus address 254 ($FE), which is the default address for all new devices. You'll have to change the default address to a different unique address as soon as possible to avoid future conflicts with other new devices.

You can enter normal SB-Bus slave addresses ranging from 130 ($82) to 254 ($FE) as parameter to the *SLAVE command. Or you may subtract 128 ($80) from the address, to get addresses in the range of 2 ($02) to 126 ($7E).
It is also possible to enter the address value as a hexadecimal number. Hexadecimal numbers are preceded by a $ symbol, and can be in the range of $82 to $FE, or in the range of $02 to $7E.
Any other value will result in a RANGE ERROR.

The Fluke interface remains selected after the new address is set, but you can test the new address immediately by sending the new address to the bus.

The SB-Bus protocol recommends the address range from 170 ($AA) to 179 ($B3) to be used for measuring instruments. This is just a recommendation, and you may choose any other address you like, as long as it is a unique address on your bus system. But some software may search for an instrument at addresses 170 to 179 first, before scanning all other addresses, to speed up the search.

In order to be able to change the SB-Bus address, the Fluke interface must be selected. It doesn't matter whether it is selected by its own (temporary default) address or by the general call address. If you don't know the private address of the Fluke interface you can always use the general call address 255.
Be careful though, that the Fluke interface must be the only device connected to the bus when you set the *SLAVE address through the general call address. Other devices may also listen to this command and you'll end up with duplicate SB-Bus addresses.

Examples:

*SLAVE 171         New address is set to 171
*SLAVE 43          New address is set to 171 (43 + 128)
*SLAVE $AB         New address is set to 171 ($AB = 171)

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

MISSING PARAMETER ERROR
No parameter was given. A parameter is required by this command.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed.

RANGE ERROR
The value of the parameter was out of it's legal range. Legal values are between 130 to 254, or 2 to 126 decimal. And $82 to $FE, or $02 to $7E hexadecimal.

*SLOW

Use: *SLOW

After this command the Fluke interface is switched to the slow respond mode. In this mode it will delay about 5ms after sending each CR character.
You can switch back to fast mode by sending the *FAST command.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

*TRIG

Use: *TRIG

This command will trigger the execution of the command that was previously placed on hold by the *HOLD command. You can trigger the execution of commands on hold even when the Fluke interface is selected by the general call address.
After the execution of the command the hold mode is cleared. That means that you can trigger a command in hold only once. You'll have to set the command in hold again if you want to trigger it again.
If you give the *TRIG command when no command is set on hold you'll get the message HOLD NOT ACTIVE ERROR.

The command in hold is executed using the parameters that were given to it when it was placed on hold. If an error occurs during the execution of the command on hold a normal error message will be reported.

Please note that the *TRIG command is the only SB-Bus command that can answer with one or more strings, even when it is not followed by a question mark.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

HOLD NOT ACTIVE ERROR
The hold mode is not active, so there is nothing to be executed.

NOTHING IN HOLD ERROR
The *HOLD command was given, but no command was placed in hold yet. Obviously the *TRIG command can't be placed in hold. The hold mode is switched of after this error.

*TST?

Use: *TST?

This command performs some minor functionality tests on the hardware of the Fluke interface. It is impossible to make a 100% reliable functionality test, but it's a test anyway. The command tests the internal RAM memory, and the presence and operation of the EEPROM.

If all's well the *TST? command will produce the next two lines:

0 WATCHDOG RESETS
MEMORY OK

The first line tells us how many watch dog resets have occurred since the last time the *TST? command is given, or since the interface was powered up.
A watch dog reset may indicate a software error, but it may also be caused by an electrical flash-over. Keep in mind that the Fluke interface is embedded in a system which may be connected to voltages of up to 1500V above ground!
A watch dog reset has the same effect as switching the meter off and on again, so it won't be selected and all statistical functions and the log are cleared if a watch dog reset does occur.
Under normal circumstances I have never noticed watch dog resets myself with the Fluke interface.

The second line indicates that the EEPROM is still working and that the contents are valid.
Other possible answers of the *TST? command are:

MEMORY FAILS
The EEPROM doesn't respond to commands, or may be missing completely. The EEPROM is only read once, during start up.

MEMORY WRITE FAILS
The EEPROM is present but can't be written to. Replace the EEPROM chip. The EEPROM is written to every time the *SLAVE or OPTION command is executed.

MEMORY LOST
The contents of the EEPROM were not valid when the set was switched on. This error occurs only once, because the EEPROM will be filled with valid default data when it happens.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

Control Commands

The control commands for the Fluke interface can be divided in 3 specific groups.

Statistics commands
The statistics commands control the statistical functions of the Fluke interface. They can be used to read one of the accumulated values, or clear them all at once. Three types of values are accumulated from a certain starting point, the maximum value, the minimum value and the mean value. Each of these types can be recalled by one of the dedicated commands: AVG?, MAX?, MIN? and MEAN?
Each type is divided in two sub-types, the accumulation of absolute values and the accumulation of signed values. Remember that a value of -1.234 is less than +1.000 when interpreted as a signed value, and it is more if interpreted as an absolute value.
All types and sub-types are accumulated continuously, and can be read at any time.

Clearing the statistic values:

  • The CLEAR command clears all accumulators and therefore all statistics are started from scratch.
  • Naturally the values are also cleared when the Fluke interface is reset or has just been switched on.
  • Finally all values are cleared when you switch to another range.
    Switching range will clear the values because the Fluke interface can only read a value from the display, and is unaware of the actual scaling of the value. Beware though that the accumulation of the new series will start immediately after the range is switched, including the values measured during the settling time. This might cause erroneous results, especially with the accumulated minimum and maximum values.

Log commands
These commands are used to control the Log functions of the Fluke interface. The Fluke interface can store up to 701 values in a log file. All values are stored at a pre-determined intervals until all 701 values are logged.
The Log commands control the starting, stopping, interval time and type of data to be logged.

Here is a list of all the Log commands: INTERVAL, INTERVAL?, LIST?, SAMPLES?, START, STATUS? and STOP. The Log functions are not affected by the CLEAR command. But, much like the Statistics functions, the Log function is aborted when you switch to another range. All values logged so far will remain available and can still be read by the LIST? command.

The BT indicator in the meter's display will flash while the Log function is active as a visual feedback to the user.

Remaining commands
The remaining commands are simply the commands that don't belong to the Statistics or Log commands.

AVG?

Use: AVG? [ [A[BS]] | [S[IGNED]] [,H[OLD]] ]

This command is new in software version V1.2. It is simpy an alias for the MEAN? command.

CLEAR

Use: CLEAR

This command erases all statistical values, after which new statistical values will start accumulating automatically. The statistical values that are cleared are all variants of the Maximum, Minimum and Average values.

Changing the range of the meter has the same effect as sending the CLEAR command. The meter can only detect range changes when the decimal point changes position. So the meter will probably not notice a range change if the decimal point remains in the same position.

Please note: Be aware of some strange effects in the statistical results if you rely on the automatic clearing of the statistical values when switching to another range. Normally the meter needs a little time to settle and produce stable values after switching the range. All readings taken during this settling time are also accumulated in the statistical values and may cause erroneous results.

The statistical values that are stored by the HOLD command are not cleared by the CLEAR command.

The CLEAR command only affects the values of the AVG?, MAX?, MIN? and MEAN? commands. The log values are not affected.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

DUMP?

Use: DUMP?

This command is new since software version V1.2. It simply dumps every reading the meter takes to the SB-Bus, until you abort it. You can abort the command by pressing ESC or by selecting a new SB-Bus Address. Changing ranges on the meter doesn't abort the dump.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

ABORTED ERROR
The dump was aborted by the user.

HOLD

Use: HOLD

The HOLD command stores all current values in a temporary memory location, to enable easy reading of values taken at the same moment.

This command can be very useful together with the *HOLD system command. Placing this command on hold, enables you to take multiple readings on different devices at the same moment in time. To do this set all instruments in hold one by one, then select them all with the general call address and send the *TRIG command. After that you can read the measured values from all devices one by one.

Please note the difference between the HOLD command and the system *HOLD command! The HOLD command places all current values in a temporary memory location, while the system *HOLD command will place the next command in hold mode, waiting to be executed by the *TRIG command.

The HOLD command will store the current value, the minimum values, the maximum values and the mean values in a temporary memory location.
There's only one temporary memory location, so the next HOLD command will always overwrite the values that were previously stored there.

Please note that these are the values you normally read while executing the READ?, AVG?, MIN?, MAX?, and MEAN? commands.
Normally these commands respond with the current value of the indicated property. If you want to read the value that is stored in the temporary memory location you'll have to include the parameter H or HOLD after the command.

The HOLD memory will not be influenced by switching to a different range or function. It's the user's responsibility to know what range and function the values were taken from. The placement of the decimal point is correct, but you won't be able to tell the difference between 1.234 V and 1.234 MΩ for instance.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

INTERVAL

Use: INTERVAL time

The INTERVAL command is used to set the interval time between two successive samples that are stored in the log.

The parameter time is given in seconds and may range from 0 to 3600 seconds, so the maximum interval time is one sample per hour. If the interval is set to 0 all measurements will be logged at maximum speed, which is 400ms per sample, or 2.5 samples per second on a 50Hz meter.

The default interval time is set to 0 after a reset.

The interval may only be changed while the Log function is not active. Once the Log function is started it is not allowed to change the interval time anymore. A flashing BT on the meter's display will indicate that the Log function is active at the moment.

Error messages:

RANGE ERROR
The parameter value was out of range. Legal range is 0 to 3600 seconds.

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

MISSING PARAMETER ERROR
No parameter was given. A parameter is required by this command.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed. LOG ACTIVE ERROR
The Log function was already started. You can't change the interval anymore until the Log function is stopped.

INTERVAL?

Use: INTERVAL?

This INTERVAL? command is used to find out to what value the current time interval is set. The answer is a value in the range from 0 to 3600 seconds.

This command can be given any time, even when the Log function is active at the moment.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

LIST?

Use: LIST? [ [begin] [,] [end] ]

With this command you can get a list of some or all of the samples that are stored in memory by the Log function. It may be given at any time, whether the Log function is still running or not. So you may request the current list even if it will still take several hours, or even days, before the Log function is completed.

All samples are numbered, from 0 to 700. Every record which is sent to the SB-Bus has the format sample,value where sample is the sample number and value is the stored sample value. The sample number can be 1 to 3 digits long, depending on its value. The format of the value is exactly the same as the format of the values returned by the READ? command.

The LIST? command is non-destructive, which means that it doesn't interfere with the already stored values, nor with the storing of new values. Even switching to another range will not erase the already stored samples, although the Log function will be terminated. The Log list is only erased when a new START command is given, while at the same time a new Log list is started.

Also resetting the interface (e.g. by switching it off and on again) will clear the Log list. In which case the LIST? command will send no results.

Every sample is sent on a separate line. The LIST? command can produce multiple result lines and can therefore be used together with acknowledge flow control.

The LIST? command will send all available samples to the SB-Bus one by one if no parameter is given, starting at sample 0 and continuing until the last taken sample. Even brand new samples, taken while the list is being sent to the SB-Bus, will be included in the list.

You can specify a portion of the Log list that you're interested in with the begin and end parameters.
Only one sample is returned if you only specify the begin parameter. The sample returned is of course the sample number indicated by begin, provided that this sample has already been taken. Otherwise nothing will be returned.
If you add a comma after the begin parameter you'll get a list starting at the begin sample and continuing until the end of the Log list.
And if you also specify the end parameter you'll get a list starting at begin extending all the way to end, provided those samples already exist.
It is also possible to give only a comma, followed by the end parameter, in which case the list starts at the first sample (sample 0) and extends until sample number end for as long as they do exist.

The Fluke interface will automatically swap the values of begin and end if begin appears to be bigger than end.

A listing can be aborted by sending an ESC character to the Fluke interface.

Please note: It goes without saying that the Fluke interface can only send the samples that already have been taken. No error is given if you try to read more samples than really exist. Non existing samples are simply not sent at all.

Examples:

LIST?          Send the whole Log list to the SB-Bus.
LIST? 100      Send only sample number 100.
LIST? 100,     Send all available samples starting at sample 100.
LIST? 100,200  Send all available samples starting at sample 100 until sample 200.
LIST? ,200     Send all available samples from sample 0 until sample 200

In short it comes down to this: The default value for begin is 0, and the default value for end is 700. The minimum value of begin and end is 0, and the maximum value is 700.

Sample 0 is a sample that is taken immediately after the START command is given, and is therefore not affected by a time interval or averaging. Sample 1 is the first real sample, that is taken a certain interval after sample 0.

Error messages:

RANGE ERROR
One of the parameter values was out of range. Legal range is 0 to 700.

ILLEGAL PARAMETER ERROR
One of the parameters was not recognized. The command is not executed.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed.

ABORTED ERROR
The listing was aborted by the user.

TOO MANY ERRORS
More than 10 successive error acknowledges were received during the transfer under Acknowledge flow control.

MAX?

Use: MAX? [ [A[BS]] | [S[IGNED]] [,H[OLD]] ]

This command will send the current or the memorized maximum measured value to the computer. You may choose between the absolute maximum or the signed maximum value to be returned.

The maximum value is reset by the CLEAR command, or by switching to another range.
Reading the maximum value is none-destructive, which means that you may read the maximum value as often as you like.

The format of the value sent to the computer is the same as that of the READ? command.

Two types of maximum values exist, the absolute maximum and the signed maximum. The A or ABS parameter will send the absolute maximum value, while the S or SIGNED parameter will send the signed maximum value to the computer. The Fluke interface will send the absolute maximum by default when none of these parameters are given.

Normally the MAX? command will return the current maximum value. But if the H or HOLD parameter is given it will return one of the maximum values that were stored by the HOLD command. The HOLD command stores both absolute and signed maximum values, so both values can be requested at any time.

All parameters may be abbreviated to the first character. It is not important in what order the parameters appear. If both ABS and SIGNED parameters appear behind the command only the last one of the two will take effect.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

MEAN?

Use: MEAN? [ [A[BS]] | [S[IGNED]] [,H[OLD]] ]

This command will send the current or the memorized average measured value to the computer. You may choose between the absolute mean or the signed mean value to be returned.

The mean value is reset by the CLEAR command, or by switching to another range.
Reading the mean value is none-destructive, which means that you may read the mean value as often as you like.

The format of the value sent to the computer is the same as that of the READ? command.

Two types of mean values exist, the absolute mean and the signed mean. The A or ABS parameter will send the absolute mean value, while the S or SIGNED parameter will send the signed mean value to the computer. The Fluke interface will send the absolute mean value by default when none of these parameters are given.

Normally the MEAN? command will return the current mean value. But if the HOLD parameter is given it will return one of the mean values that were stored by the HOLD command. The HOLD command stores both absolute and signed mean values, so both values can be requested at any time.

All parameters may be abbreviated to the first character. It is not important in what order the parameters appear. If both ABS and SIGNED parameters appear behind the command only the last one of the two will take effect.

Please note: In order to calculate the mean value we need to add all measured values together and count the number of samples we took. Due to memory restrictions we can't allow any of the two values to grow indefinitely, so I had to set a maximum limit to those values. I've set the maximum count to be 16.777.216 samples, after which the reported mean value won't be accurate any more. At a rate of two and a half samples per second this is equivalent to approximately 1864 hours, which is about 77 days.
Both sums are accumulated in a 5 byte long register. This ensures that we won't run out of memory there before we reach the maximum sample count, not even when every sample has its maximum value.
I personally think that this is more than adequate.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

DIVIDE BY 0 ERROR
You requested the mean value too soon after sending the CLEAR command or after switching to another range. No samples were taken yet which obviously results in a division by 0.

MIN?

Use: MIN? [ [A[BS]] | [S[IGNED]] [,H[OLD]] ]

This command will send the current or the memorized minimum measured value to the computer. You may choose between the absolute minimum or the signed minimum value to be returned.

The minimum value is reset by the CLEAR command, or by switching to another range.
Reading the minimum value is none-destructive, which means that you may read the minimum value as often as you like.

The format of the value sent to the computer is the same as that of the READ? command.

Two types of minimum values exist, the absolute minimum and the signed minimum. The A or ABS parameter will send the absolute minimum, while the S or SIGNED parameter will send the signed minimum value to the computer. The Fluke interface will send the absolute minimum by default when none of these parameters are given.

Normally the MIN? command will return the current minimum value. But if the HOLD parameter is given it will return one of the minimum values that were stored by the HOLD command. The HOLD command stores both absolute and signed minimum values, so both values can be requested at any time.

All parameters may be abbreviated to the first character. It is not important in what order the parameters appear. If both ABS and SIGNED parameters appear behind the command only the last one of the two will take effect.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

OPTION

Use: OPTION 8010 | 8012

This command is used to set-up the meter model. The only purpose for this is to let the *ID? command display the proper meter model.
The meter model is stored in NVM so normally this command is only required once during the life time of the instrument. By default the meter model is set to 8010 in a brand new Slave.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

MISSING PARAMETER ERROR
No parameter was given. A parameter is required by this command.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed.

READ?

Use: READ? [H[OLD]]

This command is used to read the current value shown on the display, or to read the value stored by the HOLD command.

The display value is sent to the computer as a normal decimal number. Leading zeroes are suppressed, except for numbers that are less than 1 in which case a 0 is put in front of the decimal point.
Negative numbers are preceded by a - sign, while positive numbers have no specific prefix. Occasionally the meter displays a value of -0.00, in which case the Fluke meter will send only the positive value 0.
Overload is represented as 9999 or -9999, with possibly a decimal point placed somewhere.

Please note that only the display value is sent to the computer, and nothing is being said about the actual range or function of the measurement.

Below you find some display and interface reply combinations to give you a general idea of the relationship between them.

DisplaySB-Bus
1.231.23
.1230.123
12.3412.34
-12.34-12.34
00.00
-0.000
1  . 99.99
-1  . -99.99

Normally the READ? command sends the current display value to the computer. But if the READ? command is followed by an H or HOLD parameter it will send the value that was stored by the most recent HOLD command.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed.

SAMPLES?

Use: SAMPLES?

This command will return the number of samples that are currently stored in the Log list. It doesn't matter whether the Log function is active or not.

You can use the answer to determine how long it will take before the Log list is filled, or to know how many samples are already taken.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

START

Use: START [ M[OMENT] | A[BS] | S[IGNED] ]

This command will clear the existing samples in the Log memory and then it starts a new Log. The parameter determines what kind of value will be logged. A parameter may be abbreviated to the first character if you like.
The BT indicator on the meter's display will flash slowly as long as the Log function is active. The indicator will be switched on or off every time the meter takes a reading. This isn't necessarily the same as the sample rate.

The STOP command can be used to stop the Log function prematurely. Also changing the meter range will stop the Log function. In either case the available samples will remain in the Log memory.
The Log function will be terminated automatically after 701 samples are taken.

An old Log list can only be cleared by the START command, and of course by the *RST command and by switching the interface off and on again.

You may choose between 3 different types of values to be logged. Only one type can be active per Log session, so you have to decide which one you'll need beforehand.

Parameter

Logged value type

None, M or MOMENT

The momentary value is logged. The momentary value is the value that is displayed at the moment the sample must be taken.

A or ABS

The average of the absolute values of all readings taken during the interval is stored every time a sample is taken.

S or SIGNED

The average of all readings taken during the interval is stored every time a sample is taken.

The first sample is stored immediately after the Log function is started. Therefore it can never be the result of an average calculation, and is always the value in the display at the time the START command was given.

The momentary value is the default value to be sampled when no parameter is given.
The meter will automatically store only momentary values if the interval is set to 0. It's no use calculating the average value of just one sample, is it?

Please note that the value of readings may vary considerably in between samples when a large interval is chosen. I recommend sampling the ABS or SIGNED values when using long intervals.

It is not allowed to give the START command while a previous Log function is still running. It is also not possible to change the interval while the Log function is running.

Error messages:

ILLEGAL PARAMETER ERROR
The parameter was not recognized. The command is not executed.

TOO MANY PARAMETERS ERROR
Too many parameters were given. The command is not executed.

LOG ACTIVE ERROR
The Log function was already started. You can't start a new Log session while a previous one is still running.

STATUS?

Use: STATUS?

This command reports the current status of the Log function. It indicates whether the Log function is still active and what type of values are logged.

The STATUS? command will answer with one of the following strings:

LOG MODE OFF              The Log function is not active (any more).
MOMENTARY LOG MODE        The Log function is running and stores momentary values.
ABSOLUTE MEAN LOG MODE    The Log function is running and stores absolute mean values.
SIGNED MEAN LOG MODE      The Log function is running and stores signed mean values.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

STOP

Use: STOP

This command will abort the Log mode prematurely. It will not erase the values that are logged so far, so you can still recall the list after stopping the Log function.
Once stopped, the Log function can not be continued. Starting the Log function again will erase the current Log file, and Logging is started with an empty list.

Error messages:

NO PARAMETERS ALLOWED
No parameter was expected. A parameter was given anyway.

LOG NOT ACTIVE ERROR
The Log function is not active, so there's nothing to be stopped.