freemdu

Crates.iofreemdu
lib.rsfreemdu
version0.1.0
created_at2025-11-15 18:12:09.925612+00
updated_at2025-11-15 18:12:09.925612+00
descriptionCommunicate with Miele appliances via their proprietary diagnostic interface.
homepage
repositoryhttps://github.com/medusalix/FreeMDU
max_upload_size
id1934634
size177,712
Severin von Wnuck-Lipinski (medusalix)

documentation

README

FreeMDU Protocol crates.io version docs.rs crates.io MSRV

The FreeMDU protocol crate implements the proprietary Miele diagnostic protocol. It offers an asynchronous, platform-agnostic API for communicating with Miele appliances via the diagnostic interface.

More details about the interface and the FreeMDU project can be found here.

Compatibility

This crate can be used in no_std environments and embedded projects, but an allocator is required due to the use of Box.

Optional features

When adding this crate as a dependency, the following optional features can be specified (all disabled by default):

  • native-serial: enables a serial port implementation based on the serial2-tokio crate (requires std)

Examples

Several examples are provided to demonstrate the crate's functionality:

  • find_keys: finds the diagnostic keys of a device using a brute-force search
  • dump_memory: reads RAM and ROM data from a supported device and writes them to a file
  • dump_eeprom: reads the EEPROM contents from a supported device and writes them to a file

An example can be executed with the following command, replacing <EXAMPLE> with the desired example name:

cargo run --all-features --example <EXAMPLE>
Commit count: 0

cargo fmt