Клавіша яскравості fn не працює на ноутбуці ASUS


42

Ярлики яскравості за допомогою fnклавіші не працюють.

Я спробував кожне рішення з цієї відповіді та її коментарів . Після редагування /etc/default/grubфайлу я перезавантажився.

GRUB_CMDLINE_LINUX="acpi_osi=Linux"
GRUB_CMDLINE_LINUX="acpi_backlight=vendor"
GRUB_CMDLINE_LINUX="acpi_osi=linux acpi_backlight=vendor"
GRUB_CMDLINE_LINUX="acpi_osi_Linux"

Які ще шляхи вирішення існують?

Відповідний вихід:

$ sudo lshw -C display
  *-display UNCLAIMED     
       description: 3D controller
       product: GK107M [GeForce GT 750M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: latency=0
       resources: memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
  *-display
       description: VGA compatible controller
       product: 4th Gen Core Processor Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 06
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:50 memory:f7400000-f77fffff memory:d0000000-dfffffff ioport:f000(size=64)

Який у вас GPU?
Кай

@Kai Я додав відповідну інформацію у запитання.
Ionică Bizău

Тепер, коли ви говорите, що клавіші яскравості не працюють, чи бачите ви, що панель переміщується, що вказує на зміну яскравості чи натискання клавіш FN взагалі нічого не робить?
Джон Скотт

Ось пара моїх вирішень. Сподіваюсь, вам це буде корисно
Sergiy Kolodyazhnyy

Відмінно, GRUB_CMDLINE_LINUX="acpi_backlight=vendor"зробив роботу за мене.
Мілан

Відповіді:


52

У терміналі:

  1. sudo nano /etc/default/grub

    Зміна

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    

    до

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi="
    

    Потім збережіть файл.

  2. sudo update-grub

  3. Перезавантажте комп'ютер.


Функціональні клавіші ( Fn+ F5/ F6) тепер повинні бути активними.

Я дізнався, що файл grub змінився після оновлення системи, і довелося це робити ще раз.


1
Щоб отримати повний діапазон яскравості (після того, як він відобразився в першу чергу), додавши для мене файл 20- intel.conf
srlm

1
Це працювало для мене на моєму ASUS Q550LF! Дуже дякую!
Райан Стюлл

5
Це не спрацювало для мене. Я працюю на Ubuntu в ноутбуці Asus Zenbook ux305. Чи є інший варіант виправити мою справу?
Гохт

9
для asus rog gl552vw: intel_idle.max_cstate=1 acpi_osi= acpi_backlight=nativeв archlinux з ядром 4.3.3
brauliobo

2
acpi_osi= acpi_backlight=nativeвистачало на моєму ноутбуці ASUS, не потрібно intel_idle.max_cstate=1, і спливаюче яскравість працює.

13

Відмова: Я боровся з цим на Mint / Mate-18 зі своїм Asus 305CA, і змусив його працювати, я не знаю, чи працює він і на Ubuntu, але спробуйте ... Я зробив це:

Робота з Fn F5 / F6:

sudo emacs /etc/default/grub

Змініть наступне: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi="

sudo update-grub

перезавантажте систему ... Тепер повинен з’явитися екран сплеску.

Перевірте команди acpi за допомогою acpi_listen:

acpi_listen.

натисніть Fn F5 / F6. Я отримав це:

video/brightnessdown BRTDN 00000087 00000000 K
video/brightnessup BRTUP 00000086 00000000 K

Додайте коди подій до acpi події:

sudo emacs /etc/acpi/events/asus-keyboard-backlight-down 

подія = відео / зменшення яскравості BRTDN 00000087

sudo emacs /etc/acpi/events/asus-keyboard-backlight-up

подія = відео / яскравість BRTUP 00000086

Підтвердьте, що ви можете змінити підсвічування на (де xx - ціле число):

echo xx | sudo tee /sys/class/backlight/intel_backlight/brightness

Створіть сценарій:

sudo emacs /etc/acpi/asus-keyboard-backlight.sh 

Додайте змінну у файл:

KEYS_DIR=/sys/class/backlight/intel_backlight

Я також встановив значення 10 замість 1, оскільки це було занадто повільно:

if [ "$1" = down ]; then
    VAL=$((VAL-10))
else
    VAL=$((VAL+10))
fi

Фактична яскравість дисплея не слідує за смужкою на екрані. Після повного вгору / вниз ви можете продовжувати натискати Fn F5 / F6, щоб змінити яскравість.

Вам потрібно буде перезапустити acpidйого, щоб набути чинності:

sudo service acpid restart

6
що робити, якщо acpi_listen нічого не показує?
Євген Конков

Я підтверджую, що працює і на Asus K501UX, і він робить 20 кроків яскравості вгору / вниз від
мінімуму

Це працює на ASUS Zenbook UX330UA. Велике спасибі @Lassebassen
Свята Скумбрія

Підтверджено роботу над Asus X550VX (з графікою Nvidia 950M). Але перша відповідь також працює без інших acpi_osi= acpi_backlight=native
підлаштовувань

Я можу підтвердити, що рішення працює з Asus Zenbook UX310 на Xubuntu 16.04. Чудове рішення!
кнопка Бенджаміна

7

це рішення працювало для мене:

відкрити термінал і ввести ці команди:

sudo touch /usr/share/X11/xorg.conf.d/20-intel.conf

sudo nano /usr/share/X11/xorg.conf.d/20-intel.conf

Додайте до цього файлу наступні рядки:

Section "Device"
        Identifier  "card0"
        Driver      "intel"
        Option      "Backlight"  "intel_backlight"
        BusID       "PCI:0:2:0"
EndSection

закрийте файл після збереження, потім поверніться до терміналу і введіть ці команди:

sudo nano /etc/default/grub

знайдіть цей рядок

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

і замінити його на

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi= acpi_backlight=intel"

потім у терміналі

sudo update-grub

перезавантажте ноутбук, і він, можливо, запрацює.


Я підтверджую це для роботи на Asus N56JR.
Майкл С.

5

Якщо ви натиснете на значок батареї, і якщо ви бачите повзунок, щоб змінити яскравість, і якщо він насправді працює, тобто. якщо яскравість екрана змінюється, функціональність є , вам просто потрібно перепланувати клавіші клавіатури.

(Тому не потрібно возитися з параметрами ядра та драйверами тощо)

Якщо натиснути значок батареї на панелі KDE і побачити це:

панель акумуляторів

У Налаштуваннях системи → Робоча область → Швидкі клавіші → Глобальні ярлики клавіатури → KDE Daemon ви знайдете Decrease Screen Brightnessі Increase Screen Brightness.

Здається, це вже відображено до Fn+ F5/ Fn+ F6, але це, здається, не працює, тому просто наведіть його Global Alternativeна Meta+ F5/ Meta+ F6.


3

Для зменшення яскравості виконайте наступне:

Відкрийте Налаштування системи> Яскравість та блокування

Звідти контролюйте яскравість ур

Ви можете спробувати це:

https://apps.ubuntu.com/cat/applications/brightness-controller/

Якщо ви хочете змінити яскравість за допомогою клавіш, виконайте це:

sudo apt-get install xbacklight xbacklight -set 50

Потім відкрийте Налаштування> Клавіатура> ярлики

Додайте спеціальні клавіші швидкого доступу та введіть туди наступні команди: введіть тут опис зображення

xbacklight -dec 10

xbacklight -in 10


Я знаю, як змінити яскравість (від користувальницького інтерфейсу та від xbacklight). Крім того, я не можу відображати спеціальні ярлики на fnклавіші. Я вже пробував це. :-(
Ionică Bizău

Не використовуйте клавішу fn, використовуйте щось інше
Tejas Ghalsasi,

ALT + F5, ALT + F6 вже встановлені, але я хочу, щоб клавіша fn спрацювала ...
Ionică Bizău

3

У сценарії:

sudo nano /etc/acpi/asus-keyboard-backlight.sh 

Корисні варіанти для Asus E402M:

MIN=200
MAX=$(cat $KEYS_DIR/max_brightness)
VAL=$(cat $KEYS_DIR/brightness)

if [ "$1" = down ]; then
    VAL=$((VAL-800))
else
    VAL=$((VAL+800))
fi

2

Мені здається, у вас немає встановленого драйвера NVIDIA-драйвера. Якщо це правда, ви можете спробувати встановити цей драйвер за допомогою попередньо встановленої програми "Додаткові драйвери". Це повинно працювати в Ubuntu 14.04, але, швидше за все, це спричинить проблеми в попередніх версіях Ubuntu без встановлення додаткового програмного забезпечення. Тому, якщо ви не використовуєте Ubuntu 14.04, будь ласка, не встановлюйте власний драйвер без подальшого читання.

Коли драйвер встановлений, а контроль яскравості все ще не працює, ви можете спробувати запустити sudo nvidia-xconfigдля створення xorg.conf-файла. Потім ви можете відредагувати цей файл за допомогою sudo gedit /etc/X11/xorg.confта додати рядок

Option "RegistryDwords" "EnableBrightnessControl=1"

до Section "Device".


Я не встановлюватиму власні драйвери на комп’ютер ...
Ionică Bizău

Якщо у вас Asus N56JR, не встановлюйте фірмовий драйвер. Це призведе до того, що ваш X-Server більше не завантажиться. Використовуйте askubuntu.com/questions/41681/…, щоб виправити це.
Майкл С.

1

Спробував прийняту відповідь на своєму ноутбуці Asus FL555, але не пощастило. Я натрапив на цю відповідь для машини Dell, і вона частково працює і на моєму ноутбуці.
Частина, яка зробила роботу, полягає в тому, що я можу змінити яскравість у конфігурації системи та за допомогою xbacklightта налаштувати пару користувацьких комбінацій клавіш .

Я все ще не зрозумів, як змусити функціональні клавіші працювати. Я пробував усілякі речі, але вони просто не відображаються як клавіші ACPI, коли я намагаюся acpi_listen.


ви спробували ядро ​​4.9 з наступними патчами intel, як я запропонував вище? Це повинно вирішити безліч проблем, без подальшої псування з файлами конфігурації або параметрами ядра ...
Вінсент Герріс

@ user163217 Дякую за оновлення. Я цього не зробив, тому що в даний час я використовую Ubuntu 16.04, який використовує більш старе ядро. Але я обов'язково маю це на увазі, коли я збираюся оновити свою систему. Дякую!
Аудакс

Абсолютно немає причин, чому нове ядро ​​не працює :). За винятками між основними версіями, ви можете запустити будь-яке ядро ​​16.10, 17.04 або інше (з патчами ubuntu)! Ось додаткова інформація, якщо вам цікаво. Цікаво, чи вони будуть підтримувати виправлення з ядра 4.9, я не думаю, що це було досить капітальним ремонтом, наскільки я це зрозумів. 16.10 також має ядро ​​4.8, тому в іншому випадку це буде 17.04, поки включене ядро ​​Ubuntu не допоможе вам.
Вінсент Герріс

1

Перевірте цей звіт про помилку: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1348890?comments=all та цю чудову статтю: http://hansdegoede.livejournal.com/13889.html

Причин яскравості не може бути декількома, в моєму випадку (Asus UX305FA) ключові події не надсилаються.

Ви можете перевірити це, зробивши це в терміналі:

sudo evemu-record /dev/input/event3

(де подія - ваша клавіатура). Перевірте, чи відображаються події та чи є вони належними, коли ви використовуєте поєднання яскравості та навколишнього світла (fn + A для мене).

Щоб вирішити це, для мене рішення xbacklight @Tejas Ghalsasi працювало в поєднанні з фрагментом @molhamaleh для файлу: /usr/share/X11/xorg.conf.d/20-intel.conf

Section "Device"
        Identifier  "card0"
        Driver      "intel"
        Option      "Backlight"  "intel_backlight"
        BusID       "PCI:0:2:0"
EndSection

Мені не потрібні параметри ядра. Здається, acpi_listen дає мені: PNP0C14: 00 000000ff 00000000 для кнопки зовнішнього освітлення, яскравості нічого не показують.

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

Прочитайте посилання від Ганса, щоб добре зрозуміти всю програму :)!

