[SOLVED-GUIDE] 12th gen not sending XF86MonBrightnessUp / Down

Thanks @apol1o ! Worked like a charm.

Hi there,
As anyone sent a ticket to Framework for it to be corrected ?
For me it is anoying because in the morning I want to set it below 3% and I am afraid to set it to 0 and then to get a dark screen. Without a hardware key to set it back !

What’s the point of a ticket to Framework? Since @Kieran_Levin posted about it, Framework definitely knows about the problem and gave a simple to implement workaround.

If you want it to work OOTB you’re best off submitting a ticket to your distro since if you want a fix that works automatically you’d not only need to release an upstream kernel patch, but also would need to make sure your distro adopts it and rolls it out in an auto-update.

I’d suggest you just use the workaround as the easiest and fastest way to fix things, but in case you do get your backlight stuck at 0% you could also learn the shortcut to open a terminal and make sure you have a command line app like light to change the backlight (this of course can be done through SSH or sending a value to the proper sysfs device path as well. I’d suggest SSH is a better option than typing blind). I’ve also noticed that if the backlight is set to 0% and I suspend the laptop it tends to come back at 100%, but maybe that’s a peculiarity of how Arch does suspend/resume.

ADIT 13rd sept : updated the ubuntu 22 default kernel via update center… today and now nowit works on 5.15 ! (?)


EDIT: booting on kernel 5.15 instead of 5.18 reset the behaviour. Trying to do sudo update-initramfs -u again and reboot but it didn t work with htis kernel :frowning:


So it worked for me on Ubunru Mate 22.04 using kernel 5.18

sudo nano /etc/modprobe.d/framework-als-blacklist.conf
=> it creates an empty file.
Then add:
blacklist hid_sensor_hub
Then do :
sudo update-initramfs -u

What a joy to have a fully functionnal Framework laptop ! I tend to use brightness every 30 minutes especially in the morning.

OK, that worked form me as well (after the usual update-initramfs -u). I already had module_blacklist=hid_sensor_hub kernel parameter set, but that didn’t help despite the fact that the module was not actually loaded. Not sure why :slight_smile:

Is there a way to set the lowest brightnes lower ?
I mean to change the behaviour of the + / - brightness to increment in 1%.
Currentely on my Ubuntu mate when using the buttons it increments by 5% which is fine on the highest values, but in the morning I like to reach 1% 2% 3% gradually as the sun goes up . For now my work arround is to go in battery settings and move slider to 2%.
On my previous E590 the max brightness was less so the scale would benefit more to lower values, therefore this was not anoying in the morning.

Confirmed this worked for me on Ubuntu 22.04.1 LTS

sudo nano /etc/modprobe.d/framework-als-blacklist.conf
blacklist hid_sensor_hub

and

sudo update-initramfs -u

3 Likes

I’m seeing this thread being shared around quite a bit when this question pops up elsewhere.

Having the workaround is great, but it’s still unfortunate to have to choose between either having the automatic light sensor or the brightness keys working. Is there any update on having both work at the same time without needing the workaround?

3 Likes

I added module_blacklist=hid_sensor_hub to my grub file… not works
How do I know what is my device ? (EDIT: seems to be event2)
sudo evtest to list all…

Now its works…
I try add :
vim /etc/modprobe.d/framework-als-blacklist.conf
blacklist hid_sensor_hub

(not sure this help)

Thanks

1 Like

Is this something that’s actually being worked on? Anyone running Debian right now is going to encounter this problem and will think that key is broken until they find this forum post and figure out how to use vi. :wink:

1 Like

I asked that almost exactly 2 months ago…radio silence.

3 Likes

Like I finaly said here : Can't set resolution to 1600x1024 (3:2) - #9 by Bonnefille_Vincent
The Brightbuttons woks when the GPU driver is installed
( but this make some apps not working in my case )

I noticed here some use of sudo update-initramfs -u
on Arch (Mnajaro) I use sudo mkinitcpio -P
I suppose it do the same job (carefulle, -P is for “all profiles” : all images)
I finaly follow this :

