element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
BeagleBoard
  • Products
  • Dev Tools
  • Single-Board Computers
  • BeagleBoard
  • More
  • Cancel
BeagleBoard
Forum Reading BeagleBone AI Temperatures
  • Blog
  • Forum
  • Documents
  • Quiz
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
BeagleBoard requires membership for participation - click to join
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 19 replies
  • Subscribers 104 subscribers
  • Views 6473 views
  • Users 0 members are here
  • bbb
Related

Reading BeagleBone AI Temperatures

gdstew
gdstew over 5 years ago

I finally brought up my BeagleBone AI with a 25mm x 7mm fan firmly screwed into the heat sink using M2 or

M3 (they were salvaged so I don't know for sure) machine screws. It was a lot quieter than I was expecting

although I don't believe it is running at the advertised 10K RPM. Attempting to update the software with

apt-get upgrade (after doing apt-get update) died with the message "FATAL -> failed to fork" which turned out

to be a low memory problem. The Getting Started program from the desktop was running the cloud9 IDE in

the Chromium browser so I shut that down and did the upgrade again and it worked. I had no problems with

any of the other updates after that.

 

The next thing I did was go look for where the SoC temperatures could be read and I think I found them several

sub-directories deep in the /sys directory. I do wish that there was a standard directory to put these in as

everybody puts them in very different places in the /sys directory. There are 5 different thermal zones and

each one has a directory in the /sys/devices/virtual/thermal/ directory named thermal_zone0 -  thermal_zone4.

To display the temperature for thermal zone 0 use this command:

 

debian@beaglebone:~$ cat /sys/devices/virtual/thermal/thermal_zone0/temp

47000

debian@beaglebone:~$

 

The response, 47000 (your mileages WILL vary) is 47.0 deg. C.

 

At the time the AI was mostly idle with me on a terminal inside an LXDE window. The temperatures I was

reading were within a couple of degrees C across all the zones. There are many thermal management

configuration files in the thermal_zoneX directories and it would be great to get documentation on what/where

the thermal zones are as well as the thermal management settings used for them.

 

While the idle temperatures were OK for checking out and doing light work on the AI I'm going to have to

come up with some serious thermal solutions. A 40mm fan is the biggest you can get between the GPIO

headers and I don't know if that will be big enough when you start loading up several of the more interesting

cores.

  • Sign in to reply
  • Cancel

Top Replies

  • 14rhb
    14rhb over 5 years ago +4
    I would have imagined all these BB-AI were the same, however very cautiously I too ran the sudo apt update and upgrade from the Loud9 IDE and it did work. No errors! I'm connected via Ethernet from a router…
  • 14rhb
    14rhb over 5 years ago +2
    Thanks gdstew This is just the information I'll need soon. In a few days I'm expecting my USB-C cable and then I'll be powering up my BB-AI for the first time - having followed the various threads I'm…
  • gdstew
    gdstew over 5 years ago +2
    I just attached a bash shell script I wrote to read one or all temperature zones on a BeagleBone AI. There is a bin directory in the debian users home directory directory and I copied the script from a…
  • 14rhb
    14rhb over 5 years ago

    Thanks gdstew

     

    This is just the information I'll need soon. In a few days I'm expecting my USB-C cable and then I'll be powering up my BB-AI for the first time - having followed the various threads I'm keen to watch the temperatures.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • clem57
    clem57 over 5 years ago

    Attempting to update the software with

    apt-get upgrade (after doing apt-get update) died with the message "FATAL -> failed to fork" which turned out

    to be a low memory problem.

    I too have noticed this. I think they got over zealous using TEMP in RAM... I plan to dial it back some. Also add external storage. The 16 G eMMC is a bit small. I will blog the results of tuning this over the weekend.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • clem57
    clem57 over 5 years ago in reply to clem57

    Without a fan, my temp0 was 67C. Too toasty for me... Thanks gdstew for finding how.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • 14rhb
    14rhb over 5 years ago

    I would have imagined all these BB-AI were the same, however very cautiously I too ran the sudo apt update and upgrade from the Loud9 IDE and it did work. No errors!

     

    I'm connected via Ethernet from a router/switch and connecting in via the Cloud9 web server from Mozilla Firefox.

    image

    • Cancel
    • Vote Up +4 Vote Down
    • Sign in to reply
    • Cancel
  • gdstew
    gdstew over 5 years ago

    I just attached a bash shell script I wrote to read one or all temperature zones on a BeagleBone AI. There is a bin directory in the debian users home

    directory directory and I copied the script from a micro sd card to /home/debian/bin. The home/bin directory is not in the environment PATH variable

    so either have to add it to PATH, include the path with the file name when you execute it, or copy it somewhere already in PATH. I chose to copy it to

    /usr/local/bin using the command:

     

      debian@beaglebone:~$ sudo cp bin/ai_temp.sh /usr/local/bin

     

    In order for the debian user to execute the script the file permissions have to be changed to allow it with the command:

     

       debian@beaglebone:~$ sudo chmod o+x /usr/local/bin/ai_temp.sh

     

    After that:

     

    To see all temperature zones type ai_temp.sh from the command line,

     

    To see a specific zone temperature type ai_temp.sh X where X is the zone number from 0 - 4. If you type in an invalid zone number you will get an

    error message.

     

    This script does use bash specific commands, specifically the ones used to extract characters from the temperature returned by the cat command.

    It also makes a couple of assumptions about the number of digits in the temperature. The first is that there are no more that two digits to the left of

    the decimal point. This is probably a safe assumption since the script will probably not be running if the AI temperature is > 99 deg. C. The second is

    that there there are two digits to the left of the decimal point. This is a reasonable assumption because the AI is not going below 10 deg. C unless

    some type of extreme cooling is used.

     

    From testing the script it looks like zone 2 is the dual core ARM Cortex-A15. It is always the highest temperature by around 2 degrees C.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • mudz
    mudz over 5 years ago in reply to gdstew

    Good Work you did there. Though, to be sure, you can always contact ti community, and get an official answer.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • mfetting
    mfetting over 5 years ago

    The pre-attached heat sink has M3 holes spaced 20x20 mm.

    The height of the heat sink clears the USB type A socket, and all other components on the board except the 46-way header sockets and the Ethernet socket.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • gdstew
    gdstew over 5 years ago in reply to mfetting

    You also need enough room between the fan and any cape above it to allow the air to flow as freely as possible for more efficent cooling and to keep the load on the fan motor as low as possible.

    I've wondered how many existing capes have header pins long enough to properly clear the fan and allow them to be used on the AI. As I said in another post, I understand why the wanted to

    keep the BeagleBone form factor, but due to the thermal  problems everybody is seeing I think that it was a mistake. One possible way of getting around that would have been to put the GPIO

    headers on the bottom of the board instead of the top. You could still use existing capes by using headers with male pins on both sides to connect between them and leave the top of the AI free

    for a larger heat sink/fan. I have a Snickerdoodle Xilinx FPGA board that had this as a build option. It also had an option for a tall copper heat sink for the FPGA. Mine has both.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • rllbcheese
    rllbcheese over 5 years ago in reply to gdstew

    If you look at the /sys/devices/virtual/thermal/thermal_zoneX/type value, it gives you a 'name' for each of the thermal zones, as such:

     

    thermal_zone0/type = cpu_thermal

    thermal_zone1/type = gpu_thermal

    thermal_zone2/type = core_thermal

    thermal_zone3/type = dspeve_thermal

    thermal_zone4/type = iva_thermal

     

    gpu_thermal is clearly the SGX544, dspeve_thermal seems to be a combined thermal zone between the C66x and EVE cores, iva_thermal is the IVA-HD video engine.  Between the cpu_thermal and core_thermal, I would guess that you're right with zone 2 (core_thermal) being the actual A15 cores, with cpu_thermal being an overall package temperature.

     

    When idle, I'm finding iva_thermal is the highest, despite not decoding any video. 

     

    I've installed a fan (https://www.digikey.com/product-detail/en/nidec-copal-electronics/F251R-05LLC/563-1111-ND/1165505) so it's staying below 55 C while doing apt updates.  Works very well (and very quiet), although the fan connectors can pop out if you're not careful.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • gdstew
    gdstew over 5 years ago in reply to rllbcheese

    Thanks for the information. I plan on putting it in the script sometime in the near(?) future. However I have to think about the best way to do

    it a bit first and I am real busy with a couple of other projects right now.

     

    I'm not happy with my fan connection either. I have no problem with the leads staying put, although I am usually really careful. They just stick

    out too far and are in the way as far as cases or capes go with no good solution, other than a fan cape or soldering iron, for getting them out

    of the way. It was obvious that a fan would be needed, it would be nice if a fan connector was available.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube