OpenLCB C Library — Implementation Guide

A guide for maintainers, contributors, and anyone who needs to understand how this library works, how data flows through it, and where to look when debugging.

About this guide

This guide covers the implementation of the OpenLCB C library — how the code is structured, how messages flow, and how the pieces connect. For the generated API reference (individual function signatures, struct fields, etc.), see the Doxygen API Reference.

Part I — Orientation
Part II — Core Infrastructure
Part III — State Machines (Transport-Independent)
Part IIIb — CAN Transport State Machines
Part IV — Protocol Handlers
Part V — CAN Driver Layer
Part VI — Integration and Debugging
Part VII — Extending the Library
Appendices

Copyright © 2026 Jim Kueneman. All rights reserved. See the License.