Error -65512 Using CompactRIO in Scan Mode

Updated Oct 21, 2023

Reported In

Hardware

  • CompactRIO Controller
  • CompactRIO Chassis

Software

  • LabVIEW
  • LabVIEW Real-Time Module

Issue Details

  • I am running my cRIO Controller/Chassis in Scan Mode but I occasionally get error -65512. I am concerned that this is affecting the accuracy of my data, how can I fix this?
  • I have a cRIO that uses scan engine only and at random times during boot up it throws scan engine fault -65512.
Error -65512 (0xFFFF0018): The data transfer for some I/O variables on this target could not be completed in the allotted time and the updates for some values may have been delayed. Increase the Scan Period to avoid this problem.

Solution

Try the following suggestions to resolve this error:

1. Increase the Scan Period of your target by right clicking on the RT Target >> Properties >> Scan Engine >> Scan Period.
​​​​​​​​​​​​​​​​​​​​​RT-Properties.pngscan-period.png


2. Use Timed Loops. Timed loops ensure that a loop executes at a defined speed; however, their performance varies depending on the situation they are used in. Timed loops provide a high level of determinism however they are not as reliable as the second solution.

3. Use a while loop, remove all timing components and instead ensure the while loop is synchronized to scan engine by using the Synchronize To Scan Engine VI. This solution, while more reliable than the previous method, may not be accurate over longer periods of time - especially when using external clock sources such as a PTP or NTP Clock.
  • Example can be found in LabVIEW >> Help >> Find Examples... >> Hardware Input and Output >> Scan Engine >> Scan Engine lvproj.
4. Add the recommended Wait time of 30-60 seconds to the initialization sequence in the RT Main VI. 

Additional Information

Error -65512 is a common error seen while using a cRIO in Scan Mode and typically seen when the Real-Time (RT) time of a cRIO is changed. This often leads to issues with syncing multiple pieces of hardware, data loss occurring and the loss of determinism (reliability/accuracy of code).

This error can also occur because while the RT might finish its boot sequence, there are still critical processes that still have to start before RT Main can run. Scan engine may not have initialized in time for the first call.