🛠 Surveillance thermique et fréquence CPU

ODROID-M1 (Hardkernel) · avance · Schéma : IMG-odroid-m1-avance-2-odroidm1-thermique.svg — ODROID-M1 avec son dissipateur 123×100 mm, sondes de température des quatre coeurs Cortex-A55 et courbe de fréquence dans un terminal

Objectifs

Instrumenter la thermique du RK3568B2 : lire les capteurs du noyau, suivre la fréquence des quatre Cortex-A55 (jusqu'à 2 GHz) sous charge, et vérifier que le dissipateur d'origine tient (test CNX : un peu plus de 50 °C à 35 °C ambiant, 1,3 W au repos, 4,5 W en charge lourde).

Matériel

Code complet

#!/usr/bin/env bash
# monitoring-odroidm1.sh — température + fréquence, 1 ligne / 2 s
while true; do
  for z in /sys/class/thermal/thermal_zone*; do
    t=$(($(cat $z/temp) / 1000))
    echo -n "$(cat $z/type): ${t}C "
  done
  for c in /sys/devices/system/cpu/cpufreq/policy*; do
    f=$(($(cat $c/scaling_cur_freq) / 1000))
    echo -n "cpu$(( ${c##*policy} )): ${f}MHz "
  done
  echo "| load: $(cut -d' ' -f1 /proc/loadavg)"
  sleep 2
done

# Dans un second terminal : montée en charge et throttling
sudo apt-get install -y stress-ng
stress-ng --cpu 4 --timeout 300

Vérification attendue

Au repos, quelques degrés au-dessus de l'ambiant ; en charge sur 4 coeurs, la température grimpe puis se stabilise vers 50-60 °C avec le dissipateur d'origine. scaling_cur_freq reste proche de 2000 MHz tant que le seuil de throttling n'est pas atteint.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels