Como fazer com que os botões Fn da luz de fundo do teclado funcionem no Samsung Series 9?

17

Acabei de instalar o Ubuntu 12.10 no meu Samsung 900X4C. No entanto, não consigo que as luzes de fundo do teclado funcionem.

Adicionei os mapas de teclado de acordo com os documentos da comunidade - Samsung Series 9 (seção Teclas de função). Mas, independentemente de pressionar Fn + F9 ou F10 (diminuição / aumento da luz de fundo), recebo:

  1. Sem luzes no teclado
  2. O alternador no canto superior direito sempre aparece como o máximo (ou seja, "luz total")

Como você pode corrigir a luz de fundo do teclado? O botão Fan (Fn + F11) também não funciona, se você também souber sobre isso, seria ótimo.

mmalmeida
fonte
1
Eu estou tendo os mesmos problemas depois de seguir as mesmas instruções, mas com um Samsung Series 7.
Gabriel
1
O mesmo para mim, o estranho é que estava funcionando bem em instalações mais antigas do ubuntu. Acho que pode ter algo a ver com algumas mudanças no ubuntu.
Tomyo
O mesmo acontece com o 13.04 (também estou no Samsung 900X4C).
Alix Axel
Também em 900X4C. Tendo problemas com o botão wifi e o teclado, aumentar / diminuir. O backligt do teclado é definido no máximo o tempo todo, mas mesmo ao tentar diminuir. Ainda assim, não há luz ..
karlingen
1
Alguém nos fóruns do Ubuntu que pode seguir as instruções e se comunicar de maneira construtiva eficiente registrou suas experiências e observações para que a luz de fundo do teclado funcione com êxito. Aqui, o post # 278 de ubuntuforums.org/showthread.php?t=1737086&page=28 claramente fornece basicamente a mesma resposta que a de Geezanansa com mais detalhes.
user420420

Respostas:

8

Comprei exatamente o mesmo modelo (900X4C) há alguns dias e vi as teclas F9 / F10 com sucesso e também nem precisei instalar o samsung-toolspacote Voria / - apenas brinquei com o /lib/udev/keymaps/samsung-otherarquivo e o arquivo de liberação forçada correspondente.

Infelizmente, atrapalhei o processo de instalação (não estava executando o Ubuntu no modo UEFI e tive troca) e decidi reinstalar, desde então não consegui replicar a luz de fundo do teclado em funcionamento.

Eu apenas senti que isso era algo que pode ajudar outras pessoas com mais conhecimento a encontrar uma solução.


Aqui estão alguns recursos (talvez úteis) que me deparei:

Além disso, algumas experiências e resultados ...


Fazendo:

cat /sys/class/dmi/id/product_name

Devoluções:

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

Após uma nova instalação do Ubuntu 13.04 e atualização, é isso que recebo:

  • F1(Configurações) - Não funciona
  • F2 (- Brilho do ecrã)
  • F3 (+ Brilho da tela)
  • F4 (Alternar modo de vídeo)
  • F5 (Alternar Clickpad)
  • F6 (Mudo)
  • F7 (- Volume)
  • F8 (+ Volume)
  • F9(- Luz de fundo do teclado) - Não funciona
  • F10(+ Luz de fundo do teclado) - Não funciona
  • F11(Velocidade da CPU do ventilador / alternar) - Não funciona
  • F12(Alternar WiFi) - Não funciona

Também consegui obter os códigos de mapa de teclas corretos para este modelo exato, fazendo /lib/udev/keymap -i input/event3e reunindo a saída quando pressionei uma combinação de teclas 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

Você pode usar showkeypara pressionar a representação do código decimal da combinação.

Lembre-se de chamar os seguintes comandos posteriormente:

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

Estou meio que desistindo disso por enquanto, mas se alguém acertar, me avise!


PS: Enquanto experimentava, notei duas coisas interessantes:

  1. Se você comentar e recarregar todas as regras padrão do mapa de teclas, tudo continuará funcionando (por quê?)
  2. Se você usa as regras do github que eu mais gostei, depois de pressionar F9/ F10você não pode mais digitar em nenhum lugar

O ponto 2 me faz suspeitar que as chaves não estão sendo liberadas.

# 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.

O acima foi retirado /lib/udev/rules.d/95-keyboard-force-release.rules.

