APIs, concepts, guides, and more
INtime Real-Time OS for RMP

Why RMP for Windows runs on the INtime RTOS, and how the pieces fit.

🔹 RMP on Windows Runs on INtime

Warning
INtime is not optional on Windows. Every RMP for Windows system runs the RMP firmware inside INtime. You must install and license the INtime Runtime before you install RMP. See Install RMP for Windows.

INtime, from TenAsys, is a real-time operating system that runs side by side with Windows on the same PC. It gives RMP the deterministic timing motion control requires: the firmware closes the servo loops and runs the EtherCAT network every sample, on a schedule nothing on Windows can disturb.

Windows by itself cannot do this. Windows application code is never real-time, no matter how it is written or what priority it is given. RMP solves this by putting the real-time work on INtime and leaving your application on Windows. This is a Windows-only concern: on Linux, RMP runs natively and INtime is not involved at all. See API Comparison.

🔹 What INtime Takes from Your PC

INtime does not share hardware with Windows. Once INtime is set up for RMP, it owns three things that Windows can no longer use:

Resource For RMP Why INtime needs it
One CPU core One core, running INtime node NodeA Windows never schedules anything on it, so nothing Windows does can delay the firmware.
RAM 512 MB reserved for the node The firmware runs in memory set aside for INtime, so Windows memory use cannot affect it.
EtherCAT network card The network card you pass to INtime during setup The EtherCAT master drives the network directly, without the Windows network stack.

On a typical 8-core PC, Windows keeps seven cores, the rest of the memory, and its other network cards for your application and everything else. INtime gets the eighth core, 512 MB of RAM, and the EtherCAT network card.

🔹 What Runs Where

These parts of RMP run on INtime, on NodeA:

On INtime What it does
RMP motion firmware (RMP.rta) Closes the servo loops every sample
EtherCAT master (RMPNetwork.rta) Drives the EtherCAT network through the network card INtime owns
Real-time task manager (rttaskmanager.rta) Runs your RTTasks in lockstep with the firmware

Everything else stays on Windows:

On Windows What it does
Your application, using RapidCode from C++, C#, or Python Configures the controller, commands motion, and reads status
GUI tools (RapidSetup, MotionScope, rsiconfig) Configuration and diagnostics

Your Windows application talks to the firmware through shared memory. A simple getter costs a few hundred nanoseconds, but your Windows code is still Windows code: the determinism belongs to the firmware, not to your process.

An .rta file is an INtime application, the INtime equivalent of an .exe. The RMP package installs all of them; see RMP Package Contents.

🔹 When Your Own Code Must Be Real-Time

If a piece of your logic has to run every sample with guaranteed timing, it has to run on INtime too. There are two ways to get there:

Path Who manages the real-time thread RMP license feature
RTTasks (recommended) RTTaskManager, in lockstep with the sample clock RTTasks
RapidCodeRT You RapidCodeRT

RTTasks is RMP's managed real-time framework. You write plain C++ task functions, compile them into RTTaskFunctions.rsl, and the RTTaskManager loads and schedules them alongside the firmware. To target INtime, set RTTaskManagerCreationParameters::Platform to INtime and set RTTaskManagerCreationParameters::NodeName to your node. RTTasks is a separately licensed RMP feature.

RapidCodeRT is the INtime build of the RapidCode C++ library (RapidCodeRT.rsl, RapidCodeRT.lib). It is the same API, linked into an INtime process, which is always real-time. It is the expert path: you own the process, its priorities, and its memory. See Run a sample app in INtime in C++.

An .rsl file is an INtime shared library, the INtime equivalent of a .dll.

Note
INtime is a 32-bit operating system, so RapidCodeRT.lib and RTTaskFunctions.rsl are 32-bit even though your Windows application is normally 64-bit.

🔹 INtime Runtime and Licensing

RSI provides everything a Windows system needs here: the INtime Runtime installer, the INtime runtime license, and the RMP license.

