• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
Netgate Discussion Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login

How to: Get CPU temp

2.0-RC Snapshot Feedback and Problems - RETIRED
24
140
115.3k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M
    Micro
    last edited by Aug 8, 2011, 6:38 PM Aug 8, 2011, 10:15 AM

    Ihaaaa !!!!!

    You're a god steve !!!
    Now it works with mbmon.
    Indeed, with the command I built, the result wasn't exactly the same in the shell than with yours.
    I thought it was OK but in fact it wasn't and now, with your help, it works fine.

    Just a little correction, In your last post edit, you indicate this command line :
    exec("/usr/local/bin/mbmon -I -c1 -T3", $dfout);
    I don't know if the sensors are HW dependent but on my firebox X700, it seems that this command return the temperature of the chipset (77°C) and not the CPU one (40°C).

    For the CPU, use :
    exec("/usr/local/bin/mbmon -I -c1 -T1", $dfout);

    I tested this by running the mbmon in loop while I unplugged the CPU FAN and the temperature of the first sensor has growed up while the third one staid unchanged.

    So in order to sum up for the Firebox X700 users, if you want to have system temperature in your dashboard, follow these steps :
    1- first of all, install the mbmon module on your system

    Open SSH connection using putty, type 8 to go to the shell and type the following commands :

    pkg_add -r mbmon
    rehash

    Now if you type

    mbmon -c1

    You should have something like :

    Temp.= 38.0, 127.0, 77.0; Rot.=    0, 5000,    0
    Vcore = 1.49, 3.38; Volt. = 3.31, 4.95, 11.61,  -3.12, -6.12

    This means CPU temp is 38°C, second sensors seems to not be connected, and chipset temp is 77°C.
    The CPU FAN speed is 5000 rpm.

    2- Change the php files content :

    change the has_temp and get_temp functions code

    function has_temp() {

    /* no known temp monitors available at present */

    /* should only reach here if there is no hardware monitor */

    return true;
    }

    function get_temp() {
    $temp_out = "";
    exec("/usr/local/bin/mbmon -I -c1 -T1", $dfout);
    $temp_out = trim($dfout[[/color]0]);

    return $temp_out;
    }

    The code for these functions is located in the /usr/local/www/includes/functions.inc.php

    You can also change the line 240 of the /usr/local/www/widgets/widgets/system_information.widget.php file from

    "border: 0px solid white;" size="30" name="tempmeter" id="tempmeter" value="****" />

    to

    "border: 0px solid white;" size="30" name="tempmeter" id="tempmeter" value="****" />

    And that's it, you should now have the CPU temperature displayed in your dashboard of pfsense.

    Note: as I'm not very friendly with linux tools like vi, I'm using WinSCP to get files from the pfsense box to my windows PC, change them with windows tools and put them back using WinSCP.
    As told asterix, be careful to be in binary mode when transferring files with WinSCP.

    Many thanks for steve and all the guys on this forum for their help.

    Micro.

    The biggest security issue is …. you !!!

    HW : Watchguard Firebox x700
    CPU : Intel Celeron 1.2GHz
    RAM : 256MB

    1 Reply Last reply Reply Quote 0
    • S
      stephenw10 Netgate Administrator
      last edited by Aug 8, 2011, 11:41 AM Aug 8, 2011, 11:38 AM

      I too have two sensors that can be seen by mbmon in the X6000. I'm not sure which sensor is the CPU but sensor 3 is the highest so that's what I want to know about.

      
      [2.0-RC3][root@pfsense.fire.box]/root(1): mbmon -I
      
      Temp.= 36.0, 13.0, 40.5; Rot.= 5769, 5357, 5818
      Vcore = 1.15, 2.26; Volt. = 3.38, 5.05, 12.10, -11.87, -0.62
      
      

      I have to use the -I operator otherwise I get an error message about smb sensors.

      If you don't like vi (like me!  ;)) then you can use the ee editor instead which is included in pfSense.

      Steve

      1 Reply Last reply Reply Quote 0
      • C
        CNLiberal
        last edited by Aug 8, 2011, 7:29 PM

        I can use 'coretemp' and 'mbmon' from the CLI.  Both give a temperature response.  They are both different, but at least there's a number.  I have changed the appropriate widgets php file, but I'm not getting any temperature read out.  I know the changes I made are working, because I can now see the degrees C sign, but no temperature.  This makes me think there's something in the php code for the widget that's incorrect.  Has anyone else seen this?

        Jim

        pfSense 2.7.2-RELEASE

        Dell R210 II
        Intel E3-1340 v2
        8GB RAM
        SSD ZFS Mirror
        Intel X520-DA2, RJ45 SFP+ (WAN) and 10Gb SFP+ DAC (LAN)
        1 x Cisco 3850 12XS-S (Core Switch)
        2 x Cisco 3750X PoE Gig Switch (Access Stack)
        3 x Cisco 2802i APs (Mobility Express)

        1 Reply Last reply Reply Quote 0
        • J
          jimp Rebel Alliance Developer Netgate
          last edited by Aug 8, 2011, 8:52 PM

          Now just turn this all into a handy package we can put in the repo :-)

          Really just need the amdtemp and coretemp modules for i386 and amd64 and some code to copy them in place. (We can put those on files.pfsense.org, they don't go into the packages repo.) The widget could be a separate file instead of part of the core system info, would coexist better that way.

          You also do not need wget, use fetch, it's built in.

          Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

          Need help fast? Netgate Global Support!

          Do not Chat/PM for help!

          1 Reply Last reply Reply Quote 0
          • S
            seh2000
            last edited by Aug 8, 2011, 9:05 PM

            @jimp:

            Now just turn this all into a handy package we can put in the repo :-)

            Really just need the amdtemp and coretemp modules for i386 and amd64 and some code to copy them in place. (We can put those on files.pfsense.org, they don't go into the packages repo.) The widget could be a separate file instead of part of the core system info, would coexist better that way.

            You also do not need wget, use fetch, it's built in.

            That will be so cool, I am really happy that for now I can see the temp on the dashboard despite I need to reedit after each snapshot, well what I done is  have the edited files on the file server so all I need is just to fire up WINscp to copy after an upgrade.
            Steen

            1 Reply Last reply Reply Quote 0
            • S
              stephenw10 Netgate Administrator
              last edited by Aug 8, 2011, 9:14 PM

              If it's built as a package it will re-install automagically after an update.  ;D
              Which would be nice.

              Steve

              1 Reply Last reply Reply Quote 0
              • C
                Cino
                last edited by Aug 8, 2011, 10:49 PM

                @stephenw10:

                If it's built as a package it will re-install automagically after an update.  ;D
                Which would be nice.

                Steve

                That would be nice, a system information wiget for intel/amd coretemp

                1 Reply Last reply Reply Quote 0
                • A
                  asterix
                  last edited by Aug 8, 2011, 11:00 PM

                  Plus dash showing temperature for all cores for a multi-core processor. :D

                  1 Reply Last reply Reply Quote 0
                  • C
                    Cino
                    last edited by Aug 8, 2011, 11:27 PM

                    @asterix:

                    Plus dash showing temperature for all cores for a multi-core processor. :D

                    or at least an avg of the cores? It cracks me up, I have an Atom D510 which has 2 cores but it displays 4 since HT is turned on. Cores 0-1 have the same temp and 2-3 have the same temp.

                    1 Reply Last reply Reply Quote 0
                    • J
                      jimp Rebel Alliance Developer Netgate
                      last edited by Aug 8, 2011, 11:31 PM

                      I wouldn't average them, if one core is running hot you'd probably want to know.

                      Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                      Need help fast? Netgate Global Support!

                      Do not Chat/PM for help!

                      1 Reply Last reply Reply Quote 0
                      • S
                        seh2000
                        last edited by Aug 8, 2011, 11:53 PM

                        Hi,

                        I use as per previous posts coretemp on a D510 CPU.

                        I done the below change to get the degree symbol.
                        °;C"; ?>" />
                        However, for after the first update to the Dashboard (think the update happens each 10 sec.) the degree symbol disappears. Only to come back if/when dashboard is reloaded. Anyone else seen this?

                        I still try to get all four core temp to be shown in the Dashbaord, but no success anyone here got this to work when using coretemp?

                        Steen

                        1 Reply Last reply Reply Quote 0
                        • S
                          stephenw10 Netgate Administrator
                          last edited by Aug 9, 2011, 12:00 AM

                          Yes I'm seeing that too. Hard to see why it's happening from the code.  :-\

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • S
                            seh2000
                            last edited by Aug 9, 2011, 12:22 AM

                            @stephenw10:

                            Yes I'm seeing that too. Hard to see why it's happening from the code.  :-\

                            Steve

                            Hi Steve - thanks as then I know I did not do something wrong!  ;D
                            Steen

                            1 Reply Last reply Reply Quote 0
                            • C
                              Cino
                              last edited by Aug 9, 2011, 12:29 AM

                              @jimp:

                              I wouldn't average them, if one core is running hot you'd probably want to know.

                              true…. you would think they would be around the same temp since they are in the same package but i dont know much about the dual/quad core processors.

                              1 Reply Last reply Reply Quote 0
                              • S
                                seh2000
                                last edited by Aug 9, 2011, 12:29 AM

                                @Cino:

                                I'm not a programmer but a couple of months ago we had a topic about about supermicro boards with ipmi builts.. http://forum.pfsense.org/index.php/topic,34056.30.html  Anyways, I copied the diag_system_activity.php page and change some of the code to display ipmi-sensors. I just did the same with coretemp. Its not on the dashboard but you can access it via the web interface.

                                Remove the .txt and upload it to /usr/local/www and you can access it via http://pfsense/diag_coretemp.php

                                To add it to the Diagnostics tab, add this to your config.xml:

                                
                                 <installedpackages>[...]
                                		
                                
                                <menu>
                                			<name>Core Temps</name>
                                			<tooltiptext>Core Temperatures</tooltiptext>
                                			Diagnostics
                                			<url>/diag_coretemp.php</url>
                                		</menu>
                                
                                		[...]</installedpackages> 
                                
                                

                                Hi Cino,
                                Just followed your great writeup and it worked!
                                As attached screenshot shows.
                                Thanks!
                                Steen

                                ![pfSense Diag Coretemp sh.jpg](/public/imported_attachments/1/pfSense Diag Coretemp sh.jpg)
                                ![pfSense Diag Coretemp sh.jpg_thumb](/public/imported_attachments/1/pfSense Diag Coretemp sh.jpg_thumb)

                                1 Reply Last reply Reply Quote 0
                                • C
                                  Cino
                                  last edited by Aug 9, 2011, 12:34 AM

                                  @seh2000 good to hear!! i give all the credit to Scott Ullrich for making the original page.. I just changed some of the code for our needs :-)

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    seh2000
                                    last edited by Aug 9, 2011, 1:20 AM

                                    @stephenw10:

                                    Yes I'm seeing that too. Hard to see why it's happening from the code.  :-\

                                    Steve

                                    Steve,
                                    I am not a programmer, but if I replace the "C" with another symbol or take the "C" away then at the next update it is replaced with a "C" I believe this is from the command sysctl dev.cpu.0.temperature as the return is nn.nC so the degree symbol and the C added to the system_information.widget.php is overwritten, but this is only seen when other symbol in front or after the "C" is added or another letter e.g. "K". If the "C" is ommitted the it is not see when the dashboard is loaded, but appears at the 1st update.
                                    Steen

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      ariyako
                                      last edited by Aug 9, 2011, 3:05 AM Aug 9, 2011, 3:00 AM

                                      just in case you got HTTP ERROR 403 while wget from ptt.4mg.com/pfSense

                                      then try this links

                                      if you are on i386
                                      http://www.ariyako.org/pfsense/coretemp32.zip

                                      if you are on AMD64
                                      http://www.ariyako.org/pfsense/coretemp64.zip

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        jimp Rebel Alliance Developer Netgate
                                        last edited by Aug 9, 2011, 3:08 AM

                                        Even better:
                                        http://files.pfsense.org/jimp/tempmon/

                                        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                        Need help fast? Netgate Global Support!

                                        Do not Chat/PM for help!

                                        1 Reply Last reply Reply Quote 0
                                        • A
                                          ariyako
                                          last edited by Aug 9, 2011, 3:23 AM

                                          @jimp:

                                          Even better:
                                          http://files.pfsense.org/jimp/tempmon/

                                          WIN  ;D  :D

                                          1 Reply Last reply Reply Quote 0
                                          67 out of 140
                                          • First post
                                            67/140
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.