-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Rylan Meilutis edited this page Jan 29, 2026
·
14 revisions
Sedsprintf_rs is a Rust telemetry transport and logging library with a shared schema, compact wire format, routing, and multi-language bindings (C/C++ and Python). It targets embedded and host environments and supports optional compression for senders and payloads.
- Router side tracking is internal. Most applications should call the plain RX APIs (
rx_serialized/rx) and only use side-aware variants when explicitly overriding ingress (custom relays, multi-link bridges, etc.). - TCP-like reliability is now available for schema types marked
reliable/reliable_mode, with ACKs, retransmits, and optional ordering. Enable per side and disable when the transport is already reliable. - All serialized frames include a CRC32 trailer for integrity checks. Corrupt frames are dropped; reliable modes trigger retransmit requests.
- Full changelog: v2.4.0...v3.0.0
These pages are written for readers who want a clear mental model before digging into code.
- docs/wiki/Overview.md
- docs/wiki/Concepts.md
- docs/wiki/Examples.md
Step-by-step setup and usage by language.
- docs/wiki/Build-and-Configure.md
- docs/wiki/Usage-Rust.md
- docs/wiki/Usage-C-Cpp.md
- docs/wiki/Usage-Python.md
- docs/wiki/Troubleshooting.md
Detailed pages that describe internals, data structures, and formats.
- docs/wiki/technical/Index.md
- docs/wiki/technical/Architecture.md
- docs/wiki/technical/Telemetry-Schema.md
- docs/wiki/technical/Wire-Format.md
- docs/wiki/technical/Router-Details.md
- docs/wiki/technical/Queues-and-Memory.md
- docs/wiki/technical/TelemetryPacket-Details.md
- docs/wiki/technical/Bindings-and-FFI.md
- src/: core Rust library (schema, packet types, serialization, router/relay).
- sedsprintf_macros/: proc-macros that generate schema constants.
- telemetry_config.json: schema source of truth (endpoints + data types).
- build.rs: generates C header and Python .pyi from the schema.
- C-Headers/: generated C header (
sedsprintf.h). - python-files/: Python package assets and generated .pyi.
- c-example-code/ and python-example/: runnable examples.
log(data) rx(bytes)
| |
v v
Router <---- deserialize ---- wire ---- serialize ----> Router
| \ | \
| \-- local endpoints | \-- local endpoints
| |
+-- tx(bytes) ------------------------------>+
Core ideas:
- Telemetry packets carry a schema-defined type, endpoints, sender name, and payload.
- Routers deliver packets to local endpoints and optionally relay them outward.
- The schema (DataType/DataEndpoint) is generated from
telemetry_config.json.
If you want an implementation-level tour, go to docs/wiki/technical/Architecture.md.