What it is Who needs it
INtime Runtime The RTOS itself, installed on the Windows PC. RSI provides the CDEV release on the Downloads page. Every RMP for Windows user
INtime runtime license Activates the runtime. Sold by RSI, usually as a USB hardware key with a 30-digit code, or as a .lic file. The key must stay plugged in. Every RMP for Windows user
RMP license (rsi.lic) Sold by RSI, hardware-locked to a USB dongle. RapidCodeRT and RTTasks are separately activated features. Every RMP user, on any platform
Note
The INtime runtime license and the RMP license are different things, though RSI sells both. The card shipped with the INtime USB key also carries the hex serial number you convert to decimal when downloading rsi.lic. See License.

RapidCodeRT development additionally requires a Multi-Core INtime runtime key.

🔹 Getting Started

To... See
Install INtime and then RMP on a Windows PC Install RMP for Windows
Check your PC's real-time performance RMP PC hardware and performance requirements
Run deterministic user code on INtime Real-Time Tasks
Write a C++ application that runs on INtime Run a sample app in INtime in C++
Add a second node Add an extra Node (optional)
Decide which API to use API Comparison

❓ FAQ

Do I need INtime to run RMP on Windows?

Yes. RMP for Windows runs its motion and EtherCAT firmware inside the INtime real-time operating system. INtime must be installed and licensed before you install RMP. RMP for Linux does not use INtime at all.

RSI sells the INtime runtime license, usually as a USB hardware key, and provides the INtime installer on the Downloads page. To run RMP there is nothing to buy from TenAsys directly. See Install RMP for Windows.

Which PCs, CPUs, and network cards work with INtime?

Most Intel and AMD processors and most Intel and Realtek Ethernet chipsets. The EtherCAT network card is handed to INtime and needs an INtime driver with HPE support. TenAsys publishes a compatible CPU list, and the INtime Platform Assessment Tool (tpat.exe) checks a PC's BIOS and hardware for real-time suitability. See RMP PC hardware and performance requirements.

What is an INtime node?

A node is one CPU core taken away from Windows and given to the INtime kernel, along with a block of reserved memory. On an 8-core PC, Windows keeps seven cores for your application and everything else, and INtime NodeA owns the eighth. The RMP firmware, the EtherCAT master, and the RTTask manager all run on that one core. Windows never schedules anything on it, which is what keeps the firmware timing deterministic. See 🔹 What INtime Takes from Your PC.

Do I need to buy the INtime SDK?

No. RMP Windows users do not need to purchase an INtime SDK.

If your own logic must run in real-time, we recommend Real-Time Tasks first. They run on the INtime Runtime that RMP already installs. We also offer the capability to write your own INtime programs with the RapidCodeRT API, which does require the INtime SDK from TenAsys, but this is not typical for RMP customers. See API Comparison.

Is the INtime license the same as the RMP license?

No, but RSI sells both. The INtime runtime license activates the INtime kernel and is managed in the INtime License Manager, usually from a USB hardware key that must stay plugged in. The RMP license (rsi.lic) unlocks RMP and its features. RMP for Windows needs both. See License.

Can my Windows application code run in real-time?

No. Windows itself is not a real-time operating system, so nothing running on Windows is deterministic regardless of thread priority. That is fine for most applications because the RMP firmware on INtime is doing the time-critical work. If your own logic must run every sample, run it on INtime with Real-Time Tasks. See API Comparison.

Why are the INtime libraries 32-bit?

INtime is a 32-bit operating system, so RapidCodeRT.lib, RapidCodeRT.rsl, and RTTaskFunctions.rsl are 32-bit. Your Windows application is normally 64-bit and links the 64-bit RapidCode library; the two communicate through shared memory, so the mismatch does not matter.

Which INtime versions does RMP support?

INtime 7 is current and recommended. INtime 6 is still supported for existing installations. Both are covered in Install RMP for Windows.

I changed RMP versions and RapidSetup reports a firmware mismatch.

Restart the INtime node. The old firmware stays loaded on the node until it is restarted. See Troubleshooting.

RapidSetup shows a license serial number that does not match my INtime USB key.

This usually happens when an INtime trial license is still active on the PC. Purge the INtime licenses in the INtime License Manager and re-enter the key's license string. The full procedure is in the Troubleshooting FAQ.