Command list for Vue-HCT controllers

adi?

Read current A/D

Reads the current sense A/D and returns the result. Normally this is the laser current, but on the TEC controller it senses the TEC current. On products that have multiple current sensors (HC and HCV), this command returns the sum of the individual sensor readings. In such cases the maximum returned value is 4095 * the number of sensors. See commands adi1? and adi2? (HC and HCV), and adi3? and adi4? (HCV).

Return type: int range: 0-4095 (but see description)

adixc?

Get external current control ADC

Returns the reading on the external current control ADC.

Return type: int range: 0-4095

adlt?

Read primary temperature A/D

Reads the primary temperature A/D converter and returns the result. The conversion of this result to temperature is calibration dependent, but the result in degrees C can be always be obtained in a system-independent manner by the t0? command.

Return type: int range: 0-65535

adp?

Read laser power A/D

Reads the laser power A/D converter and returns the result. Conversion of this number to power is dependent on calibration, which is a customer setting. The calibrated power can be read by means of the p? and pa? commands.

Return type: int range: 0-4095

adtcpu?

Reads the CPU temperature A/D converter

Reads the CPU temperature analog/digital converter channel. On HV, MV-21 and MV-40 systems this command reads a thermistor mounted on the control board, and the temperature conversion formula used is:
degreesC = -counts * 2.5 / 4095 * 42.9019 + 79.26541

On LV-15 and LV-30 this command reads a thermistor mounted on the control board, and the conversion formula is:
degreesC = 109.5628 - 98.0553V + 42.0291V2 - 7.7364V3, where V = 3.3 * counts / 4095

.

On TEC controllers this command reads a temperature monitor built into the CPU and the conversion formula is:
degreesC = 359.117 - (counts * 3.0 / 4095) / 0.00435

On other products this reads a signal internal to the CPU chip, and the temperature conversion formula is:
degreesC = (0.650 - (counts * 2.5 / 4095)) * 500.0 + 25.0

On all products the tcpu? command performs the correct conversion and returns a result in degrees C.

Return type: int range: 0-4095

adteci?

Read the TEC current A/D converter

Reads a A/D converter that senses an internal signal related to the TEC current. For factory diagnostics only.

Return type: int range: 0-4095

adv?

Read laser voltage A/D

Reads the laser voltage A/D converter and returns the result. The conversion of this result to voltage is system-dependent. The command v? always returns the properly scaled laser voltage.

Return type: int range: 0-4095

advin?

Read input voltage A/D

Reads an A/D converter that senses the input voltage. The number returned is proportional to input voltage, but the conversoin factor of counts to volts is product-dependent.

Return type: int range: 0-4095

apc?

Get amps per count

Returns the current calibration constant in amps per DAC count. This is set at the factory and cannot be changed in the field. On the TEC controller this command has no meaning and is present only for compatibility.

Return type: float

as

Enable/disable Autostart

Sets the state of the Autostart power-on enable feature. When this feature is enabled, Autostart will run each time the power supply is turned on.

Argument type: int range: 0-1

as0

Abort Autostart

Aborts the Autostart regardless of its current state. Allows control of the unit using all the other commands.

as1

Restart Autostart

Begins the Autostart procedure as if the unit was just turned on.

as?

Return the power-on Autostart setting

Returns 1 if Autostart is programmed to run the next time the controller is turned on, 0 if it is not.

Return type: int range: 0-1

ascdrh

Set the CDRH compliance state of Autostart

Sets the safety time delay (CDRH) compliance mode of Autostart. A non-zero argument turns the feature on.

Argument type: int range: 0-1

ascdrh?

Get the CDRH compliance state of Autostart

Returns the safety time delay (CDRH) compliance mode of Autostart. A return value of 1 indicates that the feature is on.

Return type: int range: 0-1

asi

Set Autostart operating current

