-
Notifications
You must be signed in to change notification settings - Fork 1
Changelogs
Rylan Meilutis edited this page Feb 17, 2026
·
23 revisions
- Time Sync feature: built-in
TIME_SYNCendpoint andTIME_SYNC_*packet types (enabled viatimesyncfeature). - New Time Sync helpers and improved failover handling in
TimeSyncTracker. - New Rust, C, and Python time sync examples plus additional Rust examples for relay, reliability, timeouts, and multi-node simulation.
- RTOS time sync example code for FreeRTOS and ThreadX.
- Updated wiki docs to surface new examples and feature behavior.
- Full changelog: v3.1.0...v3.2.0
What's included:
- Feature:
timesyncaddsTIME_SYNCendpoint andTIME_SYNC_ANNOUNCE/REQUEST/RESPONSEtypes (built-in likeTelemetryError). - Examples: rust-example-code/timesync_example.rs (source | mirror), rust-example-code/relay_example.rs (source | mirror), rust-example-code/reliable_example.rs (source | mirror), rust-example-code/queue_timeout_example.rs (source | mirror), rust-example-code/multinode_sim_example.rs (source | mirror), c-example-code/src/timesync_example.c (source | mirror), python-example/timesync_example.py (source | mirror), rtos-example-code/freertos_timesync.c (source | mirror), rtos-example-code/threadx_timesync.c (source | mirror).
- C system test and examples demonstrate Time Sync announce/request/response flows.
- Python example handles Time Sync without re-entering the router from handlers.
- CRC support for packets to ensure validity; in reliable mode, CRC failures trigger retransmits.
- Fixes to the config editor GUI.
- Full changelog: v3.0.0...v3.1.0
- 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. - Full changelog: v2.4.0...v3.0.0
- Moved config to environment + JSON schema used at compile time.
- Added a simple GUI tool for building the config.
- Full changelog: v2.3.2...v2.4.0
- Added a new unsafe API for creating link IDs.
- Fixed existing bugs.
- Full changelog: v2.3.1...v2.3.2
- Simplified config format is now live and in production.
- Full changelog: v2.2.3...v2.3.0
- Build script fixes and more repo details.
- Final fix for bounded ring buffers used in routers and relays.
- Full changelog: v2.2.1...v2.2.3
- Link-aware router for relay mode, reducing reliance on dedupe to prevent loops.
- Full changelog: v2.2.0...v2.2.1
- Improved relay handling with side-aware routing and transmit callbacks.
- Added a new full system test.
- Full changelog: v2.0.0...v2.1.0
- Added
RouterMode(Relay vs Sink) behavior. - Fixed a bug where packet hashes were not saved, causing double processing.
- Full changelog: v1.5.2...v2.0.0
- Added max queue size controls plus ring buffer behavior to prevent unbounded growth and heap overruns.
- Full changelog: v1.5.1...v1.5.2
- Reduced memory usage for stack-stored packet payloads and overall memory footprint.
- Full changelog: v1.5.0...v1.5.1
- Added payload and sender string compression with configurable thresholds and compression level.
- Full changelog: v1.4.0...v1.5.0
- Added packet dedupe prevention.
- Improved README and added scripts for submodule usage and compile-time sender string setting.
- Full changelog: v1.2.0...v1.4.0
- Added relay support for transporting packets across protocols (e.g., CAN to UART).
- Full changelog: v1.1.1...v1.2.0
- Fixed broadcast behavior when all consumers have handlers or endpoints.
- Added support for packets containing no data.
- Full changelog: v1.1.0...v1.1.1
- Renamed hex data type to binary data.
- Fixed C API handling for 128-bit integers.
- Improved build script and update subtree script.
- Updated documentation.
- Performance optimizations and documentation improvements.
- Added error logging in no_std builds (requires external function hook).
- First stable release with routing, serialization, and packet creation across C, Rust, and Python.
- Marked API as stable.