ECU Measurement and Calibration Toolkit 2022 Q4 for Linux/x86 64-bit Architecture Readme

October 2022

This file contains installation instructions and compatibility information for ECU Measurement and Calibration Toolkit 2022 Q4.

You can find more release information on ni.com.



System Requirements

Installation Instructions

New Features

Supported Hardware

Device Configuration

Launching ECUMC Standalone Utilities

Using the ECU Measurement and Calibration Toolkit C API

Accessing the Documentation

Finding Examples

Linux Limitations

Legal Information


System Requirements

ECUMC Toolkit software for Linux 64-bit architecture has been tested on the following distributions:

  • openSUSE Leap 15.4
  • openSUSE Leap 15.3
  • Red Hat Enterprise Linux 9
  • Red Hat Enterprise Linux 8
  • Ubuntu 22.04
  • Ubuntu 20.04

ECUMC Toolkit requires a 64-bit distribution and does not support 32-bit applications.

Installation Instructions

NI provides a repository add-on for all supported drivers that you can install using your Linux distribution's native package manager.

  1. Visit ni.com/info and enter the Info Code LinuxRepository.
  2. Download the installer for the repository add-on for your Linux distribution.
  3. Install the repository add-on using the rpm command.
  4. Select and install the following ECU Measurement and Calibration Toolkit driver package through your Linux distribution's package manager:
    • ni-ecumc: Core libraries and files based on its dependencies, including libniemcc .
    • ni-ecumc-labview-<version>-support: For LabVIEW 2021 and earlier API, libraries, and examples.
    • ni-ecumc-labview-support: For LabVIEW 2022 and later API, libraries, and examples.
    • libniemcc-devel: C development support and examples.
    • ni-ecumc-a2l-viewer: Utility to view database files.
    • ni-ecumc-xcp-ccp-trace: Tool to monitor XCP and CCP protocol communication.
    • ni-ecumc-demo-ecu-xcp-ccp: Demo applications that simulate ECU communication using XCP and CCP protocols.
    • ni-ecumc-xnet-support: Hardware support for XNET devices.

After the driver package(s) are installed, you must rebuild the new packages for the system kernel. NI recommends that you run the command 'dkms autoinstall' after installation, and before rebooting the system, to install the latest revision of all modules that have been installed for other kernel revisions. After doing so, the installed device drivers will function immediately on the next system start.

Updated LabVIEW Compatibility Policy

The ni-ecumc-labview-support supports applications using ECU Measurement and Calibration Toolkit ​with LabVIEW 2022 or later. When installing ECU Measurement and Calibration Toolkit, this package will be recommended if you have already installed LabVIEW 2022 or later and installs to the LVAddons directory.

LVAddons directory location: /usr/local/natinst/share/lvaddons

New Features

The ECUMC Toolkit 2022 Q4 for Linux release adds the following features:

  • Added support for the following operating systems: Red Hat Enterprise Linux 9, openSUSE Leap 15.4, openSUSE Leap 15.3, Ubuntu 22.04
  • Added support for LabVIEW 2022 Q3

Supported Hardware

