# EPICS: Motor Record and Device/Driver support.

Module Owners: Kevin Peterson

GitHub repository: https://github.com/epics-modules/motor

This is the home page for the motor record. The device/driver support for various motor controllers reside in submodules, starting in R7-0, and can be found here: epics-motor

Please email any comments to Kevin Peterson who is responsible for coordinating development and releases. Bug reports can be created on github.

## Where to Find it

You can download the software using the links in the table below:

Module Version | EPICS Release - Range | Filename | Documentation | Release Notice | Known Problems | Release Date
Latest | R3.15.7 or later | master.zip | motorRecord.html | RELEASE.md | github issues | n/a
R7-2 | R3.15.7 or later | motorR7-2-1.tar.gz | motorRecord.html | release notes | github issues | 2020-05-13
R7-1 | R3.15.6 or later | motorR7-1.tar.gz | motorRecord.html | release notes | github issues | 2019-08-13
R7-0 | R3.15.6 or later | motorR7-0.tar.gz | motorRecord.html | release notes | github issues | 2019-04-19
R6-11 | R3.15.5-3.14.12.5 | motorR6-11.tar.gz | motorRecord.html | release notes | github issues | 2018-12-12
R6-10 | R3.15.5-3.14.12.5 | motorR6-10-1.tar.gz | motorRecord.html | motor_release.html | github issues | 2017-11-30
R6-9 | R3.15.1-3.14.12.3 | motorR6-9.tar.gz | motorRecord.html | motor_release.html | Problems | 2015-01-07
R6-8 | R3.14.12.3 | motorR6-8-1.tar.gz | motorRecord.html | motor_release.html | Problems | 2014-06-16
R6-7 | R3.14.12.2 | motorR6-7-1.tar.gz | motorRecord.html | motor_release.html | Problems | 2012-03-06
R6-5 | R3.14.10-11 | motorR6-5-2.tar.gz | motorRecord.html | motor_release.html | Problems | 2010-10-14
R6-4 | R3.14.8.2-10 | motorR6-4-4.tar.gz | motorRecord.html | motor_release.html | Problems | 2009-06-22
R6-3 | R3.14.8.2-10 | motorR6-3-1.tar.gz | motorRecord.html | motor_release.html | Problems | 2008-12-10
R6-2 | R3.14.8.2-9 | motorR6-2-2.tar.gz | motorRecord.html | motor_release.html | Problems | 2007-04-04
R6-1 | R3.14.8.2 | motorR6-1.tar.gz | motorRecord.html | motor_release.html | Problems | 2006-12-18
R6-0 | R3.14.8.2 | motorR6-0.tar.gz | motorRecord.html | motor_release.html | Problems | 2006-09-22
R5-9 | R3.14.8.2 | motorR5-9-1.tar.gz | motorRecord.html | motor_release.html | Problems | 2006-08-21
R5-8 | R3.14.7-8.2 | motorR5-8.tar.gz | motorRecord.html | motor_release.html | Problems
R5-7 | R3.14.7 | motorR5-7.tar.gz | motorRecord.html | motor_release.html | Problems
R5-6 | R3.14.7 | motorR5-6.tar.gz | motorRecord.html | motor_release.html | Problems
R5-5 | R3.14.6 - 7 | motorR5-5.tar.gz | motorRecord.html | motor_release.html | Problems
R5-4 | R3.14.6 | motorR5-4.tar.gz | motorRecord.html | motor_release.html | Problems
R5-3 | R3.14.5 | motorR5-3.tar.gz | motorRecord.html | motor_release.html | Problems
R5-2 | R3.14.4 | motor5-2.tar.gz | motorRecord.html | motor_release.html | Problems
R4-9 | R3.13.5 - 10 | motorR4-9-6.tar.gz | motorRecord.html | motor_release.html | Problems
R4-8 | R3.13.5 - 9 | motorR4-8-1.tar.gz | motorRecord.html | motor_release.html | Problems
R4-7 | R3.13.2 - 9 | motor4-7-4.tar.gz | motorRecord.html | motor_release.html | Problems
R4-6 | R3.13.2 - 9 | motor4-6-4.tar.gz | motorRecord.html | motor_release.html | Problems
R4-5 | R3.13.2 - 9 | motorR4-5-4.tar.gz | motorRecord.html | motor_release.html | Problems
R4-4 | R3.13.4 - 5 | motor4-4-2.tar.gz | motorRecord.html | motor_release.html | Problems
R4-3 | R3.13.4 - 5 | motor4-3-2.tar.gz | motorRecord.html | motor_release.html | Problems
R4-1 | R3.13.2 | motor4-1.tar.gz | motorRecord.html | motor_release.html |
R3-5 | R3.13.1.1 - 2 | motor_V3.5.tar.gz | motorRecord.html | motor_V3.5.html | Problems

