How to install msi-ec and mcontrolcenter on Silverblue based systems for MSI laptops?

Hi there everyone.

I have an MSI laptop with Bluefin (based on Silverblue) and I was wondering how to install mcontrolcenter GitHub - dmitry-s93/MControlCenter: An application that allows you to change the settings of MSI laptops running Linux

Instructions say to run GitHub - dmitry-s93/MControlCenter: An application that allows you to change the settings of MSI laptops running Linux first in order to check if msi-ec is available - and it’s not on my laptop.

So I went here GitHub - BeardOverflow/msi-ec

kernel-devel is available, but of course if I try to use sudo make install, the output says that the filesystem is read-only.

Is it possible to have a workaround for this? I guess not, but I prefer to ask here before giving up.

Thanks in advance.

A possible workaround for testing could be sudo rpm-ostree usroverlay. For info on what this is, see Using usroverlay.

I’m not sure if this will work in your case, but there’s no harm in at least trying.

Unfortunately it gives the same read-only problem :slight_smile: But, well, at least we tried

Would you please post the commands you entered and the errors returned?

You will need to make an RPM for that

Hi Shishimaru,

You sure picked a good one …
The EC tables are read only by default. Those are the Extra Controllers settings/states on the motherboard and are BIOS and motherboard SPECIFIC. IF your specific BIOS/Motherboard is not listed as one that MControlCenter supports, you are playing with fire if you modify those tables.
But, IF you really want to take the chances, there are a couple of ways to get to the EC tables on an MSI laptop:

  1. when booting hit the <DELETE> key until BIOS menu appears
  2. press <Alt>+<RtCtrl>+<Shift>+<F2>
    This should get you into the MSI Advanced BIOS settings. BE CAREFUL IN HERE BECAUSE this allows you to set things like the cooling fan timings and strengths, battery charging thresholds, memory timing … and so on … putting the wrong settings in here can physically damage/destroy your laptop!!!

And IF you really want to mess with the EC tables with the OS running, with the developement kernel installed:

  1. in /etc/modprobe.d
  2. create a file ec_sys.conf
  3. the contents are one line that looks like this:
    options ec_sys write_support=1
  4. reboot
    This will set your EC tables to read/write … BUT, unless you know precisely what you are doing, it is a really bad idea to mess with these settings UNLESS you can accept the risk of destroying your motherboard.

Yeah, I think this is the only option. A package or repo with all the dependencies needed and so on.

Definitely not worth it.

So far I managed to use insmod to get msi-ec, but then mcontrolcenter doesn’t find ec_sys or acpi.

It’s not a matter of life or death for now, so I’ll just give up.

You just need to make a single RPM. The app uses Qt so will probably need little dependencies on KDE.

The developer has a repo for OpenSUSE using OpenBuildService, he could just tick the “Fedora 41” and best also the “Fedora Rawhide” Box and you have your Fedora RPM.

I asked the dev to do that

OpenSUSE RPMs are not 100% compatible with Fedora but on an atomic system just try them.

Place the .repo file in /etc/yum.repos.d

There might be a different issue though

Seems like you need DKMS kernel modules too, and something called ec_acpi.