Hace pocas semanas me compré una Raspberry Pi 5, con una caja Pironman 5, y un SSD Crucial de 512Gb. El acabado es increíble! (tengo pendiente hacer review).
La principal idea que tenía para ella era traspasar mi servidor multimedia casero a ella, y mantener un pequeño cloud de servicios con Docker.
Mis conexiones son por SSH (voy con una Raspbian Lite 64b), y cuando hago pruebas con ella (por ejemplo como ahora que estoy escribiendo este artículo), la dejo sin actividad durante unos minutos… Pasado cierto tiempo, veo que es inaccesible, y que ya no está conectada a la red wifi de mi casa…
Si estás sufriendo este mismo comportamiento, quizá la activación del ahorro de energía en el adaptador WiFi puede explicar por qué la Raspberry Pi 5 no se reconecta automáticamente cuando intentas establecer una conexión SSH después de un periodo de inactividad.
A continuación, detallo las razones principales:
Comportamiento del ahorro de energía en WiFi
El ahorro de energía en WiFi (conocido como Power Save Mode, PSM) funciona desactivando parcialmente el adaptador para reducir el consumo energético. Esto implica:
- El adaptador entra en un estado de reposo y escucha paquetes de datos solo ocasionalmente.
- Si no se recibe actividad de red, el adaptador podría “desconectarse” para ahorrar energía.
- SSH utiliza el protocolo TCP, el cual no genera tráfico constante si no hay una conexión activa o mantenida.
Este comportamiento es eficiente para dispositivos de batería o que no necesitan conexión constante, pero no es ideal para dispositivos como servidores que requieren disponibilidad continua.
Por qué no se reconecta automáticamente
Aunque el adaptador WiFi está configurado para ahorrar energía, debería despertarse cuando recibe tráfico entrante, como un intento de conexión SSH. Sin embargo, los siguientes factores pueden interferir:
- El adaptador no detecta tráfico de red entrante correctamente: Si el modo de ahorro de energía es demasiado agresivo, el adaptador puede no responder a los paquetes ARP enviados por tu cliente SSH.
- La red no envía paquetes ARP correctamente: En redes WiFi saturadas o con configuraciones específicas del router, el Pi podría no recibir el tráfico necesario para “despertar”.
- Problemas de tiempo de espera del cliente: Si el cliente SSH no espera lo suficiente o no reintenta, podría parecer que la Raspberry Pi no está disponible.
Comparación de este comportamiento con versiones anteriores de Raspberry Pi
En modelos anteriores, el ahorro de energía estaba deshabilitado por defecto o era menos agresivo, por lo que estos problemas eran menos comunes. En la Raspberry Pi 5, la configuración predeterminada parece priorizar el ahorro energético, lo que puede causar desconexiones en algunos casos.
Mi solución: Desactivar el ahorro de energía
Si, como yo, necesitas que tu Raspberry Pi sea accesible en todo momento, puedes desactivar el ahorro de energía del adaptador WiFi.
Aquí están los pasos:
Verifica si el ahorro de energía está activo:
$ iw wlan0 get power_save
Si la salida es Power save: on
, el modo ahorro de energía definitivamente está activo (era mi caso).
Desactiva el ahorro de energía temporalmente:
$ sudo iw wlan0 set power_save off
Esto deshabilitará el ahorro de energía hasta el próximo reinicio.
Desactiva el ahorro de energía permanentemente:
Crea o edita un archivo de configuración en /etc/NetworkManager/conf.d/disable-wifi-powersave.conf
:
$ sudo nano /etc/NetworkManager/conf.d/disable-wifi-powersave.conf
Agrega las siguientes líneas:
[connection] wifi.powersave = 2
Guarda y reinicia el servicio de NetworkManager:
$ sudo systemctl restart NetworkManager
Con esto deberíamos volver a tener nuestra conexión activa constantemente y sin interrupciones no deseadas.
Espero haberos sido de ayuda!