Logo
Version: 2.6
  • Intel® Edge Controls for Industrial
  • About Intel® Edge Controls for Industrial
    • ECI Build Targets
    • ECI Prebuilt Images
    • ECI Feature Matrix
    • ECI Architecture Diagrams
      • ECI Base Architecture
      • ECI Xenomai Architecture
      • ECI Xenomai (with x11 Windowing System) Architecture
      • ECI ACRN Architecture
    • ECI Kernel and Boot Optimizations
  • System Requirements
    • Linux Build System
    • Target System
      • Validated Hardware Platforms
    • Windows PC
  • Get Started
    • Downloading ECI
    • Setting up ECI Build
      • Setup Notifications
        • Ensure Docker Engine is installed and running
        • Current user is not part of Docker group
        • Docker Daemon cannot reach the registry
        • Filename length test failed
    • Building ECI
      • Building ECI Targets
        • base-poky
          • Build Notifications
        • preempt-buster
          • Build Notifications
        • xenomai-buster
          • Build Notifications
        • xenomai-poky
          • Build Notifications
        • acrn-sos
          • Build Notifications
          • Build Notifications
        • acrn-zephyr-ehl
          • Build Notifications
        • rts-buster
          • Build Notifications
        • rts-poky
          • Build Notifications
      • ECI Build Engine
        • ECI Source Code
    • Installing ECI Images
      • Installing ECI-A
        • ECI-A: Create Bootable USB
        • Configure Target System BIOS
        • Boot & Install ECI-A
      • Installing ECI-B/R/X
        • Create Bootable USB
        • Configure Target System BIOS for Determinism
        • Boot & Install Image
        • Experimental: Install ECI Debian Packages onto Existing Debian Installation
        • Experimental: Create a Debian Live Build Image containing ECI Debian Packages
    • Verifying Deployment
      • Verifying Correct Deployment
      • Users and Permissions in ECI
        • Moderating Superuser Capability
      • How ECI Achieves Determinism
      • Example Use Case
      • Where to go next?
  • Components and Features of ECI
    • CODESYS Software PLC
      • CODESYS IDE
      • CODESYS Linux Runtime
        • Building CODESYS Linux Runtime into ECI
        • Licensing CODESYS Linux Runtime
        • Restarting CODESYS Linux Runtime
      • Installing CODESYS IDE
      • CODESYS Runtime Optimizations
      • CODESYS Example Applications
        • OPC UA Publish/Subscribe Example
        • CODESYS Benchmark Application
      • CODESYS Example Projects
        • Configure ADAM Profinet Device with CODESYS
          • Configure ADAM with IP Address
          • Configure Ethernet interface for CODESYS
        • CODESYS ST-Fragment
          • ST-Fragment Project Archive
          • Download (execute) directly to the target
          • Create a Boot Application (.app/.crc files)
          • Deploy a Boot Application (.app/.crc files)
          • Extend/Modify ST-Fragment Tests
          • Enable Tracing
    • Logiclab Software PLC
      • Logiclab IDE
      • Logiclab Runtime
      • Logiclab IDE Installation
      • Logiclab Example Applications
        • Nxtrol application #1: Logiclab EtherCAT connection
        • Nxtrol application #2: Logiclab ModbusTCP connection
        • Nxtrol application #3: Logiclab Motion Control Development Kit demo with RTMotion and LinuxCNC
        • Axel application #1: Basic Demo
        • Axel application #2: Motion Demo
    • Edge Control Protocol Bridge & OPC UA
      • PLCopen OPC UA Transport Layer
        • OPC UA Client/Server Model
        • OPC UA Publish/Subscribe Model
      • Edge Control Protocol Bridge
        • Edge Control Protocol Bridge Application
          • EC Bridge - Application Command-line Parameters
          • EC Bridge - Settings
          • EC Bridge - Plug-in Configuration Parameters
          • EC Bridge - Putting it all together
        • Configuration Parameters
          • common: Top-Level Parameters
          • common: Plug-in Parameters
          • common: Complete Configuration File Example
        • OPC UA Plug-in
          • OPC UA - Plug-in-Level Configuration Parameters
          • OPC UA - Client Configuration Parameters
          • OPC UA - Publisher Configuration Parameters
          • OPC UA - Subscriber Configuration Parameters
          • OPC UA - Putting it all together
        • OPC UA Key Generation
          • About OPC UA Client/Server Security
          • Creating Server Certificate and Private Key
          • Creating Client Certificate and Private Key
          • Encrypting Private Key
        • MQTT Plug-in
          • MQTT - Plug-in-Level Configuration Parameters
          • MQTT - Publisher Configuration Parameters
          • MQTT - Subscriber Configuration Parameters
        • Data Simulator Plug-in
          • Data Simulator - Plug-in Level Configuration Parameters
          • Data Simulator - Putting it all together
        • Shared Memory Plug-in
          • Shared Memory - Plug-in Level Configuration Parameters
          • Shared Memory: Testing
          • Shared Memory - Putting it all together
        • Edge Control Server Application
          • EC Server - Application Command-line Parameters
          • EC-Server - Configuration Parameters
          • EC Server - Test Configuration Files
        • EMB Plug-in
          • EMB - Plug-in Level Configuration Parameters
          • emb: log-debug
          • EMB - Publisher Configuration Parameters
          • EMB Subscriber Configuration Parameters
          • EMB - Putting in all together
        • C++ Template Plug-in
          • Template CPP - Configuration Parameters
        • Template Plug-in
          • Template - Configuration Parameters
      • EC Protocol Bridge Example Configurations
        • EC Protocol Bridge Prerequisites and Instructions
        • Example #1: Data exchange using all datatypes
        • Example #2: OPC UA Publish & Subscribe over ETF
        • Example #3: OPC UA Client Read & Write
        • Example #4: Secure OPC UA Client Read & Write
        • Example #5: EII Message Bus Publisher and Subscriber
        • Example #6: MQTT Publish and Subscribe
        • Example #7: Secure OPC UA Client/Server with Secure Key Store
        • Example #8: Shared Memory
      • EC Protocol Bridge Example Applications
        • Application #1: Single-Host Roundtrip TSN Transport
          • UDP Transport
          • TSN Transport without priority
          • TSN Transport with priority
        • Application #2: CODESYS OPC UA Publish/Subscribe
        • Application #3: OPC UA Secure Communication
          • Sign and Encrypt - Plaintext Private Key
          • Sign and Encrypt - Encrypted Private Key
      • EC Protocol Bridge Sanity-Check Testing
        • Sanity-Check #1: OPC UA PUB/SUB Pairs with 2 Transport Layers
    • Microservice Architecture
      • Docker
        • Docker installation
        • Useful Docker commands
        • Building and deploying Docker images
          • Building a Docker image
          • Deploying a Docker image
          • Optimizations for Docker Containers
      • Microservice Dockerfile Templates for ECI
        • Prepare the Build System for Microservices
      • Building Microservice Docker Images
        • Microservice: CODESYS Linux Runtime & CODESYS Edge Gateway
          • Prerequisites: CODESYS Containers
          • Building: CODESYS Containers
          • Executing: CODESYS Linux Runtime Containers
          • Executing: CODESYS Edge Gateway Container
        • Microservice: EC Protocol Bridge & Plugins
          • Building: EC Protocol Bridge Container
          • Executing: EC Protocol Bridge Container
          • Customizing: EC Protocol Bridge Container
        • Microservice: Xorg Display Server
          • Building: Xorg Container
          • Executing: Xorg Container
        • Microservice: Firefox Web Browser
          • Building: Firefox Container
          • Executing: Firefox Container
        • Microservice: Qt 5 Examples
          • Building: Qt Container
          • Executing: Qt Container
        • Microservice: TSN with VNET using TxTime-Assisted Mode
          • Building: TSN with VNET
          • Executing: TSN with VNET
        • Microservice: Benchmarking
          • Building: Benchmarking Container
          • Executing: Benchmarking Container
        • Microservice: veth TSN
          • Building: veth-tsn Container
          • Executing: veth-tsn Container
        • Microservice: BPF Compiler Collection (BCC)
          • Building: BCC Container
          • Executing: BCC Container
      • Resource management with cgroups
        • cgroups
        • QoS classes
        • Setting the cgroup of a container
      • Docker Sanity-Check Testing
        • Sanity-Check #1: Docker daemon
        • Sanity-Check #2: Build TSN Image
        • Sanity-Check #3: Bridge Virtual Ethernet to Physical Ethernet
        • Sanity-Check #4: Join a Kubernetes (k8s) cluster
    • IgH EtherCAT Master Stack
      • EtherCAT Master Setup
        • Dependencies
        • System Integration
          • EtherCAT Init Script
          • EtherCAT Sysconfig File
          • Starting the Master as a service
        • Multi-Axis Synchronization System (MASS)
          • EtherCAT Control Loop and Time Measurement
      • EtherCAT Sanity-Check testing
        • Sanity-Check #1: EtherCAT Master Start
        • Sanity-Check #2: EtherCAT Master Scan
        • Sanity-Check #3: MASS platform performance collection
      • EtherCAT Analysis with Wireshark
        • Hardware Setup
          • 1. Using KUNBUS TAP CURIOUS
        • Software Setup
        • Capture ethercat packages with wireshark
        • Jitter analysis by wireshark
      • EtherCAT Enablekit
        • EtherCAT Enablekit Overview
          • EtherCAT EnablekitFeatures
          • EtherCAT Enablekit Architecture
        • EtherCAT Enablekit Code Sample
          • EtherCAT Enablekit Requirements
        • EtherCAT Enablekit Sanity-Check testing
          • Sanity-Check #1: ESI Parsing
          • Sanity-Check #2: ENI Parsing
      • Real-Time Vision with EtherCAT
        • Usage case
        • Work Flow
        • Solution principle
        • Demo example
    • CANopen Overview
      • Preparation
        • Loading the Driver
        • Setting up CAN/VCAN Interface
      • CANopen - Sanity Check
        • Sanity-Check #1: Virtual CAN interface link up
        • Sanity-Check #2: SocketCAN dump test
        • Sanity-Check #3: CANopen tests automatically
    • PLCopen Motion Control
      • PLCopen Motion Function blocks
        • Applications for Industrial Automation
        • Applications for Robotics
      • S-curve Trajectory Planning
      • PLCopen Motion Sanity-Check Testing
        • Sanity-Check #1: On-line S-Curve Algorithm Test
        • Sanity-Check #2: Trajectory Planner Test
        • Sanity-Check #3: Function Block Test
      • PLCopen Motion Recurring Testing
        • Recurring Test #1: Latency and jitter benchmarking
    • ACRN Hypervisor
      • ACRN Terminology
      • ACRN Prerequisites
      • Launch virtual machines
        • VM launch scripts
        • VM Profile Tool
      • ACRN Device Model example parameters
      • ACRN Best Known Methods
        • ACRN BKMs
          • BKM #1: Alternative to the ACRN hypervisor shell
          • BKM #2: Run an ACRN Real-Time (RT) VM alongside a non-RT VM
          • BKM #3: ACRN multiple NIC Passthrough
      • Enabling Secure Boot with ACRN
        • ACRN Secure Boot
          • ACRN Secure Boot Sequence
          • Secure Boot Keys
          • Enabling Secure Boot
      • Enabling non-Linux VMs
        • Windows as a Guest
          • Inter VM communication via shared memory
          • ivshmem Driver for Windows
      • Compiling ACRN for different platforms
      • Using the ACRN hypervisor shell
        • List actively running VMs
        • Open a console session to a VM
    • Real-Time Systems Hypervisor (RTH)
      • RTH Terminology
      • RTH Prerequisites
      • Using RTH to Virtualize your Desktop Environment (GPOS)
        • Default Debian GNU/Linux LXDE Desktop GPOS
          • use Debian package update
        • Incremental Microsoft® Windows® Desktop GPOS installation
          • Microsoft® Windows® Desktop RTH virtualized-mode GPOS
        • Replacing GPOS with user-preferred Canonical® Ubuntu® Desktop
          • Canonical® Ubuntu® Desktop RTH virtualized-mode GPOS
      • Using RTH to consolidate Privileged RTOS (POS)
        • Upgrading POS images
          • use Debian pos-rt and pos-xe package update
          • Run ECI update script manually
        • Augment POS runtime memory size
        • Change POS rootfs mount assignment
          • mount POS overlayFS rootfs partition
          • mount POS flattened rootfs partition
          • mount POS RAM disk rootfs (no partition mapped)
        • Intel® Time Coordinated Computing (TCC) enabled RTH configuration
          • Partition L2/L3 cache memory between CPU cores and GPU
          • Set SW SRAM as /dev/shm
          • Set #AC on Split Lock
        • Enable Intel® Ethernet TSN Controllers
          • Change PCI device memory
          • Set MSI-X interrupt emulation
      • RTH Sanity-Check Testing
        • Sanity-Check #1: Communication between Virtualized and Privileged OS runtimes
          • Step 1: Verify privileged-mode OS (POS) is loaded successfully
          • Step 2: Verify virtual network driver status
          • Step 3: SSH from Virtualized-OS to the privileged-OS runtime
          • Step 4: Optional - Port forwarding SSH into the ECI RT-OS runtime
        • Sanity-Check #2: Manage privileged-ECI OS runtime lifecycle
          • Step 1: Verify rthbase driver status
          • Step 2: Verify CPU core warm-reset
          • Step 3: Reboot ECI privileged-OS individually
          • Step 4: system reset of all CPUs : Hypervisor, virtualized OS and privileged-OS
        • Sanity-Check #3: Troubleshooting privileged-ECI OS runtime
          • Step 0: Find the Ethernet controllers PCI ID
          • Step 1: Dedicate an Ethernet Port for RTH logging
          • Step 2: Read log-message remotely
      • RTH Best Known Methods
        • RTH BKMs
          • BKM #1: Run a RT workload on POS and non-RT workload on GPOS
    • Robot Operating System Software
      • ROS 2 Overview
      • Robotics Applications
        • ROS 2 Navigation Stack
        • Simultaneous Localization and Mapping (SLAM)
        • Robot Motion Planning Framework - MoveIt2
        • Motion Control Gateway
      • ROS2 Performance Benchmarking Tool
        • ROS2 Performance Benchmarking Tool Overview
        • Intel Optimization and BKMs
        • Launching ROS2 Performance Tool:
      • Sanity test for ROS2 Integration
        • 1. System Test Requirements:
        • 2. Environment setup:
          • 2.1 ECI Target System
          • 2.2 Ubuntu Host PC:
          • 2.3 Network
        • 3. Sanity Check Cases
          • 3.1 Sanity_Check_1: ROS Running Environment Setup
          • 3.2 Sanity_Check_2: ROS2 Command Execution Check
          • 3.3 Sanity_Check_3: ROS2 Communication Check
          • 3.4 Sanity_Check_4: Navigation2 Launch Check
          • 3.5 Sanity_Check_5: SLAM Launch Check
          • 3.6 Sanity_Check_6: Moveit2 Fake Controller Demo Check
          • 3.7 Sanity_Check_7: Moveit2 run_moveit_cpp Demo Check
          • 3.8 Sanity_Check_8: Moveit2 servo_cpp_interface Demo Check
          • 3.9 Sanity_Check_9: Moveit2 servo_server Demo Check
          • 3.10 Sanity_Check_10: Moveit2 servo_teleop Demo Check
          • 3.11 Sanity_Check_11: Motion Control Gateway Launch Check
          • 3.12 Sanity_Check_12: HIWIN 6-axis robotic arm demo Launch Check
          • 3.13 Sanity_Check_13: RRBot 2-axis robotic arm demo Launch Check
    • Trusted VM for IoT Platforms
      • Definitions and Acronyms
      • Trusted VM Architecture
      • Trusted OS & Services
      • Component level view of the stack
      • Trusted VM prerequisites
      • Preparing the Trusted VM
      • Verifying the Trusted VM
      • Using the Trusted VM
      • Trusted VM Example Application
        • Sign and Encrypt - Encrypted Private Key
      • Using Trusted Edge Platform as a container
        • Preparing the Trusted Edge Platform container image
        • Deploying the Trusted Edge Platform container image
    • Real Time Data Agent
      • Main structure and data flow
      • Shared memory ring buffer library
        • Design principle
        • How to use
      • Demo agent program to process the real-time data
      • Example time series database container stack
      • Run the simulation example
    • Time-series processing
      • Time-series data processing stack
        • Time-series stack setup
          • Deploying the stack
        • Secure time-series stack setup
          • Certificate and key generation
          • Deploying the secure stack
    • Intel® Ethernet Controllers TSN Enabling and Testing frameworks
      • Commercial Industrial Ethernet Switches (PCIE-0400-TSN)
        • PCI-400-TSN Sanity-Check Testing
          • Sanity-Check #1: TSN Switch PCI-400-TSN
          • Sanity-Check #2: Set PCI-400-TSN switch as IEEE 802.1AS-2011 PTPv2 Grand-Master
          • Sanity-Check #3: Configure Traffic Class Table and Gate Control List on PCI-400-TSN switch
      • systemd Intel® Ethernet TSN Endpoint boot and runtime services
        • Custom netlink-tsninit script
          • Configure the [interface] to get IP Address dynamically from DHCP server
          • Configure the [interface] with a static [ip address] with [netmask]
          • Create a Virtual LAN (VLAN) with [vlan id] on the [interface]
          • Configure Queueing Discipline (Qdisc) rule used on the [interface]
          • Configure Priority into Traffic Class Table
          • Configure Gate Control List (GCL)
        • Builtin systemd-networkd.service [Experimental]
        • systemd services Sanity-Checks
          • Sanity-Check #1: Set TSN Endpoint IEEE 802.1Q-2018 Gate Control List (GCL) via systemd Boot Configuration
      • eBPF offload XDP support on Intel® Ethernet Linux driver
        • Linux eXpress Data Path (XDP)
          • libbpf XDP API helper overview
          • RX Receive Side Scaling (RSS) Queue
          • AF_XDP socket (CONFIG_XDP_SOCKETS)
        • XDP Sanity-Check Testing
          • Sanity-Check #1: Load & Execute eBPF offload XDP GENERIC_MODE program
          • Sanity-Check #2: Load & Execute eBPF offload XDP DRV_MODE program
          • Sanity-Check #3: Load & Execute AF_XDP socket in XDP_COPY mode
          • Sanity-Check #4: Load & Execute AF_XDP socket in XDP_ZEROCOPY mode
      • Intel® Ethernet TSN IoTG Reference Sample Applications
        • Time Synchronization Quality measurement
        • Linux socket RX/TX latency measurement
          • AF_PACKET socket subtest
          • AF_XDP socket subtest
        • IEC-62541 OPC-UA PubSub (Part4) Linux RX/TX latency measurement
        • Sanity-Check iotg_tsn_ref_sw Testing
          • Sanity-Check #1: IEEE 802.1AS Time Synchronization Quality Measurement
          • Sanity-Check #2: Single-port transmission over AF_PACKET -vs- AF_XDP socket with IEEE 802.1Q-2018 EST
          • Sanity-Check #3: Single-port IEC-62541 OPC-UA PubSub (Part4) transmission over Linux AF_PACKET socket with IEEE 802.1Q-2018 EST
          • Sanity-Check #4: dual-port IEC-62541 OPC-UA PubSub (Part4) loopback over Linux AF_PACKET socket with IEEE 802.1Q-2018 EST
          • Sanity-Check #5: dual-port IEC-62541 OPC-UA PubSub (Part4) loopback over Linux AF_XDP with IEEE 802.1Q-2018 EST
      • open62541 OPC-UA Pubsub performance testing framework
        • open62541 Sanity-Check Testing
          • Sanity-Check #1: egress OPC UA pubsub UADP ETH traffic-class on SO_TXTIME socket cmsg
          • Sanity-Check #2: ingress OPC UA pubsub UADP ETH traffic-class on AF_XDP socket BPF offload XDP_FLAGS_SKB_MODE xdpgeneric program
          • Sanity-Check #3: ingress OPC UA pubsub UADP ETH traffic-class on AF_XDP socket BPF offload XDP_FLAGS_DRV_MODE xdp program
          • Sanity-Check #4: egress OPC UA pubsub UADP ETH traffic-class on TAPRIO tx-offload and ingress OPC UA pubsub UADP ETH traffic-class on BPF offload XDP_FLAGS_DRV_MODE xdp program
      • IIC TSN Testbed 802.1Q-2018 Interoperability testing
        • interopapp Usage Examples
        • interopapp Sanity-Check Testing
          • Sanity-Check #1: TSN Endpoint smoketest egress and ingress traffic
          • Sanity-Check #2: TSN Endpoint P2P benchmark test egress and ingress traffic
      • IEEE 802.1AS Time-Aware Systems overview
        • PTP Clocks
          • Ordinary Clock
          • Transparent Clock
          • Grandmaster Clock
          • Boundary Clock
        • Linuxptp stack 802.1AS gPTP Profile
          • IEEE 802.1as gPTP profile essential
          • ts2phc
          • check_clocks
      • IEEE 802.1Q-2018 Industrial Ethernet Quality-of-Service (QoS) overview
        • Virtual LANs (VLANs)
        • Linux Traffic Control (TC)
          • Earliest TxTime First (NET_SCHED_ETF) QDisc
          • Time Aware Priority (NET_SCHED_TAPRIO) QDisc
          • Packet Classifier (CONFIG_NET_CLS_FLOWER)
    • Intel® Time Coordinated Computing Tools (Intel® TCC Tools)
      • About Intel® TCC Tools
      • Why Intel TCC Tools?
      • Intel TCC Tools - Resources
      • Intel TCC Tools - Prerequisites
      • Intel TCC Tools - Enabling Drivers and SSRAM(With and Without ACRN)
      • Intel TCC Tools - Cache Configurator
        • Prepare Target
        • Run TCC Cache Configurator
      • Intel TCC Tools - Sanity Checks
        • Sanity Check 1: RT Checker
        • Sanity Check 2: Verify TCC Drivers and Software SRAM
      • Troubleshooting
    • Intel® Elkhart Lake Functional Safety (FuSa) Software Package
      • System Overview
        • Safety Monitoring Integrated Suite (SMIS)
        • Software Test Library (STL)
        • STL Manager
        • On-demand Cross Comparison (ODCC)
        • Safety Monitor Communication Library (SMCL)
        • Operation System Adaptation Layer (OSAL)
        • SlimBootLoader (SBL)
      • FuSa Prerequisites
        • Building Intel® Firmware Image (IFWI)
      • FuSa - Resources
      • Building ECI Image with FuSa Feature
      • FuSa Sanity-Check Testing
    • Intel® Edge Insights for Industrial
      • Intel® EII Overview
      • Intel® EII Architecture
      • Intel® EII Prerequisites
        • Intel® EII Minimum System Requirements
      • Preparing Intel® EII
      • Deploying Intel® EII
    • Security Enhanced Linux (SELinux)
      • Basic overview for Linux security
      • Definitions and Acronyms on SELinux
      • SELinux Concept
      • SELinux Attribute
      • Commands of SELinux
      • Learn from an example: (Make rt-data agent work under SELinux monitoring)
      • How to debug
    • Next Generation Smart Factory Test Bed
      • An Overview
      • Software
        • OPC UA Messaging
          • Message Architecture
          • OPC UA Configuration
          • Time Measurements
        • Dashboard
          • Live Data display
          • Database
          • Long Term Display
          • Preferences and settings
      • Configuration
        • BIOS Configuration
          • ngsf.json File
        • TSN Configuration
          • Industrial PCs
          • FPGAs
          • Bridges
      • Building NGSF
        • Preparing the Software
        • Ground 0 – NGSF Foundation
          • Ground Zero: Hardware Bill of Materials
          • Ground Zero: Software Bill of Materials
          • Ground Zero: Assembly
          • Ground Zero: Running the Applications
          • Ground Zero: Key Performance Indicators
        • Setup One
          • Setup One: Hardware Bill of Materials
          • Setup One: Software Bill of Materials
          • Setup One: Assembly
          • Setup One: Running the Applications
          • Setup One: Key Performance Indicators
        • Setup Two
          • Setup Two: Hardware Bill of Materials
          • Setup Two: Software Bill of Materials
          • Setup Two: Assembly
          • Setup Two: Preparation
          • Setup Two: Interface Setup
          • Setup Two: Running the Applications - FPGAs as End Nodes
          • Setup Two: Key Performance Indicators - FPGAs as End Nodes
          • Setup Two: Running the Applications - FPGAs as Switched End Nodes
          • Setup Two: Key Performance Indicators - FPGAs as Switched End Nodes
        • Setup Three
          • Setup Three: Hardware Bill of Materials
          • Setup Three: Software Bill of Materials
          • Setup Three: Assembly
          • Setup Three: Preparation
          • Setup Three: Running the Applications
        • Setup Four - Full NGSF
          • Setup Four: Hardware Bill of Materials
          • Setup Four: Software Bill of Materials
          • Setup Four: Preparation
          • Setup Three: Mechanical Assembly
          • Setup Four: Setting up Discs
          • Setup Four: Running the Applications
      • NGSF Troubleshooting
        • Clock Synchronization
        • SSH and Time Sensitive Configuration
        • Large Oscillating Numbers Appear on End-to-end Latency on Dashboard
        • Negative Numbers Appear on End-to-end Latency on Dashboard
        • Connmanctrl is unavailable in Edge Controls for Industrial Installation
    • Infrastructure Management
      • Edge Conductor
      • Intel® In-band Manageability
        • Castle-Lake Workload-Orchestrator in In-band Manageability
          • In-band Manageability User Guides
          • Provisioning In-band Manageability Framework
        • Provision for Telit
        • Provision for Azure
        • Provision for ThingsBoard
      • Bare Metal Onboarding
        • FIDO Device Onboarding of ECI Images to Supported DMS using Intel® In-band Manageability
          • Infrastructure Prerequisites
        • Setting up Node0 Infrastructure
        • Using Infrastructure
      • Application Management - Intel® Castle Lake
        • Castle Lake Overview
        • Deploying Intel® Castle Lake
        • Deploy Intel® Castle Lake Client on ECI
  • Developer Resources
    • ECI Project Development
      • Project Source Code
      • Project configuration files
    • Using QEMU during development
      • Testing and debugging images with QEMU
        • QEMU testing prerequisites
        • Running QEMU
    • Real-time Workload Optimizations
      • Cache Allocation Technology
        • Cache Allocation Technology Terminology
        • Cache Monitoring Technology (CMT) and Memory B/W Monitoring (MBM) usage
        • Example CMT/MBM usage scenario
        • Cache Allocation Technology (CAT) usage
        • Example CAT usage scenario
        • Example CAT usage on ECI images
        • Memory Bandwidth Allocation (MBA) usage
      • Best Practices for Achieving Real-time Performance
        • Eliminate Sources of CPU Contention
        • Prioritize Workloads
        • Use Cache Allocation Technology
        • Stop Unnecessary Services
        • Disable Machine Checks
        • Increase Thread Runtime Limit
      • Typical Workload Optimization Flow
    • Microservice Optimizations
      • Docker CPUSet
        • Docker CPUSet Example
      • Docker CPUS
        • Docker CPUS Example
    • Real-Time Scheduling on Linux IA64
      • General definitions
        • IA64 interrupt definitions
        • Linux multi-threading definitions
        • General Linux Timer definitions
      • PREEMPT_RT preemptive and priority scheduling on Linux OS runtime
        • Setting low-latency Interrupt SW handling
        • Setting Preemptive and Priority Scheduling policies
          • chrt runtime Processes Linux scheduling policies
          • sched_setscheduler() and sched_setattr() Processes runtime Linux scheduling policies
          • pthread POSIX Linux runtime scheduling APIs
          • kthread Read-Copy Update (RCU)
        • Setting POSIX thread virtual memory allocation (vma)
        • Setting NoHz (Tickless) Kernel
        • Setting High Resolution Timers thread
          • pthread_…() POSIX Linux isochronous scheduling
        • Setting thread temporal-isolation via kernel boot parameters
      • Xenomai3/i-pipe Cobalt preemptive & priority scheduling Linux OS runtime
        • Setting 2-stage interrupt pipeline [Head] and [Root] stages
        • Setting POSIX thread context migration between [Head] and [Root] stages
          • pthread POSIX skin runtime scheduling APIs
        • Setting High Resolution Timers thread in Xenomai
        • Further reading reference
      • RT-Scheduling Sanity-Check Testing
        • Sanity-Check #1: User Monitor Thread CPU core Affinity
        • Sanity-Check #2: User Monitor Kernel Interrupts
        • Sanity-Check #3: Determine CPU LLC Cache Allocation preset
        • Sanity-Check #4: Check IA UEFI firmware setting
        • Sanity-Check #5: Check Linux kernel cmdline parameters
        • Sanity-Check #6: User reports thread KPIs as latency histograms
    • BPF Compiler Collection (BCC)
      • BCC Environment Setup
        • Example 1: BCC XDP redirect
    • Full Disk Encryption
      • Using Intel PTT
    • Flashing an Integrated FirmWare Image (IFWI)
      • Hardware Requirements
      • Software Requirements
      • Connecting DediProg
      • Flashing IFWI
    • Troubleshooting Guide
      • Monitor CPU Utilization and Affinity
      • Monitor Kernel Interrupts
      • Determine CPU Cache Allocation
      • Configure ipv4 and route to Xenomai/RTnet network stack
      • Using Linux events tracing (ftrace) to report latency outliers
        • Create a af_packet Ftrace System level timeview user-report
        • Create a af_packet Ftrace System & Functional level timeview user-report
        • Create Linux af_packet Ftrace + Perf/Intel_pt combined timeview user-report
        • Create Linux Ftrace af_packet latency histogram Text-UI user-report
        • Create Linux Ftrace Inter-event af_packet latency histogram Text-UI user-report
      • Common PTP sync issues
        • GM PTP messages TTL>1
        • Overwhelmed with ingress PTP traffic
      • Use Linux Perf event with Intel® Processor Trace
        • Tracing your own code
      • Using Wireshark to Dissect OPC UA pubsub with time-scheduled traffic-class
      • Changing Kernel Configuration and Boot Parameters
    • System Performance Characterization
      • Mega Benchmark
      • Cyclictest Workload
        • Interpreting Cyclictest Results
        • Additional Cyclictest Workload
      • Jitter
        • Interpreting Jitter Results
      • LMbench
        • Interpreting LMbench Results
      • Caterpillar
        • Interpreting Caterpillar Results
      • RT-app
      • Rhealstone
        • Interpreting Rhealstone Results
      • MSI Latency
        • Interpreting MSI latency Results
      • MSI Jitter
        • Interpreting MSI Jitter Results
      • MMIO Latency
        • Interpreting MMIO Latency Results
      • Real-Time Performance Measurement (RTPM)
        • About RTPM
        • RTPM Test Modules
          • Real-Time Readiness Check
          • Boot Command Line Check
          • Kernel Configuration Check
          • Real-Time Performance Test
        • RTPM Command Line Parameters
      • CODESYS Benchmark Application
        • Deploying the CODESYS Benchmark
      • Performance Sanity-Check Testing
        • Sanity-Check #0 - Cyclictest Workload
        • Sanity-Check #1 - LMbench Workload
        • Sanity-Check #2 - Jitter Workload
        • Sanity-Check #3 - Caterpillar Workload
        • Sanity-Check #4 - Latency Workload
        • Sanity-Check #5 - MSI Latency
        • Sanity-Check #6 - MSI Jitter
        • Sanity-Check #7 - Rhealstone Workload
        • Sanity-Check #8 - MMIO Latency Workload
        • Sanity-Check #9 - CODESYS PlcLogic Workload
        • Sanity-Check #10 - Smokey
        • Sanity-Check #11 - Xenomai XDDP-stream Runtime
        • Sanity-Check #12 - IEC 61131-3 PLCopen IEC 61131-3 KALMAN + PID workload
        • Sanity-Check #13 - IEC 61131-3 PLCopen Arithmetic and Logic Elementary Workload
        • Sanity-Check #14 - IEC 61131-3 PLCopen G-Code CNC Execution Performance Workload
        • Sanity-Check #15 - OpenGL glxgears Workload
        • Sanity-Check #16 - Smokey Net Server
    • Benchmark Data
      • Benchmark Platforms
      • Cyclictest Results
        • Vecow Core i7-8665UE - RT Benchmark
        • MaxTang Core i7-8665U - RT Benchmark
        • Vecow Core i7-1185G7E - RT Benchmark
        • Karbon 700 Core i7-9700TE - RT Benchmark
        • TGL-RVP Core i7-1185GRE - RT Benchmark
        • Vecow Core i7-8665UE - Cyclictest
        • Maxtang Core i7-8665U - Cyclictest
        • Vecow Core i7-1185G7E - Cyclictest
        • Karbon 700 Core i7-9700TE - Cyclictest
        • TGL-RVP Core i7-1185GRE - Cyclictest
      • LMbench Results
        • Vecow Core i7-8665UE - LMbench
        • Maxtang Core i7-8665U - LMbench
        • Vecow Core i7-1185G7E - LMbench
        • Karbon 700 Core i7-9700TE - LMbench
        • TGL-RVP Core i7-1185GRE - LMbench
      • Jitter Results
        • Vecow Core i7-8665UE - Jitter
        • Maxtang Core i7-8665U - Jitter
        • Vecow Core i7-1185G7E - Jitter
        • Karbon 700 Core i7-9700TE - Jitter
        • TGL-RVP Core i7-1185GRE - Jitter
      • Caterpillar Results
        • Vecow Core i7-8665UE - Caterpillar
        • Maxtang Core i7-8665U - Caterpillar
        • Vecow Core i7-1186G7E - Caterpillar
        • Vecow Core i7-1185G7E - Caterpillar
        • Karbon 700 Core i7-9700TE - Caterpillar
        • TGL-RVP Core i7-1185GRE - Caterpillar
      • Latency Results
        • Vecow Core i7-8665UE - Latency
        • Maxtang Core i7-8665U - Latency
        • Vecow Core i7-1185G7E - Latency
        • Karbon 700 Core i7-9700TE - Latency
        • TGL-RVP Core i7-1185GRE - Latency
        • EHL-CRB Atom x6425RE - Latency
      • MSI Latency Results
        • Vecow Core i7-8665UE - MSI Latency
        • Maxtang Core i7-8665U - MSI Latency
        • Vecow Core i7-1185G7E - MSI Latency
        • Karbon 700 Core i7-9700TE - MSI Latency
        • TGL-RVP Core i7-1185GRE - MSI Latency
      • MSI Jitter Results
        • Vecow Core i7-8665UE - MSI Jitter
        • Maxtang Core i7-8665U - MSI Jitter
        • Vecow Core i7-1185G7E - MSI Jitter
        • Karbon 700 Core i7-9700TE - MSI Jitter
        • TGL-RVP Core i7-1185GRE - MSI Jitter
        • EHL-CRB ATOM x6425RE - MSI Jitter
      • Rhealstone Results
        • Vecow Core i7-8665UE - Rhealstone
        • Maxtang Core i7-8665U - Rhealstone
        • Vecow Core i7-1185G7E - Rhealstone
        • Karbon 700 Core i7-9700TE - Rhealstone
        • TGL-RVP Core i7-1185GRE - Rhealstone
        • EHL-CRB Atom x6425RE - Rhealstone
      • MMIO-Latency Results
        • Vecow Core i7-8665UE - MMIO-Latency
        • Maxtang Core i7-8665U - MMIO-Latency
        • Vecow Core i7-1185G7E - MMIO-Latency
        • Karbon 700 Core i7-9700TE - MMIO-Latency
        • TGL-RVP Core i7-1185GRE - MMIO-Latency
  • Release Notes
  • Appendix
    • ECI Components
    • ECI Services
    • ECI Benchmarks
    • ECI Examples
    • ECI Kernel Configuration Optimizations
    • ECI Kernel Boot Optimizations
    • Additional Boot Parameters for Intel® TCC Tools
    • Recommended ECI-B/X BIOS Optimizations
    • Required BIOS configuration for Intel® TCC Tools
  • FAQs and Known Limitations
    • Frequently Asked Questions
    • Known Limitations
  • Notices & Disclaimers
    • Benchmarking Disclaimer
    • Warranty Disclaimer
    • Errata Disclaimer
    • IP License Disclaimer
    • Infringement Analysis Disclaimer
    • Trademark & Copyright Notice
  • Components and Features of ECI

Attention

You are viewing an older version of the documentation. The latest version is v3.3.

Components and Features of ECI¶

After completing Building ECI, use these guides to better understand the components and features of ECI.

Explore these subjects to learn how to use the features ECI has to offer:

  • CODESYS Software PLC
  • Logiclab Software PLC
  • Edge Control Protocol Bridge & OPC UA
  • Microservice Architecture
  • IgH EtherCAT Master Stack
  • CANopen Overview
  • PLCopen Motion Control
  • ACRN Hypervisor
  • Real-Time Systems Hypervisor (RTH)
  • Robot Operating System Software
  • Trusted VM for IoT Platforms
  • Real Time Data Agent
  • Time-series processing
  • Intel® Ethernet Controllers TSN Enabling and Testing frameworks
  • Intel® Time Coordinated Computing Tools (Intel® TCC Tools)
  • Intel® Elkhart Lake Functional Safety (FuSa) Software Package
  • Intel® Edge Insights for Industrial
  • Security Enhanced Linux (SELinux)
  • Next Generation Smart Factory Test Bed
  • Infrastructure Management
    • Edge Conductor
    • Intel® In-band Manageability
    • Bare Metal Onboarding
    • Application Management - Intel® Castle Lake

Next Previous

© Copyright 2019-2024, Intel.  Last updated on Feb 05, 2022. Published on Jun 23, 2025

ECI Documentation v: 2.6
Document Versions
3.3
3.2
3.1
3.0.2
3.0.1
3.0
2.6
2.5