Sets the value of the current (in Amps) that Autostart will use as a final operating state. On systems where constant power operation is available, this value is ignored if Autostart is set to constant power (see the asm and asm? commands). Regardless of whether Autostart is in constant current or constant power mode, the value sent by this command is stored in nonvolatile memory and retained by the controller until it is changed by a subsequent asi command.

Argument type: float

asi?

Get Autostart operating current

Returns the value of the current (in Amps) that Autostart will use as a final operating state. On systems where constant power operation is available, this value is ignored if Autostart is set to constant power (see the asm and asm? commands).

Return type: float

asm

Set Autostart regulation mode

Sets the final operating mode of Autostart, either constant current or constant power. On systems that do not support constant power, this command is not available. An argument of 0 sets constant current mode, 1 sets constant power.

Argument type: int range: 0-1

asm?

Get Autostart regulation mode

Returns the final operating mode of Autostart, either constant current or constant power. On systems that do not support constant power, this command is not available. An argument of 0 indicates constant current mode, 1 indicates constant power.

Return type: int range: 0-1

asp

Set Autostart operating power

Sets the final operating power in Autostart mode. On products that do not support constant power operation, this command is unavailable. This value is irrelevent when Autostart is set to constant current operation (see the asm and asm? commands). Regardless of whether Autostart is in constant current or constant power mode, the value sent by this command is stored in nonvolatile memory and retained by the controller until it is changed by a subsequent asp command.

Argument type: float

asp?

Get Autostart operating power

Returns the final operating power in Autostart mode. On products that do not support constant power operation, this command is unavailable. This value is irrelevent when Autostart is set to constant current operation (see the asm and asm? commands).

Return type: float

ast?

Get the current Autostart state

Returns the state of the Autostart. The reply is a small integer whose meaning varies from one product to another. Consult the product manual for the list of Autostart states for your specific product.

Return type: int

aswd

Set the Autostart warmup delay

Sets the value of the Autostart warmup delay. This sets the minimum length of time, in seconds, that Autostart will wait at the warmup current (see aswi and aswi?). This time may be extended to wait for temperature stabilization.

Argument type: float

aswd?

Get the Autostart warmup delay

Returns the value of the Autostart warmup delay. This is the minimum length of time, in seconds, that Autostart will wait at the warmup current (see aswi and aswi?). This time may be extended to wait for temperature stabilization.

Return type: float

aswi

Set the Autostart warmup current

Sets the value of the Autostart warmup current. This sets the laser diode current, in amps, that will be used during the warmup period.

Argument type: float

aswi?

Get the Autostart warmup current

Returns the value of the Autostart warmup current. This is the laser diode current, in amps, that will be used during the warmup period.

Return type: float

c?

Get operating mode

Returns the control mode of the laser, either "i" or "c", indicating constant current mode or constant power mode, respectively.

Return type: string

cf

Clear fault

Clears any active fault. If the laser was shut down because of a fault condition, this command will allow it to operate again. A Laser On command (l1) is required to resume laser operation.

ci

Enter constant current mode

Causes the laser to enter constant current mode at the last measured value of operating current. If the laser is disabled when this command is issued, it will turn on in constant current mode in response to a subsequent "l1" command.

cp

Enter constant power mode

Causes the laser to enter constant power mode at the last measured value of output power. If the laser is disabled when this command is issued, it will turn on in constant power mode in response to a subsequent "l1" command. On systems that do not support constant power operation, this command is unavailable.

cp?

Get light loop status

Return type: int range: 0-1

cs0

Disable checksums

Disables the use of Verhoeff checksums in all subsequent communications. Checksums are disabled by default on system power-up. Note that the Verhoeff algorithm does not permit negative numbers.

cs1

Enable checksums

Enables the use of Verhoeff checksums in all subsequent communications. Checksums are disabled by default on system power-up. This is an obsolete feature of some controllers and its use is deprecated.

do?

Return the current offset

Returns the size of the current offset in counts. This is part of the current calibration. It is factory set and can not be changed by the user.

Return type: int

f?

Get operating fault