[оновлення] Це встановлено для мене у відділенні ядра drm-intel-next для 4.9. Збірку можна знайти тут: http://kernel.ubuntu.com/~kernel-ppa/mainline/drm-intel-next/

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

тому завантажте наприклад:

  linux-headers-4.9.0-997_4.9.0-997.201611212212_all.deb
  linux-headers-4.9.0-997-generic_4.9.0-997.201611212212_amd64.deb
  linux-image-4.9.0-997-generic_4.9.0-997.201611212212_amd64.deb

Потім у терміналі

dpkg -i linux*.deb

і перезавантажити.

Grub повинен вибрати найновіший автоматично, інакше натисніть esc та виберіть.


1

По-перше - ця відповідь для openSuse, тому вибачте. Мені не вдалося оновити дискусію на форумі. Проблема на моєму HP 840 G3 була дуже схожа. Це може допомогти будь-якому розповсюдженню.

На OpenSuse я відредагував /etc/rc.d/boot.localфайл і додав два коди клавіш, використовуючи наступні команди.

setkeycodes e012 224

setkeycodes e017 225

224і 225є X-кодовими ключами для brightness downта up.

e012і e017і на Fn-F5і Fn-F6на цій машині.

Щоб перевірити це на своєму пристрої, вам потрібно перейти до віртуального терміналу, використовуючи:

