Solution
This issue is an identified bug for EPICS Servers running under PXIe Real-Time systems.
After an EPICS Server has been successfully set up for the first time in a PXIe RT system, and the target is restarted, the service running in NI Linux RT might fail to start properly when the RT Main program runs again. The current identified workaround is to add a delay to the daemon in charge of starting the process in NI Linux RT.
Please follow these steps to solve the issue:
- Use the SFTP program of your preference (e.g. winSCP, FileZilla, etc...) to access your target's file directory from your Host computer. If you are unsure on how to do this, please check this article for instructions: Tools Available for File Transfer/Access on NI Linux Real-Time Targets
- After you are able to connect to the target through the SFTP application and access its file directory from the host computer, please do the following:
- Navigate to /usr/local/natinst/etc/init.d/
- Open the tagsrv script file. This script file runs during the initialization of NI Linux RT and loads the NI Variable Engine process during boot.
- Edit the file and include a sleep 60 in the first line under the startdaemon()function as shown below:
- After you edit the file, save it and close it.
- Confirm that the changes were applied to the file.
- Reboot your target and run your Main VI again.
The
sleep function will cause the service to have a delayed start on the target, which ensures it starts correctly next time the target is rebooted.