Add NI-VCOM to an existing project or a new project as a custom device in VeriStand. Additionally, configure the custom device interface and channel structure.

Adding the Custom Device

After you install the toolkit on your computer, you can add the toolkit to an existing project or create a new one. If you want to add the NI-VCOM Toolkit to an existing project, ignore information about creating a project in VeriStand.

The VeriStand project window displays all recently launched projects. It allows you to import a project by clicking Browse. You can also create a new project.

Create a new project in VeriStand using one of the following methods:
  • Press <CTRL+N>.
  • Click New NI VeriStand Project.
  • Go to the File menu and click New Project.

You can set a project name, author, and description.

After you open your project, complete the following steps to edit its system definition file (.nivssdf):
  1. Click Configure in the VeriStand Editor window to open the System Explorer.
  2. Click Controller in the System Explorer tree.
  3. Change the Target Rate value to 1,000 Hz. You may need to update the Timing Source Timeout value because the project contains thousands of signals.
  4. Right-click Custom Device in the System Explorer tree and select NI » VCOM. This adds the VCOM custom device.
  5. Refer to the instructions on the VCOM custom device main page to configure the VCOM custom device.

Custom Device Main Interface

You can select the following system signals from your restbus simulation under Status in the System Explorer tree:

  • State: Displays the state of the custom device: Idle, Starting, Running, Stopping, or Error.
  • Connect: Allows the custom device to start if Connect on Deploy is not activated.
  • Error Code: Displays error code.
  • Execution Time: Execution time of the custom device, when connected.
  • Execution Time Mean: Base 8 floating average of Execution Time.
  • Overrun Count: Number of overruns since the restbus simulation started.
  • RE_ReadSignals: Time to write data from RBS Core to the custom device.
  • RE_StepRead: Time of receive processing.
  • RE_StepWrite: Time of transmit processing.
  • RE_WriteSignals: Time to write data from the custom device to RBS Core.
  • VS_ReadSignals: Time to acquire data from VeriStand engine to the custom device.
  • VS_WriteSignals: Time to provide data from the custom device to the VeriStand Engine.

Custom Device Channel Structure in the System Explorer Tree

If your project uses the same configuration file as the NI CAN-FD example project, then all the channels will become folders after you close the configuration tool.

  • CAN_Receiver_Rx: Folder Rx from a CAN channel. This folder displays all the signals received by the node CAN_Receiver.
  • CAN_Receiver_Tx: Folder Tx from a CAN channel. This folder displays all the signals transmitted by the node CAN_Receiver.
  • CAN_Sender_Rx: Folder Rx from a CAN channel. This folder displays all the signals received by the node CAN_Sender.
  • CAN_Sender_Tx: Folder Tx from a CAN channel. This folder displays all the signals transmitted by the node CAN_Sender.

Importing a Channel

When you click one of the VCOM folders in the System Explorer tree, a new window appears that allows you to import all of the signals from that folder by clicking Import Channels.

The following window appears. The folders in the signal tree will change depending on the peers you configure for each hardware port. You can update the names of some frequently occurring signals to make them easier to locate.
Figure 13. Example Signal Tree


  1. CAN_Receiver_Tx: Name of the active channel. Clicking the tick box selects all the signals of the channel.
  2. CGW: Name of one of the nodes included in your CAN Network file.
  3. CGW_DIAG_E2E_PR1: Name of the frame. This frame is included in the node CGW.
  4. CAN_Frame_01_Signal_A: Name of the signal. This signal is included in the frame CGW_DIAG_E2E_PR1. When you start the restbus simulation, its value can dynamically change.
  5. CAN_Frame_01_Signal_CRC: Name of a checksum signal included in the frame CAN_FRAME_01. The restbus simulation automatically calculates its value. A CRC is composed of two other parameters:
    • Active: Boolean value in which you can control NI:VCOM. If set to 0, the value of the signal automatically calculates. If set to 1, the value of the signal is set under Control.
    • Control: Integer value that you can set. If you set Active to 1, the signal gets this value.
  6. CAN_Frame_01_Signal_MC: Name of a sequence counter signal included in the frame CAN_Frame_01. The restbus simulation automatically calculates its value. A sequence counter is composed of three other parameters:
    • Active: Boolean value in which you can control NI:VCOM. If set to 0, the value of the signal automatically calculates. If set to 1, the value of the signal is set under Control.
    • Control: Integer value that you can set. If you set Active to 1, the sequence counter gets this value.
    • Increment: Integer value that defines the counting step of the counter. It can change dynamically.
  7. Parameters of a CAN frame:
    • TX_cycletime: Signal that changes the cycle time of a message in milliseconds. This signal exists only for cyclic messages.
    • TX_kickout: Boolean signal that allows sending a spontaneous frame. If set to 0, the frame does not send. If set to 1, the frame sends.
    • TX_enable (on a frame level): Boolean signal that allows the transmission of the frame. If set to 0, the frame does not send. If set to 1, the frame sends with the defined cycle time.
  8. TX_enable (on a node level): Boolean signal that allows transmission on a node level. If set to 0, none of the frame of the node sends. If set to 1, the CAN channel frame sends if you set the frame-level TX_enable to 1.
  9. TX_enable (on a channel level): Boolean signal that allows transmission on a channel level. If set to 0, none of the frame of the CAN channel sends. If set to 1, the CAN channel frame sends if you set the frame-level and node-level TX_enable to 1.
  10. General information regarding the signals.
  11. The custom device compares the new signal list with a previously configured one if it exists. It is then possible to view the differences between two versions of a database file (for more information, refer to Comparing Database Files).

Setting Your Target and Running the Project

Select Controller in the System Explorer tree and specify the Operating System and IP Address parameters for your target.
Note To deploy the project on a different target, update the Operating System and IP Address parameters.

Save your project, then close the System Explorer window and deploy your project in VeriStand.