Expand description
BACnet protocol encoding and decoding in pure Rust.
rustbac-core provides zero-copy, no_std-compatible encoding and decoding
of BACnet APDUs, NPDUs, and service payloads. It forms the foundation of the
rustbac crate family and can be used standalone in embedded or constrained
environments.
§Feature flags
std(default) — enablesstd::error::Errorimplementations.alloc(default) — enables service decoders that allocate (e.g. RPM, COV).serde— derivesSerialize/Deserializeon core types.defmt— derivesdefmt::Formatfor embedded logging.
Re-exports§
pub use error::DecodeError;pub use error::EncodeError;
Modules§
- apdu
- APDU (Application Protocol Data Unit) types for confirmed/unconfirmed requests and responses.
- encoding
- Binary encoding primitives, tag system, and zero-copy reader/writer.
- error
- Error types for encoding and decoding operations.
- npdu
- NPDU (Network Protocol Data Unit) encoding and decoding.
- services
- BACnet service request and response codecs.
- types
- Core BACnet data types: object identifiers, property identifiers, and data values.