Note: all e-mail addresses on this page have the at-sign replaced with "_at_" to deter spammers. Adjust accordingly.
This is the home of the EPICS Sequencer module, which provides a state notation compiler ("snc") and run-time support ("seq") for implementing state transition diagrams in an EPICS environment. Versions prior to 2.0.0 only run under VxWorks; versions 2.0.0 and later run in any environment which implements the OSI layer (introduced in EPICS R3.14).
This site gives access to the software source code, information on other modules which are needed to install and run it, and documentation on how to include and use it in your EPICS applications.
Please email comments, bug reports, etc. to the aforementioned module owner.
Download the software via anonymous ftp from the SLAC FTP site ftp://ftp.slac.stanford.edu/groups/controls/soft/sequencer, or directly via the links in the table below:
version | seq tree | EPICS base release | notes | known problems |
1.9.5 |
seq-1.9.5.tar.gz | R3.13.x | task deletion | |
1.9.6-beta |
seq-1.9.6-beta.tar.gz | R3.13.x | notes by Ben F. | |
2.0.2 |
seq-2.0.2.tar.gz | notes by MRK |
After obtaining a copy of the distribution, it must be installed and built for use at your site. These steps only need to be performed once for the site (unless versions of the module running under different releases of EPICS and/or the other required modules are needed).
In the following, substitute "config" (EPICS R3.13.x) or "configure" (EPICS R3.14.x) for "<config-dir>":
Create an installation directory for the module; usually this will be of the form /path/to/module/seq.
Unpack the distribution tar file in this directory; this will produce a <supporttop> sub-directory named after the version number, e.g. seq-1.9.5.
Edit the files <config-dir>/RELEASE and <config-dir>/CONFIG and set the paths to your installation of EPICS; in CONFIG, either modify CROSS_COMPILER_TARGET_ARCHS or remove it to default to all architectures.
Run gnumake in the top-level directory and check for any compilation errors.
Please drop us a note describing which EPICS and sequencer versions you are using.
Building sequencer applications for EPICS R3.13.x
To use the installed and built support software in an <ioctop> application, make the following changes to the application:
Ensure that it is not using the version of snc
(the state notation compiler) from EPICS base (EPICS base does
not contain a file called libSeq so this is not a problem).
Edit the config/RELEASE file and add the lines:
SEQ=/path/to/seq/version
Arrange to use the correct version of snc by editing config/CONFIG and adding the lines:
ifdef SEQ
In the application source
directory if the EPICS base object files are linked together, edit
Makefile.Vx and add:
ifdef SEQ
USR_INCLUDES +=
-I$(SEQ)/include
SEQ_BIN=$(SEQ)/bin/$(T_A)
LIBOJBS += $(SEQ_BIN)/seqLib
endif
Also in Makefile.Vx, change
the line:
INSTALLS +=
iocCore seq
to:
INSTALLS += iocCore
Rebuild the application and use the newly installed module as desired.
Building sequencer applications for EPICS R3.14.x
In progress ...
The following documentation is available:
See also:
This software was originally developed by Andy Kozubal at Los Alamos National Laboratory (LANL). It was subsequently modified by William Lupton, formerly at the W. M. Keck Observatory (Keck), with contributions by Greg White of Stanford Linear Accelerator Center (SLAC).
Versions up to 1.9.2 were part of EPICS base and were or are being used at many EPICS sites.
Version 1.9.3 has been in use at many EPICS sites.
Version 1.9.4 is the first version to be distributed as an unbundled module.
Version 1.9.5 is a bug-fix version: sequencer deletion from the VxWorks shell once again works.
Version 1.9.6-beta is 1.9.5 with Ben Franksen's asynchronous pvPut() support.
Version 2.0.0 is the first version to run under operating systems other than VxWorks, via the EPICS OSI layer.