# Automating the keyboard backlight

**URL:** <https://community.frame.work/t/automating-the-keyboard-backlight/14696>\
**Category:** Framework Laptop 13\
**Tags:** feature-requests\
**Created:** [February 3, 2022, 2:07am UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696 "2022-02-03T02:07:16Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![john\_doe](https://avatars.discourse-cdn.com/v4/letter/j/91b2a8/32.png) [@john\_doe](https://community.frame.work/u/john_doe)\
**Post date:** [February 3, 2022, 2:07am UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696/1 "2022-02-03T02:07:16Z")

</div>

Currently the backlight always stays on, even when idle. I would like to automate the way it works. My wishlist is the following:

- Schedule backlight during nighttime hours.
- Set a lower timeout when on battery.
- Customize which keys are lighted, depending on the current application.
- Add cool lighting effects (like Razor keyboards)
- Disable backlight when connected to a dock

---

<div class="post-metadata">

**Author:** ![Brent\_bak](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/brent_bak/32/6565_2.png) [@Brent\_bak](https://community.frame.work/u/Brent_bak)\
**Post date:** [February 3, 2022, 2:43am UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696/2 "2022-02-03T02:43:02Z")

</div>

Sounds like a great suggestion for a feature request. It may require some sort of special software that is customized to work with the laptop board. But yeah, a breathing effect lighted keyboard on a Framework Laptop is interesting.

---

<div class="post-metadata">

**Author:** ![Kieran\_Levin](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/kieran_levin/32/110_2.png) [@Kieran\_Levin](https://community.frame.work/u/Kieran_Levin)\
**Post date:** [February 3, 2022, 8:48am UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696/4 "2022-02-03T08:48:24Z")

</div>

I think the best way to implement this is by exposing the keyboard backlight over HID (Which we have an interface already for the airplane mode and display backlight keys.)

[https://usb.org/sites/default/files/hut1\_22.pdf](https://usb.org/sites/default/files/hut1_22.pdf) Section 15.22

I think this would allow backlight control from the OS.  
This can also be used to expose Fn key state, and lock state to the OS as well.

---

<div class="post-metadata">

**Author:** ![Roberto\_Vernina](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/roberto_vernina/32/6501_2.png) [@Roberto\_Vernina](https://community.frame.work/u/Roberto_Vernina)\
**Post date:** [February 3, 2022, 11:18am UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696/5 "2022-02-03T11:18:33Z")

</div>

I think it could be (more or less) easily implemented in software, either in the firmware and/or by exposing the backlight functionality over HID to the OS. Of course this will need a new firmware update, and since the EC is now open-source maybe it will be implemented pretty quickly

---

<div class="post-metadata">

**Author:** ![Joshua\_Ham](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/joshua_ham/32/4072_2.png) [@Joshua\_Ham](https://community.frame.work/u/Joshua_Ham)\
**Post date:** [April 14, 2023, 8:04pm UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696/6 "2023-04-14T20:04:24Z")

</div>

Here is my Framework with the breathing keyboard effect.  
[https://www.reddit.com/r/framework/comments/z8h9oi/i\_matched\_my\_framework\_keyboard\_light\_to\_my/](https://www.reddit.com/r/framework/comments/z8h9oi/i_matched_my_framework_keyboard_light_to_my/)

---

<div class="post-metadata">

**Author:** ![DHowett](https://sea1.discourse-cdn.com/flex001/user_avatar/community.frame.work/dhowett/32/1990_2.png) [@DHowett](https://community.frame.work/u/DHowett)\
**Post date:** [April 14, 2023, 11:46pm UTC](https://community.frame.work/t/automating-the-keyboard-backlight/14696/7 "2023-04-14T23:46:34Z")

</div>

> [@Kieran\_Levin](#):
>
> This can also be used to expose Fn key state, and lock state to the OS as well.

Now THIS, I have been working on! Linux doesn’t handle it properly (System Controller collection devices fail out if they don’t have axes like a game controller,) but it can easily be made to. Anyway, I added another descriptor to the hx20 HID block and am publishing the Fn state. I’ll push my branch. 🙂
