🛠 Surveiller la température et l'alimentation du TDA4VM
Objetivos
Aprender a leer los sensores de temperatura on-die del SoC TDA4VM, comprender los órdenes de magnitud del consumo medido en el System Reference Manual (210 mA en reposo con U-Boot, pico de arranque del kernel de 460 mA, 350 mA en reposo con el kernel, lo que equivale a aproximadamente 1,75 W a 5 V) y dimensionar la fuente de alimentación y el disipador antes de cargar la placa.
Material
- 1 BeagleBone AI-64 con disipador (la placa pesa 192 g con el disipador montado — está ahí por una razón)
- 1 fuente de alimentación de 5 V / 3 A de calidad (el SRM lo exige explícitamente)
- Opcional: vatímetro USB, carcasa ventilada para comparar
Código completo
# Identité et capteurs thermiques (les capteurs sont on-die uniquement)
cat /proc/device-tree/model
for z in /sys/class/thermal/thermal_zone*; do
echo "$z type=$(cat $z/type) temp=$(cat $z/temp) (milli-°C)"
done
# Montée en charge contrôlée : 5 minutes de stress sur les 2 Cortex-A72
sudo apt install stress-ng
sudo stress-ng --cpu 2 --timeout 300 &
watch -n 2 'cat /sys/class/thermal/thermal_zone*/temp'
# Journal thermique : throttling ou seuils atteints ?
sudo dmesg | grep -iE "thermal|trip|throttl"
Verificación esperada
Las temperaturas suben progresivamente durante la prueba de estrés y luego se estabilizan (meseta) con el disipador instalado; los valores están expresados en milésimas de grado (45000 = 45 °C). No hay mensajes de throttling en dmesg durante el uso normal. Al detener la prueba de estrés, la temperatura desciende lentamente.
Errores frecuentes
- Leer «45000» y entrar en pánico: es la unidad de milésimas de grado Celsius, no milivoltios.
- Hacer funcionar la placa sin disipador o dentro de una carcasa cerrada: el TDA4VM no tiene ventilador ni sensor externo, solo los sensores on-die.
- Alimentar la placa mediante un puerto USB simple de PC: el pico de arranque ya supera los 460 mA antes de cualquier carga de aplicación; los brownouts se manifiestan con bloqueos aleatorios durante el arranque (cf. issue #43 sobre el bring-up de LPDDR4).
- Creer en un umbral comercial publicado: el SRM no proporciona un rango de temperatura comercial; para despliegues industriales, consultar la hoja de datos del TI TDA4VM.
- Confundir las zonas térmicas: existen varias thermal_zone (A72, DSP...), identificar la correcta mediante el campo type.
Otros tutoriales para esta placa
- Flasher l'image officielle et démarrer la BeagleBone AI-64
- Faire clignoter une LED sur la broche P8_03 avec libgpiod
- Réseau : Ethernet Gigabit unique et module Wi-Fi en M.2 E-key
- Caméra MIPI CSI et encodage H.264 matériel via GStreamer
- Remoteproc : inventorier et démarrer les co-processeurs R5F et C66x
- Inférence de réseau de neurones sur le C7x+MMA avec edgeai-tidl-tools
Ejemplos de código para esta placa
clignotante.pyPythonbouton-gpio.pyPythoncapteur-i2c.shBashsurveillance-temperature.shBashcapteur-dht11.pyPythonservo-pwm-sysfs.shBash