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 uses the INtime RTOS. Visit this page from Tenasys (INtime) to see supported NICs: Supported Network Interface Cards.

⭐ We recommend using an Intel-based Ethernet chipset.

Additional NIC models can be supported. Please issue your request to tech@roboticsys.com.

What type of CPUs and chipsets does RMP support?

RMP uses the INtime RTOS. Visit this page from Tenasys (INtime) to see supported CPUs and chipsets:

https://tenasys.com/resources/knowledge-base/knowledge-base-page/?pageNum=47

What is the difference between RapidCode, RapidCodeRT, RapidSequencerWin, and RapidSequencerRT?

We have a full page dedicated to this comparison, please see here: API Comparison.

🔹 RapidCode API

What is RapidCode?

A software API that allows you to rapidly develop applications to suit all your motion and I/O needs.

To support RapidCode, Windows OS version can be 32-bit or 64-bit.

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

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

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

➡️ 32-bit:

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

➡️ 64-bit:

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

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✅

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.

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

For first time:

  1. Generate an ENI file when your controller is set to 4kHz. (One Time per network.)
  2. Open RapidSetup
  3. Click on the Motion Controller tab
    1. Change Sample Rate from 1000 to 4000
    2. Discover Network
    3. Generate ENI File
    4. Network Start

For future runs:

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

In code using RapidCode :

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

Can we just move one Axis in a MultiAxis?

Yes by telling the other axes to go where they already are.

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.

Variation: RapidCodeRT

What is RapidCodeRT?

Please navigate to: API Comparison

What are the 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 Steeplechase VLC. 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 our product code for the RDK (Rapid Development Kit) as a whole. It includes the RapidCode API, RapidSetup Tool, and some other software tools.

S

  • SynqNet ®: our old 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)