Как сделать клавиатуру подсветкой Кнопки Fn работают в Samsung Series 9?

17

Я только что установил Ubuntu 12.10 на свой Samsung 900X4C. Однако я не могу заставить подсветку клавиатуры работать.

Я добавил раскладки клавиатуры по документам сообщества - Samsung Series 9 (раздел Функциональные клавиши). Но независимо от нажатия Fn + F9 или F10 (уменьшение / увеличение подсветки), я получаю:

  1. Отсутствие света на клавиатуре
  2. Toggler в верхнем правом углу всегда всплывает как максимальный (т. е. «полный свет»)

Как вы можете исправить подсветку клавиатуры? Кнопка Fan (Fn + F11) тоже не работает, если вы также знаете об этом, это было бы здорово.

    
задан mmalmeida 27.12.2012 в 17:51
источник

6 ответов

8

Я купил ту же самую модель (900X4C) пару дней назад, и я успешно видел клавиши F9 / F10, и мне даже не пришлось устанавливать пакет Voria / samsung-tools - я просто с файлом /lib/udev/keymaps/samsung-other и соответствующим файлом принудительного освобождения.

К сожалению, я испортил процесс установки (я не запускал Ubuntu в режиме UEFI, и у меня был своп), и я решил переустановить, так как тогда мне не удалось воспроизвести рабочую подсветку клавиатуры.

Я просто чувствовал, что это то, что может помочь другим более осведомленным, чтобы найти решение.

Вот несколько (возможно полезных) ресурсов, с которыми я столкнулся:

Кроме того, несколько экспериментов и результатов ...

Doing:

cat /sys/class/dmi/id/product_name

Возврат:

900X3C/900X3D/900X3E/900X4C/900X4D (matched by samsung-other)

После новой установки Ubuntu 13.04 и обновления это то, что я получаю:

  • F1 (Настройки) - Не работает
  • F2 (- Яркость экрана)
  • F3 (+ Яркость экрана)
  • F4 (включить режим видео)
  • F5 (Toggle Clickpad)
  • F6 (Отключить звук)
  • F7 (- Volume)
  • F8 (+ объем)
  • F9 (- Подсветка клавиатуры) - Не работает
  • F10 (+ подсветка клавиатуры) - Не работает
  • F11 (Fan / Toggle CPU Speed) - Не работает
  • F12 (Toggle WiFi) - Не работает

Мне также удалось получить правильные коды клавиатуры для этой точной модели, выполнив /lib/udev/keymap -i input/event3 и собрав вывод, когда я нажал комбинацию FN + Fx :

0xCE    prog1           # F1
0x89    brightnessdown  # F2
0x88    brightnessup    # F3
0x82    switchvideomode # F4
0xF7    f22             # F5
0xF9    f23             # F5
0xA0    mute            # F6
0xAE    volumedown      # F7
0xB0    volumeup        # F8
0x97    kbdillumdown    # F9
0x96    kbdillumup      # F10
0xB3    prog3           # F11, "silent" isn't recognized
0xD5    wlan            # F12

Вы можете использовать showkey для получения кода десятичного для нажатой комбинации.

Не забудьте впоследствии вызвать следующие команды:

sudo udevadm control --reload-rules
sudo /lib/udev/keymap input/event3 /lib/udev/keymaps/samsung-other

Я как бы отказываюсь от этого на данный момент, но если кто-нибудь это исправит, дайте мне знать!

PS: Во время экспериментов я заметил только 2 интересных вещи:

  1. Если вы прокомментируете и перезагрузите все правила клавиатуры по умолчанию, все еще работает (почему?)
  2. Если вы используете правила github, которые мне нравились, как только вы нажимаете F9 / F10 , вы больше не можете вводить где-либо

Точка №2 заставляет меня подозревать, что ключи не освобождаются.

