I have a Beaglebone Black running Ubuntu 14.04. I flashed it using a guide to flashing a pre-built image to eMMC.
From the guides I've seen, I should be able to read /sys/class/hwmon/hwmon0/device/temp1_input
to get the CPU temperature. But, I have no such path on my system; I'm guessing a kernel module for the Beaglebone Black's AM3358 ARM CPU provides this functionality and that my image lacks such a module, but I don't know where to start to get such a module. In fact, /sys/class/hwmon
is an empty directory.
These are the modules that I do have:
$ 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
...and overall status:
$ 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.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
So, how can I read the CPU temperature on a Beaglebone Black that is missing this file?
I've done my bit of searching the interwebs and have come up empty handed.
What I have found sofar is that the current Debian (I'm using Linux bbone 4.1.12-ti-r29 #1 SMP PREEMPT Mon Nov 9 22:46:19 UTC 2015 armv7l GNU/Linux
) and probably all derivatives of it AND probably also recent predecessors of it (at least as far back as your kernel 3.14.26) no longer populate /sys/class/hwmon
.
Also lm-sensors
doesn't find any sensors on the board, whatsoever, so that's a dead-end aswell.
And what I gather from TI, is that the temperature sensor was never really meant to be used by the end-user. TI even prescribes a method of measuring the board temperature via an external sensor (see here).
So, that's a bummer, but there you have it.
EDIT: I've also found that Debian 8.2 shows the behaviour I described here, however, today I flashed Debian 7.9 (from here; Linux bbone 3.8.13-bone79 #1 SMP Tue Oct 13 20:44:55 UTC 2015 armv7l GNU/Linux
) and that comes with a fully populated /sys
including /sys/class/hwmon/hwmon0/device/temp1_input
which is a temperature reading in millidegreesC. Mind you, this is probably a relative temperature that shouldn't be relied upon (acc. TI).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With