Monitor Brightness Control vs Monitor Switch
Monitor Brightness Control
github.comMonitor Switch
github.comSide by side
| Figure | Monitor Brightness Control | Monitor Switch |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Monitor Control Software | 7.5 (#14) | 8.0 (#6) |
| Controls | The GUI provides real-time brightness and contrast sliders, Day/Night/Gaming presets, and monitor refresh. | It can control input source, brightness, contrast, volume, mute, picture mode, colour temperature, RGB gain and black level when the monitor exposes them. |
| License | The project is licensed under the MIT License. | The repository identifies the project as MIT licensed. |
| Profiles | It includes Day, Night, and Gaming profiles, supports custom profiles, and can apply a profile at startup. | Editable profiles define monitor values, and can override auto-detection when a monitor reports incorrect capabilities. |
| Purpose | Controls brightness and contrast of external monitors through DDC/CI on Linux. | Monitor Switch changes a monitor’s input source using DDC/CI, controlled through HTTP, a web UI, or Home Assistant. |
Plans
In their own words
Monitor Brightness Control
Monitor Brightness Control is a free Linux tool for adjusting brightness and contrast on external monitors through DDC/CI. It provides a command-line interface, a graphical interface with real-time sliders and a background service. Day, Night and Gaming profiles are included; custom profiles and applying a profile at startup are also supported. Customizable global shortcuts can switch profiles or adjust brightness. The tool detects compatible monitors and supports individual control or batch operations across connected displays. It requires a DDC/CI-compatible monitor and I2C communication, with ddcutil listed as a system dependency. DisplayPort and modern HDMI are fully supported, DVI-D is limited, and VGA is unsupported. The README documents installation via shell script, pip or source checkout, as well as granting I2C group access and loading the i2c-dev module. It can run as a user systemd service and is licensed under MIT. The README lists tested distributions including Ubuntu 20.04+, Linux Mint 20+, Debian 11+, Fedora 35+, Arch Linux/Manjaro and openSUSE. GitHub is the channel for bug reports, feature requests and contributions.
Monitor Switch
Monitor Switch is an MIT-licensed service for switching a monitor’s input and controlling its DDC/CI features through a browser interface, HTTP API, scripts, or Home Assistant. It is designed for people who use one monitor with multiple computers, including when the computer currently displayed is asleep or off. Where a monitor exposes the controls, the service can adjust brightness, contrast, volume, mute, picture mode, colour temperature, RGB gain, and black level. It can also read usage hours, firmware level, refresh rates, and power state. Editable profiles set monitor values and can replace incorrect capability detection. For Home Assistant, MQTT discovery presents profile features as entities such as selectors, sliders, and sensors. The service runs on a Raspberry Pi connected to the monitor by HDMI; setup requires Raspberry Pi OS and SSH, and installation uses an Ansible playbook. The project is described as usable but not yet released. Hardware verification is reported only for a Samsung Odyssey G9 with a Raspberry Pi Zero 2 W; other monitors have not been verified.