meterbus-wired-datalink 0.0.1

Wired M-Bus datalink primitives and codecs
Documentation
  • Coverage
  • 100%
    133 out of 133 items documented3 out of 21 items with examples
  • Size
  • Source code size: 167.96 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.77 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 4s Average build duration of successful builds.
  • all releases: 4s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • nhedger/meterbus
    0 0 1
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • nhedger

Meterbus Wired Data-Link

Crates.io License no_std no alloc MSRV: 1.85

Wired M-Bus data-link frames and codecs for Rust.

This crate provides typed, validated frame construction plus exact and streaming decoders for the wired M-Bus link layer defined by EN 13757-2:2018+A1:2023. The default build is no_std and allocation-free. It is designed for masters, meters, bridges, embedded devices, and diagnostic tools.

  • Typed ACK, NACK, short, control, and long frames
  • no_std, allocation-free codecs with optional alloc
  • Exact and incremental stream decoding
  • Strict decoding or noise-resynchronizing recovery
  • Typed fields and detailed validation errors

Official bindings are available for Node.js, Python, and browser WebAssembly:

Node.js 24+ Python 3.10+ WASM browser

Installation

Add the crate without any features for a no_std, allocation-free build:

[dependencies]
meterbus-wired-datalink = "0.0.1"

To use convenience methods that return vectors, enable the optional alloc feature:

[dependencies]
meterbus-wired-datalink = { version = "0.0.1", features = ["alloc"] }

License

Copyright © 2026 Nicolas HEDGER.

Licensed under either of:

at your option.

Reference material

Development is guided by the following standards:

The current implementation follows the link-layer frame formats, communication types, addressing rules, and sequencing fields from EN 13757-2:2018+A1:2023. That standard uses the FT1.2 frame format defined by the EN 60870-5 series.

Document Title
EN 13757-1:2021 Data exchange
EN 13757-2:2018+A1:2023 Wired M-Bus communication
EN 13757-3:2025 Application protocols
EN 60870-5-1 Transmission frame formats
EN 60870-5-2 Link transmission procedures