Returns a small integer indicating the presence of a system fault. A zero return indicates that the system is working properly. A non-zero return indicates that the system has shut off the laser because of a fault condition. The meaning of the fault code varies from one product to another.

Return type: int

hrs?

Get system operating hours

Returns the total system operating hours.

Return type: float

i

Set laser amps

Sets the laser current in amps.

Argument type: float

i?

Get laser amps

Reads the laser current in amps.

Return type: float

imdac?

Get light regulation/current limit DAC

Returns the last value written to the DAC1. On early DPSS systems this value limits the output of the hardware constant power servo. On MV systems this is a hardware current limit used in external control mode. On most systems it is set to a value of 4095 when the laser in on. It is controlled automatically by firmware and cannot be set directly by the end user.

Return type: int range: 0-4095

ioff

Enable/disable external current offset

Enables or disables the external analog current control feature.

Argument type: int range: 0-1

ioff?

Is external current offset enabled?

Returns the state of the external analog current control feature.

Return type: int range: 0-1

is?

Get current set point

Returns the constant current set point in amps. In constant current mode this is equivalent to i?.

Return type: float

l0

Disable laser

Turns the laser off. The operating current (if in constant current mode), or the light power (if in constant power mode) is saved in volatile memory. When the "laser on (l1)" command is issued the laser will restart at the stored setting.

l1

Enable laser

Turns the laser on at the last current or light power setting. When the controller is first powered on, the operating conditions default to current control at 0.0 amps.

l?

Get laser enable state

Return type: int

ldac?

Get current DAC

Returns the last value written to the current control DAC.

Return type: int range: 0-4095

limax

Set maximum laser amps

Sets the maximum allowed laser current in amps. This command allows the user to set the current ceiling for a particular laser device. The value must be less than or equal to the system maximum current. This value is stored in non-volatile memory, and will remain in effect until the next "limax" command is issued.

Argument type: float

limax?

Get maximum laser amps

Returns the maximum allowed laser current. See "limax" for further information.

Return type: float

lpmax

Set maximum laser watts

Sets the maximum allowed laser power during constant power mode. This command allows the user to set the power ceiling for a particular laser device. This value is stored in non-volatile memory, and will remain in effect until the next "lpmax" command is issued. The controller refers to this value only when processing a "p" command. In constant current operation this limit will not protect the laser against excessive current. For that purpose use the "limax" command.

Argument type: float

lpmax?

Get maximum laser watts

Returns the maximum allowed laser power during constant power mode. See "lpmax" for further information.

Return type: float

lse

Set the laser slope efficiency

Sets the laser slope efficiency in amps/watt. This plays a role in the operation of the firmware-based constant power mode. This number is stored in flash memory.

Argument type: float

lse?

Get the laser slope efficiency

Gets the laser slope efficiency in amps/watt.

Return type: float

lsl?

Get the slope of the primary temperature versus time curve

Available only on systems with one or more temperature servos. Returns a number proportional to the change in the primary temperature versus time.

Return type: float

ltcd

Set the primary temperature offset servo coefficient

Sets the delta, or offset, coefficient of the primary temperature servo. For a full description of the servo algorithm and coefficients, see "Temperature Control and Measurement".

Argument type: float

ltcd?

Get the primary temperature offset servo coefficient

Returns the delta, or offset, coefficient of the primary temperature servo. For a full description of the servo algorithm and coefficients, see "Temperature Control and Measurement".

Return type: float

ltcs

Set primary temperature servo slope coefficient

Sets the slope coefficient of the primary temperature servo. For a full description of the servo algorithm and coefficients, see "Temperature Control and Measurement".

Argument type: float

ltcs?

Set primary temperature servo slope coefficient

Returns the slope coefficient of the primary temperature servo. For a full description of the servo algorithm and coefficients, see "Temperature Control and Measurement".

Return type: float

ltdr?

Get scaled primary TEC drive

Returns the value of the primary TEC drive signal, scaled from 0-30000 such that 30000 corresponds to maximum heating, 0 corresponds to maximum cooling, and 15000 corresponds to the resting state (neither heating nor cooling).

