imShara / l5p-kbl

Lenovo Legion 5 Pro 2021 Linux Keyboard Light Controller
55 stars 12 forks source link

Getting error on use #3

Open robojerk opened 2 years ago

robojerk commented 2 years ago

Trying to use the script on a Legion 5 15ARH05H (AMD 4800h + RTX 2060) Arch Linux. Assuming there's a driver I need to load? Getting this error.

./l5p_kbl.py static ff0000
Traceback (most recent call last):
  File ".../l5p-kbl/./l5p_kbl.py", line 240, in <module>
    controller = LedController()
  File ".../l5p-kbl/./l5p_kbl.py", line 63, in __init__
    raise ValueError("Light device not found")
ValueError: Light device not found
imShara commented 2 years ago

It's for Legion 5 Pro, not for Legion 5. Does it has keyboard light? If it does, please dump conversations between vantage and usb light device with wireshark and usbpcap

4JX commented 2 years ago

@imShara The 2020 variant is virtually identical to the 2021 in terms of how it communicates, you just need to change the product ID as per https://github.com/4JX/L5P-Keyboard-RGB/blob/main/src/keyboard_utils.rs#L13L20.

sandalbanditten commented 2 years ago

I am getting the same error, on a 2021 edition Legion 5 Pro - model "82JQ Legion 5 Pro 16ACH6H".

imShara commented 2 years ago

@sandalbanditten give me lsusb

sandalbanditten commented 2 years ago

Here it is:

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 8087:0029 Intel Corp. AX200 Bluetooth
Bus 003 Device 002: ID 04d9:0356 Holtek Semiconductor, Inc. Ducky Keyboard
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 05e3:0620 Genesys Logic, Inc. GL3523 Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 048d:c101 Integrated Technology Express, Inc. ITE Device(8910)
Bus 001 Device 003: ID 5986:115f Acer, Inc Integrated Camera
Bus 001 Device 004: ID 1b1c:1b5d Corsair CORSAIR IRONCLAW RGB Gaming Mouse
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
imShara commented 2 years ago

Here it is:

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 8087:0029 Intel Corp. AX200 Bluetooth
Bus 003 Device 002: ID 04d9:0356 Holtek Semiconductor, Inc. Ducky Keyboard
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 05e3:0620 Genesys Logic, Inc. GL3523 Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 048d:c101 Integrated Technology Express, Inc. ITE Device(8910)
Bus 001 Device 003: ID 5986:115f Acer, Inc Integrated Camera
Bus 001 Device 004: ID 1b1c:1b5d Corsair CORSAIR IRONCLAW RGB Gaming Mouse
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

2022-04-01_12-45

Hardware slightly changed. Try to change VEN/PROD pair from

VENDOR = 0x048D
PRODUCT = 0xC965

to

VENDOR = 0x04D9
PRODUCT = 0x0356

But the proper way is to dump dump vantage USB conversations with wireshark+usbpcap.

styfrombrest commented 2 years ago

I have the same error as @sandalbanditten for the same hardware(Lenovo Legion 5 Pro 16ACH6). Tried to change VEN/PROD pair as @imShara proposed, but still have Light device not found error.

imShara commented 2 years ago

I have the same error as @sandalbanditten for the same hardware(Lenovo Legion 5 Pro 16ACH6). Tried to change VEN/PROD pair as @imShara proposed, but still have Light device not found error.

Please make usbpcap dump via wireshark when you change color via lenovo vantage.

styfrombrest commented 2 years ago

@imShara I've checked lsusb, it looks like this: Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 002: ID 0bda:4852 Realtek Semiconductor Corp. Bluetooth Radio Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 002: ID 05e3:0620 Genesys Logic, Inc. GL3523 Hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 005: ID 048d:c101 Integrated Technology Express, Inc. ITE Device(8910) Bus 001 Device 003: ID 5986:115f Acer, Inc Integrated Camera Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

I've updated VEN/PROD pair from it(048d:c101 right?) and still no success, but with different error: Traceback (most recent call last): File "/home/taras/projects/l5p-kbl/./l5p_kbl.py", line 241, in <module> data = controller.build_control_string( File "/home/taras/projects/l5p-kbl/./l5p_kbl.py", line 87, in build_control_string data.append(self.EFFECT[effect]) KeyError: None

and then keyboard stop working :(