Error 1055 from a Property or Invoke Node in VI or Executable

Updated Oct 25, 2018

Reported In

Software

  • LabVIEW Real-Time Module
  • LabVIEW

Operating System

  • NI Linux Real-Time

Issue Details

For RT VI:

I have deployed a VI or .rtexe on a Real-Time target. When I try to run the code, I receive the following error message:

Error 1055 occurred at Property Node...
Possible reason(s):
LabVIEW: Object reference is invalid.

 
 

For Desktop:

I have a property/invoke node and am receiving Error 1055 when trying to execute them even though I am passing the reference between loop iterations.

Solution

For RT VI:

  • Remove any property or invoke nodes referencing front panel objects, as front panels are not loaded during rtexe execution.

For Desktop VI:

  • Ensure that shift registers are used instead of tunnels through for loops
  • Do not use default if unwired for an exit tunnel
  • Go through each case and make sure the object reference is not being edited.
 

Additional Information

RT Solution:

The most common cause for this error is that there is a .rtexe running at startup on a real-time target and has a property or invoke node referencing a front panel object. When the .rtexe is run at startup and is not accessed by a host PC, the front panel will not be generated, so any references to front panel objects will return error 1055 indicating that the object referenced doesn't exist. If this is the issue, removing the property or invoke node should correct the behavior.

There is also a documented known issue that occurs in LabVIEW Real-Time versions 2014 and 2015 when obtaining a dynamic reference to a control on a x64 NI Linux Real-Time target. After making a modification to the VI with this reference, Error 1055 is thrown from any property node attempting to access the dynamic refnum. In order to resolve this error, close and re-open the VI.

Desktop Solution:

When passing Object References between loop iterations it is important to not use the 'Default if Unwired' option for the exit tunnel that feeds and to actually connect the Unwired Cases to the original Object Refence.  This is important as if the Default value is used it is using a Default data type that is 'Object Reference' not the Object Reference for the Front Panel Object you are trying to update. Likewise it is important to use shift registers instead of tunnels in for loops in case of a 0 iteration loop.

Else, go through each case and make sure that the Object Reference is not being changed/closed.
 

WAS THIS ARTICLE HELPFUL?

Not Helpful