Return type: int range: 0-30000

lten

Enables/disables primary temperature servo

An argument of 1 engages the primary temperature servo at the last known value of the set point. An argument of 0 disengages the primary temperature servo, and forces the TEC drive to the neutral position (neither heating nor cooling).

Argument type: int range: 0-1

lth

Set the laser diode threshold

Sets the laser diode threshold in amps. This plays a role in the operation of the firmware-based constant power mode. This number is stored in flash memory.

Argument type: float

lth?

Get the laser diode threshold

Gets the laser diode threshold in amps.

Return type: float

ltlim

Set TEC 0 operating limit

Sets the TEC operating limit on a scale where 15000 is full scale (0% to 100%). The factory-set default is 15000.

Argument type: int range: 0-15000

ltlim?

Get TEC 0 operating limit

Queries the TEC operating limit on a scale where 15000 is full scale (0% to 100%). The factory-set default is 15000.

Return type: int range: 0-15000

lts?

Get primary temperature servo state

Returns a small integer indicating the state of the primary temperature servo. A returned value greater than 100 indicates a fault condition, which will cause the laser to be shut off.

Return type: int

ltsp?

Get primary temperature set point

Returns the primary temperature set point in degrees C.

Return type: float

ltst?

Get primary TEC status

Returns 1 if the primary TEC driver chip has shut off, 0 if it's OK. A shutoff is usually caused by the driver chip exceeding its rated operating temperature.

Return type: int range: 0-1

p

Set laser watts

Sets the laser power in watts.

Return type: float

pa?

Read watts

Returns the laser power as measured by the controller, regardless of whether the system is in constant power or constant current mode. In constant power mode, measurement errors may cause the returned value to differ slightly from the power set point. In constant current mode, this command is equivalent to p?.

Return type: float

pc

Enable/disable pulse counting

Enable or disable the "pulse counting" feature. LV: If this is enabled and the controller is set to pulsed mode, the controller begins to count pulses as soon as the laser is turned on. When the count is reached (see "pcn" command) the laser is shut off. It is also possible to terminate pulse counting with a falling edge applied to the trigger pin; to enable this feature use the "pcf" command. HCT: If this is enabled and the controller is set to internal pulsed mode, this feature takes control when the "pcs" (pulse count start) command is received. The controller will produce a pre-programmed number of output pulses and then shut off. See the "pcl" command which sets the pulse count, and the "pcd" command which sets a delay before the first pulse.

Argument type: int range: 0-1

pc?

Is pulse counting enabled?

Gets the enable/disable state of the pulse counting feature.

Return type: int range: 0-1

pcd

Set pulse counting delay

In "pulse counting" mode, sets a delay between the receipt of the laser on command and the first pulse. Units are milliseconds.

Argument type: int range: 0-65535

pcd?

Get pulse counting delay

Return type: int range: 0-65535

pcl

Set pulse count limit

Sets the number of pulses that will be produced in "pulse counting" mode before the laser will be shut off.

Argument type: int range: 0-65535

pcl?

Get pulse count limit

Return type: int range: 0-65535

pcs

Start pulse counting now

See the pc command for a full explanation.

pcs?

Is pulse counting in progress?

A true (1) return indicates that pulse counting is currently in progress; false (0) indicates that it is not.

Return type: int range: 0-1

pl

Enable/disable pulsing

Sets the pulse enable state, either enabled (1) or disabled (0, CW operation).

Argument type: int range: 0-1

pl?

Is pulsing enabled?

Returns the pulse enable state, either enabled (1) or disabled (0, CW operation).

Return type: int range: 0-1

plm

Set internal/external pulsing

Sets the pulse mode. 0 selects internal operation wherein the pulse repetition rate and pulse width are set by the controller. 1 selects external operation wherein an applied logic signal determines the repetition rate and pulse width.

Argument type: int range: 0-1

plm?

Get external/internal pulsing

