Brigthness function key workaround for intel chipsets #3643
GyHUN95
started this conversation in
Suggestions
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Omarchy 3.2.1, The default brigthness binds not controls intel hd chipset and/or standalone aio monitor brigtness. For this OS the standalone monitor's physical buttons work neither.
I saw some workaround for apple and media button context, but here is my quick solution for intel, so it should be used for Lenovo mini pc-s thinkpads and Lenovo AIO monitors.
1.: Install ddcutil

sudo pacman -S ddcutil
2.: Activate the corresponding module
sudo modprobe i2c-dev
3.:Add your user rights
sudo usermod -aG i2c $USER
4.: Check detection
ddcutil detect
The result will be stg. like this:
5.: Try to lower brightness with the newly installed util:
ddcutil setvcp 10 20
6.: Try to rise brightness with the newly installed util
ddcutil setvcp 10 100
If those works, we should rebind it, so for that we have two place, i suggest the second actually due to default config restest/changes yet nowadays..
For the default bindings where the original lines (9 and 10 found):
nvim ~/.local/share/omarchy/default/hypr/bindings/media.conf you should at least comment these:
#bindeld = ,XF86MonBrightnessUp, Brightness up, exec, $osdclient --brightness raise
#bindeld = ,XF86MonBrightnessDown, Brightness down, exec, $osdclient --brightness lower
but you can write the new binds here, or go for the next step...
SOLUTION:
edit the .config/hypr/bindings.conf and add
bind = ,XF86MonBrightnessUp, exec, ddcutil setvcp 10 + 10 --skip-ddc-checks && $osdclient --brightness raise
bind = ,XF86MonBrightnessDown, exec, ddcutil setvcp 10 - 10 --skip-ddc-checks && $osdclient --brightness lower
The --skip part is important for faster response time from the tool.
AFTER THAT IT SHOULD WORK IMMEDIATELY, but if not, try:
hyprctl reload
Note: on some monitor the brigtness percent of the osd always be 0, but the current value can be checked by:
ddcutil getvcp 10 | awk -F'[=,]' '/current value/ {print $2+0}'
If the wrong OSD number triggers you, you should left the && $osdclient --brightness lower/rise visual feedback part of the bindings
P.s. someone give me a feedback, that should I put this on the issues page too or not... 😄
Keep up the good work!
Beta Was this translation helpful? Give feedback.
All reactions