Skip to content

Monitor Troubleshooting

Istvan Toth edited this page Mar 12, 2023 · 10 revisions

We often get issues like: "MonitorControl doesn't work with my monitor",
so here are some troubleshooting steps and general information to try and help you.

General Information

  • MonitorControl doesn't work with every monitor, it all depends on how well your display/cable manufacturer implements the DDC/CI spec.
  • Some displays will only support certain features well (for example, they work well with brightness but not volume).
  • It also depends a lot on your hardware combination.

Troubleshooting

I can't control volume/brightness

Check if your monitor OSD has a setting for DDC

Some monitors have a ddc settings that can be enabled/disabled, make sure you check if your specific monitor has this setting and if it does, you should ensure DDC is enabled.

Known incompatibilities

MonitorControl does not support the following ports for DDC communication:

  • 2018 Intel Mac mini built-in HDMI port
  • M1 and entry level M2 Mac mini built-in HDMI port
  • Mac Studio HDMI port
  • M1 MacBook Pro 14" and 16" HDMI port
  • M2 Pro/Max Macs (MBP 14", 16", Mac mini) are NOT supported at all (neither USB-C nor HDMI)

All of these are supported by newer apps:

  • BetterDisplay (all DDC features are free and unlimited)
  • Lunar (free up to 100 adjustments/day - Mac Mini 2018 HDMI unsupported).

Try a different ddc tool

You can try a different ddc tool called ddcctl for Intel Macs.

For Apple Silicon macs you can try alternative tools like BetterDisplay or the command line tool m1ddc.

This can help us isolate issues with MonitorControl vs other tools.

If your setup works with ddcctl or m1ddc it should also work with MonitorControl.

After installing ddcctl, try something like:

./ddcctl -d 1 -v 30

or for m1ddc:

./m1ddc set volume 30

(tries to set the volume of display 1 to value 30) or

./ddcctl -d 1 -b 30

or for m1ddc:

./m1ddc set brightness 30

(tries to set the brightness of display 1 to value 30)

If these commands change your brightness or volume, you know that your display supports ddc (or at least the command that worked).

Try a different cable

Generally, people seem to have the highest success rates with DisplayPort and the lowest with HDMI.

I can't get accurate read values from the monitor

If the monitor is unable to read values from the display, it will default to the last known values.

To try and fix this, you can try checking the Longer Delay option in Advanced Preferences under Displays (requires enabling advanced preferences).
See the Advanced Preferences wiki page for more information.

The app is slow on startup

This is usually because we poll the display to try and read its current volume/brightness on app launch.

You can lower or disable the Polling Mode in Advanced Preferences under Displays (requires enabling advanced preferences).
See the Advanced Preferences wiki page for more information.

I get screen flickering when launching MonitorControl

This can be caused due to trying to poll (read) values from your display multiple times. Try setting Polling Mode to none in Advanced Preferences under Displays (requires enabling advanced preferences).