Configuring Your PXI System in Linux

Publish Date: Aug 28, 2018 | 1 Ratings | 2.00 out of 5 | Print | Submit your review


Use the resources below to guide you through the setup of your PXI controller in Linux. This article discusses how to identify and route trigger bus lines on your PXI backplane.

Table of Contents

  1. Introduction
  2. Example Using nipxiconfig
  3. Additional Resources

1. Introduction

Use the nipxiconfig command-line utility to configure your PXI system in Linux and reserve/route PXI triggers. This utility is shipped with NI-VISA and NI-DAQmx (no standalone installer) and is installed in the /usr/local/natinst/nipxi/sbin/ directory.

Using nipxiconfig

In order to use nipxiconfig, ensure the following: 

  • You need to run as root (su -)
  • nipxiconfig is designed to call with one command with no feedback questions (nipxiconfig --com-m and [parameters]...).
  • For a complete list of commands, execute the following command nipxiconfig --help.
  • For detailed help run man nipxiconfig to access the manual pages of the nipxiconfig which provides descriptions of error codes and syntax.
  • You can identify a controller and chassis by naming the manufacturer and model or by pointing the nipxiconfig utility to the supplied controller.ini or chassis.ini file. Both methods are used in the examples below.

Back to Top

2. Example Using nipxiconfig

This is a simple example of configuring a PXI System that consists of a PXI-1031 with a PXI-8196 embedded controller connected via MXI-3 to a PXI-1045 Chassis.

Figure 1. Example System

Below is the procedure to configure the above system. The images illustrate how the system is configured both under Windows and Linux for comparison purposes. 

Note: MXI-4 and MXI-Express is the recommended product for PXI chassis-chassis communication. It provides error correction, unlike MXI-3.

2.1 Display the PXI System

1. The system is first un-identified to start the identification as with a brand new system.
2. The components is then listed, as shown below. 

Figure 2. An unidentified system using MAX in Windows

Figure 3. An unidentified system using nipxiconfig in Linux

2.2 Identify the Controller

3. Identify the controller (a PXI-8196 in this example)

Figure 4. Identifying a controller using MAX under Windows

Figure 5. Identifying a controller using  nipxiconfig in Linux

2.3 Identify the Chassis

4. After the controller is identified, identify the first chassis (In this example, the chassis containing the PXI-8196 controller)

Figure 6. Identify a chassis using MAX under Windows 

Note: You can identify a chassis using the manufacturer name and model or by pointing MAX or nipxiconfig to the chassis.ini or controller.ini files. In MAX, this is done by choosing Identify As > Other. Using nipxiconfig, simply point the tool to the ini file as in the example below. 

Figure 7.  Identifying a chassis using  nipxiconfig in Linux (path method)

5. We now need to identify the second chassis linked through the MXI-3 interface. 

Figure 8. Identifying the second chassis using MAX in Windows

Figure 9. Both chassis and the embedded controller identified using MAX in Windows

Figure 10. Identifying the second chassis in nipxiconfig and displaying the brief system output

At this point, you have successfully configured and identified the demo system in Figure 1. 

2.4 Trigger Routing and Reservation (Optional)

Chassis 1 (chassis 2 under Windows) is a PXI-1045, which is an 18 slot chassis that has 3 segments. Triggers need to be routed across the segments explicitly when using drivers that do not provide automatic routing, such as DAQmx. In Windows, we can do this through the Trigger tab of the PXI chassis in MAX. similarly, we can use the nipxiconfig utility in Linux to route triggers across segments. Below is an example of routing triggers for the PXI-1045 chassis that was used in the above example. For more information on PXI timing and triggering, see KnowledgeBase 3TJDOND8 at

Figure 11. Trigger bus view using MAX under Windows

Figure 12. Trigger bus view using nipxiconfig under Linux

The above figures show the trigger bus for both the PXI-1031 (a single segment chassis) and the PXI-1045 (a 3 segment chassis). In order to reserve triggers in MAX, you place a check on the box you intend to reserve. In this example, we are reserving PXI_Trig1 in Chassis 2. 

Figure 13. Reserving PXI_Trig1 in chassis 2 under Windows

Figure 14. Reserving PXI_Trig1 in chassis 2 using nipxiconfig under Linux

Now that PXI_Trig1 is reserved, suppose we want to route it from segment 3 towards slot 1. At the same time, we will route PXI_Trig3 from the middle segment outwards.

Figure 15. Route PXI Triggers using MAX under Windows

Figure 16. Route PXI Triggers using nipxiconfig under Linux

Back to Top

3. Additional Resources

White Paper: National Instruments I/O Driver Support for Linux
KnowledgeBase 3OP7MCON: Using Linux on a PXI Embedded Controller
KnowledgeBase 3TJDOND8: Using PXI Timing and Triggering Functionality

Back to Top

Bookmark & Share


Rate this document

Answered Your Question?
Yes No