Are you saying you do not to blacklist the hid_sensor_hub module for the brightness keys to work when the “GPU driver” (which? xf86-intel-driver?) is installed? Because I have what i think is the equivalent of that driver here (xserver-xorg-video-intel, in Debian), and I did need to block the module from loading to get the keys to work (and therefore the light sensor doesn’t work…)

2 Likes

Hello !
I have the same result if I active/blacklist hid_sensor_hub (maybe I dont do it well)

But it works with the driver installed (yes xf86-intel-driver)
( and

Section "Device"
    Identifier "Device0"
    Driver "intel"
EndSection

not present in /etc/X11/xorg.conf.d/10-monitor.conf )
Sorry, if am not totaly clear, am searching…
V

It is not at all advisable to use the intel Xorg driver, as it lags behind the modesetting driver, which is the basically the same but relying on the version of the GPU driver upstreamed into the official kernel tree, the drm module.

The intel Xorg driver has many shortcomings, and on the other hand there are not at all any performance disadvantages in using the modesetting one.

So, maybe it would seem to temporarily fix the problem by using the intel driver right now, but it would be a much better solution to just blacklist the ambient light sensor module and stick to using the modesetting driver.

And hopefully any time soon a fix will be provided to not have to blacklist the light sensor.

1 Like

Thanks
I try the intel Xorg driver and modesetting .
I noob with Manjaro.
I follow
Change video driver from intel to modesetting - Technical Issues and Assistance - Manjaro Linux Forum
and then, the official wiki
Configure Graphics Cards - Manjaro


But not looking more working apps…
So I go back and try using Intel…
I use sudo mhwd -a pci free 0300 for an auto-install (of video-linux)
and add /etc/X11/xorg.conf.d/20-intel.conf

Section "Device"
    Identifier  "Intel Graphics"
    Driver      "intel"
    Option      "DRI" "2"            # DRI3 is now default
    #Option      "AccelMethod"  "uxa"
    #Option      "AccelMethod"  "sna" # default
    #Option      "AccelMethod"  "uxa" # fallback
EndSection

because a lot of apps black crashing using DRI 3… but Steam and other games crashing

So, for now, I disable the intel config file…


Sorry, it’s likly an other thread here…
For short : with GPU ON, the brightbutton is working :slight_smile:

I finaly follow Backlight - ArchWiki
allowing <user> changing brightness
sudo usermod -aG video <user>

Then I try to install :
opt1. backlight_control +3
op2. brightnessctl s +10000
(finaly choose opt.2)
wiki Backlight - ArchWiki #Backlight_utilities


Then configure Xfce Keyboard maping :
Capture d’écran_2022-10-31_10-04-05

“Luminosité écran plus forte” key (brigth+ F7) … works*
“Luminosité écran plus faible” key (brigthless F8) … not*

* I finally uninstall GitHub - miXwui/framework-laptop-fn-keys-fix: Fixes for the function keys sticking on the Framework Laptop
(making F8 bad working)

Works !!!

1 Like

@Bonnefille_Vincent Good that you got it working!
I couldn’t have helped you much, as the solution you found seems to be using a systemd command, and my Linux distrib (Artix) is without systemd.
Anyway, I plan to switch soon to the new 12th gen model (currently on the 11th), and I’ll see how it all works out…

Here’s what worked for me for Arch Linux on the 12th Gen Framework Laptop (Intel i5).

# Blacklist the hid_sensor_hub kernel module
sudo vi /etc/modprobe.d/framework-enable-brightness-keys.conf

# Add the following line in the file, in vi
blacklist hid_sensor_hub

# Save and exit vi

Reboot your computer.

The brightness keys started working.

This is also documented in the ArchWiki → Framework Laptop

I’ve not been able to make fixes from this thread work so far, and I’m currently hoping that, as was suggested might happen, an official fix will be developed and released. I’m relatively new to both the Framework and Linux (Kubuntu), though; if there is a fix released, will it be pushed out as an update that’ll just show up on my computer like other updates, or will I need to do more manually than just approve it? If the latter, how would I know when the fix is available?
Thanks!