Alix Axel
fonte
@geezanansa: Como eu disse, criei a tabela keymap para as teclas FN - não funciona no 900X4C. Quanto ao kernel, eu não tentei, porque não tinha certeza de qual usar. E o samsung-laptopmódulo também é inútil nesta versão do modelo, não me pergunte por que, como eu não sei.
Alix Axel
@geezanansa: Eu acho que seria muito fácil supor que tentamos alterar os mapas de teclas da FN - o OP mencionou isso explicitamente e eu também (além de fornecer os códigos completos do mapa de teclas) - não tenho certeza de que adianta repetir algo para o qual a resposta é tão óbvia.
Alix Axel
1
@geezanansa: Certo ... Eu sei como o sistema de recompensas funciona, mas não vejo nenhuma resposta aqui que resolva o meu problema e o do OP. Desculpe se isso o incomoda a ponto de você precisar relatar essa tentativa de resposta, mas postar capturas de tela do Windows 8 no AskUbuntu e a mesma coisa básica que o OP e eu dissemos que não funcionou não é melhor.
Alix Axel
1
@geezanansa: O que eu postei não está no wiki da comunidade, mas de qualquer forma, vejo o representante como um meio para um fim (solução) e não o fim em si. Se nenhuma solução se apresenta, por que devo conceder a recompensa? Quanto a atualizar minha resposta com o que tentei, acho que fiz um trabalho abrangente nisso, pelo menos considerando meu conhecimento limitado do Linux / Ubuntu. Não sou o único aqui com o problema / falta de solução, só queria dar mais atenção ao problema que o OP estava tendo (e eu também). Da mesma forma, ele deve apenas marcar uma resposta como aceita, mesmo que isso não resolva o problema claramente?
Alix Axel
3

É possível que haja opções / configurações da bios para luz e ventilador?

Basta pesquisar no modelo do seu laptop no Google para obter resultados, incluindo páginas que mostram que seu laptop precisará de uma sala escura para a luz de fundo do teclado acender, pois existe um sensor para alternar automaticamente a luz de fundo do teclado de acordo com os níveis de luz disponíveis. Isso pode ser a causa do indicador mostrar níveis de brilho sem luz de fundo aparentemente funcionando. As configurações para essas opções estão disponíveis no Windows após a instalação das Configurações fáceis. Configurações fáceis da série 9

Você pode baixar o Easy Settings do site de fabricantes depois de verificar se possui o modelo exato ou se está na página certa para o seu modelo específico. Ou seja, se você possui um Windows para confirmar, pelo menos, tudo funciona como esperado.

A documentação da comunidade confirma que os scancodes são os mesmos para a série 9 e inclui seu modelo como sendo confirmado funcionando após a configuração, por exemplo, instalando o módulo do kernel e editando dois arquivos.
Aqui está uma citação de https://help.ubuntu.com/community/SamsungSeries9

Solução a Pergunta

Tente ler metodicamente os links publicados fornecidos. tente as outras opções. isto é, instruções alternativas através das quais há o post anterior vinculado, todos em ordem cronológica invertida, portanto vale a pena tentar ler os links nesta ordem:

  1. postagem anterior
  2. instruções alternativas
  3. https://help.ubuntu.com/community/SamsungSeries9

    Pode ser bom acrescentar combustível ao fogo na barra de lançamento

Portanto, como o Windows foi pré-instalado com o UEFI, a etapa 1 acima diz

UEFI e Grub2

Eu sabia que meu laptop tinha uma opção para suporte ao firmware UEFI, então ativei isso, porque UEFI é legal, certo? Então eu descobri que, se alguém usa o subsistema UEFI, o fedora volta a usar o grub-0.9x em vez do grub2, havia alguns problemas de compatibilidade, tanto quanto eu sei, então optei pela opção do BIOS herdado, porque realmente queria ter o grub2 inicializando meu sistema operacional.

e a resposta de @MrNice aqui citação;

Você não precisa carregar o módulo do kernel samsung_laptop. Este módulo no modo efi não funciona e grava em partes da memória, fazendo o kernel lançar uma exceção de verificação e entrar em pânico. Tem o mesmo problema com o arco. Mas então você perde a luz de fundo do teclado. Se você precisar, precisará reinstalar o Windows e o Ubuntu no modo BIOS.

ou tente diferentes parâmetros do kernel para obter o carregamento do módulo samsung-laptop. Citação de http://www.mjmwired.net/kernel/Documentation/kernel-parameters.txt

Parâmetros do kernel
2 ~~~~~~~~~~~~~~~~
3
4 A seguir, é apresentada uma lista consolidada dos parâmetros do kernel conforme implementados
5 (principalmente) pela macro __setup () e classificados na ordem do dicionário em inglês
6 (definido como ignorar todos os dígitos de pontuação e classificação antes das letras de uma
maneira que não diferencia maiúsculas de minúsculas) e com descrições onde conhecidas.
8
9 Os parâmetros do módulo para módulos carregáveis ​​são especificados apenas como o
nome do parâmetro 10 com opcional '=' e o valor conforme apropriado, como:
11
12 modprobe usbcore blinkenlights = 1
13
14 Parâmetros do módulo para módulos que são incorporados à imagem do kernel
15 são especificados na linha de comando do kernel com o nome do módulo mais
16 '.' além do nome do parâmetro, com '=' e valor, se apropriado, como:
17
18 usbcore.blinkenlights = 1

que não são relativos, mas acharam engraçado encontrá-los!

Significa que é hora da decisão! UEFI ou luz de fundo do teclado?

O uso da opção UEFI permitirá a instalação de versões recentes do Ubuntu.

O módulo samsung-laptop funciona apenas com o kernel 12.04 3.2 quando instalado no modo legado ou em versões anteriores com o kernel <= 3.2. (fonte: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1170885 ) Outro relatório de erro ( https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1012284 ) diz

