Hacer que la retroiluminación del teclado funcione en un Samsung

Hacer que la retroiluminación del teclado funcione en un Samsung

Recientemente compré un Samsung NP900X3N y estoy intentando que la luz de fondo funcione (con Linux Mint 18.1 y Kernel 4.10 en UEFI). He leído mucho sobre esto y soy consciente de que existen muchas páginas sobre ese tema, pero todas son antiguas (más de 3 años) y no pude hacer que ninguna de ellas funcionara para mí (tal vez porque esta versión de la computadora portátil es relativamente nuevo).

Algunas cosas que he probado son:

  • Descargué e instalé el samsung-toolspaquete, pero al ejecutarlo aparece un error después de aproximadamente 2 minutos sin resultados.
  • Intenté encontrar un samsung::kbd_backlight/brightnessarchivo de acuerdo conesta simple respuesta, pero aparentemente no hay ninguno (solo pude encontrar un phy0-led/brightness, que no sé qué hace pero que ya está configurado en 1).
  • he tratado de seguiresta guíaen un enfoque muy manual, pero para ser honesto no pude llegar muy lejos (probablemente por falta de conocimiento de mi parte, pero debe haber un enfoque menos complicado)
  • Verificar el código de escaneo de la clave verificando el registro del kernel como lo sugiereesta respuesta.

Este último es el que más se acercó y en el que me gustaría profundizar más. Al presionar fn+f9(alternar la retroiluminación del teclado), obtengo el código de escaneo e02casignado a esa tecla. Así que lo hice

sudo setkeycodes e02c 230

como lo sugierela respuesta. Entonces, cuando presiono esta tecla, recibo una notificación que muestra un símbolo de luz en el teclado, lo cual creo que es una buena señal, pero no sucede nada.

Como indica la pregunta, el valor del código clave 230 es para aumentar kbdlight, pero mi computadora portátil no tiene eso: solo tiene la tecla de alternancia kbdlight. Entonces creo que este podría ser el problema, pero no puedo encontrar un código clave para "alternar" (lo que podría deberse a mi incapacidad para comprenderlo /usr/include/linux/input.hcompletamente).

Intenté usar xmodmap -pke | lesspara encontrar "alternar retroiluminación del teclado", que aparece como código clave 236, pero aparentemente los números en esa lista realmente no funcionan.

¿Alguna sugerencia?

EDITAR

Salida de ll /sys/class/backlight/:

lrwxrwxrwx  1 root root 0 Apr 28 07:16 intel_backlight -> ../../devices/pci0000:00/0000:00:02.0/drm/card0/card0-eDP-1/intel_backlight/

Ya había intentado cambiar el valor en /sys/class/backlight/brightness, pero esto sólo controla el brillo de la pantalla.

Salida de ll /sys/class/leds/:

lrwxrwxrwx  1 root root 0 Apr 28 07:19 input3::capslock -> ../../devices/platform/i8042/serio0/input/input3/input3::capslock/
lrwxrwxrwx  1 root root 0 Apr 28 07:19 input3::numlock -> ../../devices/platform/i8042/serio0/input/input3/input3::numlock/
lrwxrwxrwx  1 root root 0 Apr 28 07:19 input3::scrolllock -> ../../devices/platform/i8042/serio0/input/input3/input3::scrolllock/
lrwxrwxrwx  1 root root 0 Apr 28 07:19 phy0-led -> ../../devices/pci0000:00/0000:00:1c.0/0000:01:00.0/leds/phy0-led/

El bloqueo de mayúsculas es lo que dice (lo he probado). El bloqueo numérico no parece hacer nada, ya que cambié el valor de 0 al máximo y no pasó nada (mi teclado no tiene bloqueo numérico. El bloqueo de desplazamiento tampoco parece hacer nada. Tampoco lo sé qué phy0-led. Ya está configurado en 1 y poner 0 no parece hacer nada.

EDITAR2

Al hacerlo modprobe samsung-laptopme da el error de seguir

modprobe: ERROR: could not insert 'samsung_laptop': No such device

que parece ser unviejo error.

Respuesta1

Hay dos partes para poder controlar la retroiluminación con teclas especiales del teclado:

  • comprender los eventos que se producen cuando se presionan las teclas
  • en realidad cambiar la intensidad de la luz de fondo

Y necesita un programa, por ejemplo un administrador de ventanas, que reaccione a los eventos y luego cambie la intensidad.

Estás bien en la primera parte, obtienes un evento y podemos solucionar las traducciones necesarias más adelante. En cuanto a la segunda parte, necesita algún controlador que sepa cómo controlar la intensidad de la luz de fondo y luego alguna interfaz con este controlador.

Muy a menudo, estos se encuentran en la /sysjerarquía, así que intente

ll /sys/class/backlight
ll /sys/class/led

y edite su pregunta con el resultado. Estos directorios deben contener enlaces a otros directorios con un archivo llamado brightnessy un archivo llamado max_brightness. Si no puede descifrar qué es por el nombre, mire el contenido de max_brightnessy, como raíz, intente escribir números entre 0 y el valor máximo en cada uno de esos archivos como

echo 0 > /sys/class/led/phy0-led/brightness

y vea si puede identificar qué controla.

Editar:

Ok, parece que no hay controles para la retroiluminación del teclado y necesitas un controlador específico. phy0-ledEs muy probable que sea un conector LED WLAN, que puede estar conectado o no a algo. Puede consultar lspciy buscar el dispositivo en 00:1c.0.

Los samsung::kbd_backlightcontroles son proporcionados por elasus-wmicontrolador para portátiles ASUS que utilizan la interfaz WMI. Elesalgo similar para Samsung, a saberportátil-samsung, proporciona leds/samsung::kbd_backlight, y también hay una debugfsinterfaz para un acceso más directo.

No tengo idea si esto funcionará en tu modelo. Intentar

modprobe samsung-laptop

como root, verifique lsmodsi está cargado, mire dmesgpara ver si hubo algún problema u otros mensajes, y vea si aparece algo.

información relacionada