Nouveau : le pare-feu IA surveille toute la plateforme et explique chaque incident en termes simples. Découvrez comment ça marche

Mon Pi reste hors ligne après 20 minutes d'inactivité et se réveille quand je me connecte en SSH

Mon Pi reste hors ligne après 20 minutes d'inactivité et se réveille quand je me connecte en SSH

Résolu 5 3

Traduit de English par IA ·

Bonjour à tous. Projet de fin d’études : un Pi 3B+ dans la serre que nous utilisons pour le projet lit un BME280 toutes les 15 minutes et envoie les données à Hermetry via MQTT (paho, keepalive laissé à la valeur par défaut 60). Le Pi est sur le Wi-Fi partagé du site.Il fonctionne un moment après le démarrage, puis l’appareil passe hors ligne dans Hermetry et les relevés s’arrêtent. Le plus étrange : dès que je me connecte en SSH pour regarder (la connexion prend très longtemps), tout revient et l’appareil est de nouveau en ligne. On dirait que le Pi se met en veille.L’onglet Log de l’appareil dans Hermetry indique :

Disconnected  Reason: keepalive_timeout

Existe-t-il un mode veille sous Raspberry Pi OS que je pourrais désactiver ? Je n’en ai pas trouvé dans raspi-config.Ce que j’ai déjà essayé : réduire l’intervalle de publication à 1 minute (ça a tenu un peu plus longtemps, peut-être 40 minutes), une autre alimentation (l’officielle 2,5 A) et vérifier dmesg, qui ne montre rien d’évident au moment de la coupure. Le Pi fonctionne clairement, car une tâche cron qui écrit la température du CPU dans un fichier local chaque minute continue d’écrire pendant toute la durée, même quand Hermetry indique hors ligne. J’utilise Raspberry Pi OS Bookworm Lite, 32 bits.

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

Traduit de English par IA ·

Je pense qu’il existe une option de mise en veille de l’écran dans raspi-config, peut-être que c’est ça qui le met en veille ? Chez moi, le HDMI s’éteint au bout de 10 min.

Ask me about 4–20 mA.
♥ 2

Traduit de English par IA ·

Il est headless, il n’a aucun écran. J’ai quand même désactivé le blanking par précaution, sans changement.

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

Traduit de English par IA ·

Le blocage de l’écran n’y est pour rien. Classique économie d’énergie Wi-Fi sur la puce Broadcom du Pi ; j’ai eu le même problème avec un Pi 3B+ dans un local de pompage. Le Pi ne se met pas en veille, c’est le Wi-Fi qui le fait, et les paquets entrants sont retardés ou perdus. Ton client paho envoie un ping toutes les 60 s, la réponse n’arrive pas à temps, Hermetry ne voit rien pendant le keepalive et ferme la session, d’où keepalive_timeout. Ta connexion SSH réveille la radio, ce qui explique que tout revienne à ce moment-là.
Vérifie :

iw wlan0 get power_save
Power save: on

Pour le désactiver durablement sous Bookworm avec NetworkManager :

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

(2 signifie désactivé.) Si tu utilises une image plus ancienne avec dhcpcd, place iw wlan0 set power_save off dans un script exécuté une fois le réseau démarré.
Fais aussi en sorte que ton client se reconnecte automatiquement : client.reconnect_delay_set(1, 120) et loop_forever ou loop_start, pour qu’une courte coupure se rétablisse d’elle-même.

Solution acceptée♥ 9

Traduit de English par IA ·

La gestion de l’énergie était activée. J’ai ajouté le fichier de configuration, redémarré NetworkManager, et il est en ligne sans interruption depuis 3 jours, sans keepalive_timeout dans l’onglet Log depuis. La connexion SSH est aussi instantanée, ce que je n’avais même pas remarqué comme lié au problème. Merci Ciaran !

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

Traduit de English par IA ·

Ha, donc c’était le Wi-Fi qui était en veille, pas le Pi. Je vérifie le mien maintenant.

Ask me about 4–20 mA.
♥ 0
6 sujets de 1 à 6 (sur un total de 6)
  • Vous devez être connecté pour répondre à ce sujet.

Rejoignez la discussion

Connectez-vous pour poser et répondre à des questions, aimer les messages utiles et marquer la réponse qui a résolu votre problème. Chaque contribution rapporte des points et des niveaux.

Partager