[РЕШЕНО] Как избавиться от залипания клавиши Fn в Linux?

Привет, всем. Я уже давно не на Арче, поэтому изначально прошу прощения, если оскорбляю чьи-то чувства. Проблема наблюдалась во всех дистрибутивах, в том числе на Арче.

Дело в чем, залипают комбинации клавиш управления громкостью: Fn+F6/F7/F8. Выглядит как будто нажал и не отпускаешь. Так и висит, пока не нажмешь работающую комбинацию с Fn. Все остальные функциональные клавиши (яркость, вкл/откл тачпад, Wi-Fi) с самого первого дня во всех дистрибутивах из коробки работали нормально, никаких проблем никогда не было. Ноутбук Samsung NP355V4C.

Проблема существует уже лет 5, последние пару лет на ноутбуке Fedora. Раньше пару лет сидел на Арче, тоже было. Всегда назначал другие комбинации клавиш, но надоело. На дворе уже 2017-ый, Wayland из коробки, видео нормально работает, энергосбережение более-менее, чего только нет - а такая мелочь так и не решилась.

На Windows все работает как надо.

Периодически гуглил все это время, не помогало, везде ступор, вот, например:
forum.oszone.net/thread-281759-4.html

РЕШЕНИЕ: http://archlinux.org.ru/forum/topic/16986/?page=4#post-179714
Всё меняется.
https://ubuntuforums.org/showthread.php?t=2050217
Понятия не имею, как осуществить этот финт ушами на другом дистрибутиве.
И да, тема не нашего форума.
Вот, думаю, тема, которая поможет решить проблему: [SOLVED] Keyboard issue - fn+key "KeyRelease" event not triggered
UPD: Я сильно не вникал, но, похоже, вот в этой статье если не решается сама проблема топика, то хотя бы раскрываются тех. детали темы. И есть ссылки на связанные с темой статьи в арч-вики.
toZen
https://ubuntuforums.org/showthread.php?t=2050217
Понятия не имею, как осуществить этот финт ушами на другом дистрибутиве.
И да, тема не нашего форума.
Читал, к сожалению не работает. Могу накатить арч - попытаться исправить, если получится - подумаю как перенести все это в федора.
Всё меняется.
kurych
Вот, думаю, тема, которая поможет решить проблему: [SOLVED] Keyboard issue - fn+key "KeyRelease" event not triggered
UPD: Я сильно не вникал, но, похоже, вот в этой статье если не решается сама проблема топика, то хотя бы раскрываются тех. детали темы. И есть ссылки на связанные с темой статьи в арч-вики.

Похоже на правду, но что-то я их не совсем понял.

Нашел keycode для своих клавиш:
^[[17~0x40 0xc0
^[[18~0x41 0xc1
^[[19~0x42 0xc2

Вывел информацию:
ls -l /sys/bus/serio/devices/serio*/force_release
-rw-r--r--. 1 root root 4096 Jan 13 08:38 /sys/bus/serio/devices/serio0/force_release

cat /sys/bus/serio/devices/serio0/force_release
130-132,134,136-137,177,179-180,197,213,247,249,369-370

Но не понимаю что делать дальше, у них так:
cat /sys/bus/serio/devices/serio0/force_release
369-370

echo 369-370,160,174,176 > /sys/bus/serio/devices/serio0/force_release

Откуда же они взяли эти числа - 160,174,176?...
Всё меняется.
xev запусти. Думаю, там найдешь нужные коды клавиш
Не уверен, что сделал все правильно, xev вывел это:
KeyRelease event, serial 36, synthetic NO, window 0x1800001,
    root 0x270, subw 0x0, time 392808, (692,331), root:(742,432),
    state 0x0, keycode 72 (keysym 0xffc3, F6), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x1800001,
    root 0x270, subw 0x0, time 394877, (692,331), root:(742,432),
    state 0x0, keycode 73 (keysym 0xffc4, F7), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 36, synthetic NO, window 0x1800001,
    root 0x270, subw 0x0, time 396504, (692,331), root:(742,432),
    state 0x0, keycode 74 (keysym 0xffc5, F8), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

Я так понял кейкоды это 72, 73, 74. Так что с ними дальше то делать?
Всё меняется.
improovizator
Откуда же они взяли эти числа — 160,174,176?...
Они получили сканкоды нужных клавиш ..... PS ... уточнение - комбинаций нужных клавиш
scan code: 0xA0   key code: mute
scan code: 0xAE   key code: volumedown
scan code: 0xB0   key code: volumeup
и перевели их из 16-ричной системы в 10-ричную систему
$ echo $((16#A0))
160
$ echo $((16#AE))
174
$ echo $((16#B0))
176
Ошибки не исчезают с опытом - они просто умнеют
В тайлинге, как правило, никакие комбинации с Fn не работают … но очень удобно, используя xbindkeys, заменить Fn на клавишу MOD (с той же комбинацией).... и никаких проблем …. клавиша Fn сама по себе очень капризная и привязана к железу
PS ... все, конечно, делают по-разному, но я обычно привязываюсь к мультимедийным клавишам (с заменой Fn на MOD)
PSS ... совсем старею как всегда, думаю одно, пишу другое ..... В тайлинге никакой xbindkeys НЕ НУЖЕН (это я тебе советую его использовать ...), там своя привязка, но как уже писал, привязываюсь к мультимедийным клавишам ...
Ошибки не исчезают с опытом - они просто умнеют
vasek
В тайлинге, как правило, никакие комбинации с Fn не работают …
Работают!
 
Зарегистрироваться или войдите чтобы оставить сообщение.