Recientemente cambié la PC que utilizo en mi trabajo por una portátil Lenovo G40 y decidí instalarle Ubuntu 14.04, encontrándome con que el WiFi no funciona correctamente: aparece como desactivado por el interruptor físico. Probé actualizando el kernel a 4.0 y también con Ubuntu 15.04 y CentOS 7.1 obteniendo resultados similares.

Por lo cual me dispuse a investigar sobre el problema y su solución. Con un lspci encontré el modelo de la tarjeta:

Realtek Semiconductor Co., Ltd. RTL8723BE PCIe Wireless Network Adapter

Y en internet encontré un sin fin de soluciones (aquí y aquí algunas) que pasaban generalmente por compilar el controlador específico para la misma desde el código fuente y cargarlo, o jugar con el controlador rtl8723be y sus opciones/parámetros. Con estos tutoriales logré que el gestor de redes (network-manager applet) pudiera identificar y conectarse a redes WiFi, específicamente añadiendo algunas opciones al controlador y posteriormente reiniciando, el comando es el siguiente:

echo "options rtl8723be fwlps=N ips=N" | sudo tee /etc/modprobe.d/rtl8723be.conf

Pero esto a la larga no resultó muy efectivo, la conexión era demasiado inestable y se desconectaba cada pocos minutos de la red (sin importar lo cerca o lejos que estuviera del punto de acceso, inclusive probé con varios del tipo 802.11n y algún 802.11g) y en alguna ocasión provocó un kernel panic en el sistema.

La solución definitiva

Luego de probar todo esto, encontré una posible solución bastante más sencilla y que aún no había probado: quitar el módulo ideapad-laptop del kernel. Un simple:

sudo modprobe -r ideapad-laptop

Y con esto tenía las conexiones inalámbricas funcionando correctamente. Así de simple, sin necesidad de compilar controladores nuevos o modificar opciones del sistema, simplemente desactivando un módulo conflictivo.

Para hacer permanente el cambio hay que añadirlo a la blacklist de modprobe (cargador de módulos del kernel).

sudo -i
echo "blacklist ideapad-laptop"  >>  /etc/modprobe.d/blacklist.conf

Y con esto el módulo que ocasionaba el problema ya no iniciará con el sistema y funcionarán las conexiones inalámbricas sin inconvenientes.