diff --git a/docs/v2/Advanced Preferences.md b/docs/v2/Advanced Preferences.md new file mode 100644 index 0000000..ef0393a --- /dev/null +++ b/docs/v2/Advanced Preferences.md @@ -0,0 +1,37 @@ +To enable Advanced Preferences for monitors, toggle the "Show advanced settings under Displays" checkbox in the General Preferences and go to the Displays tab, where you'll now see advanced preferences for each display. + +Inside the advanced preferences you can experiment and modify some more advanced settings. +Not all monitors are the same and some are better at implementing the [DDC/CI spec](https://en.wikipedia.org/wiki/Display_Data_Channel) than others. + +## Polling Mode + +Sets the amount of times MonitorControl will try polling the display. +Polling the display essentially means that it tries to read information from the display. +This can sometimes be unreliable and thus MonitorControl will try reading these values multiple times to increase success rates. +Polling is used for reading current display volume and brightness values, which happens on app launch or when +coming out of sleep mode. +Because we try to read the values multiple times (for example, 10 tries for volume and 10 tries for brightness on `Normal` mode), it can cause some slowdown on your system. The different polling modes indicate a different amount of times we try to poll the display for information. + +### Polling Modes: + +- None: 0 tries +- Minimal: 5 tries +- Normal: 10 tries (default) +- High: 100 tries +- Custom: X tries (selecting this will allow you to set the polling count yourself in the `Polling Count` text field.) + +In case the display is still unable to read the values through DDC (or you selected `None`), the last known values will be used instead. + +**If you experience significant system slowdown when coming out of sleep mode or at startup, try lowering or disabling the Polling Mode setting.** + +## Longer Delay + +Some displays will require a longer `minReplyDelay` (referred to as `Longer Delay` in settings) to be able to read display information more reliably. This depends on a combination of different factors like Cable, Monitor, GPU. + +If it takes a long time to read your volume and brightness settings, you can try enabling the `Longer Delay` settings to improve reliability. However, please be aware that this setting will not work for every system and **may cause your system to freeze after enabling it. Please use this at your own risk.** +As a safety measure, automatic app startup will be disabled. + +## Hide OSD + +Tries to hide your display's native OSD (On-Screen Display) when changing volume or brightness. +This setting also depends on your monitor, so it may not work properly on every monitor. diff --git a/docs/v2/Monitor Troubleshooting.md b/docs/v2/Monitor Troubleshooting.md new file mode 100644 index 0000000..220e643 --- /dev/null +++ b/docs/v2/Monitor Troubleshooting.md @@ -0,0 +1,82 @@ +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](https://en.wikipedia.org/wiki/Display_Data_Channel). +- 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](https://github.com/the0neyouseek/MonitorControl/issues/82). + +# 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. + +### Try a different ddc tool + +You can try a different ddc tool called [ddcctl](https://github.com/kfix/ddcctl) for Intel Macs. + +For Apple Silicon macs you can try [m1ddc](https://github.com/waydabber/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: + +```sh +./ddcctl -d 1 -v 30 +``` + +or for m1ddc: + +```sh +./m1ddc set volume 30 +``` + +(tries to set the volume of display 1 to value 30) +or + +```sh +./ddcctl -d 1 -b 30 +``` + +or for m1ddc: + +```sh +./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. + +### Known incompatibilities + +Mac Minis made after 2018 (including the M1 Mini) have trouble supporting DDC via the built-in HDMI port. Use the USB-C/Thunderbolt port instead! + +## 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](https://github.com/the0neyouseek/MonitorControl/wiki/Advanced-Preferences#longer-delay) 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](https://github.com/the0neyouseek/MonitorControl/wiki/Advanced-Preferences#polling-mode) 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).