# ControlMyMonitorManagement A Windows desktop application for controlling monitor settings via DDC/CI (Display Data Channel/Command Interface). Adjust brightness, contrast, power state, and other display parameters across multiple monitors. ## Features - **Multi-Monitor Support** - Detect and control multiple connected displays - **Brightness & Contrast Sliders** - Easy adjustment with real-time feedback - **Input Source Switching** - Switch between VGA, DVI, HDMI, DisplayPort (auto-detected from monitor) - **Power Management** - Turn monitors on, off, or into sleep mode - **System Tray Integration** - DellMonitorControl app with taskbar tray popup - **9 Languages** - Auto-detects system language (en, es, fr, de, zh, ja, pt, it, hi) ## Requirements - Windows OS - .NET 7.0 SDK - DDC/CI compatible monitor(s) ## Build ```bash # Clone the repository git clone https://github.com/yourusername/ControlMyMonitorManagement.git cd ControlMyMonitorManagement # Build the solution dotnet build ControlMyMonitorManagement.sln # Run the main application dotnet run --project ControlMyMonitorManagement/ControlMyMonitorManagement.csproj # Run the Dell-specific application (with system tray) dotnet run --project DellMonitorControl/DellMonitorControl.csproj ``` ## Project Structure | Project | Description | |---------|-------------| | **ControlMyMonitorManagement** | Main WPF application with full UI | | **DellMonitorControl** | Lightweight app with system tray integration | | **Library** | Core business logic and DDC/CI operations | | **CMMModel** | Data models for monitor status | | **CMMService** | Service layer interfaces | | **Language** | Localization support | | **Tester** | NUnit test project | ## Common VCP Codes | Code | Name | Values | |------|------|--------| | D6 | Power Mode | 1=On, 4=Sleep, 5=Off | | 10 | Brightness | 0-100 | | 12 | Contrast | 0-100 | | 60 | Input Source | 1=VGA, 3=DVI, 15=DisplayPort, 17=HDMI | ## How It Works This application uses DDC/CI protocol to communicate with monitors through the display cable (HDMI, DisplayPort, DVI, VGA). DDC/CI allows software to send commands directly to the monitor's firmware to adjust settings that would normally require using the monitor's physical buttons. ## Credits - **Original Project**: [DangWang](https://github.com/poyingHAHA) - ControlMyMonitorManagement - **DDC/CI Tool**: [Nir Sofer](https://www.nirsoft.net) - ControlMyMonitor.exe (freeware) - **Enhancements by David H Friedel Jr**: Brightness/contrast sliders, input source switching, 9-language localization ## License This project contains multiple components with different terms: - **Original code by DangWang**: No explicit license provided - **ControlMyMonitor.exe**: Freeware by Nir Sofer - free distribution allowed, no commercial use, no modification - **New contributions (sliders, localization, etc.)**: MIT License