MATLAB troubleshooting

The following table lists possible issues, helps you to understand why the issue may have occurred, and suggests the remedial actions to take, in the order to try them.

Issue

Reason

Action

Nexus error:

When you click the Run Script button, Nexus becomes unresponsive for some time, and finally, the Matlab tab displays the following error:

Default Run Matlab Operation Host Application is not connected, unable to retrieve command list

MATLAB error:

Default Run Matlab Operation Host Application is not connected, unable to retrieve command list

MATLAB connects to Nexus over TCP/IP. If you disconnect your Ethernet cable and disable wifi (ie, if you are working entirely offline), MATLAB and Nexus cannot connect.

Install the Microsoft Loopback Adapter. For instructions on how to do this, see Adding the MS Loopback Adapter on Windows 7, on blogs.msdn.com 

 

MATLAB error when constructing an instance of the ViconNexus object

vicon = ViconNexus();

 

Undefined function or variable 'ViconNexus'

When you try to create an instance of the class object ViconNexus, MATLAB is unable to locate the definition for the class.

This is generally an indication that the Search path in MATLAB has not been set to include a path to the NexusSDK or that the NexusSDK has not been installed

Ensure that the NexusSDK has been installed. For a 32-bit installation of MATLAB, install the 32-bit version of the SDK; for a 64-bit installation of MATLAB, install the 64-bit version of the SDK.

In MATLAB, ensure that the path to the NexusSDK has been added:

64-bit MATLAB NexusSDK path is:

NexusInstallFolder\SDK\Win64\Matlab

32-bit Matlab NexusSDK path is

NexusInstallFolder\SDK\Win32\Matlab

Use the shortcut on the Start menu to set the MATLAB path.

MATLAB error when constructing an instance of the ViconNexus object

vicon = ViconNexus();

 

Could not load file or assembly 'NexusSDKClientDotNET.dll' or one of its dependencies. The specified module could not be found.

This can happen if the VC++ 64bit runtimes did not get installed from the Nexus bootstrap installer setup.exe

Install the runtimes manually

Navigate to the folder where the installation files were unzipped

run vcredist_x64.exe

Generic type error message received in MATLAB after calling a function

result = vicon.function();

Error using ViconNexus/function (line 123)

Error: Invalid Parameter Value

 

Look at the log in the Nexus Matlab tab as it may contain more detailed information on the error that has been generated.

MATLAB error

Host application failed to respond to the information request.

After MATLAB sends a command to Nexus, it waits for a specific amount of time for the reply to be received. If the reply is not received in that timeframe, this error is generated.

Delays in processing can occur when Nexus is waiting for input from you to proceed or it has become unresponsive.

Look at the log in the Nexus Matlab tab to see if an error has been generated.

Often, commands will return a reply, but some commands, such as OpenTrial and RunPipeline, require that Nexus generates a notification of task completion. An error in these commands can cause the reply to be delayed or not be generated.

Look at the log in the Nexus Matlab tab to see if the command was received by Nexus. If the log does not have an entry showing that the command was received then it is possible that something has happened to the connection between the applications.

Restart Nexus.

Make sure that Nexus is not displaying a user prompt, if it is, answer the prompt and retry the command.

Restart Nexus.

MATLAB error

Unable to Communicate with the host application.

The function called failed to execute because the connection to Nexus has either been dropped or never established.

Make sure that Nexus is running and is responsive.

If running from within MATLAB, remove the ViconNexus object from the workspace using the MATLAB clear command and re-create the object.

Restart Nexus.

Restart MATLAB.

Nexus error

MATLAB version is shown in the Matlab tab but a message states that MATLAB is not accessible.

This can happen if Nexus is able to determine that MATLAB is installed but it is unable to access the MATLAB automation server.

Run matlab.exe with the /register option to have MATLAB re-register its automation server components.

When there are multiple versions of MATLAB installed, Nexus is running the wrong version of MATLAB

MATLAB registers COM components to provide access to its automation server, Nexus will use the currently registered components so the order of installation/uninstall/upgrade of different MATLAB versions can make a difference.

Run matlab.exe from the MATLAB version you wish to use with the /register option to have MATLAB re-register its automation server components.