Error -63040: Connection not Established Using FPGA

Updated Jan 29, 2021

Reported In

Hardware

  • CompactRIO Chassis
  • CompactRIO Controller
  • CompactRIO Single-Board Controller

Software

  • LabVIEW FPGA Module
  • LabVIEW

Driver

  • NI CompactRIO

Issue Details

  • When I try to:
    • Run my FPGA VI
    • Open a reference to an FPGA card in another computer, PXI chassis, or CompactRIO
    • Compile my FPGA code on my sbRIO
    • Deploy my FPGA code to my sbRIO-9627
I get the following error message: 
Error -63040: NI-RIO FPGA Communications Framework: (Hex 0xFFFF09C0) A connection could not be established to the specified remote device. Ensure the device is on and accessible via the network, and that it is listening on the correct port.

Error Code -63040: A connection could not be established to the specified remote device. Ensure the device is on and accessible via the network, that the device is not in safe mode, that NI-RIO software is installed, and that the RIO server is running abd properly configured. 

For NI-RIO 2.3 or later, refer to Software>>NI-RIO>>NI-RIO Settings under the system in NI MAX. 

Prior to NI-RIO 2.3, refer to Software>>NI-VISA>>VISA Options under the system in NI MAX. 

 


Note: In LabVIEW Version 2017 and earlier the error code of this error was -63044.

Solution

This error code indicates that the RIO device is unable to communicate over the network and might be caused by the following reasons:


NI CompactRIO Driver Versions

Ensure that the version of NI CompactRIO Driver on the host PC is the same on the RIO device. This can be checked by following the steps below:

  1. Open NI Measurement & Automation Explorer (MAX). For that, navigate the Windows Start Bar and type in "MAX".
  2. Under My System tab, open the Software branch.
  3. Look through the list of software to ensure that NI CompactRIO is installed and make a note of the version. If it is not installed, refer to this article for guidance to install NI CompactRIO driver
  4. Under the Remote Systems tab, locate the RIO device and open the device's branches.
  5. Confirm the NI CompactRIO driver on the Development system and Deployment system are the same version:
    • Development: In NI MAX under My System >> Software 
    • Deployment: In NI MAX under  Remote Systems >> [Your Target] >> Software
    • If the versions do not match, install the correct version of NI CompactRIO Driver to your Development and/or Deployment system
Note: Make sure the NI CompactRIO version supports the RIO device and LabVIEW version installed. Such information can be found the readme documents on the NI CompactRIO download page

Ethernet Connection

If connecting the device over Ethernet, ensure that the Ethernet connection has been established properly. This can be tested by following the steps below:

  • Try using a different Ethernet cable and different Ethernet ports.
  • Confirm the RIO target can be discovered in NI MAX. 
  • Try setting the IP address of the RIO device to static instead of DHCP.
  • If the computer is using a Static IP then make sure that your Configure IPv4 Address is set to Static. These settings can be found in NI MAX under Network Settings. 
  • If the RIO device is connected to a host PC, try to connect it directly to the network's router if possible.
  • Disable the Windows firewall to ensure that this is not blocking any network communication.
  • Check the RIO device's available memory, as free space is required for network communication to work. This can be seen under the System Settings tab of the device in NI MAX.
  • Avoid using USB to Ethernet Adaptors. These can cause communication problems because they may not be designed to create the USB-ENET bridge required by the RIO device. 

FPGA Code and Compilation

  •  Try compiling a blank FPGA VI instead. This will identify whether the FPGA code itself is causing the problem.
  • Try using a different compiler (e.g.: if using the cloud compiler, try using the local compiler instead and vice versa).This will identify whether the compiler is contributing to the problem.
  •  If the LabVIEW project consists of Real-Time code, ensure that the Open FPGA VI Reference function is not being called too soon after boot-up.
    • If this function is called in a Real-Time start-up executable that runs as soon as the target boots, then you may need to wait a few seconds before opening the FPGA VI reference.
    • Another approach to avoid an immediate call of the Open FPGA VI Reference function would be:
1. When configuring the Open FPGA VI Reference remove the checkmark from the Run the FPGA VI checkbox in the Configure Open FPGA VI Reference dialog box:


 
2.Then, use two FPGA Inkove nodes to call the Reset (to reset the FPGA VI to the default state of the VI) and Run Methods:

Additional Information