Novedad: el cortafuegos de IA supervisa toda la plataforma y explica cada incidente con palabras sencillas. Vea cómo funciona

Mi Pi sigue apareciendo sin conexión tras 20 minutos inactivo y se despierta cuando me conecto por SSH

Mi Pi sigue apareciendo sin conexión tras 20 minutos inactivo y se despierta cuando me conecto por SSH

Resuelto 5 3

Traducido del English por IA ·

Hola a todos. Proyecto final: una Pi 3B+ en el invernadero que usamos para el proyecto lee un BME280 cada 15 minutos y envía los datos a Hermetry por MQTT (paho, keepalive dejado en el valor por defecto de 60). La Pi está en la Wi-Fi compartida de allí.Funciona un rato después del arranque, luego el dispositivo pasa a estar sin conexión en Hermetry y las lecturas se detienen. Lo raro es que en cuanto me conecto por SSH para mirar (tarda mucho en conectar), todo vuelve y el dispositivo vuelve a estar en línea. Parece que la Pi se duerme.La pestaña Log del dispositivo en Hermetry dice:

Disconnected  Reason: keepalive_timeout

¿Hay algún modo de suspensión en Raspberry Pi OS que pueda desactivar? No lo encontré en raspi-config.Lo que ya probé: bajar el intervalo de publicación a 1 minuto (aguantó un poco más, quizá 40 minutos), otra fuente de alimentación (la oficial de 2,5 A) y revisar dmesg, que no muestra nada obvio en el momento de la caída. La Pi está claramente funcionando, porque un cron que escribe la temperatura de la CPU en un archivo local cada minuto sigue escribiendo todo el tiempo, incluso cuando Hermetry indica sin conexión. Uso Raspberry Pi OS Bookworm Lite, de 32 bits.

Timestamps in UTC or it didn't happen.
♥ 0

Traducido del English por IA ·

Creo que hay una opción de apagado de pantalla en raspi-config, ¿quizás es eso lo que lo pone en suspensión? En el mío el HDMI se apaga a los 10 min.

Ask me about 4–20 mA.
♥ 2

Traducido del English por IA ·

Es headless, no tiene pantalla. Aun así desactivé el apagado de pantalla por si acaso, sin cambios.

Timestamps in UTC or it didn't happen.
♥ 2

Traducido del English por IA ·

El apagado de pantalla no es la causa. Es el ahorro de energía clásico del Wi-Fi en el chip Broadcom de la Pi; me pasó lo mismo con una Pi 3B+ en una caseta de bombeo. La Pi no duerme, lo que duerme es el Wi-Fi, y los paquetes entrantes se retrasan o se pierden. Tu cliente paho envía un ping cada 60 s, la respuesta no llega a tiempo, Hermetry no ve nada dentro del keepalive y cierra la sesión, de ahí keepalive_timeout. Tu SSH despierta la radio, por eso todo vuelve en ese momento.
Compruébalo:

iw wlan0 get power_save
Power save: on

Para desactivarlo de forma permanente en Bookworm con NetworkManager:

sudo tee /etc/NetworkManager/conf.d/wifi-powersave.conf <<EOF
[connection]
wifi.powersave = 2
EOF
sudo systemctl restart NetworkManager

(2 significa desactivado.) Si estás en una imagen antigua con dhcpcd, pon iw wlan0 set power_save off en un script que se ejecute después de que la red esté activa.
Además, haz que tu cliente se reconecte solo: client.reconnect_delay_set(1, 120) y loop_forever o loop_start, para que una desconexión breve se solucione sola.

Solución aceptada♥ 9

Traducido del English por IA ·

La función de ahorro de energía estaba activada. Añadí el archivo de configuración, reinicié NetworkManager, y lleva 3 días seguidos en línea, sin keepalive_timeout en la pestaña Log desde entonces. SSH también responde al instante, algo que ni siquiera había relacionado con el problema. ¡Gracias Ciaran!

Timestamps in UTC or it didn't happen.
♥ 0

Traducido del English por IA ·

Ja, entonces lo que estaba dormido era el Wi-Fi, no la Pi. Voy a revisar la mía ahora.

Ask me about 4–20 mA.
♥ 0
Viendo 6 entradas – de la 1 a la 6 (de un total de 6)
  • Debes estar registrado para responder a este debate.

Únete a la conversación

Inicia sesión para preguntar y responder, dar me gusta a las publicaciones útiles y marcar la respuesta que resolvió tu problema. Cada aportación suma puntos y niveles.

Compartir