Ctrl+ Alt+ F1наприклад.

натисніть потрібний ключ функції

ви можете побачити повідомлення прямо в консолі, якщо не перевірити журнал dmesg на помилку відсутнього ключа. Він також дасть вам код ключа, що відсутній. У моєму випадку відсутні ключі були e012і e017.

видайте правильну setkeycodesкоманду в ЗП.

повернутися до X. ( Ctrl+ Alt+ F7)?

У KDE поверніться до settings > configure desktop > shortcuts > Global shortcuts > power management. Зменшення яскравості екрана (встановлення за замовчуванням) Збільшення яскравості екрана (встановлення за замовчуванням).

Це все, що потрібно. Сподіваюсь, це допомагає.


1

Спробуйте спочатку цей метод gui, якщо вам не зручно з терміналом:

  1. Клацніть на меню системи у верхньому правому куті вікна робочого столу.
  2. Відкрийте Налаштування системи
  3. Клацніть на Power
  4. Клацніть на підказці інструменту Яскравість екрана, якщо такий є
  5. Клацніть на "Затемнення екрана для економії енергії", щоб переключити його у положення вимкнено

Перевірте, чи тепер у ваших клавіш нормальна функція. Якщо вони це роблять, це виправлено. Ви можете вийти з системи або перезавантажити, щоб зберегти конфігурацію як стійку в цей момент.

