tdakhran / razer-ctl

A tray icon for controlling Razer Blade 16
MIT License
9 stars 2 forks source link

Adaptive component and feature activation based on laptop model #12

Open tdakhran opened 4 weeks ago

tdakhran commented 4 weeks ago

Some features (battery health, boost mode, overclock mode) are available on some models and not available on others. Introduce configurations and allow disabling unsupported features.

jacobgelling commented 3 weeks ago

I have a small note for this issue:

I have the silver variant of the Blade 14 2023 - so it does not have a logo with light. It's PID is the same as the non-silver variant.

Interestingly the logo's state can change between "Off", "Static" and "Breathing". No errors are given, even though the logo doesn't have a light.

Clearly Razer does detect this feature/model somehow, as in Synapse it's a silver model with no logo options. But what they rely on other than the PID, I don't know.

tdakhran commented 3 weeks ago

I have a small note for this issue:

I have the silver variant of the Blade 14 2023 - so it does not have a logo with light. It's PID is the same as the non-silver variant.

That's actually a BIG note. Thanks for raising it.

I guess Razer has a way to detect Model Prefix Number, I see 2 entries for Blade 14"(2023), likely one of them is silver, and another is dark

RZ09-0482V  Razer Blade 14” (2023)
RZ09-0482X  Razer Blade 14” (2023)

When I was downloading the backup image they asked for the serial number (which can be queried from BIOS wmic bios get serialNumber) and then automatically detected the model from the serial. They can do similar things in Synapse.

It becomes even more interesting with different variants of CPUs/GPUs as the setting for boost/overclock may vary.

as in Synapse it's a silver model with no logo options

I noticed that "New Synapse", downloads the whole component for each model. I won't be surprised if for silver and dark versions it's 2 separate programs with hardcoded options.

tdakhran commented 3 weeks ago

Googled it a bit and seems like things are way easier, I can fetch the model in PowerShell

PS C:\Users\tarek> gwmi -namespace root\wmi -class MS_SystemInformation | select SystemSKU

SystemSKU
---------
RZ09-0483TEH3

I will rely on a model number to define available features. This will be more robust and fine grained that VID/PID.

tdakhran commented 3 weeks ago

Pushed changes to #14 , might potentially unblock razer-ctl for #4 #9 #3 . It will take some time to adapt razer-tray to use features.