FreeMDU
FreeMDU is a comprehensive open-source hardware and software toolkit designed to bridge the gap between proprietary appliance hardware and the right to repair. It provides utilities for communicating with Miele appliances via their optical diagnostic interface. By serving as a free, open-source alternative to the proprietary Miele Diagnostic Utility (MDU)—software historically restricted to registered service technicians—FreeMDU empowers owners to diagnose, repair, and automate their own devices.
The Optical Diagnostic Interface
Most Miele devices manufactured after 1996 feature a localized optical infrared-based diagnostic interface. On modern machines, this interface is cleverly hidden behind one of the indicator LEDs on the front control panel (often the Check inlet or Salt indicator). On older appliances, this interface is typically marked by a dedicated Program Correction (PC) label.
Historically, establishing communication with this interface required purchasing an expensive, proprietary infrared serial adapter sold exclusively by the manufacturer, coupled with closed-source Windows-only software. The core mission of FreeMDU is to democratize this access, making the optical interface securely accessible to everyone for advanced diagnostics, troubleshooting, and modern home automation integration.
Caution: This project is highly experimental and interacts directly with low-level appliance hardware. Sending arbitrary or malformed commands can cause permanent, irreversible damage to your Miele devices (e.g., overwriting calibration data or triggering heating elements without water). Please proceed responsibly and entirely at your own risk.
When to Use FreeMDU
FreeMDU is built for a variety of use cases, ranging from quick home repairs to advanced smart home integrations:
- Right to Repair: Read active and historical fault codes to determine exactly which component (e.g., NTC thermistor, drain pump, pressure sensor) has failed.
- Home Automation: Expose real-time appliance data (current program phase, remaining time, water temperature) to Home Assistant via MQTT.
- Security & Research: Reverse-engineer legacy microcontrollers, dump EEPROM contents, and analyze proprietary protocols.
Project Components
The FreeMDU ecosystem is modular, allowing you to use only the pieces you need. It is split into three primary components:
- Protocol Library: The foundational Rust crate (
freemdu). It implements the complete device handshake, memory mapping, and protocol serialization. Use this to build your own custom applications. - Terminal UI (TUI): A robust, cross-platform terminal application for desktop diagnostics. It allows you to view sensor data in real-time, read fault logs, and trigger manual hardware actions.
- Home Firmware: Custom firmware designed for ESP32 microcontrollers. It powers the physical optical adapter, offering both a transparent USB-serial bridge for the TUI and a standalone MQTT client for Home Assistant.
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, logos, and trademarks are the property of their respective owners. References to Miele appliances are strictly for descriptive, educational, and interoperability purposes, and do not imply any association with or endorsement by the manufacturer.