PC-Based EtherCAT Motion Controller

25 years innovating & supporting engineers

Presenting RMP, a software-based motion controller, programmable in C++, C#, Python, GCode, RapidScript, and gRPC. Build real-time motion applications in any OS.

Thank you! Please check your email.
Oops! Something went wrong while submitting the form.

Coordinated Axes128

Digital & analog IO10,000+

Supported nodes 56 manufacturers (99 devices)

Real-time deterministic500Hz ↔ 8KHz sample rate

MotionP2P, PT, PVT, PVTAJ...

Advanced motion3D Interpolation, GCode, Robot...

Customers using RMP400+

CPU compatibilityx64 (Intel & AMD)

SupportGlobal presence
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Our latest RMP release supports the following features. With more features coming in the near future.



Absolute or relative SCurve or Trapezoidal moves.


Modify Point-to-Point and Velocity motion trajectories on-the-fly.


Streaming trajectories to command synchronized move using PT, PVT, PVATAJ.


Define simple lines and arcs to generate complex 2D and 3D paths.


Simple constant velocity moves.


Queue moves for conditional execution.


Addition or summation of delta position between two axes to prevent skew.


Creating a move based on a defined table between the master and slave axes.


Electronic gearing based on a ration between master and slave axis.


High-precision position latching with inputs like touch probe, encoder index pulse, or home switches.

Phantom Axes

Utilize virtual axes for machine simulation.

Feed Rate

Adjust speed of a loaded motion profile without changing the profile itself. Also known as Retrace.


Map multiple axes for synchronized and coordinated motion.

3D Interpolation

Provide a unified control interface in cartesian space for diverse robots or machines.


Execute 2D or 3D motion based on G-Code syntax.

Conveyor Tracking

Synchronize a moving conveyor with multi-axis (pick & place, dispensing, painting).

Dual Loop Feedback

Use secondary feedback to close position loop. Torque mode only.


Real-Time Triggers

Set up triggers in motion firmware for outputs or events based on conditions in real-time deterministic manner.

IO Control

Manage digital IO, analog IO, and dedicated inputs.

Dedicated IO

Control dedicated IOs such as Home, HW negative/positive limits



Perform drive-based or master-based homing routines.

Safety (FSoE)

Use RMP as part of a Black Channel to cover certification requirements for IEC 61508 and IEC 61784-3.


Trigger host interruptions at a specific period/sample rate cycle.


Define axis's settling criteria conditions to for completion of a move and generate events.

Backlash Compensator

Adjust command position based on motion direction. Also control the rate based on hysteresis limits.

Linear Compensator

Create a compensation table to map the accuracy of a single linear or rotary axis.

3D Compensator

Create a compensation table to map the accuracy of a single axis relative to another or two axes.


Drive-based tuning closing the loop in the drive or master-based tuning closing the loop in RMP using PID or PIV. Torque model only.



Collect and buffer any data available in controller firmware memory.

Error Logging

Record motion control object errors for debugging.

The RMP motion controller firmware algorithms can run in different operating systems.

Firmware OS 

The RMP firmware runs on the following real-time operating systems: 

• Windows (INtime RTOS) This configuration takes a NIC, memory, and a CPU core from Windows to dedicate it to the INtime real-time operating system.

• Linux (PREEMPT_RT patch)This configuration uses the PREEMPT_RT patches for the linux kernel which implement real-time computing capabilities.

• INtime RTOS DistributedThis configuration consists of a headless system running only the INtime RTOS.

Application OS 

Customers can create their HMI/UI in any OS, our APIs are available for the following OS: 

• WindowsUsers developing in Windows can use our RapidCode or RapidCodeRemote API (depending on what programming language they prefer)

• LinuxUsers developing in Linux can use our RapidCode or RapidCodeRemote API (depending on what programming language they prefer)

• MacOSUsers developing in MacOs can use our RapidCodeRemote API.

Communication Protocol 

The RMP utilizes the industrial communication protocol EtherCAT to send & receive data in a real-time deterministic way. Here are some important concepts: 

• Master/MainDeviceThe RMP contains a tightly integrated EtherCAT Master used to manage and coordinate the data flow within the EtherCAT network.

