Alicat Serial Primer
Alicat Serial Primer
COMMUNICATIONS
PRIMER
Contact information
World Headquarters,
Tucson, Arizona, USA
[email protected]
alicat.com
7641 N Business Park Drive,
Tucson, AZ 85743 USA
+1 888-290-6060
18
Quick Command Reference 5 Configure Data Frame 6v00
18
Connecting and Setup 7 Engineering Units 10v05
18
Unit ID 7 Flow/Pressure Average 10v05
19
Polling 7 Full-Scale Values 6v00
19
Streaming 7 Power-Up Tare 10v05
19
Query Data Frame 19
The Alicat Data Frame 8
6v00
STP/NTP Pressure 19
Status/Error Codes 8
Mass flow devices, 10v05
20
Basic Commands 9 Zero band 10v05
20
Command Description Format 9 Device setup 20
Basic Command Reference 9 Analog Output Source 10v05
20
Data Readings 10 Baud Rate 10v05
20
Poll Device Data 10 Blink Display 8v28
21
Request Data 10 Change Unit ID 21
Firmware Version
6v00
Start Streaming 10 21
Stop Streaming 10 Lock Device Display 21
Gas Mass flow devices 11 Manufacturing info 21
Active Gas 11 Remote Tare 10v05
21
Restore Factory Settings 22
10v05
Available Gases 11
7v00
Query/Change Setpoint 12
10v05
Tares 12
Tare Absolute Pressure Gas and COMPOSER™ Mixtures Mass flow devices 22
12
Active Gas 22
Devices with barometers
Available gases 22
Tare Gauge/Differential Pressure 12
Create Gas Mixture 22
Additional Commands
5v00
23
Control Setup Controllers 14 Set Gas 23
Batching Flow controllers , 10v00
23
Deadband Mode 10v05
24
Loop Control Algorithm 10v05
24
Loop Control Variable 9v00
24
Loop Control Variable Setpoint Range 15 Valve control Controllers 24
Max Ramp Rate 7v11
24
Hold Valve(s)
10v05
25
Hold Valves Closed
10v05
25
Query Valve Drive State
8v04
16 8v18
25
Ramping Options 10v05
16 Appendices 26
Setpoint Source 10v05
17 Appendix A: Statistics 26
Valve Offset 10v05
Firmware Versions
As Alicat devices have evolved over the years, so too has
the firmware. Each new version allows the device to hold
more information and utilizes commands with greater
functionality. To determine the firmware installed on your
device, either check the device info via the display screen
or use the firmware version command provided in Device
Setup (page 22).
The following is an overview of firmware versions by order
of release from oldest to newest.
• GP: Devices that have a firmware version beginning
with “GP” have the oldest circuit boards. Due to
hardware incompatibility, it is not possible to upgrade
GP devices to a more recent firmware version. GP
firmware devices require extra characters ($$) placed
directly after the unit_id in the command prompt.
• 1v–7v: Devices that have firmware versions beginning
with 1v through 7v have a different circuit board
from the GP firmware. Devices with a serial number
of less than 135,000 have an older processing chip
allowing upgrades to only 6v firmware. Devices with
serial numbers above 135,000 can upgrade to 7v
as they have a newer processing chip installed.
• 8v–9v: Devices with a firmware version beginning
with 8v or 9v have comparable circuit boards.
7v and lower cannot upgrade to 8v or higher.
Older serial commands did not change, but new
commands and greater functionality were added.
• 10v: Devices with 10v firmware have the newest
circuitry. As of March 2022, this is the newest
firmware available. The serial commands did not
change, but new commands and features were
added. Due to hardware incompatibility, 9v devices
and below cannot upgrade to 10v firmware.
For more information on firmware versions and the changes in
each version, please see alicat.com/support/knowledge-base/.
Applicable Firmware
Action Devices Introduction Command
DATA READINGS:
Auto-tare Controllers 10v05 unit_id ZCA enable delay
Data frame configuration All 6v00 unit_id FDF format
Data frame query All 6v00 unit_id ??D*
Engineering units: query or change All 10v05 unit_id DCU statistic_value group unit_value override
Flow or pressure average query All 10v05 unit_id DCA statistic_value average_timing
Full-scale values All 6v00 unit_id FPF statistic_value unit_value
Poll device data All unit_id
Power-up tare All 10v05 unit_id ZCP enable
Request data All 6v00 unit_id DV time statistic1 statistic2 … statistic13
Start streaming All unit_id @ @
STP/NTP pressure change Mass Flow 10v05 unit_id DCFRP stp_or_ntp unit_value pressure
STP/NTP temperature change Mass flow 10v05 unit_id DCFRT stp_or_ntp unit_value temperature
Stop streaming All @@ new_unit_id
Zero band: query or change All 10v05 unit_id DCZ 0 zero_band
GAS:
Active gas Mass flow 10v05 unit_id GS
Available gases Mass flow unit_id ??G*
Set gas Mass flow unit_id G gas#
SETPOINT:
Change setpoint Controllers 4v33 unit_id S setpoint_value
Query/Change setpoint Controllers 9v00 unit_id LS setpoint_value units_value
Power-up setpoint Controllers 8v04 unit_id SPUE setpoint_value
Setpoint source Controllers 10v05 unit_id LSS mode
GAS AND COMPOSER™ MIXTURES:
Create COMPOSER™ gas mixture Mass flow 5v00 unit_id GM mix_name mix_number gas1%
gas1# gas2% gas2# … gas5% gas5#
Delete gas mixture Mass flow 5v00 unit_id GD gas#
Query gas mixture Mass flow 9v00 unit_id GC gas#
TARES:
Devices with
Tare absolute pressure 6v00 unit_id PC
barometer
Tare flow Flow unit_id V
Tare gauge/differential pressure All unit_id P
TOTALIZER:
unit_id TC totalizer1_or_totalizer2 flow_statistic_value
Configuration totalizer Flow 10v00
mode limit_mode number_of_digits decimal_place
Reset totalizer Flow 8v00 unit_id T totalizer1_or_totalizer2
Reset totalizer peak Flow 8v00 unit_id TP totalizer1_or_totalizer2
Save totalizer Flow 10v05 unit_id TCR enable_or_disable
Unit ID
Each Alicat device must have a unique single letter ID using If using a device screen is not an option, it is possible to change
the standard 26-letter English alphabet such as “A”, “B”, “C”, the unit ID via the change unit ID command (page 21).
etc. The default ID is “A”. When connecting multiple devices When doing so, connect one device to the COM port and
on the same COM port, change the IDs using the device screen change the unit ID before connecting the next device. If two
before attempting to communicate via the serial terminal. devices have the same unit ID, disconnect one and change
Instructions to do so can be found in your device’s manual. the unit ID of the device that is still connected.
Polling
When the unit ID is set to a letter ID, it is in polling mode. This device returns a data frame with information on current
is the default mode for all devices. In polling mode, a device measurements (page 8). Be sure to wait for a response
waits for input and requests before providing any responses. before attempting further commands, as command input in
The most common use is to query the device for its current quick succession may result in data being intermixed with
measurements. See the poll device data command for further other responses.
information (page 10). When queried in this manner, the
Streaming
The exception to the standard English character rule is the When there are multiple units connected to the same COM
at sign (@). An Alicat unit id set to @ is in streaming mode. port, all devices must be in polling mode to interact with
In this mode, the device continuously sends lines of data them. A streaming device disrupts communication with other
frames (page 8) without prompting. A device in streaming devices on the port. Just as with the letter IDs, only one device
mode can receive and understand incoming commands even with the @ ID may be connected on a COM port at a time.
though the command prompt may not be visible due to the
streaming data.
!
Note: the default streaming interval is 50 ms, but
this can be increased or decreased by using the
change streaming rate command (page 22).
Example 1: A mass flow controller with a totalizer and set to valve drive hold (HLD).
A +087.59 +025.00 +164.7 +981.6 985.0 022741.4 Air HLD
Unit ID Absolute pressure Temperature Volumetric flow Mass flow Setpoint Totalized flow Gas Status code
Example 2: A mass flow meter with unit ID “B” and measuring Helium.
B +010.02 +025.00 +128.0 +87.2 He
Unit ID Absolute pressure Temperature Volumetric flow Mass flow Gas
Example 4: A differential pressure gauge. The negative value indicates that there are higher pressures downstream.
D -05.62
Unit ID Differential pressure
!
Note: the engineering units are not transmitted
with the data frame to cut down on data bandwidth
usage. If the front of the device is not visible,
the units of measure can be confirmed using the
query data frame command (page 19).
Status/Error Codes
If a status is present, the corresponding status code appears
in the last columns of the data frame (see example 1 in the
previous section). These indicate a special status, warning, or
fault noted by the device. Multiple codes appear as needed.
ADC Internal communication error (not common – please contact Alicat for assistance).
EXH Manual exhaust valve override is enabled (max opening on the downstream valve).
HLD Valve drive hold enabled (bypass active loop control).
LCK Display buttons are disabled.
MOV Mass flow rate overage (flow is outside the measurable range, including the uncalibrated range).
OPL The overpressure limit is enabled.
OVR Totalizer has rolled over at least once or frozen at max value.
POV Pressure reading overage (pressure is outside the measurable range, including the uncalibrated range).
TMF Totalizer missed some flow data (due to a MOV or VOV error).
TOV Temperature reading overage (temperature is outside measurable range).
VOV Volumetric flow rate overage (Volumetric flow is outside the measurable range, including the uncalibrated range).
Tares Page 12
Tare absolute pressure Barometer required. Create a zero absolute pressure reference point.
Tare flow Create a zero flow reference point.
Tare gauge/differential pressure Create a zero gauge or differential pressure reference point.
Stop Streaming
Request Data 6v00 ̔ @@ new_unit_id
̔ unit_id DV time statistic1 statistic2 … stastic13
Stop streaming changes the device from streaming mode
Request data obtains the average value of specified statistics to polling mode (page 7).
over a given period of time. Use this command to read data
that is not normally found in the data frame. new_unit_id : use a single English alphabet letter (A-Z) with a
different letter than any other Alicat device on the COM port.
time: use the number of milliseconds for the device to
measure the given statistics. The device takes a sample Successful command response: the device stops streaming
every millisecond and provides the average of those samples and now responds to its new unit ID.
in its response.
statisticN: use the values of the desired statistics as outlined
in the following table. The command can request up to 13
different statistics and at least one statistic is needed for the
command to be successful. The statistics can be in any order.
Value Description
The desired statistic to average. Refer
0–700 to Appendix A (page 26)to
determine the value of the statistic.
700 The unit ID of the requested device
701 indicates any current errors while 702 indicates
701 the current status of the device. It is advised to
or 702 only use one of these numbers in the request
and as the last desired statistic of the request.
The currently selected gas of the
703 device. This is always 6 characters
long. (Only on mass flow devices)
!
devices. Corrosive gases and refrigerants are only available Devices on 10v05 or above should
on anti-corrosive devices. use the Active Gas command.
If you are unsure of what gases are compatible with your
device, see the available gases command to obtain a list of
Set gas is for changing the current gas of a mass flow device.
available gases installed on the device.
gas# : use the number for the desired gas. Gas numbers
save: use either a 0 or a 1. If 0, the power-up gas remains
can be found in Appendix C (page 30). Not all gases are
unchanged. If 1, the gas# used in the command is saved as
available on all devices. Corrosive gases and refrigerants are
the new power-up gas. When the device is powered on, it
only available on anti-corrosive devices.
defaults to the power-up gas. If neither values are entered, the
command defaults to saving the new gas as the power-up gas. If you are unsure of what gases are compatible with your
device, see the available gases command to obtain a list of
Successful command response: the device responds with
gases installed on the device.
the unit ID, the gas number, the short name of the gas, and
the long name of the gas. Successful command response: the device returns a data
frame that contains the newly selected gas.
Available Gases
̔ unit_id??G*
Available gases provides the list of gases installed on your
mass flow device. If a gas is not found within the provided list,
the device is unable to properly measure the gas. Corrosive
gases and refrigerants are not available on standard devices
and only available on anti-corrosive devices. Each gas is
Setpoint Controllers
Setpoint commands manage the flow rate or pressure that a On a mass flow controller, a setpoint of 0 stops flow and closes
controller attempts to achieve. If these commands are sent all valves. A setpoint of 0 on pressure controllers instructs
to a meter or gauge, they are ignored. the device to attempt to control to a pressure of 0. To modify
how a pressure controller handles a 0 setpoint, see the zero
setpoint control command (page 16).
Change Setpoint 4v33
̔ unit_id S setpoint_value Negative setpoints are possible on bidirectional controller.
Change setpoint provides the controller with a new setpoint Successful command response: the controller returns a
to adjust flow or pressure to. data frame with the new setpoint.
setpoint_value : use the number value of the desired setpoint
!
Devices on firmware 9v00 and greater should
within the range of the controller. The controller reads this use the Query/Change Setpoint command.
value using the current engineering units. These units can be
modified with the engineering units command (page 19).
Tares
Taring a device zeroes out the specified reading to create Tare Gauge/Differential Pressure
a no-flow, zero gauge pressure, or zero absolute pressure ̔ unit_id P
reference point. Tares should be performed before any new
process begins and if the device is moved or bumped. Tare gauge/differential pressure provides a device
measuring gauge or differential pressure a zero reference
point to measure the line’s gauge or differential pressure from.
Tare Absolute Pressure Devices with barometers
When taring gauge pressure, there must be no flow and the
̔ unit_id PC
device must be open to the atmosphere.
Tare absolute pressure is only available on a device that has
an internal barometer installed at production. The command When taring a differential device, the device requires zero
should only be used when there is no flow and the process differential pressure between P1 and P2 and the device ports
line is not pressurized. need to be open to the atmosphere or connected to the same
pressure source.
Successful command response: the device responds with
a data frame where the absolute pressure reading is zero. Successful command response: the device responds with
a data frame where the gauge pressure reading is zero.
If the device does not have a barometer, the command is
ignored and the device responds with a question mark (?).
Command Reference
Control Setup Controllers Page 14
Cancel valve hold Remove all valve holds and resume loop control.
Exhaust Dual valve controllers. Stop new flow and clear process.
Hold valve(s) Hold valve(s) at their current position.
Hold valve(s) closed Close valve(s).
Valve(s) drive state Obtain information on current valve drive status.
!
To restart a batch of the same size, use the reset totalizer allowing the process to drift within the deadband again.
command (unit_id T totalizer1_or_2) (page 24). Successful command response: the controller responds
with the unit ID, the current deadband, the unit number (see
appendix B on page 28), and the unit label in that order.
Statistic Value Description Max ramp rate details how quickly a controller moves to a
new setpoint.
Absolute pressure 34
Second absolute For devices with a pressure To query the current ramp rate, use unit_id SR as the
345 command.
pressure sensor in a second location.
Pressure differential 39 max_ramp : use a value that indicates the desired step size the
Second pressure For devices with a pressure controller takes towards a new setpoint. The command reads
361
differential sensor in a second location. this number in the current engineering units of the device.
Gauge pressure 38 Use the engineering units command to change these units
(page 19).
Second gauge For devices with a pressure
353
pressure sensor in a second location.
Mass flow 37 Mass flow controllers only
Mass flow and liquid
Volumetric flow 36
controllers only
!
Value Mode Description If the device is controlling flow, the controller always
closes the valve(s) when it has a 0 flow setpoint.
Setpoint source is analog. The setpoint cannot be changed
by the display nor through serial communications.
A Some controllers do not have an analog
To query if active control is enabled or disabled currently, use
input. Refer to alicat.com/pinout to determine
your controller’s capabilities. unit_idLCZA as the command.
Setpoint source is either the display or serial enable_or_disable: use a value of either a 0 or a 1. If a 0,
communications. When this mode is active, setpoint the active control is disabled and the valves either open or
S changes are saved and restored on power-up. close completely (see the following table to determine your
It is advised not to use this mode if the setpoint changes device’s reaction). If 1, active pressure control is enabled and
often to avoid overusing the controller’s memory.
the device uses the normal closed-loop control to achieve
Setpoint source is either the display or serial the 0 setpoint.
communications. When this mode is active, setpoint
U changes are not saved and the setpoint is 0 on power-up.
It is advised to use this mode when
the setpoint changes often.
Successful command response: the controller responds
with the unit ID and current setpoint source mode.
Data Readings
Configure data frame changes the way the device responds unit_value: use the numerical value of the desired engineering
when it responds with a data frame. There are three options units. This value can be found in Appendix B (Page 28).
for this command. override: overwrites any special rules that do not change
format: use a value found in the following table: when a group changes. Use 0 to not change any of these
special rules. This parameter can also be left blank and no
Format Value Description special rules will be overwritten. Use 1 to apply the new units
0 The default data frame format. Values to all places of the statistic or group. Using 1 eliminates any
have 5 digits total (Totalizer has special rules.
7) and setpoint and totalizer are
unsigned by any positive or negative Successful command response: the device responds with
signs. the unit id, the engineering unit numerical value, and the
1 Setpoint and totalizer are signed with engineering unit label.
positive and negative signs.
stp_or_ntp : dictates either the standard temperature or the zero_band : the percentage of full-scale readings that the
normal temperature. For standard measurements, use S. For process must exceed before the device reports its readings.
normal temperature, use N. This can be a percentage value anywhere from 0 to 6.38.
Using 0 disabled the zero band.
To query the current standard temperature or normal
temperature, use unit_id DCFRT s_or_n with the intended Successful command response: the device responds with
reference to query in s_or_n. the unit ID, the number 0, and the current zero band as
a percentage of full-scale readings. The zero band may
units_value: use the number value of the desired engineering not match exactly the requested value due to internal
units found in Appendix B (Page 28). If you do not want to programming, but the device still follows the requested zero
change the units of the reference point, use 0 for the variable band setting.
temperature: use the numerical value of the desired new
temperature reference point.
Device setup
Analog Output Source 10v05 Successful command response: the device responds with
̔ unit_idASOCV primary_or_secondary value unit_value the unit id, the value (either 0, 1, or the statistic value), the unit
value used, and the unit label. If the source is generating the
Analog output source either queries or changes the value minimum or maximum, the unit value is 1 and is followed by
tracked by the given analog output. --- for the label.
primary_or_secondary : use a value of either 0 or 1. Use 0
to indicate the primary analog output. Use 1 to indicate the Baud Rate 10v05
secondary output, if available. ̔ unit_id NCB new_baud_rate
To query the device, use unit_id ASOCV primary_or_ Baud rate is used to either query the current baud rate or
secondary as the command. set a new baud rate. When changing the baud rate, ensure
value : use the numerical value of either the statistic being the COM part the device is being connected to can obtain
tracked or one of the outputs the device can produce. Refer the same baud rate.
to the following table to determine the necessary value. To query the baud rate of the device, use unit_id NCB as the
command.
value Description
new_baud_rate : use one of the following 6 numbers as the
The output is fixed at the minimum possible value
0 of the output. In the case of a 4-20mA output, value:
this would produce a constant 4 mA signal. • 2400
The output is fixed at the maximum possible value • 9600
1 of the output. In the case of a 4-20mA output,
this would produce a constant 20 mA signal. • 19200
This is the statistic number of the reading that
• 38400
the analog output is to track. The values are • 57600
other
found in Appendix A (page 26). Not all • 115200
statistic readings can be tracked by the output.
Successful command response: the device responds with
units_value: use the number value of the desired engineering its unit ID and the baud rate. In the case of a query command,
units found in Appendix B (Page 28). This is an optional the device provides the current baud rate. If the baud rate is
variable and can be left blank in the command if you don’t being changed, then the device responds with the new baud
wish to change the engineering units. rate before performing the change to confirm that the baud
rate has been accepted.
Manufacturing info
̔ unit_id ??M*
Quer y manufac turing info provides information on
contacting Alicat as well as the configuration of the device
itself.
February 2023 • Rev. 2 • Alicat Serial Primer 21
Restore Factory Settings 7v00 Stop Streaming
̔ unit_idFACTORY RESTORE ALL ̔ @@ unit_id
Restore factory settings returns all settings to their default Please see page 10 under Basic Commands for further
values. This command requires all letters to be capitalized to information on the stop streaming command.
be successful. Once the command executes, it is advised to
perform a power cycle on the device.
Streaming Rate 10v05
!
Restoring factory settings removes any 3rd party ̔ unit_id NCS interval
calibrations. Before performing this command, please
contact Alicat support for assistance (page 2). Streaming rate is used to either query or change the current
streaming rate.
Successful command response: the device responds by
displaying, “unit_id factory values have been restored.” To query the current streaming rate, use unit_id NCS as the
command.
Save and Read User Data 8v24 interval: use the desired time in milliseconds the device
̔ unit_id UD slot value waits before sending another data frame. If the interval is
smaller than the time it takes to complete transmitting a data
Store and read user data allows you to save a string of up frame, the next frame begins immediately after the previous
to 32-characters to a save slot on the device. frame completes.
slot : use a value between 0-3. Each of these 4 slots can save Successful command response: the device responds with
a 32-character string. the unit ID and the interval in milliseconds.
To read the data saved on a given slot, use unit_id UD slot
as the command. Unlock Device Display
value : a 32-character string that can contain ASCII characters. ̔ unit_id U
To store binary data, it must be encoded. Decimal or Unlock device display removes the LCK status from a device
Hexadecimal notation for numbers or hex64 for arbitrary data. and enables the buttons on the display. The device is locked
Successful command response: if the command is to save via the lock device display command (page 21).
the data, the device responds with the unit ID and the newly If you have lost communication with the device and need
written value. If the command is to read a slot, the device to unlock the display, simultaneously press and hold the 4
responds with the unit ID and the value currently written to corner buttons for 5 seconds. If successful, the LCK status
that slot. disappears from the device screen.
Successful command response: the device returns a data
Start Streaming line without the LCK status.
̔ unit_id @ @
Please see page 10 under Basic Commands for further
information on the start streaming command.
!
information on the available gases command. The device does not physically mix the gases.
The mixture must be mixed before they reach the
device for the device to measure it accurately.
mix_name: use a custom name for the mixture that contains
up to six letters. This is the equivalent of the short names
used for other gases.
!
̔ unit_id GD gas# Devices on 10v05 or above should use the
Delete gas mixture is used to delete custom gases that are active gas command (Page 11).
no longer wanted or needed.
3
Reset the totalizer to zero and continue totalizer1_or_2 : use a value of either 1 (for totalizer 1) or 2 (for
to count. Sets the TOV status error. totalizer 2). If no number is specified, the command defaults
to resetting totalizer 1’s peak.
number_of_digits : use a numerical value between 7 and 10
Successful command response: the device responds with
to set how many digits are used in the totalizer value. 7 is the
a data frame.
default value.
decimal_place : use a number between 0 and 9 to set how
many digits are after the decimal point. Not all requested
Save Totalizer 10v05
digits may be available on a device due to resolution limits. ̔ unit_id TCR enable_or_disable
The maximum number of digits available is used if the Save totalizer enables or disables the device from saving
requested amount exceeds those available. the totalizer values at regular intervals. If enabled, the device
restores the last saved totalizer values before being powered
Successful command response: the device responds with
off. If disabled, the device powers on with the totalizers reset
the unit ID followed by the configuration of the totalizer.
to zero.
The configuration is in the same order as the command
(which flow_statistic_value mode limit_mode number_ This applies to both totalizers if both are enabled. If only one
of_digits decimal_place) and are the numerical values totalizer is enabled, it only applies to that one totalizer.
of each parameter’s configuration. See the preivous table
To query if the function is enabled, use unit_id TCR as the
to determine which value corresponds to which function. If
command.
flow_unit reports as 1, the totalizer is disabled.
enable_or_disable: use a value of either 1 or 0. Use 1 to
enable the save totalizer function. Use 0 to disable the save
Reset Totalizer 8v00 totalizer function.
̔ unit_id T totalizer1_or_2
Successful command response: the device responds with
Reset totalizer returns the totalizer count to zero and restarts
the unit ID, and either a 1 to indicate the function is enabled
the timer. If there is flow moving through the device at the
or a 0 to indicate the function is disabled.
time of the command, the totalizer instantly begins counting
that flow starting from zero. This command also resets the
totalizer peak and restarts batching (Page 16).