Яркость сочетания клавиш не работает на ноутбуке 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)

Какой графический процессор у вас есть?
Кай

@Kai Я добавил соответствующую информацию в вопросе.
Ионика Бизэ

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

Вот пара моих обходных путей. Надеюсь, вы найдете это полезным
Сергей Колодяжный,

Отлично, 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
Gobinath

Я могу подтвердить, что решение работает с 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 вы найдете 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 установить xbacklight xbacklight -set 50

Затем откройте Настройки> клавиатура> ярлыки

Добавьте пользовательские сочетания клавиш и введите следующие команды: введите описание изображения здесь

xbacklight -dec 10

xbacklight -inc 10


Я знаю, как изменить яркость (из пользовательского интерфейса и из xbacklight). Кроме того, я не могу сопоставить пользовательские сочетания fnклавиш. Я уже попробовал это. :-(
Ионика Бизэ

Не используйте клавишу fn, используйте что-то другое
Tejas Ghalsasi

ALT + F5, ALT + F6 уже установлены, но я хочу, чтобы клавиша fn работала ...
Ionică Bizeve

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ă Bizau

Если у вас Asus N56JR, не устанавливайте проприетарный драйвер. Это заставит ваш X-сервер больше не загружаться. Используйте askubuntu.com/questions/41681/… чтобы это исправить.
Майкл С.

1

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

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


Вы пробовали ядро ​​4.9 с патчами Intel, как я предлагал выше? Это должно исправить многие проблемы, без лишних проблем с файлами конфигурации или параметрами ядра ...
Винсент Джеррис

@ user163217 Спасибо за обновление. Я не сделал этого, потому что в настоящее время я использую Ubuntu 16.04, которая использует старое ядро. Но я обязательно буду помнить об этом, когда собираюсь обновить свою систему. Благодарность!
Audax

Нет абсолютно никаких причин, почему более новое ядро ​​не работает :). За некоторыми исключениями между основными версиями, вы можете запустить любое 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команду в VT.

вернуться к X. ( Ctrl+ Alt+ F7)?

В KDE вернитесь к settings > configure desktop > shortcuts > Global shortcuts > power management. Уменьшить яркость экрана (установить по умолчанию) Увеличить яркость экрана (установить по умолчанию).

Это все, что нужно. Надеюсь это поможет.


1

Сначала попробуйте этот метод графического интерфейса, если вам не подходит терминал:

  1. Нажмите на системное меню в верхнем правом углу окна рабочего стола.
  2. Открыть системные настройки
  3. Нажмите на мощность
  4. Нажмите на всплывающую подсказку Яркость экрана, если она есть
  5. Нажмите «затемнить экран для экономии энергии», чтобы переключить его в положение выключения

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

Или, если на вашем компьютере нет всплывающей подсказки, которая позволяет вам отключить ее по отдельности, посмотрите, позволит ли вам отключить весь расширенный аппаратный контроль для сброса файла конфигурации, а затем, когда / если функциональность ключа вернется, посмотрите, может снова включить его и при этом работать с функциональными клавишами.

Если вы все еще хотите, чтобы расширенный аппаратный интерфейс управления AHCI уменьшал яркость дисплея для экономии энергии, попробуйте снова повернуть тумблер в положение «включено» и проверить, что он все еще работает; если ваша машина совместима с ahci, вы должны обнаружить, что они по-прежнему работают так, как рекламируется.

Если они снова перестают работать и не отвечают, вам, возможно, придется начать заново, заново открыв системные настройки или даже выйдя из системы и перезагрузившись, но как только они начнут работать снова, они должны продолжить работать и быть сохранены в linux и готовы снова работать на следующей загрузке, если только вы не измените привязки клавиш как-то между собственным сбросом и следующей загрузкой

Это обычно происходит после ошибочного завершения работы, когда временные изменчивые файлы конфигурации не удалось сохранить или они были сохранены с настройками, которые конфликтовали с привязками клавиш собственного BIOS, после некоторых изменений устройства ввода, выполненных с помощью Accessibility или другого инструмента Tweak, поэтому отключение программное управление должно сбросить его до аппаратного контроля.

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

Но после этого ссылка на родную функцию bios по умолчанию теперь должна быть восстановлена ​​в конфигурационных файлах 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-settings, и яркость регулируется таким образом :)

Обратите внимание, что я предполагаю, что / sys max_brightness равно 100, то есть от 0 до 100

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.