The following list details the hardware models supported in ECUMC Toolkit 2022 Q4 for Linux.

  • PCI-8511 Low‑Speed/Fault-Tolerant CAN Interface Device
  • PCI-8512 High‑Speed/FD CAN Interface Device
  • PCI-8513 Software‑Selectable/FD CAN Interface Device
  • PCI-8516 PCI LIN Interface Device
  • PCI-8517 FlexRay Interface Device
  • PCIe-8510 PCIe Vehicle Multi-Protocol Interface Device
  • PXI-8511 Low-Speed/Fault Tolerant PXI CAN Interface Module
  • PXI-8512 High-Speed, Flexible Data Rate PXI CAN Interface Module
  • PXI-8513 Software-Selectable PXI CAN Interface Module
  • PXI-8516 PXI LIN Interface Module
  • PXI-8517 PXI FlexRay Interface Module
  • PXIe-8510 PXI Vehicle Multiprotocol Interface Module
  • PXIe-8521 100BASE-T1 PXI Automotive Ethernet Interface Module
  • PXIe-8522 1000BASE-T1 PXI Automotive Ethernet Interface Module
  • PXIe-8523 100/1000BASE-T1 PXI Automotive Ethernet Interface Module
  • PXIe-8623 100BASE-TX/1000BASE-T PXI Automotive Ethernet Interface Module
  • TRC-8542 CAN HS/FD Transceiver Cable
  • TRC-8543 CAN HS/FD or LS/FT Transceiver Cable
  • TRC-8546 LIN Transceiver Cable
  • NI 9860 C Series Vehicle Multiprotocol Interface Module1
  • NI 9861 Low-Speed/Fault Tolerant C Series CAN Interface Module
  • NI 9862 High-Speed, Flexible Data Rate C Series CAN Interface Module
  • NI 9866 C Series LIN Interface Module

1  The NI-9860 is supported only with TRC-8542 and TRC-8543 transceiver cables and installed in a cDAQ-9185 or cDAQ-9189 CompactDAQ Ethernet chassis

Visit NI Hardware and Operating System Compatibility to view driver, desktop operating system, and real-time operating system support for individual hardware devices.

To view information for your device:

  • Select your hardware model in the dropdown list on the page to view compatibility information for your device.
  • Type your hardware model number in the dropdown list on the web page to filter the list of available devices.

Note: Some compatibility information may only be available in the archive attached to the NI Hardware and Operating System Compatibility page. For historic driver and OS support information, refer to the readme for the relevant driver version.

Device Configuration

The NI-XNET Hardware Configuration Utility, nixnetconfig, is a command line interface configuration utility for Linux desktop distributions. This utility provides functionality similar to the Measurement and Automation Explorer (MAX) graphical configuration utility, which is not supported on Linux. Run nixnetconfig to start the utility and configure supported NI-XNET interfaces and devices.

Launching ECUMC Standalone Utilities

You can launch the following ECUMC utilities either by desktop shortcut or by command line. Desktop shortcuts appear in your application launcher by the name of the utility. To use the command line, open a terminal window and type the executable name. For example, to launch the NI ECUMC A2L Viewer from command line, run ni-ecumc-a2l-viewer.

Desktop Shortcut Executable Description
NI ECUMC A2L Viewer ni-ecumc-a2l-viewer Use to display A2L databases for XCP and CCP.
NI ECUMC XCP and CCP Trace ni-ecumc-xcp-ccp-trace Use to analyze XCP and CCP communication between your ECUMC application and ECUs.
NI ECUMC Demo ECU XCP ni-ecumc-demo-ecu-xcp Contains tools to simulate ECU communication using XCP protocol.
NI ECUMC Demo ECU CCP ni-ecumc-demo-ecu-ccp Contains tools to simulate ECU communication using CCP protocol.

Using the ECU Measurement and Calibration C API

The following information describes how to get started using the ECUMC C API on a Linux platform.

Compiling

To compile an application that uses the ECUMC C API, include the header file niemc.h at the top of the source file:

#include <niemc.h>

The niemc.h header file is located in the standard include path:

/usr/include

As niemc.h is installed to the default include directory, the compiler automatically finds it; there is no need to explicitly specify the include path to compile the program.

Linking

The ECUMC C API is provided by the library libniemcc. Use the following option in the linker command line to add the libniemcc library:

-lniemcc

The libniemcc library is installed in the following directory:

/usr/lib/x86_64-linux-gnu

If required, add it to the linker's search path with the following command line option:

-L/usr/lib/x86_64-linux-gnu

Getting Started

Complete the following steps to create a simple program using the ECUMC C API:

  1. Include the niemc.h header file at the beginning of the program.
  2. Write your source code, which might include calling ECUMC C API functions.
  3. Use the following syntax to build your program ("MyECUMCExample" for the purpose of this example):
  4. gcc -DLINUX_BUILD -L/usr/lib/x86_64-linux-gnu MyECUMCExample.c -lniemcc -o MyECUMCExample