Або якщо на вашому комп’ютері немає підказки інструмента, яка дозволяє вимкнути його окремо, дивіться, чи дозволить вам вимкнути весь розширений апаратний елемент управління, щоб скинути файл конфігурації, а потім, коли / якщо функціональність ключа повернеться, подивіться, чи може ввімкнути його і продовжувати працювати функціональними клавішами.

Якщо ви все ще хочете, щоб розширений інтерфейс апаратного керування AHCI затемнював дисплей для економії енергії, тоді спробуйте повернути перемикач назад у положення увімкнено і перевірити, чи вони все ще працюють; якщо ваша машина сумісна з ahci, ви повинні встановити, що вони все ще функціонують як рекламовані.

Якщо вони кинуть працювати знову і не відповідають, вам, можливо, доведеться почати спочатку, повторно відкривши налаштування системи або навіть вийти з системи та перезавантажившись, але як тільки вони знову почнуть працювати, вони повинні продовжувати працювати і зберігатись Linux і готові працювати знову на наступне завантаження, якщо ви не змінили прив’язки клавіш знову якось між основним скиданням та наступним завантаженням

Зазвичай це відбувається після помилкового відключення, коли тимчасові непостійні файли конфігурації не вдалося зберегти або збереглись із налаштуваннями, що суперечать основним прив'язкам ключових біосів після деяких модифікацій пристрою введення, зроблених Accessibility або іншим інструментом Tweak, відключивши керування програмним забезпеченням має скинути його на апаратне управління.

