Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
    • Search

  1. Home
  2. Projects
  3. Eclipse Automotive
  4. Eclipse eCAL™ (enhanced...
  5. Eclipse eCAL (enhanced Communication Abstraction Layer)
  6. Eclipse eCAL (enhanced Communication Abstraction Layer)
×

Informative message

This proposal has been approved and the Eclipse eCAL™ (enhanced Communication Abstraction Layer) project has been created.
Visit the project page for the latest information and development.

Go to Project

Eclipse eCAL (enhanced Communication Abstraction Layer)

Basics
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project: 
Eclipse Automotive
Background: 

eCAL was originally developed by Continental Automotive out of the need of a communication middleware solution for rapid prototyping in the area of autonomous driving. It supports a wide range of operating systems and covers embedded hardware as well as high performance multi core systems.

Scope: 

Eclipse eCAL (enhanced Communication Abstraction Layer)  provides a communication middleware for distributed computing systems written in C++ and designed for high performance / low latency communication. Besides this communication core Eclipse eCAL provides mature eco system tools for recording, replaying and monitoring data flows and for the automated startup and shutdown of a distributed system.

Description: 

The Eclipse eCAL (enhanced Communication Abstraction Layer) provides a middleware that enables scalable, high performance interprocess communication on a single computer node or between different nodes in a computer network. Eclipse eCAL uses a publish-subscribe pattern to automatically connect different nodes in the network.

Eclipse eCAL is choosing the best available data transport mechanism for each link:

  • Shared memory for local communication
  • UDP / TCP for network communication

The Eclipse eCAL middleware solution enables rapid prototyping for those high performance distributed application by providing the following base features:

  • intraprocess, interprocess and interhost communication
  • different transport layer implementations (shared memory, UDP, TCP)
  • publish/subscribe and server/client communication pattern
  • different message serialization formats
  • Windows and POSIX operating systems
  • language bindings to C, C++, C#, Python, Rust, Go, M-Script

For full documentation see official eCAL documentation.

Why Here?: 

By abstracting software components from specific operating system API's and forcing the component provider to specify a clear software component interface (publish / subscribe or client / server) Eclipse eCAL simplifies and accelerates the development, the maintenance, the deployment and the integration and test of an overall AD system in a SDV setup.

Licenses: 
Apache License, Version 2.0
Legal Issues: 

none

Project Scheduling: 
  • Release cycle is every 6 months - see releases
  • Current release is 5.10
Future Work: 

Project can be used as common integration platform for AD prototyping vehicles, simulation, test and validation environments. By using the existing powerful tools for recording, replay and monitoring and the support of multiple programming languages there is a wide range of different use cases.

We plan to:

  • support more existing AD sensor system natively (first project with GeneSys ongoing)
  • improve documentation by new (video) tutorials and more official doc pages
  • integration in other open source solutions in the SDV Eclipse working group

 

People
Project Leads: 
Rex Schilasky
Florian Reimold
Committers: 
schilasky
florianreimold
Kristof Hannemann
Kerstin Keller
Mentors: 
Jay Billings
Interested Parties: 
  • Continental Automotive
  • Mathworks
  • ROS
  • Speedgoat
  • Foxglove Inc.
  • Trellis
Source Code
Initial Contribution: 
  • ​​​​​​Project owned by Continental
  • Project licensed under Apache 2.0 - see eCAL License
  • All thirdparty dependencies including licences are listed here
Source Repository Type: 
GitHub
Source Repositories: 
https://github.com/continental/ecal

Comments Sign in to post comments

Rex Schilasky's picture

Draft !

Submitted by Rex Schilasky on Wed, 2022-06-01 11:37

Draft !

  • Log in to post comments

Project Links

  • Getting Started
  • Website
Incubating - Eclipse eCAL™ (enhanced Communication Abstraction Layer)

Related Projects

Project Hierarchy:

  • Eclipse Automotive
  • Eclipse eCAL™ (enhanced Communication Abstraction Layer)

Tags

Technology Types
  • Automotive
Other Tags
  • automotive

Eclipse Foundation

  • About Us
  • Contact Us
  • Sponsor
  • Members
  • Governance
  • Code of Conduct
  • Logo and Artwork
  • Board of Directors
  • Careers

Legal

  • Privacy Policy
  • Terms of Use
  • Copyright Agent
  • Eclipse Public License
  • Legal Resources

Useful Links

  • Report a Bug
  • Documentation
  • How to Contribute
  • Mailing Lists
  • Forums
  • Marketplace

Other

  • IDE and Tools
  • Projects
  • Working Groups
  • Research@Eclipse
  • Report a Vulnerability
  • Service Status

Copyright © Eclipse Foundation. All Rights Reserved.

Back to the top