LCM (Lightweight Communications and Marshalling)
- Software
- Middleware
- Library
LCM is a set of libraries and tools for publish/subscribe message passing and automatic data marshalling in real-time, low-latency systems.
Made by LCM project.
Source on GitHub: github.com/lcm-proj/lcm (opens in a new tab). Facts read at commit f56db40 (opens in a new tab).
Licenses
- Code
- LGPL-2.1-only (opens in a new tab)
Read by Robotheca from COPYING (opens in a new tab) (LGPL-2.1-only) at commit f56db40 (opens in a new tab), on 16 Oct 2026.
- Commercial use
- Yes
Copyleft: Modified source must be published.
What it does
- Provides a publish/subscribe messaging model with automatic marshalling and unmarshalling code generation.
- Offers low-latency inter-process communication using efficient UDP multicast broadcast.
- Uses type-safe message marshalling and includes logging and playback tools.
- Peers communicate directly, with no central hub, database, or daemons required.
- Has bindings for C, C++, Java, Lua, MATLAB and Python (3.7 and later), with Go and C#/.NET unmaintained.
- Supports GNU/Linux (Ubuntu, Fedora), macOS and Windows.
Written by Robotheca from the project's README (opens in a new tab) at commit f56db40.
Getting started
- Difficulty
- Intermediate
- Hardware it needs, as the project states it
- Runs on GNU/Linux (Ubuntu 22.04 and 24.04, Fedora 42), macOS (14 and 15), and Windows (2019 and 2022).
- How to start
- The project's README (opens in a new tab)
Maintenance
- Status
- Active: a commit in the last 90 days
- Newest commit
- 24 Sept 2026 on master
- Latest release
- v1.5.3 (24 Sept 2026)
Checked on GitHub on 16 Oct 2026.
Links
Robots on Robotheca that use it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.