Cómo solucioné el problema del Keychron V6 Max con el launcher en Arch Linux

Teclado Keychron V6 Max sobre escritorio
3 min. Lectura
0 Vistas
0 Valoración

Después de pelearme un buen rato con mi teclado y el launcher web de Keychron, por fin di con la solución. Si usas Arch Linux (o una distro similar) y el teclado aparece como conectado pero no termina de funcionar en el launcher… esto te interesa.

El problema

El escenario era el siguiente:

  • El navegador detectaba el dispositivo HID.
  • Aparecía el mensaje tipo "HID Device Connected".
  • Pero el ID mostraba algo como 0000-0000.
  • El layout no cargaba.
  • El teclado no era configurable desde el launcher.

Es decir: el sistema veía el teclado, pero el navegador no podía usarlo realmente.

Y eso en Linux casi siempre significa lo mismo: permisos.

Diagnóstico rápido

Primero comprobé si algún proceso estaba usando el dispositivo:

sudo fuser -v /dev/hidraw*

Nada sospechoso.

Después revisé los permisos reales:

ls -l /dev/hidraw*

Y ahí estaba el problema. Muchos dispositivos hidraw aparecían así:

crw------- 1 root root ...

Eso significa que solo root puede acceder. Y si Chrome no puede abrir el endpoint HID… el launcher no puede hacer nada.

La causa real

Mi regla udev era esta:

SUBSYSTEM=="hidraw", ATTRS{idVendor}=="3434", TAG+="uaccess"

En teoría funciona. En la práctica (según entorno gráfico y configuración de logind), puede que no aplique correctamente los permisos. En mi caso, no los estaba aplicando.

La solución definitiva

La solución fue crear una regla udev explícita y añadir mi usuario al grupo correcto.

1. Regla udev correcta

Editar el archivo de reglas:

sudo nano /etc/udev/rules.d/99-keychron.rules

Y dejarlo así:

SUBSYSTEM=="hidraw", ATTRS{idVendor}=="3434", MODE="0660", GROUP="input"

Esto fuerza que los dispositivos HID del teclado tengan permisos de lectura/escritura y pertenezcan al grupo input.

2. Añadir el usuario al grupo input

sudo usermod -aG input tu_usuario

⚠️ Importante: hay que cerrar sesión completamente (logout real o reinicio). Si no, el grupo no se aplica.

3. Recargar reglas

Después de volver a entrar:

sudo udevadm control --reload-rules
sudo udevadm trigger

Ahora los dispositivos deberían verse así:

crw-rw---- 1 root input ...

Y el comando groups debe incluir input en la lista.

Resultado

Después de esto:

  • Cerré Chrome completamente.
  • Conecté el teclado en modo cable.
  • Abrí el launcher.
  • Seleccioné el dispositivo correcto (no el dongle 2.4G).

Y… bingo. El layout cargó perfectamente.

Qué estaba pasando realmente

El navegador detectaba el dispositivo HID, pero no podía abrir el descriptor real por falta de permisos. Por eso aparecía ID: 0000-0000. Es un síntoma clásico de permisos en /dev/hidraw.

En Linux, si algo USB se detecta pero la aplicación no puede usarlo, en el 90% de los casos es un problema de udev o de grupos.

Conclusión

Si usas Arch Linux y el launcher web no conecta correctamente:

  1. Revisa permisos en /dev/hidraw*
  2. Crea una regla udev explícita
  3. Añade tu usuario al grupo input
  4. Haz logout completo

Y debería funcionar sin necesidad de flashear firmware ni usar soluciones raras.

Si este post te ahorra una hora de frustración, misión cumplida 😄

¿Te ha sido útil?

Ayúdame a mejorar con tu puntuación y comentarios.

0.0 (0 votos)
Jaume Ferré

Jaume Ferré

Soy un entusiasta de las nuevas tecnologías, apasionado por explorar su potencial innovador. Colecciono CDs en formato físico y disfruto creando mezclas musicales. Además, la fotografía es otra de mis pasiones, capturando momentos y expresiones con cada disparo. ¡Gracias por leerme!

Comentarios

Los comentarios están gestionados por GitHub Discussions. Necesitas una cuenta de GitHub para participar. ¡Es gratis y rápido!