🛠 Surveiller température et fréquence CPU

Fiche carte — Raspberry Pi Model B Revision 2 (2012) · avance · Schéma : IMG-model-b-rev2-avance-2-modelb2-surveillance-thermique.svg — Model B Rev 2 avec dissipateur, sonde de température et graphique température/fréquence, seuil de throttling à 85 °C repéré sur la courbe

Objectifs

Instrumenter le Model B Rev 2 : lire température et fréquence du ARM11 à 700 MHz via vcgencmd, comprendre le bridage thermique au-delà de 85 °C (et en cas de sous-tension), et vérifier un overclock de l'ère config.txt.

Matériel

Code complet

# Boucle de surveillance: temperature, horloge courante, drapeau de bridage
while true; do
  printf "%s " "$(date +%T)"
  vcgencmd measure_temp
  vcgencmd measure_clock arm
  vcgencmd get_throttled
  sleep 5
done
# Surcharge CPU (ARMv6 mono-cœur) pour déclencher le bridage:
yes > /dev/null &
# Overclock classique Rev 2 dans /boot/config.txt (avec refroidissement):
#   arm_freq=900
#   over_voltage=4
#   force_turbo=1
/* rev.c - confirmer le modèle avant d'interpretter les mesures.
   Build: gcc rev.c -o rev && ./rev */
#include <stdio.h>
#include <string.h>
int main(void) {
    char line[256];
    FILE *f = fopen("/proc/cpuinfo", "r");
    if (!f) { perror("cpuinfo"); return 1; }
    while (fgets(line, sizeof line, f))
        if (strncmp(line, "Revision", 8) == 0) printf("%s", line);
    fclose(f);
    return 0;
}

Vérification attendue

measure_temp monte avec la charge puis se stabilise ; measure_clock arm retombe sous 900000000 (ou 700000000) quand la température dépasse 85 °C ; get_throttled affiche un drapeau non nul en cas d'événement, bits 16 et plus signalant une sous-tension.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels