Увімкніть підсвічування клавіатури на підтримуваному Lenovo (наприклад, Carbon X1) за допомогою команди


18

У деяких ноутбуках Lenovo є підсвічування клавіатури, і їх можна вмикати за допомогою Fn+ Space. Є три стани: вимкнено, нормальне та яскраве.

Коли я запускаю Ubuntu, ці ноутбуки завжди за замовчуванням повертаються до яскравої сонячної яскравості екрана, а клавіатура вимикається.

Я хочу, щоб середня яскравість та світлодіодні клавіатури вмикалися за замовчуванням, тому що я зазвичай використовую цей ноутбук у темних умовах.

Підсвічування проста. Інтернет наповнений інформацією про це.
echo 10 > /sys/class/backlight/acpi_video0/brightness

Але як увімкнути підсвічування клавіатури за допомогою команди? Я шукав тут, але, здається, нічого не робить:
/sys/class/leds/tpacpi\:\:thinklight


Оновлення

Я намагався, for i in {1..32}; do xset led $i; doneале нічого не змінюється. Можливо, підсвічування клавіатури для ноутбуків Lenovo має фірмовий драйвер і керувати ним можна лише за допомогою tpacpi?

Також спробували for i in $(find /sys/devices/platform/thinkpad_acpi/leds/ | grep /brightness\); do echo 255 > $i; doneбезрезультатно.


Або xset led (що майже 100% , ймовірно, буде Caps Lock, і т.д., але я додам його в будь-якому випадку) або setleds. Редагувати: Знайшов це
Вільф

Це не працює. Я намагався, for i in {1..32}; do xset led $i; doneале нічого не змінюється.
Редсандро

Відповіді:


8

Схоже, це було оновлено, мій X1C з ubuntuMATE 16.04 LTS має

/sys/class/leds/tpacpi\:\:kbd_backlight/brightness

яка працює як очікувалося, тобто:

# echo 2 > /sys/class/leds/tpacpi\:\:kbd_backlight/brightness

Підводить його до повного світла :)


Гей, так! Дякуємо, що знайшли час поділитися цим старим питанням. :)
Редсандро

1
Немає проблем, це був перший удар, коли я дивився, думав, що це не може бути таким важким, тому подумав, що я повинен оновити цей висновок зі своїми висновками :)
wuxmedia

14

Це дійсно потрібно для виправлення!

Я думаю, що це звичайна помилка в нових блокнотах. Якщо ви ввімкнете клавіатуру вручну, fn + spaceтоді виконується:

echo 0 > /sys/class/leds/tpacpi\:\:thinklight/brightness

клавіатура буде згасати Будь ласка, перегляньте таке посилання, якщо це допомагає:

http://www.spinics.net/lists/ibm-acpi-devel/msg03090.html


Гей, ти маєш рацію, я не знав. Оскільки ми можемо вимкнути це, відчувається, що це було б шматок пирога, щоб виправити це для розробників. Чи є ще бугрепорт?
Редсандро

Електронний лист запропонував таке вирішення: gist.github.com/hadess/6847281 Будь-яка ідея, як ми можемо це реалізувати?
рашад

4

Це базовий сценарій, який я використовую:

https://gist.github.com/vzaliva/0adba7bc40e2f31a0b5f802af2a63267

Працює на IBM ThinkPad X260 з Ubuntu 16.04.


IBM? Цей ноутбук повинен бути не менше 10 років! Але це працює і на моєму Carbon X1! Справедливості, код з hadess , на який відповів rashad, зробив те саме, але я не хочу робити 5 кроків і встановлювати компілятори. Я шукав просту команду bash. І це те, що я можу використати. Дякую за відповідь на моє 3-річне запитання. Прийнято.
Редсандро

Радий, що ти вважаєш його корисним. Звичайно, я мав на увазі Lenovo Thinkpad, а мій X260 абсолютно новий. У мене просто була та сама проблема, і я знайшов цю відповідь, але мені не сподобалася програма C, яка також вимагає ручного modprobe, тому я переписав її як сценарій. Оригінальні автори програми C робили всі важкі атлетики.
krokodil

3

Гаразд, зі мною це добре працює:

https://gist.github.com/hadess/6847281

  • Перш за все скачайте суть вище, я перейменував її на ThinkLight.cзамість tmp.c.
  • Переконайтеся, що у вас встановлено glib-2.0:

    sudo apt-get install libglib2.0-dev
    
  • Складіть ThinkLight.cтак:

    gcc -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include ThinkLight.c -o ThinkLight -lglib-2.0
    
  • ec_sysМодуль завантаження (це можна додати /etc/modulesпри завантаженні):

    sudo modprobe ec_sys
    
  • Нарешті виконати ThinkLightз аргументом рівня (0, 1 або 2):

     sudo ./ThinkLight 0
     sudo ./ThinkLight 1
     sudo ./ThinkLight 2
    

Особлива подяка hadess за те, що це сталося!


Будь-яка ідея, як запустити це без судо? Спроба запустити це в іншому сценарії, і це працює як мій користувач.
zsquare

Я спробував це і отримав деякі помилки :( ThinkLight.c: У функції 'main': ThinkLight.c: 56: 6: попередження: неявне оголошення функції 'lseek' [-Wimplicit-function-izjave] if (lseek (fd, 0xd, SEEK_CUR) <0) {^ ~~~~ ThinkLight.c: 60: 6: попередження: неявне оголошення функції 'write' [-Wimplicit-function-statement] if (write (fd, & Level [level], 1) ) <0) {^ ~~~~
Херіберто Хуарес

@HeribertoJuarez це стара відповідь, ви можете маніпулювати цим безпосередньо новими Linux ядрами. Перевірте wuxmedia Відповість
Рашад

1

Мої T450 не відновлювали б підсвітку клавіатури після відновлення з ядрами старшими 4.6. FWIW, з 4.6 зараз підсвічування клавіатури встановлена ​​на яскравість, яку вона мала до призупинення.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.