Lecture de la température du processeur sur le Beaglebone Black

J’ai un Beaglebone Black sous Ubuntu 14.04. Je l’ai flashé en utilisant un guide pour flasher une image pré-construite sur eMMC .

D’après les guides que j’ai vus, je devrais pouvoir lire /sys/class/hwmon/hwmon0/device/temp1_input pour obtenir la température du processeur. Mais, je n’ai pas un tel chemin sur mon système; Je suppose qu’un module de kernel pour le processeur AM3358 ARM du Beaglebone Black fournit cette fonctionnalité et que mon image manque d’un tel module, mais je ne sais pas par où commencer pour obtenir un tel module. En fait, /sys/class/hwmon est un répertoire vide.

Ce sont les modules que je possède:

 $ lsmod | sort 6lowpan_iphc 10154 1 bluetooth bluetooth 316797 10 bnep,rfcomm bnep 11946 2 can_dev 7430 1 c_can c_can 9400 1 c_can_platform c_can_platform 5927 0 g_multi 3238 0 iptable_filter 1149 1 ip_tables 11857 1 iptable_filter libcomposite 38715 5 usb_f_acm,usb_f_ecm,usb_f_rndis,g_multi,usb_f_mass_storage musb_am335x 1075 0 musb_dsps 8369 0 musb_hdrc 76236 1 musb_dsps rfcomm 46571 0 rfkill 14659 2 bluetooth u_ether 9524 3 usb_f_ecm,usb_f_rndis,g_multi usb_f_acm 5687 1 usb_f_ecm 7901 1 usb_f_mass_storage 34664 2 g_multi usb_f_rndis 17711 2 g_multi u_serial 9631 1 usb_f_acm x_tables 12575 3 ip_tables,xt_multiport,iptable_filter xt_multiport 2051 1 

… et statut global:

 $ uname -a Linux hostname 3.14.26-ti-r43 #1 SMP PREEMPT Wed Dec 24 05:27:12 UTC 2014 armv7l armv7l armv7l GNU/Linux $ lsb_release -a No LSB modules are available. Dissortingbutor ID: Ubuntu Description: Ubuntu 14.04.1 LTS Release: 14.04 Codename: trusty 

Alors, comment puis-je lire la température du processeur sur un Beaglebone Black qui manque ce fichier?

J’ai fait un peu de recherche dans les interwebs et je suis venu les mains vides.

Ce que j’ai trouvé, c’est que la version actuelle de Debian (j’utilise Linux bbone 4.1.12-ti-r29 #1 SMP PREEMPT Mon Nov 9 22:46:19 UTC 2015 armv7l GNU/Linux ) et probablement tous ses dérivés probablement aussi les prédécesseurs récents (au moins aussi loin que votre kernel 3.14.26) ne remplissent plus /sys/class/hwmon .

De même, lm-sensors ne trouve aucun capteur sur la carte, ce qui constitue une impasse.

Et ce que je comprends de TI, c’est que le capteur de température n’a jamais été conçu pour être utilisé par l’utilisateur final. TI prescrit même une méthode de mesure de la température de la carte via un capteur externe (voir ici ).

Donc, c’est une déception, mais voilà.

EDIT: J’ai également constaté que Debian 8.2 montre le comportement que j’ai décrit ici, cependant, aujourd’hui, j’ai flashé Debian 7.9 (à partir de là ; Linux bbone 3.8.13-bone79 #1 SMP Tue Oct 13 20:44:55 UTC 2015 armv7l GNU/Linux ) et qui est livré avec /sys /sys/class/hwmon/hwmon0/device/temp1_input qui est une lecture de la température en millidegreesC. Attention, il s’agit probablement d’une température relative à laquelle il ne faut pas se fier (selon TI).