APU2 Temp Sensors



  • In the past I was able to watch the CPU temps on the main page Dashboard but somewhere along the way I lost that. I think it's when I moved from 2.3.x to 2.4.x. I have a unit running 2.3.4-p1 and it's working in there between MBUF Usage and Load Average. I have another running 2.4.1 and it's missing it. I'm setting up a new unit with 2.4.4-p2 and it's missing in there as well. Under System->Advanced->Miscellaneous I have the AMD sensors selected. Even though I've never needed to before, I tried adding the Thermal Sensors Widget but it just says "Updating". What am I missing?


  • Netgate Administrator

    On the unit where it is working what is thermal sensors set to? ACPI still?

    Do you have the same Coreboot versions on those devices? They may simply not be sending that data via ACPI.

    On the APU1 it's reported via ACPI:

    Shell Output - sysctl hw.acpi.thermal.tz0.temperature
    
    hw.acpi.thermal.tz0.temperature: 50.6C
    

    Steve



  • @stephenw10

    They are all set to the AMD sensor. All the old and new units. None are set to ACPI.

    /root: sysctl hw | grep acpi
    hw.acpi.cpu.cx_lowest: C1
    hw.acpi.reset_video: 0
    hw.acpi.handle_reboot: 1
    hw.acpi.disable_on_reboot: 0
    hw.acpi.verbose: 0
    hw.acpi.s4bios: 0
    hw.acpi.sleep_delay: 1
    hw.acpi.suspend_state: S3
    hw.acpi.standby_state: S1
    hw.acpi.lid_switch_state: NONE
    hw.acpi.sleep_button_state: S1
    hw.acpi.power_button_state: S5
    hw.acpi.supported_sleep_state: S1 S2 S3 S4 S5
    
    

    This is what I get on a unit that is currently working.


  • Netgate Administrator

    So you see the dev.amdtemp.x sysctl there? On all the boxes?

    https://www.freebsd.org/cgi/man.cgi?amdtemp(4)

    Steve



  • @stephenw10
    I'm unsure of the commands I need to be running. On a working box:

    [2.3.4-RELEASE][root@Firewall]/root: sysctl hw | grep amd
    hw.machine: amd64
    hw.machine_arch: amd64
    hw.mca.amd10h_L1TP: 1
    hw.snd.version: 2009061500/amd64
    
    [2.3.4-RELEASE][root@Firewall]/root: sysctl hw | grep dev
    hw.bus.devctl_queue: 1000
    hw.bus.devctl_disable: 0
    
    

    On a non-working box:

    [2.4.4-RELEASE][root@Firewall]/root: sysctl hw | grep amd
    hw.machine: amd64
    hw.machine_arch: amd64
    hw.mca.amd10h_L1TP: 1
    hw.lower_amd64_sharedpage: 0
    hw.snd.version: 2009061500/amd64
    
    [2.4.4-RELEASE][root@Firewall]/root: sysctl hw | grep dev
    hw.bus.devctl_queue: 1000
    hw.bus.devctl_disable: 0
    
    

  • Netgate Administrator

    I expect it to show under sysctl dev.amdtemp

    I'm pretty sure the APU1 isn't supported though and that's all I have to test against.

    Steve



  • @stephenw10 These are APU2 devices. The APU1 has Temp sensors that work as I had some older ones on earlier versions of pfSense that worked fine. (EDIT: Now that I think about it, I think I had to compile the module and put it in for it to show. I'm not sure if it was in by default or not.)

    I've found a way to get them working. I noticed that running

    [2.4.4-RELEASE][root@Firewall]/root: kldload amdtemp
    kldload: can't load amdtemp: No such file or directory
    

    Seems odd so I searched and found

    [2.4.4-RELEASE][root@Firewall]/root: find / | grep amdtemp.ko
    /boot/kernel.old/amdtemp.ko
    

    ran

    [2.4.4-RELEASE][root@Firewall]/root: cp /boot/kernel.old/amdtemp.ko /boot/kernel
    [2.4.4-RELEASE][root@Firewall]/root: kldload amdtemp
    

    Now it shows in the gui and in sysctl -a | grep temperature but I can't seem to make it persistent. I've added amdtemp_load="YES" to /boot/loader.conf but that doesn't help. I know I'm close. If I figure it out I'll post it. If anyone has ideas I'll certainly give it a shot.



  • @Stewart

    Found it. The amdtemp.ko file needs to be copied to /boot/modules/. Copied it over and rebooted. I'm not sure why this would be removed in upgrading from 2.3.x to 2.4.x.


Log in to reply