{"id":43718,"date":"2023-02-22T15:27:37","date_gmt":"2023-02-22T15:27:37","guid":{"rendered":"https:\/\/ubuntuhandbook.org\/?p=43718"},"modified":"2025-01-11T11:41:00","modified_gmt":"2025-01-11T11:41:00","slug":"brightness-external-monitor-ubuntu","status":"publish","type":"post","link":"https:\/\/ubuntuhandbook.org\/index.php\/2023\/02\/brightness-external-monitor-ubuntu\/","title":{"rendered":"Control Screen Brightness for External Monitor in Ubuntu (GUI &#038; CLI)"},"content":{"rendered":"<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-thumbnail wp-image-43719\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon-250x250.webp\" alt=\"\" width=\"250\" height=\"250\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon-250x250.webp 250w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon-300x300.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon-600x600.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon-768x768.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/monitor-icon.webp 1200w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/a><\/p>\n<p><b>Want to control screen brightness, color preset, contrast etc for your external monitor connected in Desktop PC or laptop? Here&#8217;s how to do the trick in both graphical and command line ways in Ubuntu &amp; other Linux!<\/b><\/p>\n<p>I know there are physical buttons to do the job. But for lazy men and\/or software developers, few mouse clicks and\/or a single command can be more effective. And ddcutil is the tool for Linux users.<\/p>\n<p><a href=\"https:\/\/github.com\/rockowitz\/ddcutil\" target=\"_blank\" rel=\"noopener\">ddcutil<\/a> is a free and open-source tool that uses DDC\/CI protocol to control settings for most external monitors. It also support some monitors (e.g. Eizo ColorEdge, Apple Cinema) through USB.<\/p>\n<p><u>NOTE: Most modern monitors support DDC\/CI protocol, but it may NOT enabled by default. Check the menu via the physical buttons.<\/u><\/p>\n<h3>Step 1: Install ddcutil &amp; ddcui<\/h3>\n<p>The ddcutil package is available in most Linux&#8217;s system repositories, including Ubuntu, Arch Linux, Fedora, Debian. <b>User can directly search for and install it from system App Store (Software App, Package Manager)<\/b><\/p>\n<p>The package in Ubuntu repository is however always old. For the most recent version, there&#8217;s an <a href=\"https:\/\/launchpad.net\/~rockowitz\/+archive\/ubuntu\/ddcutil\" target=\"_blank\" rel=\"noopener\">official PPA<\/a> maintained by the software developer, so far with support for Ubuntu 20.04, Ubuntu 22.04, and Ubuntu 24.04.<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li>First, press <b>Ctrl+Alt+T<\/b> on keyboard to open a terminal window. When it opens, run command to add the PPA:\n<pre>sudo add-apt-repository ppa:rockowitz\/ddcutil<\/pre>\n<p><i>Type user password (no asterisk feedback) when it asks and hit Enter to continue.<\/i><br \/>\n<a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-ppa.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43720\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-ppa-600x407.webp\" alt=\"\" width=\"600\" height=\"407\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-ppa-600x407.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-ppa-300x203.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-ppa-768x521.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-ppa.webp 786w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/li>\n<li>After adding PPA, update system package index via command:\n<pre>sudo apt update<\/pre>\n<\/li>\n<li>Finally, install the command line utility and graphical interface by running command:\n<pre>sudo apt install ddcui ddcutil<\/pre>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/apt-ddcui.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43721\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/apt-ddcui-600x402.webp\" alt=\"\" width=\"600\" height=\"402\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/apt-ddcui-600x402.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/apt-ddcui-300x201.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/apt-ddcui.webp 768w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<h3>Step 2: Control brightness &amp; other monitor settings via Graphical tool<\/h3>\n<p>After installation, search for and open &#8220;ddcui&#8221; from Activities overview or start menu depends on your desktop environment.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/open-ddcui.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-43722\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/open-ddcui.webp\" alt=\"\" width=\"546\" height=\"266\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/open-ddcui.webp 546w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/open-ddcui-300x146.webp 300w\" sizes=\"auto, (max-width: 546px) 100vw, 546px\" \/><\/a><\/p>\n<p><b>NOTE: for &#8220;error access: permission denied&#8221; issue, either start the app via <code>sudo ddcui<\/code> command, or run command to add current user to i2c group (need system restart):<\/b><\/p>\n<pre>sudo gpasswd --add $USER i2c<\/pre>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/add-i2cgroup.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43723\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/add-i2cgroup-600x161.webp\" alt=\"\" width=\"600\" height=\"161\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/add-i2cgroup-600x161.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/add-i2cgroup-300x80.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/add-i2cgroup-768x205.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/add-i2cgroup.webp 770w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>When the app starts, choose your monitor (if more than one available) from the drop-down box.<br \/>\n<a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-start.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43724\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-start-600x328.webp\" alt=\"\" width=\"600\" height=\"328\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-start-600x328.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-start-300x164.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-start-768x420.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-start.webp 972w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>Then go to menu <b>View -&gt; Features<\/b>. There you&#8217;ll see the options to control <b>screen brightness<\/b>, <b>color preset<\/b>, <b>contrast<\/b>, RGB colors, clock, restore factory, etc settings!<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43725\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-600x450.webp\" alt=\"\" width=\"600\" height=\"450\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-600x450.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-300x225.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control-768x576.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-control.webp 972w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<h3>Step 3: Control Monitor Settings from Command line<\/h3>\n<p>For those who are familiar with Linux commands, things can be done via following steps. <i><b>NOTE: <code>sudo<\/code> is NOT required after adding user into i2c group and reboot.<\/b><\/i><\/p>\n<p>1. First, open a terminal window and run command to report all connected monitors:<\/p>\n<pre>sudo ddcutil detect<\/pre>\n<p>In my case, I have built-in laptop display and external &#8220;Display 1&#8221;.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-detect.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43726\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-detect-600x415.webp\" alt=\"\" width=\"600\" height=\"415\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-detect-600x415.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-detect-300x208.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-detect-768x532.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddc-detect.webp 822w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>2. Then query the monitor&#8217;s capabilities string, for display 1 (-d 1) in my case:<\/p>\n<pre>sudo ddcutil -d 1 capabilities<\/pre>\n<p>In the screenshot, I added <code>grep<\/code> option to filter the &#8216;Brightness&#8217; and the output code <b>10<\/b> is what I need.<\/p>\n<p>3. Get the current value of feature code 10 (&#8220;brightness&#8221; in the case) for display 1:<\/p>\n<pre>sudo ddcutil -d 1 getvcp 10<\/pre>\n<p>3. Set the brightness level (code 10) to 60 for example:<\/p>\n<pre>sudo ddcutil -d 1 setvcp 10 60<\/pre>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-commandline.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-43727\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-commandline-600x393.webp\" alt=\"\" width=\"600\" height=\"393\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-commandline-600x393.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-commandline-300x196.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/02\/ddcutil-commandline.webp 732w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>Besides settings brightness to custom level, you may also increase or decrease brightness via &#8216;+&#8217;, &#8216;-&#8216; options. For example, increase brightness (code 10) with level 5 up.<\/p>\n<pre>ddcutil -d 1 setvcp 10 + 5<\/pre>\n<p>Or decrease brightness with level 5 down:<\/p>\n<pre>ddcutil -d 1 setvcp 10 - 5<\/pre>\n<p>This can be useful for binding to keyboard shortcut for controlling your monitor brightness. For more options, read the man page by running <code>man ddcutil<\/code> command in terminal.<\/p>","protected":false},"excerpt":{"rendered":"<p>Want to control screen brightness, color preset, contrast etc for your external monitor connected in Desktop PC or laptop? Here&#8217;s how to do the trick in both graphical and command line ways in Ubuntu &amp; other Linux! I know there are physical buttons to do the job. But for lazy men and\/or software developers, few [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":43719,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[211],"class_list":["post-43718","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-howtos","tag-display"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/43718","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/comments?post=43718"}],"version-history":[{"count":0,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/43718\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media\/43719"}],"wp:attachment":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media?parent=43718"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/categories?post=43718"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/tags?post=43718"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}