APIs, concepts, guides, and more
❓ FAQ

Common questions about the RMP.

🔹 General

How do I request a RMP evaluation license?

Please visit the following link: RMP evaluation license and follow all instructions.

The default evaluation period is 30 days. Please contact us at tech@roboticsys.com if you need to extend RMP evaluation by an additional 30 day period.

What type of Ethernet chipsets (NICs) does RMP support?

RMP for Windows/INtime supports most Intel and Realtek Ethernet chipsets. RMP for Linux works with any motherboard or PCIe NIC.

See RMP PC hardware and performance requirements for more information.

What type of CPUs and chipsets does RMP support?

RMP for Windows/INtime supports most Intel and AMD processors. RMP for Linux works with most Intel, AMD and ARM processors.

See RMP PC hardware and performance requirements for more information.

🔹 RapidCode API

What is RapidCode?

A software API that allows you to rapidly develop applications to suit all your motion and I/O needs. See the RapidCode page for more details.

Is RapidCode offered in 32-bit and 64-bit?

Yes. A user can write an application using our 32-bit or 64-bit libraries.

  • For Windows, both 32-bit and 64-bit libraries are available.
  • For Linux, only 64-bit libraries are available.
  • For INtime, only 32-bit libraries are available (INtime is a 32-bit OS).

What files do I need to setup my C++ project?

➡️ Windows 32-bit:

rsi.h Primary Header file.
RapidCode.lib → [32bit] - Import Library.
RapidCode.dll → [32bit] - C++ dll.

➡️ Windows 64-bit:

rsi.h Primary Header file.
RapidCode64.lib → [64bit] - Import Library.
RapidCode64.dll → [64bit] - C++ dll.

➡️ Linux: rsi.h Primary Header file. librapidcode.so → [64bit] - Shared Object Library.

➡️ INtime: rsi.h Primary Header file. RapidCodeRT.lib → [32bit] - Import Library. RapidCodeRt.rsl → [32bit] - C++ Real-time Shared Library.

What files do I need to setup my C# project?

➡️ 32-bit:

RapidCode.NET.dll → [32bit] - .NET Standard 2.0 DLL
RSI.System.dll → [32bit] - (only if using the Axis XML API)

Note: RSI.System.dll is not needed, but some users might want to save Axis configurations that are not stored in the motion controller such as user units.

➡️ 64-bit:

RapidCode64.NET.dll → [64bit] - .NET Standard 2.0 DLL
RSI.System64.dll → [64bit] - (only if using the Axis XML API)

Note: RSI.System64.dll is not needed, but some users might want to save Axis configurations that are not stored in the motion controller such as user units.

What version of Visual Studio can I use?

2010, 2015, 2017, 2019, and/or 2022.

Which .NET frameworks can I use with RapidCode.NET.dll?

RapidCode.NET.dll is built for .NET Standard 2.0, making it compatible with applications built on the following frameworks:

.NET Standard
2.0✅
2.1✅

.NET Framework
4.5❌ 4.5.1❌ 4.5.2❌
4.6❌ 4.6.1✅ 4.6.2✅
4.7✅ 4.7.1✅ 4.7.2✅
4.8✅

.NET Core
2.0✅ 2.1✅ 2.2✅
3.0✅ 3.1✅

.NET (formerly .NET Core)
5✅
6✅
7✅
8✅
9✅

Note
If your desired framework is not supported, please contact us, we can work to offer our Dlls in your desired .NET framework.

Which MSVC runtime do I require to run my application?

The RapidCode API links to the runtime library which works for 2015, 2017, 2019, 2022. We offer both 32-bit (x86) and 64-bit (x64).

The 32-bit and/or 64-bit
"Microsoft Visual C++ Redistributable packages for Visual Studio 2015, 2017, 2019, and 2022"
can be downloaded here.

Which folder should I copy the RMP runtime license file?

Ensure this (rsi.lic) file is placed in your RapidCode folder C:\RSI\X.X.XX by default in Windows, \rsi\ in Linux.