# Set model specific atkbd force_release quirk
#
# Several laptops have hotkeys which don't generate release events,
# which can cause problems with software key repeat.
# The atkbd driver has a quirk handler for generating synthetic
# release events, which can be configured via sysfs since 2.6.32.
# Simply add a file with a list of scancodes for your laptop model
# in /usr/lib/udev/keymaps, and add a rule here.
# If the hotkeys also need a keymap assignment you can copy the
# scancodes from the keymap file, otherwise you can run
# /usr/lib/udev/keymap -i /dev/input/eventX
# on a Linux vt to find out.

Выше было взято из /lib/udev/rules.d/95-keyboard-force-release.rules .

    
ответ дан Alix Axel 28.07.2013 в 11:29
3

Возможно ли, что существуют опции / настройки BIOS для освещения и вентилятора?

Просто скачайте модель вашего ноутбука, показывающую результаты, включая страницы, которые показывают, что вашему ноутбуку потребуется затемненная комната для подсветки клавиатуры, поскольку есть датчик для автоматического переключения подсветки клавиатуры в соответствии с доступными уровнями освещения. Это может быть причиной показания индикатора уровня яркости без видимой рабочей подсветки. Настройки для них доступны через Windows после установки Easy Settings.

Вы можете загрузить Easy Settings из веб-мастеров после того, как убедитесь, что у вас есть точная модель или находятся на правильной странице для вашей конкретной модели. То есть, если у вас есть Windows, чтобы, по крайней мере, подтвердить, что все работает должным образом.

Документация сообщества подтверждает, что scancodes по крайней мере одинаковы для 9 серий и включают вашу модель в качестве подтвержденной работы после настройки, то есть установки модуля ядра и редактирования двух файлов.
Вот цитата из Ссылка

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

  1. предыдущий пост
  2. альтернативные инструкции
  3. Ссылка

    Это может быть хорошей идеей пойти и добавить топливо в огонь на стартовой панели

Так как окна были предварительно установлены с UEFI, следующим за шагом 1 сверху,

  

UEFI и Grub2

Я знал, что у моего ноутбука есть опция для поддержки прошивки UEFI, поэтому я включил это, потому что UEFI классный, не так ли? Затем я обнаружил, что если вы используете подсистему UEFI, Fedora возвращается к использованию grub-0.9x, а не grub2, некоторые проблемы совместимости были, насколько я знаю, поэтому я пошел на устаревшую версию BIOS, потому что я действительно хотел иметь grub2 Загрузка моей ОС.

и ответ от @MrNice здесь quote;

  

Вам не нужно загружать модуль ядра samsung_laptop. Этот модуль в режиме efi не работает так, как он идет, и записывайте в части памяти, заставляя ядро ​​бросать исключение проверки и панику. Иметь ту же проблему с аркой. Но тогда вы теряете подсветку клавиатуры. Имхо, если вам нужно, вам придется переустановить оба окна и ubuntu в режиме BIOS.

или попробуйте различные параметры ядра, чтобы загрузить загрузку модуля samsung-laptop. Цитата из Ссылка

  

Параметры ядра
  2 ~~~~~~~~~~~~~~~~~
  3
  4 Ниже представлен сводный список параметров ядра, реализованный в   5 (главным образом) макросом __setup () и отсортированным по английскому словарю

  6 (определяется как игнорирование всех знаков препинания и сортировки перед буквами в   7 без учета регистра) и с описаниями, где известны.
  8
  9 Параметры модуля для загружаемых модулей указаны только как   10 с необязательным значением «=» и значением, соответствующим, например:
  11
  12 modprobe usbcore blinkenlights = 1
  13
  14 Параметры модуля для модулей, встроенных в образ ядра   15 указаны в командной строке ядра с именем модуля плюс   16 '.' плюс имя параметра, с '=' и значением, если это необходимо, например:
  17
  18 usbcore.blinkenlights = 1

, которые не являются относительными, но считали забавным, когда они находили это!

Значит, время решения! UEFI или подсветка клавиатуры?

Использование опции UEFI позволит установить последние выпуски Ubuntu.

Модуль samsung-laptop работает только с ядром 12.04 3.2 при установке в унаследованном режиме или более ранних версиях с ядром = lt; = 3.2. (источник: Ссылка ) Еще один отчет об ошибке ( Ссылка ) говорит

  

