My Network Connection to my cRIO Is Timing Out, Error -63043

Updated May 3, 2018

Reported In

Driver

  • NI-RIO

Operating System

  • Windows
  • VxWorks
  • NI Linux Real-Time
  • PharLap

Issue Details

I'm getting error -63043 in my program:
 
I need to increase the timeout period for RIO Server RPC connections to my cRIO controllers. How can I do this?

Solution

  • With NI-RIO 2.3 or later, it is possible to modify these settings manually in the nirio.ini file.
  • Locate the nirio.ini file
    • For Real-Time systems, the location of the nirio.ini file varies by RT OS: 
      • On VxWorks and Phar Lap ETS: /ni-rt/system/nirio.ini 
      • On NI Linux RT: /var/local/natinst/nirio/etc/nirio.ini 
    • On Windows systems, the nirio.ini file is stored under the system-wide application data directory.
      • In Windows XP:  C:\Documents and Settings\All Users\Application Data\National Instruments\NI-RIO\nirio.ini
      • In Windows Vista/7/8:  C:\ProgramData\National Instruments\NI-RIO\nirio.ini
        • To access the ProgramData folder, ensure all hidden folders, files, and drives are visible in Windows Explorer.
          • To display all hidden items, within Windows Explorer navigate to Tools»Folder Options»View»Show hidden, files, folders, and drives
  • In nirio.ini, increase the following INI settings:
    • [General]
    • RpcTimeout = 15
    • RpcSessionTimeout = 300
    • DeviceDiscoveryTimeout = 10
      • Note: These values are the defaults and are in seconds (e.g. 300 means 5 minutes).
      • Refer to the Additional Information section for more explanation on these settings

Additional Information

Caution! Changing timeout values can be dangerous:
The RPC timeout values are not configurable in MAX because they are rarely needed and advanced settings. Care must be taken when setting these values because if they are set too low, communication may fail because targets will begin timing out. If they are set too high, targets that are down will take too long to timeout.

Nirio.ini settings' descriptions:

  • RpcTimeout is a setting on the client side, which is the maximum amount of time it can take to make a connection to a remote server.
  • RpcSessionTimeout is a setting on the client side, which is how long the remote server will wait without hearing a "keep alive" notification before closing the connection. The client will send keep-alives every RpcSessionTimeout/2 seconds. 
  • DeviceDiscoveryTimeout is how long we will wait for remote systems to respond when querying for remote devices in the Browse window of the RIO I/O Control. 

WAS THIS ARTICLE HELPFUL?

Not Helpful