Accessing the Documentation

Use a web browser to view the ECUMC Toolkit documentation at https://www.ni.com/r/ecumchelp. You can also find a copy of the ECUMC Toolkit Help installed at /usr/share/doc/ni-ecumc.

Finding Examples

This release includes examples showing the use of ECUMC Toolkit in C and LabVIEW.

C examples are located in /usr/share/doc/ni-ecumc/examples. Make files are provided that link to the necessary libraries.

The LabVIEW examples are located in the LabVIEW examples directory.

The read-meas-polling.c example connects the ECU described by an A2L file and reads measurement values using XCP on CAN, XCP on CAN FD, XCP on UDP, XCP on TCP/IP, or CCP.

Before running read-meas-polling.c, copy the example to a writable location, such as the home directory, and adjust all parameters in the code to match the values used in your setup. Run the makefile provided with the example, which will generate an executable called read-meas-polling. Run this program against your ECU to capture the specified measurement values. Make sure to start your ECU before running the example. Running the example requires reading an A2L file (see declarations within the source code).

Linux Limitations

Some features discussed in the ECUMC Toolkit documentation are not available on Linux.

  • Only the following application development environments are supported:
    • LabVIEW 2019 SP1, LabVIEW 2020 SP1, LabVIEW 2021 SP1, and LabVIEW 2022 SP1
    • C and C++ (gcc)
  • Other ADEs are not supported, including LabVIEW Real-Time Module, LabWindows/CVI, Microsoft Visual C/C++, or Microsoft Visual Basic.
  • While the toolkit includes LabVIEW VIs, ECUMC does not provide graphical utilities available for other operating systems:
    • LabVIEW Express VIs
    • Measurement and Automation Explorer (MAX) graphical configuration utility. Refer to Device Configuration for information about configuring your device in Linux.
    • Soft front panels.
  • Online help documentation is not included in the Linux distribution.
  • ECUMC Toolkit for Linux is available in English only.

Legal Information

Copyright

© 2009–2022 National Instruments Corporation. All rights reserved.

Under the copyright laws, this publication may not be reproduced or transmitted in any form, electronic or mechanical, including photocopying, recording, storing in an information retrieval system, or translating, in whole or in part, without the prior written consent of National Instruments Corporation.

NI respects the intellectual property of others, and we ask our users to do the same. NI software is protected by copyright and other intellectual property laws. Where NI software may be used to reproduce software or other materials belonging to others, you may use NI software only to reproduce materials that you may reproduce in accordance with the terms of any applicable license or other legal restriction.

End-User License Agreements and Third-Party Legal Notices

You can find end-user license agreements (EULAs) and third-party legal notices in the following locations after installation:

  • Notices are located in the /usr/share/doc/ni-ecumc/NOTICES directory.
  • EULAs are located in the /usr/share/ni/licenses directory.

U.S. Government Restricted Rights

If you are an agency, department, or other entity of the United States Government ("Government"), the use, duplication, reproduction, release, modification, disclosure or transfer of the technical data included in this manual is governed by the Restricted Rights provisions under Federal Acquisition Regulation 52.227-14 for civilian agencies and Defense Federal Acquisition Regulation Supplement Section 252.227-7014 and 252.227-7015 for military agencies.

IVI Foundation Copyright Notice

Content from the IVI specifications reproduced with permission from the IVI Foundation.

The IVI Foundation and its member companies make no warranty of any kind with regard to this material, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The IVI Foundation and its member companies shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing, performance, or use of this material.

Trademarks

Refer to the NI Trademarks and Logo Guidelines at ni.com/trademarks for information on NI trademarks. Other product and company names mentioned herein are trademarks or trade names of their respective companies.

Patents

For patents covering the NI products/technology, refer to the appropriate location: Help»Patents in your software, the patents.txt file on your media, or the NI Patent Notice at ni.com/patents.