🛠 Surveillance thermique et fréquence : DVFS, seuils et bridage

Raspberry Pi 4 Model B (2019) — Fiche carte · avance · Schéma : IMG-model-4b-avance-2-model4b-surveillance-thermique.svg — Jauge de température du SoC avec seuils 80 et 85 °C, paliers DVFS 1500/1000/750/600 MHz et dissipateur sur le Pi 4B

Objectifs

Comprendre la gestion thermique du Pi 4B : limite materielle a 85 degres C, etrangement ARM entre 80 et 85, aucun soft limit (contrairement au 3B+), moteur DVFS avec paliers 1500/1000/750/600 MHz. Vous construirez un moniteur qui journalise temperature, fréquence et bits de bridage.

Materiel

Code complet

#!/usr/bin/env bash
# thermal-log.sh - journalise temperature, fréquence DVFS et état de bridage
while true; do
  T=$(vcgencmd measure_temp | cut -d= -f2)
  F=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)
  TH=$(vcgencmd get_throttled | cut -d= -f2)
  V=$(vcgencmd pmic_read_adc | grep EXT5V_V | awk '{print $NF}')
  echo "$(date +%T) temp=$T freq=${F}Hz throttled=$TH 5V=${V}"
  sleep 1
done
# Dans un autre terminal, monter en charge :
sudo stress-ng --cpu 4 --timeout 120s
# Decoder get_throttled : bit0 sous-tension, bit2 bridage thermique,
# bit3 fréquence sous le max, bit16 sous-tension passee, bit20 bridage passe.

Verification attendue

Sous stress-ng, la fréquence chute par paliers (1500 puis 1000 MHz) quand la temperature approche 80 degres, get_throttled devient 0x50005 (bridage thermique + fréquence bridee), puis revient a 0x0 au refroidissement. EXT5V_V doit rester près de 5.0 V.

Erreurs frequentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels