web-dev-qa-db-ja.com

Samsung Series 9でキーボードのバックライトFnボタンを機能させる方法は?

Samsung 900X4CにUbuntu 12.10をインストールしました。ただし、キーボードのバックライトを動作させることはできません。

community docs-Samsung Series 9 (セクションFunction Keys)に従ってキーマップを追加しました。しかし、Fn + F9またはF10(バックライトの減少/増加)を押しても、

  1. キーボードにライトがありません
  2. 右上隅のトグルは、常に最大値としてポップアップします(つまり、「フルライト」)

キーボードのバックライトを修正するにはどうすればよいですか? Fanボタン(Fn + F11)も機能しません。もしそれが素晴らしいとわかっているなら。

17
mmalmeida

数日前にまったく同じモデル(900X4C)を購入し、F9/F10キーが正常に機能することを確認しました。Voria/ samsung-toolsパッケージをインストールする必要もありませんでした-/lib/udev/keymaps/samsung-otherファイルおよび対応する強制リリースファイル。

残念ながら、インストールプロセスを台無しにして(UbuntuをUEFIモードで実行していなかったため、スワップしました)、再インストールすることにしました。それ以来、動作中のキーボードバックライトを複製できませんでした。

私はそれが他の人が解決策を見つけるのにもっと知識があるのを助けるかもしれない何かだと感じました。


ここに私が出会ったいくつかの(おそらく有用な)リソースがあります:

また、いくつかの実験と結果...


やること:

cat /sys/class/dmi/id/product_name

返却値:

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