• Slave/SubDeviceThe RMP currently supports 99 devices. Additional EtherCAT DS402 devices can be integrated per customer request.

• TopologyThe RMP supports the EtherCAT line topology. Up to 128 devices daisy chained at once.

Our latest RMP release now supports 99 EtherCAT devices from 56 distinct manufacturers, with new node integrations being added frequently.






Applied Motion Products






Copley Controls








Fuji Electric







Jenny Science





LS Electric

LS Mecapion



Mitsubishi Electric














Schneider Electric



Taiwan Pulse Motion




The RMP SDK includes a range of APIs and tools designed to simplify the development of motion applications.

Software APIs 

RapidCodeCreate motion and IO applications using C++, C#, or Python.

RapidCodeRemoteCreate motion and IO applications over a network using any gRPC language.

RapidSequencerStart, compile, and run our proprietary sequencer scripts.

Software Tools 

RapidPortalWebsite where customers can download licenses and software releases.

RapidSetupConfiguration, tuning, and troubleshooting Windows tool.

RapidServerA command-line app offering services through RPC, enabling cross-OS client communication.

RapidSetupXConfiguration, tuning, and troubleshooting multi-platform tool. (Needs RapidServer)

MotionScopeGraphing tool to plot and trace IO signal data from the motion controller.

RapidWorkbenchA utility that emulates Kollmorgen's Workbench, for adjusting AKD servo drive parameters via EtherCAT.

rsiconfigXML configuration and EtherCAT Node Integration (ENI) generation utility.

VM3View and alter data stored in memory on the motion controller.


Use the RMP in a PC of your choice. This USB is transferrable.


RMP comes pre-installed in a ruggedized fanless industrial PC customized to suit.

Industrial PC

RMP comes pre-installed in a fanless industrial Panel PC customized to suit.

Explore some RMP frequently asked questions


How does pricing work?

RMP EtherCAT motion controller pricing structure based on axis count and the inclusion of premium features such as G-Code, FSoE, RapidRobot, RapidSequencerRT, RapidCodeRT, or RapidRemote. This ensures a cost effective solution where OEMs pay for features being used.

Can I request a trial?

We offer a 30 day evaluation that is not limited to just the RMP EtherCAT motion controller. We can also provide hardware demo to free spin a motor and get started with applying all the RMP feature set.

How many RMP EtherCAT motion controllers are needed?

A single RMP EtherCAT motion controller runtime license is needed per machine.

What runtime licenses are needed for the RMP EtherCAT motion controller?

A RMP EtherCAT motion controller licenses are needed. If the INtime RTOS (not Linux) is used, then a runtime license is needed. These licenses are locked against a single USB dongle.

Do phantom axes count against my licensed axis limit?

Phantom or virtual axes count against licensed axis limit.

Is the INtime RTOS included?

RSI offers the RMP EtherCAT motion controller and INtime RTOS runtime licenses together. Upon issuance of purchase order, RSI uploads the licenses to our portal. The download links to install the RMP and RTOS are also available on the portal.


Advantages of using a software motion controller vs. dedicated hardware controller

RMP EtherCAT motion controller is compatible with most generic Industrial PCs. Industrial PCs are readily available and offered in various configurations. The OEM can select a PC and CPU with the absolute minimum processing power, squeezing the performance required for their application. 

An OEM can select an IPC for their application by selecting a vendor that gives a good price, offers a short lead time, and guarantees long-term availability. With worldwide supply chain issues, the OEM can easily find a replacement IPC for their application.

Is RMP a true software based motion controller?

Yes, RMP is a true soft motion controller that utilizes the computing power of the modern computers to provide real-time deterministic performance by utilizing the EtherCAT communication protocol.

Is RMP simply an EtherCAT master stack?

Certainly not. RMP is a fully developed EtherCAT motion controller and offers much more than the typical EtherCAT master stacks sold in the industry.

Our RapidCode API and software tools make it very easy to program a machine, significantly reducing development time. Our RMP motion controller seamlessly handles all the configuration and setup. Our RapidCode API allows a user to deploy complex functionality in a straightforward manner so there is no laborious memory address pointers involved.

Do I need to setup and configure all my EtherCAT slave devices?

