dominiksalvet / asus-fan-control

Fan control for ASUS devices running Linux
MIT License
320 stars 37 forks source link

dmidecode confusion on new model #93

Closed jaggzh closed 3 years ago

jaggzh commented 3 years ago

Okay, I'm trying to figure out how to handle this gracefully. The dmidecode returned info for "system-product-name" is just "System Product Name". It seems dmidecode outputs multiple handles, and the one returned by dmidecode -s system-product-name seems to be the first, which is not useful for determining the system type here. Instead, baseboard-product-name might be more useful? If this isn't standardized, perhaps we can go through the system-product-names looking for a match, then baseboard-product-names?

dominiksalvet commented 3 years ago

Hello @jaggzh and welcome to the AFC community.

First, what device do you have? And second, what are the respective output values on your system for the provided dmidecode sub-commands?

jaggzh commented 3 years ago

Thank you :) Welcome to my browser window and... living space.. I guess? So, it's a "Rog Strix B450-F Gaming II". I currently just added a line to models to accept "System Product Name" as my motherboard: SystemProductName|1335|45 46 50 51 52 53 58 62 (Arbitrary settings).

By the way, my actual goal is to manually modify a fan speed live. This is because I put a GPU into the system that doesn't have its own fans. In another asus system I'm able to use pwm devices to control the fans, but those files aren't available on this one. (See that project here: https://github.com/jaggzh/k80-fan-control )

Your subcommands aren't working, though, by the way, and that's another issue I'm trying to figure out how to figure out. '_SB.PCI0.LPCB.EC0.RRAM' yields acpi call failed with 'Error: AE_NOT_FOUND'

I wrote a script to get the DSDT data, but have no clue how to make sense of the data:

#!/bin/bash
datf=dsdt.dat
datfreadable=dsdt.dsl
fwfile=/sys/firmware/acpi/tables/DSDT
sudo cat "$fwfile" >"$datf"
iasl -d "$datf"
cat <<-EOT
    Raw data from $fwfile"
      > $datf
    iasl decoded file for you to read:
      > $datfreadable
EOT

(So I end up with a 500k "dsdt.dsl" text file)

dominiksalvet commented 3 years ago

Well, there is no MB working with AFC yet and the AE_NOT_FOUND is a typical issue even on some laptops. It basically means that AFC will not work on the device until someone figure out how to make these devices work. But it may be impossible...

The System Product Name is just a bonus to the current situation. However, if I remember correctly, even MBs tend to report their name correctly using this method.

dominiksalvet commented 3 years ago

Anyway, should you find something that works for you, let us know! 👍