Libraries Everything under libs/ is reusable code with a CMake target of the same name unless noted. These pages are for someone coding against a library: what it is, what it deliberately is not, its public headers, and what will catch you out. Every library is listed; the ones without a page yet say so.
Bus, configuration and app plumbing Library Target What it is Page pub_sub zenoh_pub_sub Zenoh sessions, Cap’n Proto publish and subscribe, expression subscriptions, services, liveliness; the generated schema registry. pub_sub reflection reflection REFLECT_STRUCT and REFLECT_ENUM: the compile-time field lists every codec and UI walks. reflection config_codec config_codec Reflected-struct configuration: YAML and JSON both ways, self-description, validation by field path, clamping. No Qt. config_codec core core Paths, logging setup, systemd notify; the one place the runtime environment variables are read. core cli cli Verb dispatch for the multi-verb tools: global options, exit codes, results on stdout. cli helpers helpers Qt-free odds and ends: hex, colour, unit conversion, a rate gate, the FFmpeg log bridge. helpers qt_helpers qt_helpers The Qt-using sibling: a paint-caching widget base, colour conversion, resource fonts. qt_helpers agent_control agent_control The --mcp control socket embedded in every GUI app: methods, screenshots, input, the widget locator. agent_control dashboard_widgets dashboard_widgets Every dashboard widget, the widget table, the layout config and its loader, the factory, and the widget.* agent methods; shared by the dashboard and the editor. dashboard_widgets node_health node_health The health a node publishes and the monitor that reads every node at once; what inspect health prints. node_health bag bag Recording and replaying the bus as MCAP. bag
CAN Library Target What it is Page can can The backend-independent half: the Channel interface, channel naming, bit-timing arithmetic, the FD length table, a virtual backend. can can_pcan can_pcan PCAN-USB FD adapters over libusb. can_pcan can_socketcan can_socketcan The kernel’s CAN stack. Linux at runtime, built everywhere. can_socketcan can_motec can_motec The MoTeC UTC over libusb, and the network gateways that speak the same command envelope. can_motec can_trc can_trc PCAN .trc traces, read and written; a trace as a replay channel. can_trc can_backends can_backends Assembles the backends into one registry so can need not know they exist. can_backends dbc_parser dbc_parser DBC files parsed, and typed decoders generated from them at build time. dbc_parser canopen canopen EDS parsing, SDO, PDO, NMT and LSS, a virtual bus, and code generation from an EDS. canopen
Devices Library Target What it is Page gsof gsof The Trimble GSOF protocol. constexpr, no I/O. gsof bd992 bd992 TCP, reconnection and read-before-write configuration for a BD992. bd992 xbus xbus The Xsens XBus protocol. constexpr, no I/O. xbus mti610 mti610 The serial port, the reader thread and the Config/Measurement handshake for an MTi-610. mti610 mototrbo mototrbo MOTOTRBO XNL, XCMP and NAI. constexpr, no I/O. mototrbo xpr xpr A MOTOTRBO radio’s session over TCP. xpr msel msel The MSEL Master Relay protocol: decoding reports, building commands. msel display_backlight display_backlight A display module’s rootfs record and the sysfs backlight, light sensor and temperature devices behind it. display_backlight i2c_bus i2c_bus An I2C bus by host: Linux i2c-dev, or an MCP2221A bridge elsewhere. i2c_bus mcp2221a mcp2221a The Microchip USB-to-I2C bridge, over HID. mcp2221a
Apple and CarPlay Library Target What it is Page plist plist Apple property lists, binary and XML. plist apple_usb apple_usb usbmux client and server, lockdown, TLS, pairing, NCM discovery. Portable protocol layer, Linux transport. apple_usb apple_mfi_ic apple_mfi_ic The MFi authentication coprocessor over I2C. apple_mfi_ic iap2 iap2 The iAP2 accessory protocol and the MFi signer. iap2 airplay airplay The CarPlay session: RTSP control, pairing crypto, H.264 video, AAC audio, HID. airplay
Map Library Target What it is Page protowire protowire Just enough protobuf for MVT and OSM PBF. protowire osm osm OpenStreetMap PBF, decoded. osm mvt mvt Mapbox Vector Tiles, decoded and encoded. mvt mbtiles mbtiles The .mbtiles archive format, and the one place TMS rows become XYZ. mbtiles map_rules map_rules What a piece of OSM data is, decided once for the tiler and the router alike. map_rules map_wire map_wire A road-graph segment on the wire. map_wire road_graph road_graph The routable road network on disk, mmap’d, with a contraction hierarchy. road_graph track_store track_store The race-track catalogue that lives inside the .mbtiles. track_store map_render map_render Vector tiles to pixels through QRhi against an offscreen texture; labels, tile cache. map_render map_surface map_surface The same map pass drawn straight into a QRhiWidget. map_surface map_controls map_controls The floating buttons both map surfaces overlay on their maps. map_controls
State estimation Library Target What it is Page csym csym Compile-time symbolic differentiation: a residual lambda traced, differentiated and lowered to straight-line code with its Jacobian, JᵀJ and Jᵀr. Header-only. csym geodesy geodesy The WGS 84 ellipsoid: geodetic↔ECEF (Vermeille), the NED frame, radii, normal gravity and earth rate, templated so csym can differentiate through it. geodesy deflec deflec Deflection of the vertical: NGS’s gridded models read verbatim (memory-mapped) and interpolated as NGS does, and the gravity they make. deflec wmm wmm, wmm_hr2025 The World Magnetic Model: a compile-time .COF parser and field synthesis, with WMM-HR 2025 embedded and parsed during the build. wmm factor_graph factor_graph Nonlinear least squares on csym residuals: a fixed-lag smoother with frozen marginal priors, and a batch smoother that is RTS for linear models. factor_graph imu_preint imu_preint IMU preintegration from strapdown dq/dv in ECEF with earth rate; the IMU and bias-walk factors, the MTi sample sequencer, a truth simulator. imu_preint vehicle_estimator vehicle_estimator MTi and dual-antenna GNSS fused into position, attitude, velocity, acceleration and sideslip, with no bus types; the whole-drive smoother; vehicle_estimator_sim. vehicle_estimator calibration_store calibration_store What the estimator learned about the installation, kept between sessions as an append-only SQLite history; generic rows, defensive reads. calibration_store
Table of contents