Recientemente me llegó el ordenador Raspberry Pi después de una larga espera desde su salida, y lo primero que me llamó la atención no fue lo fácil que es ponerla en marcha o la increíble comunidad con la cuenta en tan poco tiempo: me sorprendió que se calentaba bastante.

Por eso, y gracias a poder tener acceso a una cámara térmica Fluke Ti35, me dispuse a hacer un pequeño estudio de cómo se comporta este mini ordenador.

Un pequeño repaso al hardware

El Raspberry Pi es una plaquita del tamaño de una terjeta de crédito, por lo que todo está bastante apretado en su interior, debido mayormente al gran número de conectores que tiene. Pero dentro de los componentes electrónicos hay tres que voy a destacar ya que son las principales fuentes de calor dentro de la placa (en la foto los tenéis numerados):

  1. Regulador de tensión: convierte el voltaje de 5 voltios que aporta el USB de alimentación al voltaje que utilizan el resto de componentes de la placa, por lo que pasa por él bastante corriente y por tanto se calienta.
  2. SoC BCM2835: el cerebro del ordenador, consta de: una cpu ARM11 de 700 MHz, una GPU Videocore IV bastante potente, un DSP (que todavía no se puede usar) y un módulo de RAM de 256 MBytes montado encima. Como este chip es el encargado de hacer todo el trabajo, es bastante lógico que se caliente.
  3. LAN9512: este es otro chip bastante importante ya que convierte un único USB que proporciona el BCM2835 en tres USBs, 2 de ellos disponibles para el usuario en el conector de la placa y un tercero que va conectado internamente a un controlador Ethernet.

Dentro de la tarjeta hay algún otro chip o regulador más, pero de los resultados de las pruebas no se ha visto que sean muy relevantes. Así que no me entretengo más y vayamos al meollo de la cuestión.

Las pruebas

Las pruebas que he hecho están dentro del marco normal de uso del ordenador a excepción de la última en la que forcé la CPU de forma artificial. Se realizaron en una habitación sin corrientes de aire, con la placa encima de la espuma que acompañaba al Raspberry Pi en la caja de transporte y con una temperatura ambiente que osciló entre los 26,7ºC al inicio de la prueba y 26,9ºC al final de la misma.

Tras el incio de cada uno de los test se dejó un espacio de tiempo mínimo de 20 minutos antes de hacer las medidas. Como fuente de alimentación usé el USB de la propia tele y no se desconectó la corriente en ningún momento salvo el reinicio obligatorio al conectar el cable HDMI.

Como sistema operativo utilicé la versión de Debian oficial del proyecto, con el último firmware y prescindiendo del entorno gráfico.

En reposo

Simplemente conectando la alimentación.

thermal_raspberrypi_idle

Podemos ver cómo los protagonistas que antes mencioné se encuentran a 49,9ºC, 48,7ºC y 53ºC de media respectivamente. Vista la sorpresa de la alta temperatura del LAN9512 repetí la medida en reposo conectando únicamente el cable Ethernet.

thermal_raspberrypi_idle_network

La temperatura del controlador de red aumenta a la cifra de 55,7ºC de media con picos de 59,5ºC, que ya empieza a ser bastante alta.

Reproduciendo vídeo

Incicialmente solo estaban conectados el cable HDMI, un pendrive con la película y un teclado. El vídeo está en formato x264 con una resolución de 1080p y el sonido en formato ac3, como reproductor se usó el omxplayer.

thermal_raspberrypi_video_playback

Y con cable de red conectado.

thermal_raspberrypi_video_playback_network

Se nota que la reproducción de vídeo aumenta la temperatura del procesador bastante, pero el chip de red sigue siendo el protagonista ya que cada vez está más caliente con 65,1ºC de máxima. También se puede apreciar como se distribuye el calor por toda la placa.

Transferencia de archivos en red

Como tengo un NAS con OpenMediaVault no me pude resistir a probar a enviar un archivo usando el protocolo samba desde el pendrive y, a parte de ver el impacto al calentamiento, comprobar la velocidad de transferencia, ya que recordemos que los USBs y red comparten el ancho de banda de un único USB.

En este caso, desde el anterior test hasta el inicio de éste hubo un lapso de 20 minutos por lo que tomé una imagen al incio y al final de la misma:

thermal_raspberrypi_idle_after_video
thermal_raspberrypi_samba

Parece que el trabajo intenso de red no afecta especialmente a al procesador ni al chip de red que durante todo el proceso bajaron unos pocos grados, tal vez en esos primeros 20 minutos no le dió tiempo a enfriarse después de la reproducción del vídeo.

Como resultado adicional, la transferencia de un archivo de 12,9 Gbytes tardó algo menos de 50 minutos a una media cercana a los 40MBits/s.

trafico_samba

Prueba de estrés

Por último hice uso del programa stress disponible en los repositorios de Debian, que permite simular carga en la CPU para usarla al 100%. Lo que llevó a un aumento de la temperatura, pero no tan exagerado como durante la reproducción de vídeo.

thermal_raspberrypi_stress

Conclusiones

Lo primero he de decir que aunque en algunos casos se rocen e incluso se superen los 60 grados, sigue estando dentro de unas temperaturas razonables. Aunque tal vez en el caso del LAN9512 que he llegado a medir 65ºC ya está cerca del límite de sus especificaciones, ya que al no ser la versión industrial su techo de trabajo está en 70ºC y teniendo el verano a la vuelta de la esquina por lo menos da que pensar.

Por lo demás, a nivel de diseño parece estar muy bien concebido el Raspberry Pi. Si nos fijamos, la mayoría de las fotos no se puede distinguir bien el procesador de la placa, esto se debe a que la propia tarjeta ejerce de disipador repartiendo el calor. Tal vez sea esa la explicación al calentamiento del chip de red, ya que dicho chip es de otro formato y tal vez no disipe igual de bien a la placa.

Creo que más adelante añadiré una prueba más ya que en este SoC lo más destacable es su potente GPU y la prueba de la reproducción de vídeo solo afecta a una parte de la misma. Así que en cuanto encuentre un buen test gráfico intentaré incluirlo.