Nota: Este artículo fue publicado originalmente en 2016. Algunos pasos, comandos o versiones de software pueden haber cambiado. Consulta la documentación actual de Ubuntu para la información más reciente.
Resuelto: Hub USB 3.0 no reconoce teclado ni ratón en Linux Ubuntu
Uno de los problemas más confusos al usar Ubuntu Linux (especialmente en placas madre nuevas o equipos para criptominería) es perder inesperadamente las respuestas de entrada de los dispositivos. Tu ratón y teclado pueden funcionar perfectamente en el menú de la BIOS o en la pantalla inicial de GRUB, pero tan pronto como Ubuntu arranca o el instalador llega a la “Selección de idioma”, el teclado y el ratón USB se congelan o dejan de funcionar.
Esto sucede frecuentemente en sistemas que utilizan puertos USB 3.0 (puertos azules) en combinación con las modernas interfaces xHCI (Extensible Host Controller Interface). Cuando el kernel de Linux toma el control del hardware relevando a la BIOS, no logra inicializar correctamente el bus USB si la transición y compatibilidad xHCI no está configurada adecuadamente.
A continuación, te mostramos las soluciones paso a paso para corregir esto, ya sea que te encuentres instalando Ubuntu o si experimentas desconexiones usando un Hub USB en tu sistema actual.
Solución 1: Configuraciones en hardware y BIOS / UEFI
Si el teclado y ratón dejan de funcionar inmediatamente cuando inicia la interfaz gráfica de Ubuntu, es casi seguro que exista un problema entre la transferencia de la BIOS y el controlador USB de Linux. Para solucionarlo:
- Vuelve a conectarlos en puertos USB 3.0: La solución más común parece contradictoria. Desconecta tu ratón y teclado de los puertos USB 2.0 (negros) o de hubs externos, y conéctalos directamente en los puertos USB 3.0 (azules) en la parte trasera de la tarjeta madre.
- Habilita el soporte USB Legacy: Entra al menú de configuración en la BIOS / UEFI y asegúrate de que “USB Legacy Support” o “Legacy USB Support” esté seleccionado como Enabled (Habilitado).
- Apaga la función xHCI Hand-off: En tu BIOS, busca una opción llamada “xHCI Hand-off” (algunas veces ubicada en
Advanced -> USB Configuration). Si actualmente está Habilitada, apágala (Disabled). Si está deshabilitada, intenta encenderla. Esta opción determina si la BIOS o el Sistema Operativo (Ubuntu) administra el controlador USB 3.0.
Para muchos usuarios, simplemente conectar los periféricos en los puertos nativos USB 3.0 traseros y activar “Legacy mode” resuelve completamente el congelamiento de pantalla.
Solución 2: Forzar el reconocimiento de USB modificando parámetros del Kernel (IOMMU)
Si el ratón y el teclado de tu sistema dejan de funcionar aleatoriamente mientras usas Ubuntu, o si tienes un Hub USB 3.0 conectado que no funciona de manera correcta, es altamente probable que exista un conflicto con IOMMU. Necesitas decirle al kernel de Linux que asigne la memoria del sistema de forma diferente.
Si cuentas con acceso al sistema (usando otro teclado diferente temporal, conexión SSH, o el modo recuperación GRUB), sigue estos comandos:
- Abre la terminal de Linux y edita el archivo de configuración de GRUB ejecutando:
sudo nano /etc/default/grub - Identifica la línea que empieza por
GRUB_CMDLINE_LINUX_DEFAULT. Usualmente, la línea se ve así por default:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" - Agrega la instrucción
iommu=softadentro de las comillas. (Si estás utilizando un sistema con AMD, puedes intentar agregaramd_iommu=onen su lugar). La línea debería verse así:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash iommu=soft" - Guarda el archivo usando
Ctrl+Oy presionaEnter, luego cierra el editor conCtrl+X. - Actualiza GRUB y reinicia el sistema ejecutando:
sudo update-grubsudo reboot
Asegurarse de agregar el parámetro iommu=soft es la solución definitiva más consistente para reparar Hubs USB externos y adaptadores que se desconectan solos o no logran reconocer dispositivos en un entorno Ubuntu.