Skip to content


Switch branches/tags

Latest commit

…ing (#363)

- Convert map() to list comprehension so we have a list, not a iterator
(which is exhaustible!!!)
- Use range() in lieu of xrange()
- Use bytes literal for initializing "byte" fields. Otherwise, we may get
an encoding error
- Use tobytes() instead of tostring() (deprecated)
- For PY_SSIZE_T_CLEAN, see:

Fix PY_SSIZE_T_CLEAN DeprecationWarnings

Git stats


Failed to load latest commit information.
Latest commit message
Commit time
Aug 30, 2018
Dec 1, 2007
Aug 30, 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

Build Status (master)

Build Status