Closed benitozh closed 1 month ago
Same problem here, kernel 6.4.
Thanks for the reply, I've tried since my last text both Fedora and NixOS in addition to my daily endeavourOS install, I can't even see anything in the designated folders after msi-ec install.... It's a shame that the MSI Modern series doesn't seem to be supported by the project yet. I'm always up for a little help, if anyone is interested in porting msi-ec to the Modern A5M model.
Same problem, still kernel 6.4. E155LAMS.114. Sadly, i have no idea how can we try to put our model somewhere by patching or something... OS: Fedora Silverblue
DISCLAIMER: I'm not responsible for any broken hardware and other damage! Reading EC is safe
Do you have Windows installed? You can use RWEverything to get EC values in real time. Also check config for C5M (14JKEMS1) model and use it as reference (at least its the same generation and family ~but AMD~). Make EC dump with debug mode and reply here, addresses can be the same. Compare with this.
If you sure enough that configs are same, add your EC version to list *ALLOWED_FW_9
for test. I don't know right way to commit this changes - as new model with own config or just adding new EC version to list.
Hi!
The reason why not all laptops are supported yet is that they all have different EC configurations, not documented anywhere. In order to support a laptop we need some feedback from its users.
Get the latest version of the driver from this repo, build it (make
) and load it in the debug mode (sudo make load-debug
)
Run cat /sys/devices/platform/msi-ec/debug/fw_version
to get your EC FW version
Run cat /sys/devices/platform/msi-ec/debug/ec_dump
to get an EC dump
And attach them here
Like @glpnk said, if you have windows you can use RWEverything to see what EC addresses are modified when you toggle different settings in the MSI Centre
It won't damage your hardware, it only reads from the EC. Just don't write random stuff into random addresses using msi-ec/debug/ec_set
Hi!
The reason why not all laptops are supported yet is that they all have different EC configurations, not documented anywhere. In order to support a laptop we need some feedback from its users.
Get the latest version of the driver from this repo, build it (
make
) and load it in the debug mode (sudo make load-debug
)Run
cat /sys/devices/platform/msi-ec/debug/fw_version
to get your EC FW version Runcat /sys/devices/platform/msi-ec/debug/ec_dump
to get an EC dump And attach them hereLike @glpnk said, if you have windows you can use RWEverything to see what EC addresses are modified when you toggle different settings in the MSI Centre
It won't damage your hardware, it only reads from the EC. Just don't write random stuff into random addresses using
msi-ec/debug/ec_set
I think the issue is that there is no msi-ec folder in the platform folder after using kernel 6.4 and up:
I tested again with kernel 6.5 on Fedora 38 and it's the same thing.
(Secure boot is disabled btw)
/sys/devices/platform/msi-ec
is created at runtime: if the laptop isn't supported, the driver won't load, and if the driver won't load the folder won't be created
I found issue #4, this laptop isn't supported yet. @catemiko attached a file with some tested addresses, I'm going to add them in my branch so you can test them
An EC dump and EC FW version would still be appreciated (see my first comment)
In my case my laptop is supported and the folder is still not created
I created a PR adding support for Modern 15 A5M 155LEMS1.106
. Clone my branch to test it: git clone -b modern-15-a5m https://github.com/teackot/msi-ec.git
In my case my laptop is supported and the folder is still not created
Okay, let me check the comment you left in that discussion
In my case my laptop is supported and the folder is still not created
Okay, let me check the comment you left in that discussion
Ok, left a comment there.
In my case my laptop is supported and the folder is still not created
Just a little update here: the issue was that the kernel version of the driver doesn't create an msi-ec sysfs directory because it only supports charge thresholds yet, so it has nothing to put in that folder
I created a PR adding support for
Modern 15 A5M 155LEMS1.106
. Clone my branch to test it:git clone -b modern-15-a5m https://github.com/teackot/msi-ec.git
Tried sudo modprobe -v msi-ec
:
insmod /lib/modules/6.4.11-zen2-1-zen/kernel/drivers/platform/x86/msi-ec.ko.zst
modprobe: ERROR: could not insert 'msi_ec': Operation not supported
@catemiko try building it and then loading it in the debug mode, then run /sys/devices/platform/msi-ec/debug/fw_version
Oh, I know why it didn't work. It loads the in-tree kernel module, you should load the github version by running sudo make load
Ok, now I have a possibility to run windows + RWeverything + MSI Center PRO, i've already pressed on EC button (in RWE...) and on every change in center app i pressed f2 to export config. What should i look at? With diffuse (flatpak app) i have at least 7 lines changed, so i don't know what i can check to be 100% sure. Comparing some values with PR #66 not giving me the same results (or at least I'm watching wrong). I'll be appreciated to have a guide (discord server with screen share is welcome)
In RWE you need to Save (button 1) current dump and load (with load or Compare (2) button) it for comparison, than press Compare button (2) second time and changed values will be highlighted red:
Screenshot from Asus laptop, don't get confused
If values are red but static you forgot to click Compare button second time
UPD: add this guide to wiki
Upd: if you confirm that these values are good, i'll be able to install ubuntu on external drive for testing purposes (on silverblue not so easy to test msi-ec)
What exactly I need to find? Battery and Shift? #66 isn't resolving
From your screenshot and patch:
Value | Address | Value | Match |
---|---|---|---|
Charge limit | EF | ✅ | |
"Battery super_save mode" SM_ECO_NAME | F2 | C2 | ✅ |
"Battery silent mode" SM_COMFORT_NAME | F2 | C1 | ✅ |
"Battery balance mode" SM_COMFORT_NAME | F2 | C1 | ✅ |
"Battery performance mode" SM_SPORT_NAME | F2 | C0 | ✅ |
"Battery silent mode" FM_SILENT_NAME | F4 | 1D | need to add to PR |
FM_AUTO_NAME | F4 | 0D | ✅ |
KB BL | F3 | 80,83 | ✅ |
Battery thresholds: right. You can see 0xEF changing
"Shift Mode": got it right
"Super Battery":
Fan mode:
catemiko's fan modes end with the C digit, and ushinnary's end with a D. I think only the higher 4 bits matter
@teackot
I think only the higher 4 bits matter
Yeah I've tested, both working and not conflicting
Super battery is weird with 3 possible values.
From some MSI app research - you can programmatically disable battery charge. Also from my experiments - you also can trigger charge when power supply is unplugged
@ushinnary does FN swap exists in MSI app? Also do you have ability to fine tune cooler speed in app? Led addresses right? Because from values it seems to be enabled (0x2B=8C bit 2 is set, do you have micmute led lit?)
Also F3 address is keyboard light about which I forgot
FN swap exists in MSI app?
Yes, it does. Should i make a screenshot with it changing too? I can do this in 5 hours from now😅 Not sure about cooler speed option, think it controlled by performance preset. Didn't see an led option in the app, i might need to install more drivers to check that, but i will :)
I have also a win key disable option
Needs testing:
Didn't see an led option in the app
@glpnk means the LEDs on the mute and mic mute keyboard keys. You need to toggle them and see what happens in the EC ([0x2b] [0x2c] and [0x2d] addresses specifically)
Leds require proper soundcard driver installation which successful not every time
LEDs on the mute and mic mute keyboard keys.
Oh i see, i have to press fn + F* to see the red light and make screenshots of rwe with changes, got it :)
Hi everyone !
I've been away from my computer recently, and I've just noticed that some progress has been made on our device in order to get the msi-ec
working.
I'm not sure how can I help from here, but i'm willing to help things going forward ! Feel free to guide me.
ok, here the those screenshots that have changes, idk why rwe shows me same values on some lines but others on reboot...
Later I will post others (want to be sure in them) For mic, i have an LED always enabled even after installing different drivers and impossible to switch it (idk why, every click shows it enabled without toggle it...). Other LED is on ESC key, do we need it too? (Because fn key swap is swap between win and fn) Keyboard has 4 states (off, 1, 2, 3 - max)
For mic, i have an LED always enabled
So I was right with "0x2B=8C bit 2 is set, do you have micmute led lit?"
Checklist:
UPD: ESC (FN lock) is unnecessary
Keyboard has 4 states (off, 1, 2, 3 - max)
Yeah it's known
fan high perf cooler boost
[0x98] is highlighted red but has the same value as before, does it actually change when you switch cooler boost?
Also you left out the last row where the fan mode parameter is located
[0x98] is highlighted red
9F you mean? can't see 98 red value for fan high perf cooler boost
I'd like to know what's the status of the msi-ec driver compatibility project on our Modern 15 A5M laptop? Thank you for the work already done,
@benitozh We should get a value for microphone button LED, that might be the last missing one, but i can't manage audio driver to work on win10 on my pc, and win11 won't let me install RWE :( I might check again fan high perf cooler boost values if they are correct, i guess. And then it might be ready for testing on teackot's branch, mentioned above.
@teackot
Hope everything is correct
Just updated my screenshots, didn't notice that previous was quite the same. Should be good now
Thanks for your work and dedication @teackot !
EDIT : It might be useful to mention A5M variant in the tested laptops list. Anyway, that's not urgent.
Closing for now since no more info is needed yet
Greetings everyone,
I've been using my own laptop daily for personal use, an MSI Modern 15 A5M, since last year, with YoyPa's ISW-Modern installed in order to have basic automated fan control on my laptop. I'm running on Endeavour OS.
Recently, I tried to install the AUR package msi-ec-git, in order to benefit from a more advanced version of the ISW-Modern package, which is rather limited in terms of functionality. Unfortunately, this never worked on my laptop, so I decided to wait for msi-ec to be merged with the linux 6.4 kernel.
Now that version 6.4 of the linux kernel has been released, I tried to see if it now worked on my laptop. Unfortunately, when I go to /sys/devices/platform/, there is no "msi-ec" folder. I tried to install the package from the tutorial explained on the main page of the project, but still no correspondant folder seems to exists (even in hidden folders).
I'm wondering if anyone involved in this project could gently help me in order to get this module working on my laptop. Right now, ISW-Modern doens't seems to function at all with kernel 6.4.
Any tips would be greatly appreciated, i'm still new to Linux even though i've been making a distro tour since two years now that made me learn a few things