## Required Modules

Motor Version | Required modules | Release needed
R7-2 | ASYN IPAC (for motorHytec & VME-based serial and GPIB examples) LUA (for motorScriptMotor) MODBUS (for motorAMCI IOCs) | R4-37 R2-15 R2-0 R3-0
R7-1 | ASYN IPAC (for motorHytec & VME-based serial and GPIB examples) LUA (for motorScriptMotor) MODBUS (for motorAMCI IOCs) | R4-35 R2-15 R1-3 R2-11
R7-0 | ASYN IPAC (for motorHytec & VME-based serial and GPIB examples) LUA (for motorScriptMotor) MODBUS (for motorAMCI IOCs) | R4-35 R2-15 R1-3 R2-11
R6-11 | ASYN IPAC (for serial or GPIB communication and Hytec support) LUA (for ScriptMotor support) MODBUS (for IOCs using AMCI support) | R4-33 R2-15 R1-3 R2-11
R6-10 | ASYN IPAC (for serial or GPIB communication only) | R4-25 R2-13
R6-9 | ASYN IPAC (for serial or GPIB communication only) | R4-25 R2-13
R6-8 | ASYN IPAC (for serial or GPIB communication only) | R4-21 R2-12
R6-7 | ASYN IPAC (for serial or GPIB communication only) | R4-18 R2-11
R6-5 | ASYN IPAC (for serial or GPIB communication only) | R4-13-1 R2-10
R6-4 | ASYN IPAC (for serial or GPIB communication only) | R4-10 R2-9
R6-3 | ASYN IPAC (for serial or GPIB communication only) | R4-9 R2-9
R6-2 | ASYN IPAC (for serial or GPIB communication only) | R4-7 R2-8
R6-1 | ASYN IPAC (for serial or GPIB communication only) | R4-6 R2-8
R6-0 | ASYN IPAC (for serial or GPIB communication only) | R4-6 R2-8
R5-9 | ASYN IPAC (for serial or GPIB communication only) | R4-6 R2-8
R5-8 | ASYN (for serial or GPIB communication only) IPAC (for serial communication only) | R4-4 R2-8
R5-7 | ASYN (for serial or GPIB communication only) IPAC (for serial communication only) | R4-3 R2-8
R5-6 | ASYN (for serial or GPIB communication only) IPAC (for serial communication only) | R4-2 R2-8
R5-5 | ASYN (for serial or GPIB communication only) IPAC (for serial communication only) | R4-1 R2-8
R5-4 | ASYN (for serial or GPIB communication only) IPAC (for serial communication only) | R3-3 R2-7a
R5-3 | MPF (for serial communication only; no GPIB support) IPAC (for serial communication only) | R2-4-2 R2-7a
R5-2 | MPF (for serial communication only; no GPIB support) | R2-4
R4-9 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) | R1-10 R1-5 R1-5
R4-8 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) | R1-10 R1-4 R1-4
R4-7 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) | R1-10 R1-4 R1-4
R4-6 | Same as R4-5 |
R4-5 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) | R1-8 R1-4 R1-3
R4-4 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) | R1-6 R1-3 R1-2
R4-3 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) | R1-6 R1-3 R1-2
R4-1 | MPF (for serial or GPIB communication only) mpfGpib (for GPIB communication only; runtime requirement only) mpfSerial (for serial communication only) OR HIDEOS (for serial or GPIB communication only) | R1-5 R1-3 R1-1 Latest?

## Installation and Building

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 per site (unless versions of the module running under different releases of EPICS and/or the other required modules are needed).

1. Create an installation directory for the module, usually this will end with

    .../support

2. Place the distribution file in this directory. Then issue the commands (Unix style)

    tar xzvf motor<rel>.tar.gz

where <rel> is the release. For example.

    motor-7-2-1.tar.gz

3. This creates a <top> application.

    .../support/motor<rel>

4. Edit the `config/RELEASE` file and set the paths to your installation of EPICS base (i.e., define SUPPORT and EPICS_BASE).
5. Edit .../support/motor<rel>/modules/Makefile to comment out submodules that aren't needed.
6. Run `gnumake` in the top level directory and check for any compilation errors.

Page Last Modified: 2020-05-14
Kevin Peterson