LenovoLegionToolkit
LenovoLegionToolkit copied to clipboard
[FEAT]: light usb ports
Version
2.6.0
OS
Windows 11
Device
Legion Y9000X IAH7
Is your feature request related to a problem?
usb panel illumination
How would you like the problem to be solved?
turn it on/off
What alternatives have you considered?
use legion zone or hotkeys
Additional information
No response
I don't know which interface these controls are using, so I will be needed some help to add this toggle.
Just out of curiosity, can you use the Fn+U or Fn+L shortcut to turn these on/off?
yes FN + U worked
I don't know which interface these controls are using, so I will be needed some help to add this toggle.
Just out of curiosity, can you use the Fn+U or Fn+L shortcut to turn these on/off?
will this be added to the plan?
If someone reverse engineers, how are they controlled then yes.
Hi @BartoszCichecki, you may implement that by using this script.
function Toggle-RearUSBLightingState {
$LenovoWMIPath=(Get-WmiObject -Namespace "root\WMI" -Query "SELECT * FROM LENOVO_LIGHTING_METHOD").__PATH
$LenovoWMI=[WMI]$LenovoWMIPath
$LightingID=5
$CurrentState=$LenovoWMI.Get_Lighting_Current_Status($LightingID).Current_State_Type
$TargetState=[int]($CurrentState -xor 1)
$LenovoWMI.Set_Lighting_Current_Status($LightingID,$TargetState,0)
}
function Toggle-LogoLightingState {
$LenovoWMIPath=(Get-WmiObject -Namespace "root\WMI" -Query "SELECT * FROM LENOVO_LIGHTING_METHOD").__PATH
$LenovoWMI=[WMI]$LenovoWMIPath
$LightingID=3
$CurrentState=$LenovoWMI.Get_Lighting_Current_Status($LightingID).Current_State_Type
$TargetState=[int]($CurrentState -xor 1)
$LenovoWMI.Set_Lighting_Current_Status($LightingID,$TargetState,0)
}
@RoadToDream do you know if more could be done via this interface? Anything more than USB ports and logo lights?
There should be more for different versions of BIOS, but for mine I guess that's all. There are also some methods that helps implementing Spectrum via other interface. But that is not related to this issue.
Hey, @RoadToDream you have an idea how to check for compatibility of this feature? I can execute these commands on L5P which doesn't have backlight of ports. I need to check somehow if device supports it, so that I don't show this on device like L5P.
Hey, @RoadToDream you have an idea how to check for compatibility of this feature? I can execute these commands on L5P which doesn't have backlight of ports. I need to check somehow if device supports it, so that I don't show this on device like L5P.
WMI call should return a code where code 3 should be error. If that doesn't work, maybe a BIOS version whitelist is good I guess.
Closing since there doesn't seem to be a consistent interface for this that would allow:
- Checking if devices has support for this
- How to reliably turn it on/off an a wide range of devices.
In general looks like Lenovo has a very complex/broken logic for this.
If someone comes up with a solution to this make a PR.