controlmymonitormanagement/README.md
Dave Friedel f23f26d809 Clean up and polish release
- Nice popup UI with proper positioning
- Professional README with badges
- Remove debug logging
- Add .claude/ to .gitignore

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-03 22:30:42 -05:00

83 lines
3.0 KiB
Markdown

# Monitor Control Manager
A lightweight Windows utility for controlling monitor settings via DDC/CI. Adjust brightness, contrast, input source, and power settings directly from your system tray.
![.NET 9.0](https://img.shields.io/badge/.NET-9.0-blue)
![Platform](https://img.shields.io/badge/Platform-Windows-lightgrey)
![License](https://img.shields.io/badge/License-MIT-green)
## Features
- **System Tray Integration** - Clean popup interface accessible from taskbar
- **Multi-Monitor Support** - Control all DDC/CI compatible displays
- **Brightness & Contrast** - Slider controls with real-time feedback
- **Input Source Switching** - Auto-detects available inputs (HDMI, DisplayPort, DVI, VGA)
- **Power Management** - On, Sleep, and Off controls
- **Multi-Language** - Auto-detects system language (English, Spanish, French, German, Chinese, Japanese, Portuguese, Italian, Hindi)
## Requirements
- Windows 10/11
- .NET 9.0 Runtime
- DDC/CI compatible monitor(s)
> **Note:** Most external monitors support DDC/CI, but some laptop internal displays and certain monitors may not support this protocol.
## Installation
### From Release
Download the latest release and run the executable. The app will appear in your system tray.
### Build from Source
```powershell
git clone https://git.marketally.com/misc/ControlMyMonitorManagement.git
cd ControlMyMonitorManagement
dotnet build
dotnet run --project DellMonitorControl
```
## Usage
1. Launch the application - it minimizes to system tray
2. Click the tray icon to open the control panel
3. Adjust brightness/contrast with sliders
4. Select input source from dropdown (if multiple available)
5. Toggle power state with the power button
6. Click outside the popup to close
## Project Structure
| Project | Description |
|---------|-------------|
| `DellMonitorControl` | System tray application with popup UI |
| `ControlMyMonitorManagement` | Full WPF application (alternative) |
| `Library` | Core DDC/CI operations via ControlMyMonitor.exe |
| `Language` | Localization resources (9 languages) |
| `CMMModel` | Data models |
| `Tester` | Unit tests |
## Technical Details
### DDC/CI Protocol
The application uses DDC/CI (Display Data Channel/Command Interface) to communicate with monitors through the display cable. This allows software control of settings normally accessed via physical monitor buttons.
### VCP Codes Used
| Code | Function | Values |
|------|----------|--------|
| `10` | Brightness | 0-100 |
| `12` | Contrast | 0-100 |
| `60` | Input Source | 1=VGA, 15=DP, 17=HDMI |
| `D6` | Power Mode | 1=On, 4=Sleep, 5=Off |
## Credits
- **Original Project**: [rictirse](https://github.com/rictirse) - ControlMyMonitorManagement base
- **DDC/CI Engine**: [Nir Sofer](https://www.nirsoft.net/utils/control_my_monitor.html) - ControlMyMonitor (freeware)
- **Enhancements**: David H Friedel Jr - UI improvements, input switching, localization
## License
MIT License - See [LICENSE](LICENSE) for details.
Note: ControlMyMonitor.exe is freeware by Nir Sofer (free distribution, no modification).