Returns the pulse mode. 0 indicates internal operation wherein the pulse repetition rate and pulse width are set by the controller. 1 indicates external operation wherein an applied logic signal determines the repetition rate and pulse width.

Return type: int range: 0-1

plpt?

Get true pulse period

Returns the true pulse period. Accounts for the fact that the pulse period and pulse length must sometimes be rounded off due to limited precision of the timing hardware.

Return type: int

plrr

Set repetition rate

Sets the pulse repetition rate in pulses per second. Applies to internal pulse mode only. The upper limit of the repetition rate varies from one product to another, and can be determined with the plrrm? command.

Argument type: float

plrr?

Get repetition rate

Returns the pulse repetition rate in pulses per second. The value is only meaningful in internal mode, although the command always returns the last set value.

Return type: float

plrrm?

Get maximum repetition rate

Returns the maximum allowed repetition rate, which is system type dependent. This is set at the factory.

Return type: float

plw

Set pulse width

Sets the pulse width in seconds. Applies only to internal mode. The maximum possible value is the inverse of the repetition rate (plrr/plrr? commands).

Argument type: float

plw?

Get pulse width

Returns the pulse width in seconds. The value is only meaningful in internal mode, although this command always returns the last set value.

Return type: float

plwt?

Get true pulse width

Returns the true pulse width. Accounts for the fact that the pulse period and pulse length must sometimes be rounded off due to limited precision of the timing hardware.

Return type: int

prod?

Get product name

Returns a string describing the product type.

Return type: str

ps?

Get power set point

Returns the constant power mode set point in watts. In constant current mode, this command is equivalent to p?.

Return type: float

sn?

Get serial number

Returns the system's serial number, a 32-bit unsigned integer. This is set at the factory and cannot be changed in the field.

Return type: int

t0?

Read temperature at Thermistor 0

Measures the signal on thermistor input 0, converts it to a temperature using the previously stored thermistor calibration constants, and returns the result in degrees C. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement".

Return type: float

t0cold

Set cold temperature threshold

Sets the "cold" operating limit in degrees C below which the laser output is disabled.

Argument type: float

t0cold?

Get cold temperature threshold

Gets the "cold" operating limit in degrees C below which the laser output is disabled.

Return type: float

t0dr

Set the TEC drive

Sets the TEC drive on a scale where 0 = maximum cooling, 15000 = no cooling or heating, 30000 = maximum heating. Issuing this command will have the effect of disengaging the temperature servo, so the temperature of the load will no longer be regulated.

Argument type: int range: 0-30000

t0dr?

Get the TEC drive

Gets the TEC drive on a scale where 0 = maximum cooling, 15000 = no cooling or heating, 30000 = maximum heating. This command will always return the value of the TEC drive at the moment and has no effect on the servo.

Return type: int range: 0-30000

t0en

Enable/disable temperature checking (most products) or enable/disable temperature servo (TEC)

On most products: Enables/disables temperature checking of the laser based on the value of thermistor #0. If this feature is enabled, a fault is produced when the laser temperature falls above a maximum value (set by t0hot) or below a minimum (set by t0cold).

On TEC controllers this command engages/disengages the temperature servo, i.e., enables/disables active control of the load temperature.

Argument type: int range: 0-1

t0en?

Is temperature checking enabled?

Returns the enable/disable state of the laser temperature checking.

Return type: int range: 0-1

t0hot

Set hot temperature threshold

Sets the "hot" operating limit in degrees C above which the laser output is disabled.

Argument type: float

t0hot?

Get hot temperature threshold

Gets the "hot" operating limit in degrees C below which the laser output is disabled.

Return type: float

t0i

Sets intercept calibration constant for Thermistor 0

Sets the intercept calibration constant for the first thermistor (t0). This is the temperature reported for an observed voltage of 0.0V. The value is stored in non-volatile memory. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement". On newer MV and MV systems this command is replaced by t0a, t0b, t0c and t0d.

Argument type: float

t0i?

