Add brightness/contrast sliders, input source switching, and 9-language localization
- Add VCP commands for brightness (10), contrast (12), input source (60) - Fix UTF-16 encoding for monitor data parsing - Add system tray app with monitor controls - Add localization for en, es, fr, de, zh, ja, pt, it, hi - Update to .NET 9.0 - Add LICENSE and README 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
74
README.md
Normal file
74
README.md
Normal file
@@ -0,0 +1,74 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user