Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/medusalix/freemdu
Embedded Systems SecurityIoT SecurityReverse EngineeringHardware HackingHardware SecurityFirmware Analysis
GitHubmedusalix/freemdu

FreeMDU

Open hardware and software tools for communicating with Miele appliances via their optical diagnostic interface

View Repository
1.1k4744 months agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

FreeMDU Build Status

Demo

The FreeMDU project provides open hardware and software tools for communicating with Miele appliances via their optical diagnostic interface. It serves as a free and open alternative to the proprietary Miele Diagnostic Utility (MDU) software, which is only available to registered service technicians.

Most Miele devices manufactured after 1996 include an optical infrared-based diagnostic interface, hidden behind one of the indicator lights on the front panel. On older appliances, this interface is marked by a Program Correction (PC) label.

Until now, communication with this interface required an expensive infrared adapter sold exclusively by Miele, along with their closed-source software. The goal of FreeMDU is to make this interface accessible to everyone for diagnostic and home automation purposes.

The project is split into three main components:

  • Protocol: core protocol library and device implementations
  • TUI: terminal-based device diagnostic and testing tool
  • Home: communication adapter firmware with MQTT integration for Home Assistant

More details about the proprietary diagnostic interface and the reverse-engineering process behind this project can be found in this blog post.

[!CAUTION] This project is highly experimental and can cause permanent damage to your Miele devices if not used responsibly. Proceed at your own risk.

Supported devices

When a connection is established via the diagnostic interface, the appliance responds with its software ID, a 16-bit number that uniquely identifies the firmware version running on the device's microcontroller. However, this ID does not directly correspond to a specific model or board type, so it's impossible to provide a comprehensive list of supported models.

The following table lists the software IDs and device/board combinations that have been confirmed to work with FreeMDU:

If your appliance is not listed here but has a model number similar to one of the above, it might already be compatible. In all other cases, determining the software ID is the first step toward adding support for new devices.

Details for adding support for new devices will be provided soon.

Getting started

Before using any FreeMDU components, make sure you have the Rust toolchain installed on your system.

Next, you'll need to build a communication adapter to interface with your Miele device. Once the adapter is ready, choose the appropriate use case from the options below:

Device diagnostics and testing

If you want to repair or test your appliance:

  1. Flash the home firmware in bridge mode onto your communication adapter and attach it to your device.

  2. Run the TUI application on your desktop computer.

Integration into home automation systems

If you want to integrate your appliance into Home Assistant or another home automation system:

  1. Flash the home firmware in standalone mode onto your communication adapter and attach it to your device.

Building custom tools

If you want to develop your own software to communicate with Miele devices:

  1. Flash the home firmware in bridge mode onto your communication adapter and attach it to your device.

  2. Use the protocol crate to implement your custom software.

Disclaimer

This is an independent, open-source project and is not affiliated with, endorsed by, or sponsored by Miele & Cie. KG or its affiliates. All product names and trademarks are the property of their respective owners. References to Miele appliances are for descriptive purposes only and do not imply any association with Miele.

License

Licensed under either of

  • Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
  • MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)

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.

Download Tool
Software IDDeviceBoardMicrocontrollerOptical interface locationStatus
218W 985EDPW 213Mitsubishi M37451MCCheck inlet (PC) indicator🟢 Fully supported
324W 980EDPW 213Mitsubishi M37451MCCheck inlet (PC) indicator🟢 Fully supported
360Bare boardEDPW 223-AMitsubishi M38078MC-065FPCheck inlet (PC) indicator🟢 Fully supported
419Bare boardEDPW 206Mitsubishi M37451MC-804FPCheck inlet (PC) indicator🟢 Fully supported
469W 487 SEDPW 228-AMitsubishi M38078MFCheck inlet (PC) indicator🟢 Fully supported
517G 7804EGPL 061Mitsubishi M38079EFFP(PC) DOS indicator🟢 Fully supported
605G 651 I PLUS-3EGPL 542-CMitsubishi M38027M8Salt (PC) indicator🟢 Fully supported
629W 2446EDPL 126-BMitsubishi M38079MF-308FPCheck inlet (PC) indicator🟢 Fully supported
2088W 3241EDPL 162-BMitsubishi M38079EFFPCheck inlet (PC) indicator🟢 Fully supported
2895W 3164EDPL 151-BMitsubishi M38079MF-322FPCheck inlet (PC) indicator🟢 Fully supported