Returns intercept calibration constant for Thermistor 0 (most products) or Read TEC current (TEC)

On most products: Returns the intercept calibration constant for the first thermistor (t0). This is the temperature reported for an observed voltage of 0.0V. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement". On newer MV and MV systems this command is replaced by t0a?, t0b?, t0c? and t0d?.

On TEC controllers this command has a completely different meaning: get the TEC current in amps. A negative value indicates cooling and a positive value indicates heating.

Return type: float

t0ia?

Get TEC current

Returns the TEC current in amps.

Return type: float

t0lw

Set the lock window

Sets the lock window in degrees C. This is the amount that the actual temperature can differ from the set point and still be considered "locked." When the temperature has remained within this window for ten seconds the servo state is defined as "locked."

Argument type: float

t0lw?

Get the lock window

Returns the lock window in degrees C.

Return type: float

t0s

Sets slope calibration constant for Thermistor 0

Sets the slope calibration constant for the first thermistor (t0). This is the change in reported temperature for a 1.0V change in the measured voltage. The value is stored in non-volatile memory. Since this value is typically negative, checksums must be disabled when transmitting this command. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement". On newer MV and MV systems this command is replaced by t0a, t0b, t0c and t0d.

Argument type: float

t0s?

Returns slope calibration constant for Thermistor 0 (most products) or get servo state (TEC)

On most products, returns the slope calibration constant for the first thermistor (t0). This is the change in reported temperature for a 1.0V change in the measured voltage. The value is stored in non-volatile memory. Since this value is typically negative, checksums must be disabled when transmitting this command. For a complete description of thermistor coefficients and how to use them, see the appnote "Temperature Control and Measurement". On newer MV and MV systems this command is replaced by t0a?, t0b?, t0c? and t0d?.

On TEC controllers this command returns the servo state, an integer. The returned values have the following meanings:

Return type: float (int on TEC)

t0v?

Returns measured voltage on Thermistor 0 input

Returns the measured voltage the first thermistor (t0) input. This voltage is converted to temperature according to the thermistor calibration.

Return type: float

tcpu?

Get CPU temperature

Returns the temperature of the CPU chip in degrees C. A temperature reading greater than 65 degrees will shut off the system with a fault.

Return type: float

te

Talk enable unconditionally

Activates any controller receiving the message. This is only relevant for systems that utilize RS-485 communication, and on other systems is retained for compatibility.

tela

Talk enable by local address

Activates the controller whose local address matches the argument, and deactivates any other controller receiving the message. This command is used to select one controller in a multiple-controller environment. This is used for controllers communicating by RS-485, and is otherwise retained for compatibility.

Argument type: int range: 0-65535

tesn

Talk enable by serial number

Activates the controller whose serial number matches the argument, a 32-bit unsigned integer, and deactivates any other controller receiving the message. This command is used to select one controller in a multiple-controller environment. This is used for controllers communicating by RS-485, and is otherwise retained for compatibility.

Argument type: int

tl

Set primary temperature

Sets the primary temperature set point to the argument, in degrees C. This does not close the temperature control loop (see iten).

Argument type: float

tl?

Get primary temperature

Returns the measured (actual) primary temperature. Use ltsp to get the primary temperature set point.

Return type: float

uf

Upload firmware

Enters the VueMetrix firmware loader. This command should not be issued under any circumstances by user-written software.

v?

Read laser voltage

Reads the calibrated laser voltage and returns the result.

Return type: float

ver?

Get firmware version

Returns the firmware version number.

Return type: int

wpv

Set watts per volt

Sets the calibration constant for laser power readings. This value is stored in non-volatile memory.

Argument type: float

wpv?

Get watts per volt

Returns the calibration constant for laser power readings.

Return type: float

xm

Enable/disable external modulation

Enables or disables external modulation. When this is enabled the laser is turned on and off using an external TTL input.

Argument type: int range: 0-1

xm?

Is external modulation enabled?

Gets the state of the external modulation feature.

Return type: int range: 0-1