Якщо вони ніколи не працювали з Ubuntu, вони, ймовірно, не були належним чином виявлені в початковій установці або файли конфігурації були змінені під час інтерактивної установки з якихось причин. Доступність?

Але після цього натиснуту функцію біографії за замовчуванням тепер слід відновити до файлів конфігурації Linux як налаштування за замовчуванням для прив'язки ключів, і при належному циклі відключення вони повинні зберігатись при наступному завантаженні.

Якщо ні, то ваш комп'ютер може не підтримувати Ahci повністю, і вам потрібно буде керувати ним вручну за допомогою клавіш fn або спробувати один з підвищених привілеїв, ручне налаштування терміналу рушійного виправлення патчів, перелічених усіма термінальними гуру.

Сподіваюся, що це допомогло. Я знаю, що в деяких випадках жоден із перерахованих методів не працював на мене ні на інші теми, і питання було зазначено як закрите, тому я нарешті повинен був з’ясувати, де проблема була на моєму NE56R лише кілька хвилин тому. Я вже вирішив провести кілька годин з терміналом і людиною, щоб розібратися, де знаходяться файли конфігурації та синтаксис і т.д., щоб зробити ключові прив’язки вручну, як це робив хтось інший, і починався тут знову.

Ура


1

Я знайшов рішення, оглянувши в Інтернеті, пиріг коду був запропонований в іншому місці, і я зробив незначні зміни:

1) встановити xbacklight sudo apt-get install xbacklight

2) ми будемо використовувати сторожову службу pip install watchdog

3) створити скрипт python у місці папки

#!/usr/bin/env python
import sys
import time
import os
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler

class MyFileSystemEventHandler(FileSystemEventHandler):
        def on_modified(self, event):
                if "brightness" in event.src_path:
                        with open('/sys/class/backlight/acpi_video0/max_brightness', 'r') as content_file:
                            max_brightness = content_file.read()                        
                        with open('/sys/class/backlight/acpi_video0/brightness', 'r') as content_file:
                            actual_brightness = content_file.read()
                        B = int(int(actual_brightness)* 100 / int(max_brightness))
                        cmd = "xbacklight -set " + str(B)
                        os.system(cmd)                        

if __name__ == "__main__":
        event_handler = MyFileSystemEventHandler()
        observer = Observer()
        observer.schedule(event_handler, "/sys/class/backlight/acpi_video0/", recursive=False)
        observer.start()
        try:
                while True:
                        time.sleep(1)
        except KeyboardInterrupt:
                observer.stop()
        observer.join()

4) меню -> програми запуску -> Додати

python the/path/of/the/script.py

0

У мене виникли проблеми з ноутбуком Sager і nVidia (з вимкненим Optimus, а драйвер nVidia не підтримував яскравість ACPI).

Встановіть incrontab (він переглядає файли та виконує, коли його змінено).

Потім напишіть сценарій:

#! /bin/sh
nvidia-settings -c :0 -n -a BacklightBrightness=`cat /sys/class/backlight/acpi_video0/brightness`

Я назвав це nvidia_brightness_sync.sh

Потім запустіть incrontab -e і додайте цей рядок:

/sys/class/backlight/acpi_video0/brightness IN_CLOSE_WRITE /usr/local/bin/nvidia_brightness_sync.sh

Тепер, коли змінюється яскравість ACPI, виконується програма налаштувань nvidia і яскравість регулюється таким чином :)

Зауважте, що я припускаю, що максимальна яскравість / sys становить 100, тобто 0 до 100

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