I recently purchased a new Ryzon 2600X with an Asus B450 Plus motherboard and was disappointed when I discovered that the Ubuntu kernel did not support this motherboard. I have installed a driver and found it is about 85% effective, eg the the fan min/max temps are incorrect but current temp seems OK. Basically what I have done is to create a module that the kernel can access which is like a supplement to a book, it does not change the kernel but uses DKMS https://en.wikipedia.org/wiki/Dynami...Module_Support
Now it is important to note I have no knowledge of what is going on technically but I have done it and it works with no issues. I have relied on advice from a guy named Temüjin from Ubuntu forums for most of the commands. This is specifically what I did for my Asus B450 board but if you can find a driver I imagine the process will work for any motherboard. This post is as much for my future reference as it is for people with the same problem.
Step 1. Identify your chipset that provides the information to lm-sensors.
Step 2. Find a driver for your chipset. In my case my chipset is a ITE IT8665E which uses the IT87 driver. https://github.com/a1wong/it87/blob/master/it87.c
Step 3. Enter the following 7 commands sequentially:
Super simple and works, you will now be looking at your sensor output. This process creates a folder /sys/module/it87. There are 2 options to reverse the process:
1.
or 2.
remove the line "it87" from /etc/modules and /etc/modules-load.d/modules.conf (these are both the same file, changing 1 changes both)
BEFORE:
AFTER:
There is really no point to run sensors-detect because it will come back that it has detected a sensor (lm78) with a 60% reliability however it is not correct. It will just give you a line: CPU Fan: 0RPM.
So the end result, my Psensors display:
Now it is important to note I have no knowledge of what is going on technically but I have done it and it works with no issues. I have relied on advice from a guy named Temüjin from Ubuntu forums for most of the commands. This is specifically what I did for my Asus B450 board but if you can find a driver I imagine the process will work for any motherboard. This post is as much for my future reference as it is for people with the same problem.
Step 1. Identify your chipset that provides the information to lm-sensors.
Code:
$ sudo dmidecode -t 34
Step 3. Enter the following 7 commands sequentially:
Code:
echo "it87" | sudo tee -a /etc/modules sudo apt-get install git dkms build-essential linux-headers-generic #you may have some of these already cd ~/ #can use whichever directory you want git clone https://github.com/a1wong/it87.git cd it87/ sudo make dkms sensors
1.
Code:
cd ~/it87 sudo make dkms_clean
remove the line "it87" from /etc/modules and /etc/modules-load.d/modules.conf (these are both the same file, changing 1 changes both)
BEFORE:
Code:
angel@angelpc:~$ sensors k10temp-pci-00c3 Adapter: PCI adapter temp1: +30.1°C (high = +70.0°C) asus-isa-0000 Adapter: ISA adapter cpu_fan: 0 RPM
Code:
angel@angelpc:~$ sensors asus-isa-0000 Adapter: ISA adapter cpu_fan: 0 RPM it8665-isa-0290 Adapter: ISA adapter in0: +0.74 V (min = +2.75 V, max = +2.77 V) ALARM in1: +2.53 V (min = +1.25 V, max = +1.65 V) ALARM in2: +2.06 V (min = +2.08 V, max = +1.38 V) ALARM in3: +2.04 V (min = +2.50 V, max = +0.58 V) ALARM in4: +0.03 V (min = +1.70 V, max = +2.40 V) ALARM in5: +0.03 V (min = +2.68 V, max = +2.76 V) ALARM in6: +0.03 V (min = +1.00 V, max = +1.70 V) ALARM 3VSB: +3.36 V (min = +1.50 V, max = +4.75 V) Vbat: +3.29 V +3.3V: +3.36 V fan1: 1493 RPM (min = 15 RPM) fan2: 1326 RPM (min = 24 RPM) fan3: 1917 RPM (min = 164 RPM) fan4: 1917 RPM (min = -1 RPM) fan6: 0 RPM (min = -1 RPM) temp1: +36.0°C (low = -73.0°C, high = -73.0°C) ALARM temp2: +32.0°C (low = -67.0°C, high = -37.0°C) ALARM sensor = thermistor temp3: +34.0°C (low = +110.0°C, high = -5.0°C) ALARM sensor = thermistor temp4: +34.0°C (low = -75.0°C, high = +57.0°C) sensor = thermistor temp5: +34.0°C (low = -82.0°C, high = +87.0°C) sensor = thermistor temp6: +34.0°C (low = -117.0°C, high = -37.0°C) ALARM sensor = thermistor intrusion0: ALARM k10temp-pci-00c3 Adapter: PCI adapter temp1: +43.0°C (high = +70.0°C)
So the end result, my Psensors display: