Skip to content

Simple implementation of the ASAM XCP on Ethernet (UDP) protocol

License

Notifications You must be signed in to change notification settings

saiqkhan07/XCPlite

Repository files navigation

XCPlite 12.10.2020 Copyright 2020 RainerZ

Simple and light implementation of the ASAM XCP Protocol Layer V1.1 (1000 lines of code). Inspired by the original free sources from Vector Informatik GmbH.

List of restrictions compared to Vectors xcpBasic see source file xcpLite.c.

Optimized for XCP on Ethernet (UDP), multi threaded, no thread lock and zero copy data acquisition. C and C++ target support.

Experimental UDP on RAW socket optimization.

Demo visual Studio and CANape project included for Raspberry Pi 4.

C and C++ measurement demo variables and code (ecu.c and ecupp.cpp). Measure global variables and dynamic instances of structs and classes.

Achieves up to 80 MByte/s throughput on a Raspberry Pi 4 demo. 3% single thread cpu time in event copy routine for 40MByte/s transfer rate. 1us measurement timestamp resolution.

UDP only.

Note: CANape Linker Map Type ELF extended Compile with -O2 Link with -lrt -lpthread

About

Simple implementation of the ASAM XCP on Ethernet (UDP) protocol

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 94.5%
  • C++ 5.3%
  • CMake 0.2%