Each EtherCAT slave devices comes with an ESI file. RapidCode API and software tools enable the RMP EtherCAT motion controller to automatically detect all the nodes and establish a good EtherCAT network. This is done using a single API call or a click of a button usign our software tools. The nodes are then seamlessly presented in a tree view.

How to connect to the RMP EtherCAT Motion Controller?

RMP EtherCAT motion controller leverages the EtherCAT communication protocol. An Ethernet port on a computer is configured and dedicated to exchanging EtherCAT data packets. EtherCAT slaves are then connected via this Ethernet port to collect and relay information.

Can RMP support more than 128 axis counts?

The RMP can support more than 128 axes if needed by the application. The maximum number of axes is limited to the CPU power. A more powerful CPU can support higher axis counts.

Can I program the RMP EtherCAT motion controller without real hardware connected?

Yes, phantom (virtual) axes can used to program and simulate using the RMP EtherCAT motion controller

As a RapidCode user, do I need to configure or interact with the RTOS that RMP EtherCAT motion controller is runs on?

The INtime RTOS runs in the background. Users only need to develop their application using our RapidCode API and utilize our software tools. We manage all the interaction between our motion firmware, the EtherCAT master stack, and relaying data to/from the EtheCAT nodes on the network.

What type of applications has RMP been used with?

OEMs looking to build a multi-axis and high performance machine using a PC are great RMP users. The RMP EtherCAT motion controller is PC based that can be programmed using many languages such C++, C#, VB .NET, Python, Java, Ruby, and etc.

How many axes can be added to a synchronized and coordinated move?

RMP currently supports 128 axes and two sets of 64 axes can be synchronized to create a coordinated multi axis move.

What SDKs are needed to develop my application?

RapidCode SDK is used with Visual Studio (or other windows IDE) to develop most applications.

Note: INtime SDK is only required when using RapidCodeRT premium feature.

What hardware is required to run the RMP EtherCAT motion controller? Are there any bare minimum requirements?

We recommend using our iPC300 industrial products. OEMs can select their own PCs but we recommend selecting industrial computers and use Windows IoT LTSC operating system. The LTSC variant of Windows has a long life cycle and limits feature updates (not security updates). We recommend using Intel CPUs with atleast a dual or four core Celeron. 4GB RAM is recommended. An Intel NICs is recommended (as opposed to Broadcom or Realtek).


How is RMP a real-time and deterministic motion controller when it runs on Windows OS?

RMP EtherCAT motion controller’s firmware runs on INtime RTOS. A CPU core, memory, and Ethernet port are dedicated to the RTOS to ensure real-time deterministic traffic of data between the motion controller and EtherCAT hardware on the network. With our iPC hardware, you can run at a 4000Hz sample rate with Windows (Intime) or Linux (PREEMP_RT).

Can IO be triggered in real-time (RT)?

IO’s can be triggered in real-time using various RMP features. The most commonly used feature to trigger IO in RT is User Limits. Single or multiple conditions can be defined for when to trigger an IO. However, User Limits is not an option when further math logic needs to be implemented to trigger an IO RT. In those cases, RapidSequencer or RapidCodeRT is the best solution.

Can RMP support EtherCAT nodes not listed in the supported list?

We support a variety of EtherCAT nodes. See our supported EtherCAT node list. 

We specialize in drives which are CiA DS402 compatible and use CoE (CANOpen over EtherCAT).  We can integrate new nodes if not present in our current supported list.

What sample rates can I run the RMP EtherCAT motion controller?

The default RMP sample rate is 1KHz. The sample rate can be increased up to the maximum drive interpolation rate.

What different modes/loops can I run the RMP?

RMP can run in Position, Torque, or Velocity modes. Most OEMs typically close the position loop in the servo EtherCat hardware.

Does RMP offer any safety features?

RMP supports FSoE (Field Safety over EtherCAT) to add safety to an industrial machine and significantly reduce wiring over the more traditional approach of using an external safety controller.

Can RapidRobot control my kinematic model?

Yes, at default we support several simple models and robotic arms we work with frequently. Other kinematic models for custom full Articulated (6 axis) serial, SCARA, and cartesian Robots can be easily added based on your needs.

What is the difference between RapidCode and RapidCodeRT?

We are updating this page.

Please contact us for pricing.

start developing today!

1000+ customers have already automated with help of our products and team