Customize keyboard backlight

This is handled by the EC(embedded controller) which is open source, at the moment this functionality is not well exposed to the user but it should be technically do able but I’m not sure how

Framework is planning on making this easier to tweak in the future I believe

1 Like

I’d like to see this as well.

One thing I miss from my Thinkpad is a led for mute status. If I could turn on the backlight for just the F1 key to indicate “muted”, that could be cool.

That’d also be useful. WhyTF does Fn+F9 fake like typing Meta+P instead of producing a proper scancode? (Yeah, I know, the answer is some Windows stupidity, that’s not the point)

+1 for timeout. One of the remaining things I envy on my partner’s macbook.

4 Likes

I’d just like to second this request. Just something I could modify in /sys/class/leds/ or something

1 Like

Is there any update on this feature request? This is my main “bug” with the Framework right now. It’s also been talked about here.

I’m ok with 3rd party software (Windows) if that would be available.

1 Like

+1

Still waiting for the keyboard backlight timeout to be “fixed”. :frowning:

I’m working on a VERY simple program that does a keyboard backlight timeout using the ectool on Gnome systems (it uses Gnome’s dbus and Mutter to know when the user is idle). I’d like to share it, but it needs some configuration of dbus to work in a way that I think might be insecure.

2 Likes

I just wrote a small Linux daemon to do this GitHub - jonas-schievink/keylightd: Keyboard backlight daemon for the Framework Laptop

No fancy features, just “turn backlight on when keyboard or touchpad are used” and “turn it back off after a timeout”, since that’s what I was missing from my XPS 13.

(it uses evdev directly, so doesn’t need any specific desktop environment)

14 Likes

@jschievink This is great. I also ended up working on an ioctl based version (was also done in rust) but yours is better!

I had this Daemon installed on my 12th gen Intel framework 13, worked like a charm and loved it.
It immediately broke when I upgraded to the AMD 7840U mainboard. I’ve been tearing my hair out for months trying to figure out why, with no luck. I think it’s related to the embedded controller, but if you have any advice on how to get it working on the 7840U series, I’d be really appreciative.

The embedded controller driver in the kernel does not yet support the AMD Framework Laptop.

A patch has been accepted which adds support for it: [v3,0/4] platform/chrome: cros_ec_lpc: add support for AMD Framework Laptops - Patchwork

It should be in the next mainline version update to the kernel (6.10, since 6.9 is in the release candidate stage.)

3 Likes

For an ubuntu-user, how would I implement that patch on my own system?
I’m nowhere near knowledgeable enough for arch, so if you could point me to a resource that could help, or even just break it down into crayons for me, I’d be super grateful.

So is the backlight timeout function being worked on? Just started using my 13 and have spent all day trying to figure out how to get the keyboard backlighting to turn off when not used. And now I find here that it might not be at all possible. How is this not a feature? I don’t remember owning any laptop or keyboard that DDN’T have a backlight timeout…

I’m on an 11th Gen 13 using W10 if that matters at all.

This is the biggest annoyance that I miss from my Macbook Air coming to Framework. The backlight issues. I’m generally a touch typer, but the function keys on the top row are different than on a Macbook (fair enough) but I do need the backlight to figure out which is which. I use my laptop in bed often and also watch a lot of media on it, so I don’t want the backlight distracting from the streaming video, and I don’t want to have to toggle something that should be scriptable/automatic in 2024. This is simple functionality that makes a big usability impact and feels like that apple level of ‘polish’. That isn’t an apple-exclusive, please update the bios to enable fade-to-zero keyboard backlighting on a timeout. I can imagine this could be done entirely in firmware.

Is the EC running zephyr? I think I remember hearing about either Chromebooks or Framework using Zephyr for the firmware, but it might have been another firmware framework entirely.

I’m not sure I understand the problem.

I watch videos too at night and the lowest of the the three options seem fine and of course I can juat toggle it off in a quater of a second.

Keylightd is a daemon you can install on linux systems to automate it (with 6.10 kernel on amd boards) But I haven’t been able to find anything about enabling a timeout in windows.
Maybe someone could convert keylightd into a windows service? But unfortunately I don’t know nearly enough to try and tackle that.

My HP Elitebook from 2013 has keyboard backlight timeout functionality. Doesn’t need to be an Apple product to have it.

Why my Framework is lacking such a basic function is confusing

I’m thinking it’s just a matter of priorities for a small team. I’m not sure how to get at the keyboard backlight on windows. Is there an API for it or is it Linux only?

With Linux 6.11 you will be able to do this out of the box without any userspace setup.
The keyboard backlight will be registered through the LED framework and the LED framework gained an “input-events” trigger which is able to enable any LED on input events, and disable it again after a timeout.
Maybe there are even GUIs for trigger configurations.

5 Likes