How do I change RMP EtherCAT controller sample rate from 1KHz to 4KHz?

For first time:

  1. Generate ENI File (EtherCAT.xml) when your controller sample rate is set to 4kHz.
    1. RapidSetupX Start the network or
    2. RapidSetup Start the network

For future runs:

  1. Open RapidSetupX or RapidSetup
    1. Change Sample Rate from 1000 to 4000
    2. Network Start

In code using RapidCode :

  1. MotionController.Create()
    1. MotionController.SampleRateSet(4000)
    2. MotionController.NetworkStart()

Can we just move one Axis in a MultiAxis?

Yes by commanding other Axis objects to move to their current CommandPositionGet().

Can a MultiAxis work with one axis in CSP and another in CST?

There is no need to use different functions for a combination of CSP and CST. (Other than setting up Tuning parameters for your CST axis.) The firmware will handle the appropriate calculations and send the command in the required mode over EtherCAT to achieve the command on the MultiAxis.

What is the fastest possible period for which the recorder can record?
The Recorder records every RMP sample period—it’s limited by your RMP sample rate. In practice, rates above 4kHz are uncommon with servo drives, though using I/O nodes only might allow faster sampling.

Variation: RapidCodeRT

What is RapidCodeRT?

Please navigate to: API Comparison

What are the INtime RapidCodeRT development requirements?

  1. RSI license (rsi.lic) with the RapidCodeRT feature activated.
  2. Multi-Core INtime runtime USB key
  3. INtime SDK (for C++ development in INtime) (⚠️ this is purchased separately from Tenasys, see here)

🔹 Troubleshooting

RapidSetup: I am seeing a firmware mismatch error/warning.

Between trying different versions of RMP you will need to restart the INtime node. This will clear out the old firmware.

RapidSetup: I am seeing this error popup "The type initializer for ‘RapidSetup.ContainerHelper’ threw an exception"

Please try deleting the following folder:

C:\Users\<YourUser>\AppData\Local\RSI

This may resolve the issue. It seems to be related to .NET and its installation and access.

INtime RapidSetup: I am seeing RapidSetup display a license serial number that does not match my INtime USB dongle.

We have seen that if the user's PC has an INtime trial license activated, sometimes the INtime dongle/USB serial number is not recognized.

When this happens you must manually delete all INtime licenses and re-enter a new license string.

Reset the License using a GUI as of INtime 7:

  1. Navigate to INtime License Manager
  2. Click "Purge License"
  3. Enter your dongle license and make sure it displays "key locked" correctly.

OR:

Manual INtime Lic Reset:

  1. Navigate to C:\ProgramData\TenAsys\INtime
  2. Delete the file with the name lservrc
  3. Open "INtime Configuration" app
  4. Select "License Manager" section
  5. Enter your dongle license and make sure it displays "key locked" correctly.

🔹 Glossary

E

  • EtherCAT ®: Ethernet for Control Automation Technology (EtherCAT) was developed by Beckhoff. It’s based on the CANopen protocol and on Ethernet but differs from internet communication or network communications in being specifically optimized for industrial automation control. (Learn more here)

R

  • RapidCode: this the RMP's API. It allows developers to quickly create EtherCAT machine control applications in C++, C#, VB.NET or Python. RapidCode provides a powerful, yet easy to use interface for EtherCAT motion controllers, servo/stepper drives and I/O nodes.
  • RMP: Rapid Motion Processor (RMP) is the product and firmware name. It includes the RapidCode, RapidSetupX, and other
    🖥️ Software Tools

S

  • SynqNet ®: our legacy motion controller that offers maximum servo performance and flexibility for demanding motion systems. OEMs can use MechaWare® and Bode Tool™ to implement perfect-fit control solutions using “off-the-shelf” hardware. The SynqNet network provides the convenience and low cost of 100BaseT cabling with the benefits of real-time determinism. (Learn more here)