Error -307702 When Deploying VeriStand System Definition to Real-Time Target

Updated May 1, 2023

Reported In

Software

  • VeriStand

Issue Details

I am deploying a system definition file to my real-time target from Veristand; the system definition includes a simulation model that I'm deploying to my target. When I deploy, I get the following error:

Error -307702 occurred at Project Window.lvlib:Project Window.vi >> Project Window.lvlib:Command Loop.vi >> Project Window.lvlib:Connect to System.vi

Possible reason(s):

NI VeriStand: The size of the imported model data in the system definition file conflicts with the size in the specified model file. This error can occur if the model file contains a different number of inports, outports, signals, or parameters than when it was imported. This error also can occur if two or more models contain a global parameter with the same name but different dimensions.


What are some steps I can take to try and solve this error?

Solution

As the above error message notes, this error is typically caused by either a mismatch between a model's data and specified data of that model in VeriStand, or an issue with global parameters for your project's models having the same name but different dimensions. Below are some steps that can be tried for both scenarios.
  • For issues with model data size mismatch:
    1. In order to ensure that your models are referencing their DLLs correctly, remove the models present in your project, save your project, and re-import the models into your project. Ensure that when you re-import the models, you are specifying to import the models with parameters as shown below.
  1. If the issue persists after re-importing your models, you should check to ensure that your Vector Port Specification is correct for your imported parameters. This setting controls whether or not inport/outport vectors are imported as a collection of scalar channels or a single vector channel. Scalar channels are easier to connect to other parts of your system, but could result in data mismatches if you try to map a port broken into scalar channels to a model expecting a vector channel - the appropriate implementation will depend on your project. Vector Port Specification is another setting in the "Add Simulation Model" dialog box.
  1. If your issue still persists, you could run the System Definition vs Model File Compare Tool, which is an open-source tool developed to compare System Definition and Model File parameters to determine mismatches. Correcting issues revealed by the tool should resolve errors dealing with model size mismatches.
 
  • For issues with global parameters:
    1. If you don't need your global parameters to apply to all of your project's models, the easiest way to resolve dimensional conflicts with your global parameters is to change the scoping for your global parameters from target-scoped to model-scoped. Model-scoped parameters will apply changes to only the parameter in the model which owns it, as opposed to all models who use this parameter. The process to update the scope of parameters in a model can be found in the VeriStand manual under Scoping Global Parameters - before changing your parameter scope, be sure to determine what the scope of your parameters are.
    2. If you need your parameters to be target-scoped, you will need to reload your System Explorer window and verify the dimensions of parameters loaded in multiple models. This information can be found on the Model Parameter Configuration Page, which can be reached by opening the System Explorer window and selecting one of the parameters for a model. Ensure that the dimensions of parameters used by multiple models match, and match what you're expecting the parameters' dimensions to be.

Additional Information

If none of the above steps resolve the issue and you are importing a model from a third party source/external developer, ensure that the model is properly configured before importing it into VeriStand.