Why Do the Asset Tags On My STS System Stop Updating in SystemLink™?

Updated Sep 3, 2026

Reported In

Software

  • SystemLink Client
  • STS Maintenance Software

Issue Details

The asset tags on my STS system will update regularly to SystemLink™ for a while, and then at seemingly random intervals, they will stop updating.  Restarting the salt minion service on the STS system or running a Refresh job on the STS system both cause the asset tags to start updating again... until they stop again some time later.

Solution

In versions 26.0 and earlier, the STS Maintenance Software overwrites the salt grains file each time it starts up, usually when the STS system reboots.  When these versions of the STS Maintenance Software overwrite the salt grains file, they omit the systemlink_workspace property, which causes any STS system NOT in the Default workspace of SystemLink™ to fail to update its asset tags.  the simplest solution is to upgrade to STS Maintenance Software 26.5 or later.

     

There are 2 manual workaround actions you can take to cause the grains file to be rewritten with the correct workspace info in it, causing the asset tags to resume updating 5 minutes later:

  1. Restart the salt minion service, NI Salt-Minion, in the Windows Services dialog on the STS system
  2. Run a Refresh job on the the STS system, from the server-side SystemLink™ application

Additional Information

SystemLink Client deploys and uses salt to communicate between clients systems (salt minions) and the server-side SystemLink™ application (salt master).  The salt software layer reads the grains file periodically but not regularly, caching that information in its global __grains__ variable.  The grains file in the SystemLink Client context is stored at:

     

C:\ProgramData\National Instruments\salt\conf\grains

    

If you manually edit the grains file, those changes will eventually make it to the __grains__ variable, causing the asset tag updates to resume, but in many cases that can be hours later.  If you want to force salt to read the grains file and fill the variable, you can run the following command in a DOS shell with administrative privileges:

   

"C:\Program Files\National Instruments\Shared\salt-minion\salt-call.bat" saltutil.sync_grains

   

Here's an example of a grains file created by STS Maintenance Software, versions 26.0 or earlier:

productname: NI STS T4
serialnumber: FDA4C1
manufacturer: National Instruments

     

Here's an example of a grains file that has its correct workspaceId information added back to it:

productname: NI STS T4
serialnumber: FDA4C1
manufacturer: National Instruments
systemlink_workspace: 136c415e-7c0d-22b3-8fa2-fb071da1a60b