Ubuntu 13.04の新規インストールおよび更新後、これは私が得るものです:

  • F1 (設定)-動作しない
  • F2 (-画面の明るさ)
  • F3 (+画面の明るさ)
  • F4 (ビデオモードの切り替え)
  • F5 (クリックパッドの切り替え)
  • F6 (ミュート)
  • F7 (-ボリューム)
  • F8 (+ボリューム)
  • F9 (-キーボードバックライト)-動作しない
  • F10 (+キーボードバックライト)-動作しない
  • F11 (ファン/ CPU速度の切り替え)-動作しない
  • F12 (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を使用して、押された組み合わせのdecimalコード表現を取得できます。

その後、次のコマンドを忘れずに呼び出してください。

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から取られました。

8
Alix Axel

光とファンのBIOSオプション/設定は可能ですか?

ラップトップモデルを単にグーグルで検索すると、使用可能な照明レベルに応じてキーボードバックライトを自動的に切り替えるセンサーがあるため、キーボードバックライトを点灯するために暗い部屋が必要であることを示すページを含む結果が表示されます。これは、明らかに動作するバックライトがない輝度レベルを示すインジケータの原因である可能性があります。これらの設定は、簡単設定をインストールした後、Windowsから利用できます。 Series 9 Easy Settings

正確なモデルがあること、または特定のモデルの適切なページにあることを確認した後、 manufacturers webite からEasy Settingsをダウンロードできます。それは、少なくともすべてが期待どおりに機能することを確認するために使用するWindowsがある場合です。

コミュニティドキュメントでは、少なくとも9シリーズのスキャンコードが同じであることが確認されており、構成後、つまりカーネルモジュールのインストールと2つのファイルの編集後に機能することが確認されているモデルが含まれています。
こちらは https://help.ubuntu.com/community/SamsungSeries9 からの引用です

Solution to Question

投稿されたリンクを慎重に読んでください。他のオプションを試してください。すなわち 代替命令 リンクがあります 前の投稿 これらはすべて逆の時系列順なので、この順序でリンクを読む価値があるかもしれません:

  1. 前の投稿
  2. 代替命令
  3. https://help.ubuntu.com/community/SamsungSeries9

    launchpad で火に燃料を追加するのは良いことかもしれません

したがって、上記のステップ1に続いて、WindowsにはUEFIがプリインストールされているため、

UEFIおよびGrub2

私のラップトップにはUEFIファームウェアサポートのオプションがあることを知っていたので、UEFIがクールだからこれをオンにしましたか?その後、UEFIサブシステムを使用する場合、Fedoraはgrub2ではなくgrub-0.9xを使用するようにフォールバックすることを発見しました。 OSを起動します。

そして@MrNiceからの回答 here quote;

Samsung_laptopカーネルモジュールをロードしないでください。 efiモードのこのモジュールは、メモリの一部に書き込み、カーネルにチェック例外とパニックをスローさせるため、動作しません。 Archでも同じ問題があります。ただし、キーボードのバックライトが失われます。必要な場合は、WindowsとUbuntuの両方をBIOSモードで再インストールする必要があります。

または、さまざまなカーネルパラメータを試して、samsung-laptopモジュールをロードします。 http://www.mjmwired.net/kernel/Documentation/kernel-parameters.txt からの引用

カーネルパラメーター
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モジュールは、レガシーモードまたはそれ以前のリリース(<= 3.2カーネル)でインストールされた場合、12.04 3.2カーネルでのみ動作します。 (ソース: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1170885 )別のバグレポート( https://bugs.launchpad.net/ ubuntu/+ source/linux/+ bug/1012284 )言う

このバグはパッケージlinux-3.2.0-27.43で修正されました

3
geezanansa

Ubuntu 14.04(Trusty Tahr)を搭載したSamsung Series 9モデルNP900X4Bでキーボードバックライトファンクションキーを機能させるには、シェルプロンプトから次のコマンドを実行します。

Sudo setkeycodes e017 229
Sudo setkeycodes e016 230

これらのコマンドが機能する場合は、initスクリプトに入れてください。/etc/initに次の内容のファイルset-kbdillum-keycodes.confがあります。

# 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のソリューションをどのように入手したかを知り、おそらくノートブックモデルに適合させてください。

2つのsetkeycodeを発行する前に、カーネルログを見て(シェルウィンドウで「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.

メッセージの最初のペアは、キーボードのバックライトダウンキーを押したときに表示されます。キーボードのバックライトアップキーを押すと、メッセージの2番目のペアが表示されました。これが、「setkeycodesを使用」ヒントとスキャンコード値e017およびe017を取得した方法です。これらのスキャンコード値は、キーコード値にマッピングする必要があります。 /usr/include/linux/input.hから対応するキーコードを取得しました。

#define KEY_KBDILLUMDOWN        229
#define KEY_KBDILLUMUP          230

別のノートブックモデルがある場合は、他のスキャンコード値を使用する必要がある場合があります。対応するキーコード値は、Linuxカーネルが認識している値であるため、依然として同じである必要があります。

2

最初にVoiraをインストールしてみてください。ppa here を取得できます。そこからsamsung-backlightをインストールします。

うまくいかない場合は、これを試してください:

あなたが知っているように、すべてがキーを押すことで始まるので、キーを押すとキーボードが信号を送信し、Linuxカーネルがそれを拾い上げ、この信号はとして知られていますscancode。カーネルには独自のscancodeto keycode mapping tableがあるため、特定のスキャンコードをkeycodeにマッピングします。カーネルはscancodeを使用しますキーコードへのマッピング–keymapと呼ばれます。

まず、特定のFnキー用のキーマップテーブルを作成する必要があります。この link は、特定のFnキー用のキーマップテーブルを作成する正確な方法を提供します。

0
Mukund

部分的でやや不便な回避策:Windowsを起動してバックライトをオンにしてから、Linuxを再起動しても点灯したままになる

0
user238520

最後に、この問題の解決策を見つけました!

コツは、UEFIモードではなくCMSモードでUbuntuを再インストールすることでした。 BIOSでこの設定を変更できます。私は「UEFIとCMSの両方」に設定されていました。しかし、「CMS」のみに変更し、Ubuntuを再インストールしました。これで、キーボードのバックライトとそのインジケータが完全に機能します。

ほら!

0
karlingen