Using VCOM Toolkit for SOME/IP Test in VeriStand

Updated Jan 4, 2024

Environment

Hardware

  • PXIe-8522
  • PXIe-8523
  • PXIe-8623

Software

  • Vehicle Communication Toolkit
  • VeriStand

SOME/IP is an automotive middleware solution that can be used for control messages. It was designed from the beginning to fit devices of different sizes and different operating systems perfectly. The Vehicle Communication Toolkit is a software add-on that provides a LabVIEW API and a VeriStand custom device that are compatible with Windows and NI Linux Real-Time operating systems. You can use this toolkit with communication database files such as AUTOSAR XML to send and receive automotive Ethernet signals to and from NI-XNET-supported devices. This article will introduce how to use the VCOM toolkit for SOME/IP in VeriStand.

Set VCOM Configuration
Add Ethernet as function module. Once it is done, add Automotive Ethernet under the Ethernet module. See Figure 1.
Capture.JPG
Figure 1. Adding Automotive Ethernet to the configuration
Add a Hardware Port to the configuration. See Figure 2.
Capture.JPG
Figure 2. Adding hardware port to the configuration
Cluster Name, Network Descriptor, and Device name are mandatory. See Figure 3.
Capture.JPG
Figure 3. Hardware port configuration
The cluster name can be found in the ARXML file through WebUI Home Page which is installed automatically with the VCOM toolkit. See Figure 4. The network descriptor is the AUTOSAR XML file to be used. The device name is the same hardware port name as the one displayed in NI MAX, such as "ENET1".
Capture.JPG
Figure 4. Cluster name in WebUI
Once the hardware port is configured, you can add a Channel under it. You have to use the same channel name as the one defined in the ARXML file. See Figure 5 and Figure 6.
Capture.JPG
Figure 5. Adding a channel to the configuration
Capture.JPG
Figure 6. Channel name in WebUI
Once the channel is configured, you can add all or part of the ECUs under this channel. If you don't add any ECUs under the channel, the VCOM will add all the ECUs by default. When you add part of the ECUs, the ECU name should be the same as the one written in the ARXML file. See Figure 7 and Figure 8.
Capture.JPG
Figure 7. ECU name in WebUI
Capture.JPG
Figure 8. Adding ECUs to the configuration
Once the port is configured, you have to add 3 peers to it. See Figure 9. 
Capture.JPG
Figure 9. Adding 3 peers to the configuration
Once the VCOM configuration file is configured, you can save and close it. A dialog will be opened automatically and you can add the services as you want. See Figure 10. 
Capture.JPG
Figure 10. Adding services to VeriStand tree
Once we set channel level TX_enable, ECU node level TX_enable, and frame level TX_enable of ProvidedServices to 1, we can see the ECU node that provides services offers services through SOME/IP Service Discovery. See Figure 11. To decode the traffic to SOME/IP, you can right-click one frame and select Decode As..., then choose SOME/IP in the drop-down list of Current. See Figure 12.
Capture.JPG
Figure 11. Offer Services through SOME/IP-SD in Wireshark
Capture.JPG
Figure 12. Wireshark configuration for decoding SOME/IP
Once we set channel level TX_enable, ECU node level TX_enable, and frame level TX_enable of ConsumedServices to 1, we can see the ECU node that consumes services subscribes services and the ECU node that provides services acknowledges subscription through SOME/IP Service Discovery. See Figure 13.
Capture.JPG
Figure 13. Subscribe and SubscribeAck through SOME/IP-SD in Wireshark
After the subscription is successful, you can set signal level TX_enable to 1 to start the SOME/IP test. Finally, the Automotive Ethernet traffic looks like the following one.
Capture.JPG