Este erro foi corrigido no pacote linux - 3.2.0-27.43

geezanansa
fonte
1
-1, o OP está solicitando a luz de fundo do teclado (não da tela ). Além disso, tentei tudo o que você sugeriu e não ajudou em nada.
Alix Axel
2
Tudo funcionou como esperado no Windows 8. Ele possui um sensor, mas também permite alterar a luz de fundo manualmente. A rede sem fio também funciona (no Windows 8). A segunda captura de tela não faz isso (tentada pelo OP e por mim) e, como eu disse samsung-tools(mencionado no link linlap.com), não mostra nada relacionado à luz de fundo do teclado.
Alix Axel
2

Para fazer com que as teclas de função da luz de fundo do teclado funcionem em um modelo NP900X4B da Samsung Série 9 com Ubuntu 14.04 (Trusty Tahr), execute os seguintes comandos em um prompt de shell:

sudo setkeycodes e017 229
sudo setkeycodes e016 230

Se esses comandos funcionarem para você, convém colocá-los em um script init. Eu tenho um arquivo set-kbdillum-keycodes.conf em / etc / init, com o seguinte conteúdo:

# 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

O exemplo acima resolve o problema no NP900X4B. Se você tiver outro modelo e esta solução não funcionar no seu notebook, convém saber como obtive a solução para o NP900X4B e talvez adaptá-la ao seu modelo de notebook.

Antes de emitir os dois códigos de chave, se eu olhasse para o log do kernel (dizendo "tail -f /var/log/kernel.log" em uma janela do shell) e pressionasse as teclas de função da luz de fundo do teclado, veria mensagens como

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.

O primeiro par de mensagens apareceu quando eu pressionei a tecla Backlight Down do teclado. O segundo par de mensagens apareceu quando eu pressionei a tecla de luz de fundo do teclado. Foi assim que obtive a dica "use setkeycodes" e os valores de scancode e017 e e017. Esses valores do scancode precisam ser mapeados para os valores do código-chave. Eu recebi os códigos-chave correspondentes em /usr/include/linux/input.h:

#define KEY_KBDILLUMDOWN        229
#define KEY_KBDILLUMUP          230

Se você tiver outro modelo de notebook, poderá precisar usar outros valores de scancode. Os valores correspondentes do código-chave ainda devem ser os mesmos, pois esses são os valores conhecidos pelo kernel do Linux.

Francisco Reverbel
fonte
0

Primeiro tente instalar o Voira . Você pode obter o ppa aqui . Instale a luz de fundo samsung a partir daí.

se isso não funcionar, tente o seguinte:

Bem, como você sabe que tudo começa com o pressionamento de tecla, em um pressionamento de tecla, o teclado envia um sinal e o kernel do linux o capta e esse sinal é conhecido como scancode . O kernel possui seu próprio scancode para a tabela de mapeamento de código de chave, portanto, mapeia um certo scancode para um código de chave . O kernel usa o scancode para o mapeamento de código de chave - é chamado de mapa de chave .

Primeiro, você precisa criar uma tabela de mapas de teclas para chaves Fn específicas. Este link fornece a maneira exata de como criar uma tabela de mapas de teclas para chaves Fn específicas.

Mukund
fonte
Eu instalei a luz de fundo da samsung e não ajudou em nada. Eu nem consigo rodar. Só consigo rodar samsung-tools e ele mostra as combinações de teclas (Fn + ...) todas misturadas. Muito inútil.
Gabriel
1
@ Gabriel Você fez uma tabela de keymap para chaves fn específicas ???
Mukund
Tentei seguir as instruções no link que você apresentou. Quando eu digito, sudo /lib/udev/keymap -i input/event3o terminal começa a rolar automaticamente para baixo (como se a tecla Enter fosse pressionada continuamente) e depois que eu pressione Esc, não consigo ver a saída das teclas pressionadas porque não rolará para cima. Algum conselho? Obrigado.
Gabriel
Eu tentei samsung-tools, não parece fornecer nenhuma configuração de atalho para a luz de fundo do teclado. Não foi possível obter nada para trabalhar além do que já estava funcionando. Acho que o pacote do Voira é para a série 7 / 900x3, não li uma correção bem-sucedida para a versão 900x4c.
Alix Axel
Eu procurei no link da Amras e na documentação do Ubuntu por 'sudo / lib / udev / keymap -i input / event3' = nenhum resultado de pesquisa ctrl + f.
geezanansa
0

Finalmente encontrei uma solução para este problema!

O truque era reinstalar o Ubuntu com o modo CMS, em vez do modo UEFI. Você pode alterar essa configuração no BIOS. O meu foi definido como "UEFI e CMS". Mas mudei para "CMS" apenas e reinstalei o Ubuntu. Agora, a luz de fundo do meu teclado e seu indicador estão funcionando perfeitamente.

Viva!

karlingen
fonte
0

Solução alternativa parcial e moderadamente inconveniente: inicialize no Windows e acenda a luz de fundo, reinicie no linux e eles permanecem ativados

user238520
fonte