uRPC

uRPC (pronounced micro RPC) is a simple and lightweight RPC framework designed with embedded systems in mind. The server side works in a heapless environment with no_std and is supposed to use very low resources. The current client side implementation requires std.

crates.io crates.io Released API docs

Features

Notes

The current client implementation requires the paste crate. Add this to your Cargo.toml: [dependencies] paste = "0.1.7"

Packet format

Request Header

length | desc -------|----- 8b | method index 8b | channel id 8b | options 16b | body length (little endian) 16b | optional buffer length (little endian)

Reply Header

length | desc -------|----- 8b | channel id 8b | options 16b | body length (little endian) 16b | optional buffer length (little endian)

Examples

See examples/requests.rs

License

The code is released under the 3-clause BSD License.