EPICS

EPICS ipac Module

Module Owner:
Andrew Johnson

This page is the home of the EPICS ipac module, which provides a standard interface for Industry Pack carrier boards under vxWorks, and ensures that drivers for individual IP modules do not need to understand or control the carrier board they are installed in. Also included with this software are several IP module drivers that use the ipac carrier layer.

This web-site gives access to the ipac source code, information on other modules which are needed to install and run it, and documentation on the how to include and use it in your EPICS applications. Please email any comments, questions or bug reports to me.

Hardware Supported

Software is included to control the following hardware:

Other module and carrier drivers are also available that use drvIpac, see the EPICS Hardware Support Database for a list.

Where to Find it

Site Installation and Building

Installation instructions are given in the drvIpac documentation.

Application Installation

The precise method of using this support software in an <ioctop> application depends on the version of EPICS Base you're using:

EPICS R3.13.x

  1. You must use drvIpac release 2.4 or earlier. Edit the config/RELEASE file and add the line
    IPAC=/path/to/ipac/version
  2. If you are still using an EPICS version prior to 3.13.2 (or your <ioctop> predates 3.13.2 and you haven't updated the files in config since then), edit the config/CONFIG_APP file and add the following lines. This step is not required from EPICS 3.13.2 onwards.
    ifdef IPAC
    USR_INCLUDES += -I$(IPAC)/include
    IPAC_BIN = $(IPAC)/bin/$(T_A)
    USER_DBDFLAGS += -I $(IPAC)/dbd
    endif
  3. In the application source directory where the base object files are linked together, edit Makefile.Vx and add
    LIBOBJS += $(IPAC_BIN)/ipacLib     # for drvIpac, and
    LIBOBJS += $(IPAC_BIN)/tip810Lib   # if you want CANbus support
  4. Ensure the following is included in the construction of the application's database definition file
    include "drvIpac.dbd"              # if you only want drvIpac, or
    include "devTip810.dbd"            # if you want CANbus support too
  5. Rebuild the application and use the newly installed support as desired.

EPICS R3.14.2

  1. You must use drvIpac release 2.5. Edit the configure/RELEASE file and add the line
    IPAC=/path/to/ipac/version
  2. In the application source directory where the object files are linked together, edit the Makefile and add
    <myapp>_LDOBJS_vxWorks += $(IPAC_BIN)/ipacLib    # for drvIpac,
    <myapp>_LDOBJS_vxWorks += $(IPAC_BIN)/tip810Lib  # for CANbus support
    <myapp>_OBJS_vxWorks   += $(IPAC_BIN)/tyGSOctal  # for SBS Octal UART
  3. Ensure the following is included in the construction of the application's database definition file appInclude.dbd.
    include "drvIpac.dbd"              # if you only want drvIpac,
    include "devTip810.dbd"            # if you want CANbus support too
  4. Rebuild the application and use the newly installed support as desired.

EPICS R3.14.3 or later

  1. You must use drvIpac release 2.6 or later, see the above table for accurate version requirements. Edit the configure/RELEASE file and add the line
    IPAC=/path/to/ipac/version
  2. In the application source directory where the object files are linked together, edit the Makefile and add
    <myapp>_LIBS += Ipac         # for drvIpac,
    <myapp>_LIBS += Tip810       # for CANbus support
    <myapp>_LIBS += TyGSOctal    # for SBS Octal UART
  3. Ensure one or more of the following lines is included in the construction of the application's database definition file xxxInclude.dbd:
    include "drvIpac.dbd"              # if you only want drvIpac,
    include "devTip810.dbd"            # if you want IPAC + CANbus support, or
    include "tyGSOctal.dbd"            # for IPAC + SBS Octal Serial support
  4. You may also need to make a local copy of the drvIpac.dbd file in your application's source directory if you need to change the set of carrier drivers to be included in the application - these are controlled by the registrar() statements which are uncommented in that file.
  5. Rebuild the application and use the newly installed support as desired.

Documentation

The following documentation is available:

TitleVersion(s)
drvIpac - Industry Pack Driver 2.7
IPAC Driver Release Notes 2.7
drvTip810 - CAN Bus Driver 2.7
devCan - CAN Bus Device Support 2.7
CANbus Driver Release Notes 2.7
SBS OctalUart IP Module Support 2.7
SBS Octal Serial Driver Release Notes 2.7

In Use

This software was originally developed at the RGO for Gemini and UKIRT, and is now being used at many EPICS sites.


Andrew Johnson