RTXI is a combination of several open source initiatives:
- the Real Time Application Interface for Linux (RTAI),
- the Qt user interface framework, and
Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed, both commercially and non-commercially, by anyone under licenses such as the GNU General Public License. Desktop use of Linux has become increasingly user-friendly and popular in recent years. Typically, Linux is packaged into different distributions that include the Linux kernel and all of the supporting software required to run a complete system, such as utilities and libraries, the X Window System, the GNOME and KDE desktop environments, and the Apache HTTP Server. Commonly-used applications with desktop Linux systems include the Mozilla Firefox web-browser and the OpenOffice.org office application suite.
RTAI provides real-time extensions to the official Linux kernel to make hard real-time applications possible. This is achieved by patching the kernel and introducing additional modules to handle task scheduling, capture system interrupts, etc. This requires that the kernel be recompiled and manual installation instructions are provided here. RTAI also provides several benchmark tests for evaluating your system’s real-time performance.
The Comedi project develops open-source drivers, tools, and libraries for data acquisition on Linux platforms. Comedi supports a variety of common data acquisition plug-in boards. Most of our users use DAQ cards by National Instruments, but any DAQ card that is supported by Comedi should work with RTXI. RTXI can also handle multiple DAQ cards with a simple modification to the source code. A list of compatible DAQ cards is available here.
Qt is a cross-platform user-interface framework distributed by Nokia and used in RTXI under the LGPL license. This framework provides classes for developing sophisticated UIs using a signals-and-slots mechanism similar to that of RTXI plug-ins.
HDF5 is a versatile data model that can represent complex data objects and a wide variety of metadata and allows you to quickly extract subsets of data. It is incorporated into RTXI through the Data Recorder plug-in, which streams data to a HDF5 file along with the parameters of all plug-ins connected to the Data Recorder. You can store multi-channel experimental recordings, instrument metadata, and browse images in a single file, making it possible to capture the entire collection of information about a single experiment. The format is completely portable and several tools are available for interacting with data in this format. HDFView is a free visual tool for browsing and editing HDF5 data structures and is available for Windows, Mac and Linux. MATLAB also has native functions for working with HDF5 files and we provide a tool that optimizes HDF5 files produced by RTXI for importing into MATLAB. We have developed a standardized hierarchical structure that will allow you to write MATLAB scripts that are compatible with all RTXI-generated HDF5 files.
If your use of RTXI leads to scientific publication, we request that you cite RTXI in your paper with text such as: ‘Experiments were performed using the Real-Time eXperiment Interface (RTXI; www.rtxi.org)’.
We use GitHub to manage code development. The best way for you to report a bug or request a feature is to use the appropriate links at the top of the page or in the sidebar.