BeardOverflow / msi-ec

GNU General Public License v2.0
134 stars 41 forks source link

Support MSI Modern 14 B10MW #100

Open SteelT1 opened 6 months ago

SteelT1 commented 6 months ago

Laptop model

Modern 14 B10MW

EC firmware version

14D1EMS1.103

EC memory dump

     | _0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _a _b _c _d _e _f
-----+------------------------------------------------
0x0_ | 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x1_ | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x2_ | 00 00 00 00 00 00 00 00 00 00 00 80 e0 06 0b 0a
0x3_ | 02 05 00 05 50 0a 05 00 f4 0c 88 2c 4b 01 c0 00
0x4_ | 16 0d 39 00 46 08 75 fb a5 04 71 2b d0 0b fa 32
0x5_ | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x6_ | 00 00 00 00 00 00 00 00 2c 00 38 3e 44 4a 50 5a
0x7_ | 64 00 00 32 41 49 50 5a 64 50 04 03 03 03 03 03
0x8_ | 00 00 35 3a 3f 44 50 5a 64 00 00 32 41 49 50 5a
0x9_ | 64 4b 03 03 03 03 05 05 06 0f 78 06 0f 78 00 00
0xa_ | 31 34 44 31 45 4d 53 31 2e 31 30 33 30 36 31 39
0xb_ | 32 30 32 30 30 38 3a 30 39 3a 31 34 46 08 00 00
0xc_ | 00 01 25 00 00 9e 40 00 00 01 00 00 00 00 00 00
0xd_ | 00 00 00 00 70 00 00 00 24 44 3a 80 00 17 0c 1c
0xe_ | e2 02 00 00 10 00 00 00 00 00 00 00 00 84 00 80
0xf_ | 00 00 80 83 0d 00 05 00 00 00 00 00 00 00 00 00

GPU

iGPU only (Intel)

Is your keyboard RGB?

No (single color)

Additional context

No response

SteelT1 commented 1 day ago

Finally got around to setting up a bootable Windows install using Ventoy's VHD boot feature, and here's what I found so far, values gathered from RWEverything.

Notes

Name Address Values Seen Extra Notes
Webcam 0x2E off = 0x09, on = 0x0B N/A
Webcam block 0x2F off = 0x0A, on = 0x0C N/A
Fn/Win key swap 0xBF left = 0x00, right = 0x10 N/A
Battery Mode 0xEF max = 0xE4, medium = 0xD0, min = 0xBC N/A
Cooler Boost 0x98 off = 0x06, on = 0x86 MSI Creator Center has no dedicated setting for cooler boost and instead ties it to the fan speed setting, with auto being set to value 06 in the EC
Keyboard Backlight 0xF3 full = 0x83, half = 0x82, on = 0x81, off = 80 N/A
Speaker mute led state 0x2C off = 0xE0, on = 0xE4 N/A
Mic mute led state 0x2B off = 0x88, on = 0x8C N/A

Sensors

CPU temperature address: 0x68
Battery charge address: 0x42

Not certain

glpnk commented 19 hours ago

Hi, thanks for the research.

Does Creator Center have settings for "shift" or "user scenario" modes? Can you screenshot them?

You forgot about shift modes, look closer on 0xF2 - "shift" and 0xF4 - cooler settings when changing "shift" or "user scenario" modes

SteelT1 commented 15 hours ago

Yes, Creator Center does have settings for "user scenario" modes. image

High Performance

image

address F2=C0, address F4=00

Balanced

image

address F2=C1, address F4=00

Silent

image

address F2=C1, address F4=10

Super Battery

image

address F2=C2, address F4=00

One thing I noticed is that when the mode is set to super battery, value 80 is set at address F3.

glpnk commented 15 hours ago

F3 is keyboard brightness, and for some reasons MSI power off keyboard backlight on it

glpnk commented 14 hours ago

Can you additionaly check high performance mode. When you select it, gear or similar icon might appear, so I'm inerested in fan curve mode

SteelT1 commented 14 hours ago

Options available for fan speed

image

image

This also seem to have fan curve settings for GPU even though it's an iGPU. image

glpnk commented 14 hours ago

I have only igpu too and have 2 menu. But on latest update of MSI Center (not Center pro) they hide GPU menu

SteelT1 commented 13 hours ago

Made a mistake in the earlier comment listing the modes, and F4 for silent was supposed to be 10

glpnk commented 13 hours ago

Please check output of F4 on fancurve mode

glpnk commented 13 hours ago

Also, please check address 0xD5 after changing user scenario in app

SteelT1 commented 12 hours ago

F4 is set to 80 when set to fan curve mode is set to advanced, otherwise is set to 00 when fan mode is to auto, and cooler boost seems to retain the value of previous, so switching from advanced to cooler boost will leave F4 set to 80.

Changing user scenario in app doesn't seem to set D5, it's always at 00 no matter what mode.

glpnk commented 12 hours ago

Thank you, that's all I need