Lightweight Communications and Marshalling
Java C++ C CMake C# HTML Other
Clone or download
tprk77 Merge pull request #226 from tprk77/formatting-of-lcmgen
Formatting of 'lcmgen' directory
Latest commit 8f7189b Jun 27, 2018

Lightweight Communications and Marshalling (LCM)

LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical. It provides a publish/subscribe message passing model and automatic marshalling/unmarshalling code generation with bindings for applications in a variety of programming languages.

Quick Links


  • Low-latency inter-process communication
  • Efficient broadcast mechanism using UDP Multicast
  • Type-safe message marshalling
  • User-friendly logging and playback
  • No centralized "database" or "hub" -- peers communicate directly
  • No daemons
  • Few dependencies

Supported platforms and languages

  • Platforms:
    • GNU/Linux
    • OS X
    • Windows
    • Any POSIX-1.2001 system (e.g., Cygwin, Solaris, BSD, etc.)
  • Languages
    • C
    • C++
    • C#
    • Go
    • Java
    • Lua
    • MATLAB
    • Python