Use the Configuration Tool to configure a variety of different function modules in NI-VCOM, such as restbus simulation (RBS) and disassembly.

Configuration takes place through an XML file, which includes parameters such as:
  • Path of the communication database file
  • Name of the NI MAX hardware port
  • Parameters for the restbus simulation:
    • Baud rate
    • Channel name
    • Specific functions to be activated
Use the Configuration Tool embedded in the WebUI to configure this XML file. This way, you can configure the following communication bus modules with their dedicated hardware interfaces:
  • CAN
  • LIN
  • Automotive Ethernet
Note Some parameters are only available for specific XNET releases. NI recommends always keeping the NI-XNET drivers up to date.

General Settings

While running, NI-VCOM generates log files that report each warning or error. The logs can help you analyze operational issues. NI-VCOM generates the following log files:
  • Offline Core.log
  • Online Core.log
  • RBS.log
The content of these log files depends on the value of the Debug Level set in the Configuration Tool.
  • Debug Level
    • 0: All
    • 1: Warnings and errors
    • 2: Only errors
  • Event Source—A default event source is already available in the tool with a time period of 10,000 μs. The SysClock event source contains the TimerPeriod(μs) tag that you must set to the length, in microseconds, of one operation cycle. In a typical system, set this value to 10,000 μs, which ensures a good run time performance in most usage scenarios. Typically, only one event source exists for all modules/peers in one configuration file. Using more event sources for different modules/peers is only necessary if you face performance issues at the specified timer period. For example, a performance issue might be a timer task overrunning at run time.
    Note For all functional modules, the default event source is SysClock unless you modify it.

    Add a new event source by clicking + on the right side of Event Source under General Settings.

    For every additional event source, the system incements the SysClock name. You can change this name.

  • Function Modules Configuration

    Select a function module from the WebUI function modules list.

    CAN Configuration

    CAN configurations are available for NI-XNET CAN and CAN-FD instruments that NI MAX recognizes. You can configure more than one instrument.

    If you have more than one instrument in your configuration, you can modify the name of each instrument. You can also add a specific Clock Source to the instrument if multiple are present in your configuration. Add one or more hardware ports to your configuration.

    The Vehicle Communication Toolkit also supports virtual CAN on Windows and NI Linux Real-Time. Virtual CAN allows you to simulate a CAN port without physical hardware.

    You can configure a virtual CAN port in the same way as a physical CAN port. You must also must define the <HWPort> tag in the format 1,1. The first number defines the port ID, which must be unique. The second number defines the bus ID, which different ports share. The default bus ID is 0. Refer to the NI-VCOM Virtual Device Example for more information.

    Configuration of the Peers

    You can add up to two peers on a configured port. Configure the peers under the hardware port. The port name of the hardware port is the name of the peer while generating the configuration XML file.

    The configurable parameters are highly dependent on the Class of the peer.

  • Name—Arbitrary, but you cannot use the same name multiple times.
  • Class—Enables different parts of the residual bus simulation.
    • RBS: Enables the sending part of the residual bus simulation.
    • Disassembly: Enables the receiving part and the disassembly part of the residual bus simulation.
  • ClockSource—Selects your event source. The default is SysClock.
  • Change BaudRate (optional)—Set to true to be able to change the baud rate. The default value is false. For more information, refer to Additional Functions.
  • Change BaudRateFD (optional)—Set to true to be able to change the data baud rate. The default value is false. For more information, refer to Additional Functions.
  • Rename Signal TX_enable (optional)—Renames the signal for the activation of the restbus simulation.
  • Rename Signal TX_cycletime (optional)—Renames the signal for the specification of the cycle time. TX_cycletime exists only for cyclic messages.
  • Rename Signal TX_kickout (optional)—Renames the signal for manual message sending.
  • The system configures the following signals as auto signals (for more information, refer to Configuring a Restbus Simulation File).
    Note The system automatically adds the following signals to the corresponding CRC signals and ramp signals:
    • Active signals. Applies to CRC signals and ramp signals.
    • Control signals. Applies to CRC signals and ramp signals.
    • Increment signals. Applies to ramp signals.
    If Active = 0, NI-VCOM automatically calculates the value of the auto signal. The value you provide in the Increment signal changes the increment of an automatically generated ramp signal. The default increment is 1. If Active = 1, the value you provide in the Control signal overwrites the automatically generated signal.
  • Rename Signal Active (optional)—Overrides default name of Active signal.
  • Rename Signal Control (optional)—Overrides default name of Control signal.
  • Rename Signal Increment (optional)—Overrides default name of Increment signal.
  • AutoSignal Toggle Bit Key (optional)—Flags to configure a signal as a toggle bit signal. The key value given with this flag must be in the signal name.
  • AutoSignal Parity Bit Key (optional)—Flags to configure a signal as a parity bit signal. The key value given with this flag must be in the signal name.
  • Initial load distribution is available to avoid TX buffer overflow. NI recommends turning this feature on for restbus simulations with FlexCard instruments over a CAN. You can also reduce the chance of TX buffer overflow by choosing to restbus simulate fewer ECUs. Another option is to turn on the relevant messages. The load distribution is available for classical message frames but not for Container PDUs.
  • Use Load Distribution (optional)—The use of initial load distribution adds a delay to the cyclic messages to avoid TX buffer overflow. Possible values are yes or no. The default value is no.
  • EnableBusLoad—Set to true to activate the bus load calculation. For more information, refer to Additional Functions.
  • Repeat these operations to add more hardware ports to the configuration.
    Note You can add LIN and Automotive Ethernet modules at the same time depending on your test system needs.

    Configuration of the Secure Onboard Communication Parameters (Optional)

    NI-VCOM retrieves this information from the ARXML file. You can reconfigure the information by adding the secure onboard communication (SecOC) parameters to your hardware port configuration.

    You can configure the following SecOC parameters:

  • OEM—Set to MB_OO, VW_00, BM_00, or TY_00. TY_00 is valid for SecOC on CAN. MB_OO, VW_00, and BM_00 are valid for SecOC on CAN or Automotive Ethernet.
    Note If you set the OEM parameter to VW_00, you must add and set SOKKey parameters for each specific Secured PDU. These parameters include the following:
  • DataID—A 4-digit hex string value from the secured PDU.
  • Key—Hex string value of the key.
  • VehicleIdentificationNumber (optional)—Distributes the vehicle identification number (VIN), which VSM sends every 1,000 ms. This parameter is a string of 17 characters.
  • ProductionDate (optional)—Distributes the real-time offset, which contains the reference date. The offset also includes the tick count that ECUs use to calculate the current date and time. VSM sends it as a cyclic message every 10 seconds. To specify the Reference date, use this tag. This parameter is a string of 14 characters representing the date and time in the format YYYYMMDDHHMMSS.
  • CarSharedSecret (optional)—Defines a custom Car Shared Secret key for CAN and Automotive Ethernet. This parameter replaces the key with the user-provided value, which can be a 32-byte string or a 64-byte hexadecimal representation of it.
  • SecTickCountCycleTime (optional)—Distributes the secured tick count. VSM sends the secured tick count when it starts, with a cycle time of 100 ms for a duration of one second. After one second, the secured tick-count message sends with the cycle time. The SecTickCountCycleTime tag includes the cycle time as long as the toolkit is running. If you do not set a value for this parameter, the cycle time remains 100 ms.
  • LIN Configuration

    LIN configurations are available for LIN NI-XNET instruments that NI MAX recognizes. You can configure more than one instrument.

    If you have more than one instrument in your configuration, you can modify the name of each instrument. You can also add a specific Clock Source to the instrument if multiple clock sources are present in your configuration. You can add one or more hardware ports to your configuration.

    The Vehicle Communication Toolkit also supports virtual LIN on Windows and NI Linux Real-Time. Virtual LIN enables you to simulate a LIN port without physical hardware.

    You can configure a virtual LIN port in the same way as a physical LIN port. You must also define the <HWPort> tag in the format 1,1. The first number defines the port ID and must be unique. The second number defines the bus ID, which can be shared by different ports. The default bus ID is 0. Refer to the NI-VCOM Virtual Device Example for more information.

    Configuration of the Hardware Port

    You can specify the following values as channel properties for every LIN port:

  • Name—For example, LIN_Master.
  • HW Port—You must set the same hardware port name as the one displayed in NI MAX.
  • BitRate—Bit rate defined in base unit bits per second (bps).
  • Mode—Set to Master or Slave.
  • Protocol—Set to 1.3, 2.0, or 2.1.
  • Network Descriptor—Enter the file path of the .ldf or ARXML file to be used. For more information, refer to LIN-BUS.
  • RBS Descriptor (optional)—For the RBS configuration to be used. For more information, refer to LIN-BUS.
  • Same Network Descriptor on Host (optional)—Set this value to true to reuse the path of Network Descriptor within PROVEtech:TA so that the NI-VCOM Toolkit and PROVEtech:TA use the same descriptor file. Only use this setting in combination with PROVEtech:TA 2015 or later. Older versions do not support this setting.
  • OEM (optional)—Customer-specific flag.
  • Language (optional)—Sets preferred language for the description of network elements in the signal tree of the toolkit.
  • EnableBusTermination (optional)—Enables or disables the terminating resistor through software. The NI-XNET instrument must support this function. The default value is false.
  • EnableDiagnosticOnlyMode (optional)—An optional Boolean flag for the master node to enable diagnostic only mode. In diagnostic only mode, only the diagnostic schedules, rather than normal communication schedules, are executed. The default is the diagnostic interleaved mode. Do not switch to any diagnostic schedule table for diagnostics. The NI-VCOM LIN master simulation automatically handles the schedule table for diagnostics.
  • Cluster Name (optional)—Name of the cluster from an AUTOSAR file you want to simulate. If you do not configure a cluster name, NI-VCOM uses the first cluster found in the AUTOSAR XML file.
  • Channel Name (optional)—Name of the channel from an AUTOSAR file you want to simulate. If you do not configure a channel name, NI-VCOM uses the first channel found in the AUTOSAR XML file.
  • A LIN master can schedule diagnostic frames in two different ways. In diagnostic only mode, it abandons the current schedule table while doing diagnostics. It first sends all the necessary master request messages and then requests all necessary slave response messages. Then it switches back to the currently set schedule table. In interleaved mode, the LIN master still schedules the current schedule table while doing diagnostics. However, every time it finishes the current schedule table, it inserts a diagnostic frame before restarting the schedule table. First, it sends all master request messages and then requests all slave response messages. Then it returns to normal scheduling.

    Configuration of the Peers

    You can add up to two peers on a configured port. Configure peers under the hardware port. While generating the configuration XML file, the peer takes the port name of the hardware port that the peer is defined under.

    The configurable parameters are dependent on the Class of the peer:

  • Name—Arbitrary, but you cannot use the same name multiple times.
  • Class
    • RBS: Enables the sending part of the residual bus simulation.
    • Disassembly: Enables the receiving and disassembly part of the residual bus simulation.
  • Clock Source—Selects your event source.
  • Rename Signal TX_enable (optional)—Renames the signal for the activation of the restbus simulation.
  • Rename Signal TX_cycletime (optional)—Renames the signal for the specification of the cycle time. TX_cycletime exists only for cyclic messages.
  • Rename Signal TX_kickout (optional)—Renames the signal for manual message sending.
  • Use Load Distribution (optional)—The use of initial load distribution adds a delay to the cyclic messages to avoid TX buffer overflow. Possible values are yes or no. The default value is no.
  • The following signals are configured as auto signals (for more information, refer to Configuring a Restbus Simulation File).

    Note The following signals are automatically added to the corresponding CRC signals and ramp signals:
    • Active signals. Applies to CRC signals and ramp signals.
    • Control signals. Applies to CRC signals and ramp signals.
    • Increment signals. Applies to ramp signals.
    If Active = 0, NI-VCOM automatically calculates the value of the auto signal. The value you provide in the Increment signal changes the increment of an automatically generated ramp signal. The default increment is 1. If Active = 1, the value you provide in the Control signal overwrites the automatically generated signal.
  • Rename Signal Active (optional)—Overrides default name of Active signal.
  • Rename Signal Control (optional)—Overrides default name of Control signal.
  • Rename Signal Increment (optional)—Overrides default name of Increment signal.
  • Automotive Ethernet Configuration

    Automotive Ethernet configurations are available for NI-XNET instruments that NI MAX recognizes. You can configure more than one instrument. To configure Windows correctly, follow the steps described in Automotive Ethernet.

    To start the configuration, add Ethernet as a function module. Next, add Automotive Ethernet under the Ethernet module. Choose NI-XNET(TAP) to configure the port in TAP Mode. For more information, refer to Automotive Ethernet Tap Mode.

  • Name—The tool sets this parameter.
  • Note Simulating Automotive Ethernet networks is only possible with the PXI Automotive Ethernet Interface Module (PXIe-8521/8522/8523) and allows deployment on Windows and NI Linux Real-Time targets.

    Configuration of the Hardware Port

    You can specify the following values for every Automotive Ethernet port:

  • Name—You can choose a name from your Ethernet bus.
  • Cluster Name—Comes from the ARXML file.
  • Network Descriptor—The AUTOSAR XML file you are using. You can also use this for signal disassembly.
  • Same Network Descriptor on Host (optional)—Set this value to true to reuse the path of Network Descriptor within PROVEtech:TA so that the NI-VCOM Toolkit and PROVEtech:TA use the same descriptor file. Only use this setting in combination with PROVEtech:TA 2015 or later. Older versions do not support this setting.
  • Language (optional)—Sets the preferred language for the description of network elements in the signal tree of the toolkit.
  • Enable Event Multicast (optional)—Configures sending events on multicast or unicast nodes. The default is to send events to a multicast node.
  • ConfigureNM (optional)—Activates network management if set to true. The default value is false.
  • DeviceName (optional)—The hardware port name should be the same as the name displayed in NI MAX.
  • EnableHWTimeSynchronisation (optional)—Enables the time synchronization protocol.
  • HWTimeSynchronisationBMCAEnabled (optional)—Enables the Best Master Clock Algorithm (BMCA) of the time synchronization protocol.
  • HWTimeSynchronisationPortStateConfigured (optional)—Provides the propagation delay for the Ethernet cable between the master clock and the slave neighboring clock.
  • HWTimeSynchronisationPropagationDelayThreshold (optional)—For IEEE Std 802.1AS, if the Propagation Delay exceeds the threshold in this property, the protocol assumes that a switch or router that is not 802.1AS-capable exists between this clock and the neighboring 802.1AS-capable clock.
  • Triggering (optional)—Activates the hardware synchronization between PXI cards if set to Master or Slave.
    • None—Synchronization is not activated.
    • Master—The configured port acts as a master.
    • Slave—The configured port acts as a slave.
  • The following additional parameters are displayed if triggering is activated:

  • Trigger—Choose a trigger line from 0 to 7.
  • TriggerDelay (optional)—Future timestamp, in seconds, for a Time Trigger Event.
  • AdjustLocalTime (optional)—Phase adjustment, in nanoseconds, to align the timestamp with another device.
  • Note More information on both Triggering and HWTimeSynchronisation is available in the NI-XNET Hardware and Software Help on ni.com/docs.

    You can add a channel to configured hardware ports. The channel configuration for Automotive Ethernet is the same as the VLAN configuration for Ethernet instruments. Configure the used channels, VLANs, and IP addresses in Windows for the existing network adapter. To configure Windows correctly, follow the steps described in Automotive Ethernet.

    You must use the same VLAN name for your channel as the one written in your ARXML database file. You can add ECUs to configured channels/VLANs.

    You can configure the following ECU parameters:

  • Name—You must use the same ECU name written in your ARXML file.
  • IsECUUnderTest (optional)—Set this parameter to true to configure this ECU as a DUT. Setting this property to true only configures Automotive Ethernet services from the other simulated ECUs that are relevant to this DUT ECU. Additionally, this tag creates a DUT ECU node with Consumed Service Events and Remote Procedure Call (RPC) Methods inside in the NI-VCOM signal tree. This helps with monitoring if the Provided Service Events and RPC Methods from other simulated ECUs are sent to DUT ECUs on time and disassembled properly.
  • IPAddress— IP address of the ECU for the corresponding VLAN/channel.
  • SdIPMulticastAddress (optional)—Parameter for the Service Discovery module. If used, you must set the multicast IP Address.
  • SdTransportProtocolPort (optional)—Parameter for the Service Discovery module. If used, you must set the port used for the multicast.
  • UdpDynamicPort (optional)—Parameter to set a range of UDP Ports. For example, 30491;32490.
  • TdpDynamicPort (optional)—Parameter to set a range of TCP Ports.
  • Configuration of the Peers

    After you configure the port, you must add the following three peers:
    • TX Peer: Transmitting peer.
    • RX Peer: Peer that disassembles the received messages.
    • AEthernet Peer: Mandatory peer for Automotive Ethernet simulators.
    Next, you must set the name of each peer.
  • Name—Name of the peer.
    Note The AEthernet peer name defines the beginning of each signal name that you find in your configuration.
  • You can set the following additional parameters for a TX Peer:

  • Rename Signal TX_enable (optional)—Renames the signal to activate the restbus simulation.
  • Rename Signal TX_cycletime (optional)—Renames the signal to specify the cycle time (TX_cycletime exists only for cyclic messages).
  • Rename Signal TX_kickout (optional)—Renames the signal to manually send a message.
  • Use Load Distribution (optional)—The use of initial load distribution adds a delay to the cyclic messages to avoid TX buffer overflow. Possible values are yes or no. The default value is no.
  • The following signals are configured as auto signals. For more information, refer to Configuring a Restbus Simulation File.

    Note The following signals are automatically added to the corresponding CRC signals and ramp signals:
    • Active signals. Applies to CRC signals and ramp signals.
    • Control signals. Applies to CRC signals and ramp signals.
    • Increment signals. Applies to ramp signals.
    If Active = 0, NI-VCOM automatically calculates the value of the auto signal. The value you provide in the Increment signal changes the increment of an automatically generated ramp signal. The default increment is 1. If Active = 1, the value you provide in the Control signal overwrites the automatically generated signal.
    • Rename Signal Active (optional)—Overrides default name of Active signal.
    • Rename Signal Control (optional)—Overrides default name of Control signal.
    • Rename Signal Increment (optional)—Overrides default name of Increment signal.

    Configuration of a Service Discovery Delay

    The following peer is optional. You do not need to configure the peer to simulate a residual bus simulation. The peer allows you to overwrite the Automotive Ethernet Service Discovery OFFER-CYCLIC-DELAY parameter given inside the network description file.

    Complete the following steps to configure a service discovery delay:
    1. Add Service Discovery Config under the Hardware Port parameter.
    2. Set the Offer_Cyclic_Delay parameter on the right side of the window. Setting a value overwrites the Offer-Cyclic-Delay parameter given inside the network description file.

    Automotive Ethernet Tap Mode

    The NI-VCOM Toolkit supports NI-XNET Tap mode for the XNET Automotive Ethernet cards. Review the NI-XNET documentation and become familiar with the corresponding settings in NI MAX before you set up a Tap mode scenario.

    Before you begin, ensure you have the following hardware and the following software:
    • Windows or a NI Linux system with XNET Automotive Ethernet card.
    • NI-XNET version 21.5 or later.

    Configure the settings and wiring of your hardware in NI MAX.

    1. Add Ethernet in Function Modules.
    2. Add NI-XNET to Ethernet.
    3. (Optional) Update Name after you add NI-XNET.
    4. Add a Hardware Port to NI-XNET.
    5. At a minimum, specify the Name, Cluster Name, Network Descriptor, and DeviceName for the hardware port.
    6. Add a Channel to the hardware port and specify Name.
    7. Add an RX Peer and specify its Name.
    8. Add a second AEthernet Peer and specify its Name.
    To get started, NI recommends viewing the Tap Mode Example Project, which is included in the VeriStand installation package.