#serial-communication #communication-channel #byte #overhead #consistent #stuffing

no-std postcard-cobs

This is an implementation of the Consistent Overhead Byte Stuffing (COBS) algorithm. COBS is an algorithm for transforming a message into an encoding where a specific value (the "sentinel" value) is not used. This value can then be used to mark frame boundaries in a serial communication channel.

2 unstable releases

0.2.0 Aug 5, 2021
0.1.5-pre Apr 11, 2019

#481 in Algorithms

Download history 7347/week @ 2024-07-22 7860/week @ 2024-07-29 7522/week @ 2024-08-05 8174/week @ 2024-08-12 8824/week @ 2024-08-19 8445/week @ 2024-08-26 7493/week @ 2024-09-02 8870/week @ 2024-09-09 10584/week @ 2024-09-16 10154/week @ 2024-09-23 11303/week @ 2024-09-30 9662/week @ 2024-10-07 8741/week @ 2024-10-14 11557/week @ 2024-10-21 9419/week @ 2024-10-28 13429/week @ 2024-11-04

43,302 downloads per month
Used in 64 crates (3 directly)

MIT/Apache

23KB
287 lines

postcard-cobs

⚠️ - WARNING

This crate is a fork of the cobs.rs crate, originally intended to be a temporary solution for the postcard crate. Since then, @jamesmunns has been granted ownership of the cobs.rs crate, and intends to upstream the local changes in this crate.

At that time, this crate will be marked deprecated with a point release, but will NOT be yanked.

This is an implementation of the Consistent Overhead Byte Stuffing (COBS) algorithm in Rust.

COBS is an algorithm for transforming a message into an encoding where a specific value (the "sentinel" value) is not used. This value can then be used to mark frame boundaries in a serial communication channel.

See www.wikipedia.org/wiki/Consistent_Overhead_Byte_Stuffing for details.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

No runtime deps