Skip to content

protobuf_comm

  • Software
  • Middleware
  • Library

A lightweight C++ library for sending Protocol Buffers messages over a network, with a framing protocol that adds length, type and optional AES encryption.

Made by Fawkes Robotics.

Source on GitHub: github.com/fawkesrobotics/protobuf_comm (opens in a new tab). Facts read at commit 9284c51 (opens in a new tab).

Licenses

Code
GPL-2.0-only (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (GPL-2.0-only) at commit 9284c51 (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

Copyleft: Modified source must be published.

What it does

  • Works with proto 2 messages that each carry a CompType enum holding a unique component ID and message type.
  • Wraps serialized protobuf messages in an eight-byte frame header and a four-byte message header.
  • Supports per-message encryption using AES-128 or AES-256 in ECB or CBC mode, with an initialization vector for CBC.
  • Encodes header numbers in network byte order so receivers can read the payload size and message identity correctly.
  • Was created by Tim Niemueller as a component for the referee box of the RoboCup Logistics League.

Written by Robotheca from the project's README (opens in a new tab) at commit 9284c51.

Getting started

Difficulty
Advanced

Maintenance

Status
Maintained: a commit in the last 12 months
Newest commit
25 Jun 2026 on main
Latest release
0.9.2 (5 Apr 2024)

Checked on GitHub on 16 Oct 2026.

Robots that can run 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.