Эта ошибка была исправлена ​​в пакете linux - 3.2.0-27.43

    
ответ дан geezanansa 13.04.2017 в 12:23
1

Чтобы клавиши функций подсветки клавиатуры работали на модели Samsung Series 9 NP900X4B с Ubuntu 14.04 (Trusty Tahr), запустите следующие команды из командной строки:

sudo setkeycodes e017 229
sudo setkeycodes e016 230

Если эти команды работают для вас, вы можете захотеть поместить их в сценарий инициализации. У меня есть файл set-kbdillum-keycodes.conf в / etc / init со следующим содержимым:

# set-kbdillum-keycodes - set keycodes for keyboard illumination up/down keys
#
# This task is a workaround for a key mapping bug 
# in the Samsung Series 9 notebook model NP900X4B

description "set keycodes for keyboard illumination up/down keys"

start on (startup 
          and started udev)

task
script
    /usr/bin/setkeycodes e017 229
    /usr/bin/setkeycodes e016 230
end script

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

Перед выпуском двух кодов настроек, если я посмотрел на журнал ядра (говоря «tail -f /var/log/kernel.log» в окне оболочки) и нажал функциональные клавиши подсветки клавиатуры, я увижу такие сообщения а

Aug  5 20:24:59 ubuntu kernel: [  152.458145] atkbd serio0: Unknown key pressed (translated set 2, code 0x97 on isa0060/serio0).
Aug  5 20:24:59 ubuntu kernel: [  152.458158] atkbd serio0: Use 'setkeycodes e017 <keycode>' to make it known.
Aug  5 20:25:01 ubuntu kernel: [  154.248439] atkbd serio0: Unknown key pressed (translated set 2, code 0x96 on isa0060/serio0).
Aug  5 20:25:01 ubuntu kernel: [  154.248452] atkbd serio0: Use 'setkeycodes e016 <keycode>' to make it known.

Первая пара сообщений появилась, когда я нажал клавишу подсветки клавиатуры. Вторая пара сообщений появилась, когда я нажал клавишу подсветки клавиатуры. Вот как я получил подсказку «use setkeycodes» и значения scarkode e017 и e017. Эти значения scancode необходимо сопоставить с значениями кода клавиатуры. Я получил соответствующие коды ключей из /usr/include/linux/input.h:

#define KEY_KBDILLUMDOWN        229
#define KEY_KBDILLUMUP          230

Если у вас есть другая модель ноутбука, возможно, вам придется использовать другие значения scancode. Соответствующие значения кодового знака должны быть одинаковыми, так как это значения, известные ядру Linux.

    
ответ дан Francisco Reverbel 07.08.2014 в 05:42
0

Сначала попробуйте установить Voira . Вы можете получить ppa здесь . Установите там samsung-backlight.

, если это не работает, попробуйте следующее:

Ну, как вы знаете, все начинается с нажатия клавиши, поэтому нажатие клавиши на клавиатуре посылает сигнал, а ядро ​​linux подбирает его, и этот сигнал известен как scancode . Ядро имеет собственную таблицу scancode для сопоставления кодов клавиш, поэтому он сопоставляет определенный scancode с keycode . Ядро использует scancode для сопоставления кодов клавиш - это называется раскладка .

Сначала вам нужно сделать таблицу раскладок для определенных ключей Fn. Это link дает точный способ создания таблицы клавиатуры для определенных ключей Fn.

    
ответ дан Mukund 06.01.2013 в 10:27
0

Наконец нашел решение этой проблемы!

Уловкой было переустановить Ubuntu с CMS-режимом вместо UEFI-режима. Вы можете изменить этот параметр в BIOS. Шахта была установлена ​​как «UEFI и CMS». Но я изменил его только на «CMS» и переустановил Ubuntu. Теперь моя подсветка клавиатуры и ее индикатор работают отлично.

Ура!

    
ответ дан karlingen 22.09.2013 в 19:45
0

Частичное и умеренно неудобное обходное решение: загрузитесь в окна и включите подсветку, затем перезагрузитесь в Linux и оставайтесь на

    
ответ дан user238520 24.01.2014 в 09:37