-*- outline -*- (use EMACS to see this in outline-mode) This readme is about compiling the driver & examples. See /ether_ipApp/doc for info on how to use the driver. * Intro The sources for this driver are on SourceForge, see http://sourceforge.net/apps/trac/epics/wiki/EtherIP Read-only Mercurial access: hg clone http://epics.hg.sourceforge.net:8000/hgroot/epics/ether_ip Read/write Mercurial access: hg clone ssh://USERNAME@epics.hg.sourceforge.net/hgroot/epics/ether_ip Tag: ether_ip- What you have to do is - compile the ether_ip driver/device sources - somehow load them in the IOC - include the DBD descriptions of the new device support so that EPICS knows about them - create EPICS records that use the new driver The directory structure and Makefiles were created by makeBaseApp.pl from EPICS R3.13.3 base and later updated for EPICS 3.14 base. - In iocBoot/iocether_ip/Makefile, select the ARCH for the test IOC (if you want to use that test setup). - You have to modify configure/RELEASE so that ETHER_IP point to where you put the stuff, e.g. ETHER_IP=/cs/epics/ADE/R3.14.11/support/ether_ip/current * I. ether_ip directory structure: ether_ip/ README -- this file ether_ipApp/ - the DRIVER/DEVICE. You need this! src -- contains the source code and dbd definitions. Used to build and install the library libether_ip.a -- containing driver object file and to install ether_ip.dbd -- the database definition file needed by databases using the driver. doc -- contains the driver specific documentation testether_ipApp/ - example of EPICS database for ether_ip. You can use this for reference and tests. src -- contains an example application that builds a epics module that uses the ether_ip driver. Db -- contains sample databases using the ether_ip driver. dm2k -- contains sample dm2k adl display files. configure -- configuration setup with RELEASE referring to location of ETHER_IP for use by the example in testether_ipApp Makefile -- setup to build 1st ether_ipApp, then config, then testether_ipApp, so that the examples will work. * II. Build 1. Your usual EPICS environment variables need to be set: EPICS_HOST_ARCH, PATH to include the EPICS base tools 2. cd where_the_ether_ip_sources_are 3. Edit configure/RELEASE for EPICS BASE and ETHER_IP directory locations. 4. Edit iocBoot/iocether_ip/Makefile for ARCH 5. make * III. Use of the ether_ip driver in your ioc application 1. Make sure that the driver code has been checked out and built as described above. The Make in the config directory depends on the proper directories already existing. 2. Set up ETHER_IP definitions in the configuration directory for your application by: 2.1. cd /configure 2.2. edit the file RELEASE file, add the line ETHER_IP=/cs/epics/ADE/R3.14.11/support/ether_ip/ 2.3. Make sure the new definitions take effect by make clean make in the configure directory. 3. Set up the dbd include file in your src directory to include ether_ip.dbd by adding the line include "ether_ip.dbd" after the line include "../base.dbd". Now that RELEASE file has been edited and config or configure has been rebuilt the Makefile will be able to find ether_ip.dbd when it expands your dbd file. 4. Set up your application to include the object libraries by including the following lines in Makefile: _LIBS += ether_ip ether_ip_DIR = $(ETHER_IP_LIB) ETHER_IP_LIB (3.14) will be automatically defined for every type of ioc for which your application is built. R. Wright, K. Kasemir 3.14 notes added by S. Allison