Temperature Reading on AMD
-
I just upgraded to pfSense 2.3 tonight (which was easy, flawless, and without issue). However, the temp sensor readout broke again. It looks like the amdtemp fix didn't make it into FreeBSD 10.3. So I recompiled the FreeBSD 10.3 kernel and got a new amdtemp.ko file.
-
Unload the module first: kldunload amdtemp.ko
-
Rename the attached file to amdtemp.ko and copy it to /boot/kernel/amdtemp.ko and /boot/modules/amdtemp.ko
-
Load the module: kldload amdtemp.ko
-
Test sensor from command line: sysctl -a | grep temperature
-
Enjoy the new Temp Sensor readout
-
-
I just upgraded to pfSense 2.3 tonight (which was easy, flawless, and without issue). However, the temp sensor readout broke again. It looks like the amdtemp fix didn't make it into FreeBSD 10.3. So I recompiled the FreeBSD 10.3 kernel and got a new amdtemp.ko file.
-
Unload the module first: kldunload amdtemp.ko
-
Rename the attached file to amdtemp.ko and copy it to /boot/kernel/amdtemp.ko and /boot/modules/amdtemp.ko
-
Load the module: kldload amdtemp.ko
-
Enjoy the new Temp Sensor readout
How is your CPU temp so low ?
I have the fitlet-X and it idles at 54 C. -
-
I purchased the heatsink for the i-A10, and also have it sitting on a "rack" I built with a low RPM, 80mm fan blowing on it ;D
-
LOL nice !
Was kinda hoping you had some BIOS trickery going on to cool it so much.
I already installed the heatsink, it did cool it a bit, but…meh.
54-56 isn't too bad. I'm hoping it doesn't mess with the mSata SSD in there.I guess I could hack a usb powered fan, but that would negate the low-power aspect of this machine.
-
I think it should be good up to 70°C. The fan is connected to a USB port on the wifi access point, so the power consumption doesn't count against the Fitlet :P
-
Any performance figures for this interesting cpu setup? Routing throughput & openvpn?
-
Thanks Fahrenhe1t for the help :). Mine is working great now… It's nice to have temp readings...
-
Any performance figures for this interesting cpu setup? Routing throughput & openvpn?
I have a Netgear Nighthawk router plugged into the Fitlet pfSense box using bridge mode. I use that as my wifi access point.
Between two wired boxes connected locally there, using iPerf3, I get close to theoretical max throughput:
$ iperf3 -c fitlet -f m -n 1024M iPerf Client Connecting to host fitlet, port 5201 [ 5] local 192.168.x.x port 54552 connected to 192.168.x.x port 5201 [ ID] Interval Transfer Bandwidth [ 5] 0.00-1.00 sec 113 MBytes 947 Mbits/sec [ 5] 1.00-2.00 sec 112 MBytes 940 Mbits/sec [ 5] 2.00-3.00 sec 112 MBytes 940 Mbits/sec [ 5] 3.00-4.00 sec 112 MBytes 940 Mbits/sec [ 5] 4.00-5.00 sec 112 MBytes 940 Mbits/sec [ 5] 5.00-6.00 sec 112 MBytes 940 Mbits/sec [ 5] 6.00-7.00 sec 112 MBytes 940 Mbits/sec [ 5] 7.00-8.00 sec 112 MBytes 940 Mbits/sec [ 5] 8.00-9.00 sec 112 MBytes 940 Mbits/sec [ 5] 9.00-9.13 sec 14.4 MBytes 940 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 5] 0.00-9.13 sec 1.00 GBytes 941 Mbits/sec sender [ 5] 0.00-9.13 sec 1024 MBytes 941 Mbits/sec receiver
I don't have a stellar Internet connection (Comcast, 170Mbps down/12Mbps up) but I'm able to get those speeds through pfSense with xfinity speedtest:
I have OpenVPN setup…I'll try and get on wifi somewhere else and do an iPerf while VPN'd in.
-
That test tells us the switching speed of your night hawk :)
If possible you should setup an additional interface on the firewall on its own subnet, plug a pc into that and measure with another pc on the lan/different subnet.
You could then probably enable an openvpn server on this new interface, connect to that from a pc/openvpn-client then do a speed test to a client on the lan. -
Just sent you a PM.
-
Using AT&T 4G, I VPN'd back home. I have iPerf3 running on another box internally and ran a test. I got 3.61 Mbits/sec.
Connecting to a wifi network with 10mbps up and down, I ran the test again and got 8.47mbps. I'll see if I can find a faster wifi network to test on.
**Update, got 17.9mbps connecting back to VPN on a friend's wifi with 40down/20up.
-
Just upgraded to 2.3.1 and temp widget is broken again… :(
redid your procedure and it's back... :) -
Just upgraded to 2.3.1 and temp widget is broken again… :(
redid your procedure and it's back... :)Thanks for the heads up, mine just did the same thing on 2.3.1 (not to be confused with 2.3_1 :o)
-
haven't done 2.3.1_1 yet…
-
I just did, and had to reload amdtemp.ko. I ended up writing a shell script to copy the files and enable the service.
-
Wish they would include your mod. 2.3.2 time….
-
Wish they would include your mod. 2.3.2 time….
Same. I think FreeBSD has to include it in their release though. Someone else already submitted a bug (https://lists.freebsd.org/pipermail/freebsd-bugs/2016-February/066274.html); not sure how to get FreeBSD to include the fix in a release though…
-
Fahrenhe1t, I'm running pfSense 2.3.2p1 w/ A6-5400K CPU with set to AMD and dashboard temps read 0C to 1C, varies. No where close to accurate. So tried your recompiled 10.3 amdtemp.ko file. Didn't change anything. My two other boxes with Intel CPU and A6-6400K work fine without a modified amdtemp.ko file. Ideas, mistakes I may have made?
-
Fahrenhe1t, I'm running pfSense 2.3.2p1 w/ A6-5400K CPU with set to AMD and dashboard temps read 0C to 1C, varies. No where close to accurate. So tried your recompiled 10.3 amdtemp.ko file. Didn't change anything. My two other boxes with Intel CPU and A6-6400K work fine without a modified amdtemp.ko file. Ideas, mistakes I may have made?
Strange! From the command line, what does the OS report if you run this: sysctl -a | grep temperature
-
dev.cpu.1.temperature: 0.0C
dev.cpu.0.temperature: 0.0CSame as before the modified file was copied to the box.
-
BIOS reports 33C
-
Do you know if the temperature is able to be read from a different operating system?
Maybe you could boot Ubuntu from USB on your pfSense box (without installing it), install the lm-sensors package, then run: sudo sensors
If it returns accurate CPU temperature, then you know it's a problem with FreeBSD not detecting your CPU properly.It looks like the A6-5400K CPU was released in 2012. If I had to guess, I bet FreeBSD (and the and specifically amdtemp.ko) doesn't detect the CPU properly. The CPU ID would have to be determined, the new sensor line would have to be added to the amdtemp source code, then it would have to be recompiled with the new CPU information. I'm just guessing though.
-
Thats a good idea but then I still have a broken temperature status. Your right the cpu is a bit old. I think I'll cut my time losses and try an A6-7470K. If it works I'll keep the 5400 as a back up.
-
Actually, I think the CPU is fine, it's just that amdtemp.ko isn't always updated with "new" CPU's. If you don't have any luck with the new CPU, I might be able to try and compile a new amdtemp.ko, you'd just have to tell me what the CPU ID is. In the source code, the CPU ID's look like this:
#define DEVICEID_AMD_MISC14 0x1703 #define DEVICEID_AMD_MISC15 0x1603 #define DEVICEID_AMD_MISC16 0x1533 #define DEVICEID_AMD_MISC16_X3 0X1583
The last one is the ID for my A10 Micro-6700T. I have no idea how that can be found though.
-
The newer cpu reports the same. I'll look for the DEVICEID.
-
The only ID I find is 630F81. Not sure where those txt strings come from in the amdtemp.ko file.
-
Hey, I found a thread which has updated DEVICEID's (http://www.pcengines.info/forums/?page=post&id=795B2ACC-F4B0-4181-9B4A-54EC757D4001&fid=DF5ACB70-99C4-4C61-AFA6-4C0E0DB05B2A). The guy (Stephan) said he compiled the latest version and uploaded it here: http://s000.tinyupload.com/index.php?file_id=70328254396185987242
Maybe you can try that one?
-
I downloaded the file you linked too, with WinSCP I removed the old /boot/kernel/amdtemp.ko and copied new file to /root, then followed the instructions;
kldunload amdtemp
cp /root/amdtemp.ko /boot/kernel/
kldload /boot/kernel/amdtemp.koStill reports 0C.
-
I'm receiving:
kldload: an error occurred while loading the module. Please check dmesg(8) for more details.Followed every step as described.
Using pfSense 2.3.2-RELEASE-p1Any ideas?
-
I'm receiving:
kldload: an error occurred while loading the module. Please check dmesg(8) for more details.Followed every step as described.
Using pfSense 2.3.2-RELEASE-p1Any ideas?
From the shell, when you type:
kldload /boot/kernel/amdtemp.kowhat happens? Also, if you type after loading:
dmesgWhat does it say?
-
I'm receiving:
kldload: an error occurred while loading the module. Please check dmesg(8) for more details.Followed every step as described.
Using pfSense 2.3.2-RELEASE-p1Any ideas?
From the shell, when you type:
kldload /boot/kernel/amdtemp.kowhat happens? Also, if you type after loading:
dmesgWhat does it say?
Hi Fahrenhe1t!
Error quoted:
kldload: an error occurred while loading the module. Please check dmesg(8) for more details.
dmesg output quoted:
Copyright (c) 1992-2016 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 10.3-RELEASE-p9 #1 5fc1b19(RELENG_2_3_2): Tue Sep 27 12:26:06 CDT 2016 root@ce23-amd64-builder:/builder/pfsense-232/tmp/obj/builder/pfsense-232/tmp/FreeBSD-src/sys/pfSense amd64 FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512 CPU: AMD GX-412TC SOC (998.16-MHz K8-class CPU) Origin="AuthenticAMD" Id=0x730f01 Family=0x16 Model=0x30 Stepping=1 Features=0x178bfbff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,htt>Features2=0x3ed8220b <sse3,pclmulqdq,mon,ssse3,cx16,sse4.1,sse4.2,movbe,popcnt,aesni,xsave,osxsave,avx,f16c>AMD Features=0x2e500800 <syscall,nx,mmx+,ffxsr,page1gb,rdtscp,lm>AMD Features2=0x1d4037ff <lahf,cmp,svm,extapic,cr8,abm,sse4a,mas,prefetch,osvw,ibs,skinit,wdt,topology,pnxc,dbe,ptsc,pl2i>Structured Extended Features=0x8 <bmi1>XSAVE Features=0x1 <xsaveopt>SVM: NP,NRIP,AFlush,DAssist,NAsids=8 TSC: P-state invariant, performance statistics real memory = 2012930048 (1919 MB) avail memory = 1908260864 (1819 MB) Event timer "LAPIC" quality 400 ACPI APIC Table: <core coreboot=""> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs FreeBSD/SMP: 1 package(s) x 4 core(s) cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 cpu2 (AP): APIC ID: 2 cpu3 (AP): APIC ID: 3 random: <software, yarrow=""> initialized ioapic1: Changing APIC ID to 5 ioapic0 <version 2.1=""> irqs 0-23 on motherboard ioapic1 <version 2.1=""> irqs 24-55 on motherboard wlan: mac acl policy registered ipw_bss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/. ipw_bss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf. module_register_init: MOD_LOAD (ipw_bss_fw, 0xffffffff80620930, 0) error 1 ipw_ibss: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/. ipw_ibss: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf. module_register_init: MOD_LOAD (ipw_ibss_fw, 0xffffffff806209e0, 0) error 1 ipw_monitor: You need to read the LICENSE file in /usr/share/doc/legal/intel_ipw/. ipw_monitor: If you agree with the license, set legal.intel_ipw.license_ack=1 in /boot/loader.conf. module_register_init: MOD_LOAD (ipw_monitor_fw, 0xffffffff80620a90, 0) error 1 iwi_bss: You need to read the LICENSE file in /usr/share/doc/legal/intel_iwi/. iwi_bss: If you agree with the license, set legal.intel_iwi.license_ack=1 in /boot/loader.conf. module_register_init: MOD_LOAD (iwi_bss_fw, 0xffffffff80647c30, 0) error 1 iwi_ibss: You need to read the LICENSE file in /usr/share/doc/legal/intel_iwi/. iwi_ibss: If you agree with the license, set legal.intel_iwi.license_ack=1 in /boot/loader.conf. module_register_init: MOD_LOAD (iwi_ibss_fw, 0xffffffff80647ce0, 0) error 1 iwi_monitor: You need to read the LICENSE file in /usr/share/doc/legal/intel_iwi/. iwi_monitor: If you agree with the license, set legal.intel_iwi.license_ack=1 in /boot/loader.conf. module_register_init: MOD_LOAD (iwi_monitor_fw, 0xffffffff80647d90, 0) error 1 netmap: loaded module kbd0 at kbdmux0 module_register_init: MOD_LOAD (vesa, 0xffffffff81016c90, 0) error 19 cryptosoft0: <software crypto=""> on motherboard padlock0: No ACE support. acpi0: <core coreboot=""> on motherboard acpi0: Power Button (fixed) cpu0: <acpi cpu=""> on acpi0 cpu1: <acpi cpu=""> on acpi0 cpu2: <acpi cpu=""> on acpi0 cpu3: <acpi cpu=""> on acpi0 atrtc0: <at realtime="" clock=""> port 0x70-0x71 irq 8 on acpi0 Event timer "RTC" frequency 32768 Hz quality 0 attimer0: <at timer=""> port 0x40-0x43 irq 0 on acpi0 Timecounter "i8254" frequency 1193182 Hz quality 0 Event timer "i8254" frequency 1193182 Hz quality 100 Timecounter "ACPI-safe" frequency 3579545 Hz quality 850 acpi_timer0: <32-bit timer at 3.579545MHz> port 0x818-0x81b on acpi0 hpet0: <high precision="" event="" timer=""> iomem 0xfed00000-0xfed003ff on acpi0 Timecounter "HPET" frequency 14318180 Hz quality 950 acpi_button0: <power button=""> on acpi0 pcib0: <acpi host-pci="" bridge=""> port 0xcf8-0xcff on acpi0 pci0: <acpi pci="" bus=""> on pcib0 pcib1: <acpi pci-pci="" bridge=""> at device 2.2 on pci0 pcib1: failed to allocate initial I/O port window: 0x1000-0x1fff pci1: <acpi pci="" bus=""> on pcib1 igb0: <intel(r) 1000="" pro="" network="" connection,="" version="" -="" 2.5.3-k=""> mem 0xfe600000-0xfe61ffff,0xfe620000-0xfe623fff at device 0.0 on pci1 igb0: Using MSIX interrupts with 3 vectors igb0: Ethernet address: 00:0d:b9:42:b2:d8 igb0: Bound queue 0 to cpu 0 igb0: Bound queue 1 to cpu 1 igb0: netmap queues/slots: TX 2/1024, RX 2/1024 pcib2: <acpi pci-pci="" bridge=""> at device 2.3 on pci0 pci2: <acpi pci="" bus=""> on pcib2 igb1: <intel(r) 1000="" pro="" network="" connection,="" version="" -="" 2.5.3-k=""> port 0x2000-0x201f mem 0xfe700000-0xfe71ffff,0xfe720000-0xfe723fff at device 0.0 on pci2 igb1: Using MSIX interrupts with 3 vectors igb1: Ethernet address: "MAC removed" igb1: Bound queue 0 to cpu 2 igb1: Bound queue 1 to cpu 3 igb1: netmap queues/slots: TX 2/1024, RX 2/1024 pcib3: <acpi pci-pci="" bridge=""> at device 2.4 on pci0 pci3: <acpi pci="" bus=""> on pcib3 igb2: <intel(r) 1000="" pro="" network="" connection,="" version="" -="" 2.5.3-k=""> port 0x3000-0x301f mem 0xfe800000-0xfe81ffff,0xfe820000-0xfe823fff at device 0.0 on pci3 igb2: Using MSIX interrupts with 3 vectors igb2: Ethernet address: "MAC removed" igb2: Bound queue 0 to cpu 0 igb2: Bound queue 1 to cpu 1 igb2: netmap queues/slots: TX 2/1024, RX 2/1024 pci0: <encrypt decrypt=""> at device 8.0 (no driver attached) xhci0: <xhci (generic)="" usb="" 3.0="" controller=""> mem 0xfeb22000-0xfeb23fff at device 16.0 on pci0 xhci0: 32 bytes context size, 64-bit DMA usbus0 on xhci0 ahci0: <amd hudson-2="" ahci="" sata="" controller=""> port 0x4010-0x4017,0x4020-0x4023,0x4018-0x401f,0x4024-0x4027,0x4000-0x400f mem 0xfeb25000-0xfeb253ff at device 17.0 on pci0 ahci0: AHCI v1.30 with 2 6Gbps ports, Port Multiplier supported with FBS ahcich0: <ahci channel=""> at channel 0 on ahci0 ahcich1: <ahci channel=""> at channel 1 on ahci0 ehci0: <ehci (generic)="" usb="" 2.0="" controller=""> mem 0xfeb25400-0xfeb254ff at device 19.0 on pci0 usbus1: EHCI version 1.0 usbus1 on ehci0 isab0: <pci-isa bridge=""> at device 20.3 on pci0 isa0: <isa bus=""> on isab0 sdhci_pci0: <generic sd="" hci=""> mem 0xfeb25500-0xfeb255ff at device 20.7 on pci0 sdhci_pci0: 1 slot(s) allocated uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 uart0: console (115200,n,8,1) orm0: <isa option="" roms=""> at iomem 0xc0000-0xc0fff,0xef000-0xeffff on isa0 ppc0: cannot reserve I/O port range uart1: <16550 or compatible> at port 0x2f8-0x2ff irq 3 on isa0 hwpstate0: <cool`n'quiet 2.0=""> on cpu0 Timecounters tick every 1.000 msec random: unblocking device. usbus0: 5.0Gbps Super Speed USB v3.0 usbus1: 480Mbps High Speed USB v2.0 ugen0.1: <0x1022> at usbus0 uhub0: <0x1022 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0 ugen1.1: <amd> at usbus1 uhub1: <amd 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr=""> on usbus1 uhub0: 4 ports with 4 removable, self powered uhub1: 2 ports with 2 removable, self powered ugen1.2: <vendor 0x0438=""> at usbus1 uhub2: <vendor 2="" 9="" 0x0438="" product="" 0x7900,="" class="" 0,="" rev="" 2.00="" 0.18,="" addr=""> on usbus1 uhub2: 4 ports with 4 removable, self powered ada0 at ahcich0 bus 0 scbus0 target 0 lun 0 ada0: <kingston sms200s330g="" 608abbf0=""> ATA8-ACS SATA 3.x device ada0: Serial Number 50026B726804B473 ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 512bytes) ada0: Command Queueing enabled ada0: 28626MB (58626288 512 byte sectors) ada0: Previously was known as ad4 SMP: AP CPU #3 Launched! SMP: AP CPU #1 Launched! SMP: AP CPU #2 Launched! Timecounter "TSC" frequency 998158596 Hz quality 1000 Trying to mount root from ufs:/dev/ufsid/56e218df8303838d [rw]... padlock0: No ACE support. aesni0: <aes-cbc,aes-xts,aes-gcm,aes-icm> on motherboard pflog0: promiscuous mode enabled igb1: link state changed to UP igb1: link state changed to DOWN igb1: link state changed to UP igb0: link state changed to UP igb1: link state changed to DOWN igb1: link state changed to UP arpresolve: can't allocate llinfo for 192.168.2.254 on igb0 arp: ec:8a:4c:a5:c5:9e is using my IP address 192.168.2.253 on igb0! arp: 10.101.0.104 moved from "MAC removed" to "MAC removed" on igb1 arp: 10.101.0.104 moved from "MAC removed" to "MAC removed" on igb1</aes-cbc,aes-xts,aes-gcm,aes-icm></kingston></vendor></vendor></amd></amd></cool`n'quiet></isa></generic></isa></pci-isa></ehci></ahci></ahci></amd></xhci></encrypt></intel(r)></acpi></acpi></intel(r)></acpi></acpi></intel(r)></acpi></acpi></acpi></acpi></power></high></at></at></acpi></acpi></acpi></acpi></core></software></version></version></software,></core ></xsaveopt></bmi1></lahf,cmp,svm,extapic,cr8,abm,sse4a,mas,prefetch,osvw,ibs,skinit,wdt,topology,pnxc,dbe,ptsc,pl2i></syscall,nx,mmx+,ffxsr,page1gb,rdtscp,lm></sse3,pclmulqdq,mon,ssse3,cx16,sse4.1,sse4.2,movbe,popcnt,aesni,xsave,osxsave,avx,f16c></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,htt>
-
I'm receiving:
kldload: an error occurred while loading the module. Please check dmesg(8) for more details.Followed every step as described.
Using pfSense 2.3.2-RELEASE-p1Any ideas?
It works with APU2 just only starting from pfSense 2.4 / FreeBSD-11 ;)
-
@hda:
I'm receiving:
kldload: an error occurred while loading the module. Please check dmesg(8) for more details.Followed every step as described.
Using pfSense 2.3.2-RELEASE-p1Any ideas?
It works with APU2 just only starting from pfSense 2.4 / FreeBSD-11 ;)
Thanks for your answer, but damn.
I thought I was already on the latest version… where can I find the 2.4 ISO? -
It's in beta at: https://snapshots.pfsense.org/
-
It's in beta at: https://snapshots.pfsense.org/
Thanks!
I'm running some units in production environment, so will be testing this release in my testlab and wait for stable release for my production environment. -
Seems strange though, people confirmed in another thread that the 10.3 amdtemp.ko worked on your chip (https://forum.pfsense.org/index.php?topic=106444.msg631137#msg631137)…
-
Suddenly out of the blue I notice now the temps are correct in the GUI. No firmware upgrade since last post. No idea how it started working. Added some 1:1's, a few rules, bout it since. Odd…
-
Come to find out the A6-7470K did fix the problem. I wasn't told it got dropped in the router box.
Thats a good idea but then I still have a broken temperature status. Your right the cpu is a bit old. I think I'll cut my time losses and try an A6-7470K. If it works I'll keep the 5400 as a back up.
-
Do you really have to place amdtemp.ko in /boot/modules as well? I don't see any amtemp.ko file there by default.
-
is there anyway to see the temp readings on a AMD Sempron 2200+ cpu? AMD K7