YoCodingMonster / OpenFreezeCenter

For Those running Linux Distro on MSI laptops. This is the Graphic User Interface application meant for Fan control in Linux.
GNU Affero General Public License v3.0
363 stars 61 forks source link

EC map Confusions #157

Open ipiyushkumar opened 1 year ago

ipiyushkumar commented 1 year ago

Good morning, hope you are having a good day. i am using OpenFreezeCenter for quite a while and well i have noticed that it is not completely compaitible with my system i am using gf63-thin-11UC(Linux x86 64bit) as i was looking at the EC map provided by your application, many doubts emerged

doubt 1: how to read the values, as i figured out they are in ASCII, do i convert them into decimal values or hexadecimal values(or maybe i am completely wrong please enlighten me)

doubt 2: my EC map is storing values at different location than yours, like cpu/gpu temp are ok but other values can't be read.are they stored in different locations?

ipiyushkumar commented 1 year ago

Screenshot from 2023-06-05 17-37-46

ipiyushkumar commented 1 year ago

i figured out my cpu fan speed its stored at 0xC9

symonxdd commented 1 year ago

Hi @dark-king-001

As there doesn't seem a promising way to contact the dev other than posting an issue (he's not been active on Twitter since months), I thought I could ask you (as well) about this issue: Are you aware of the exact code that manages the fan speed of the msi device?

I got a GS66 10SE and would like to build a simple app that allows to change to fan speed of both the CPU & GPU in a more straightforward way than the only compatible software that's available, Dragon Center.

Thanks!

ipiyushkumar commented 1 year ago

what this github project does is seek the address in EC mapping and change its value to its desired value what you will need to do is to figure out after opening EC mapping using this repository just watch the values. or you can write a program using chatgpt to achieve the same to watch the values

after figuring out which values work for which controller and which values give the live data

then just write a script to cange controller values to desired value

now i am gonna mention specifics

the address is from 0 to 255 and is seeked using hexadecimal values the values allocated in these address spaces is an integer

hexadecimal addressing looks like what i have shown in the diagram

you can refer to ec_write.py file for more details in the repository

symonxdd commented 1 year ago

Thanks for your reply! Would it be possible to write a concrete step by step tutorial?

I don't think I understood it all. For starters, I don't know what 'EC mappings' are. Could you elaborate? Upon searching the Internet, I didn't find anything useful I don't think.

Thanks!

YoCodingMonster commented 1 year ago

OpenFreezeCenter-Lite