acidanthera / bugtracker

Acidanthera Bugtracker
385 stars 45 forks source link

VoodooPS2Keyboard maps two PS2 keys to the same value #2306

Closed wolf606 closed 10 months ago

wolf606 commented 1 year ago

So the bug is simple. Given a laptop with a Latin American keyboard, the PS2/ADB mapping changes out of the blue. The <> key starts to behave like the |°¬ key.

IMG_20230622_145556276

Turning on the property ApplePS2Keyboard LogScanCodes 1 shows that the mapping is indeed correct as it was written in the ApplePS2ToADBMap.h file.

[ 1245.364541]: ApplePS2Keyboard: sending key 29=32 down
[ 1246.031641]: ApplePS2Keyboard: sending key 56=a down

However, when pressing the key 56, it behaves as if the key 32 was pressed.

It is a fairly common occurrence and I have not identified the cause yet. The problem persists even after rebooting. Even after changing the keyboard layout in System Preferences, key 56 behaves exactly like key 32.

This morning I was trying to map the keys manually while the problem was occurring, but around 3 PM in the afternoon, it went back to normal. After I noticed the change, I replaced the modified kext with the original release and it still works, but after some time it will break again.

This bug happens to me on two platforms: a Coffe Lake ASUS laptop and a Sky Lake Lenovo laptop. The ASUS laptop was running macOS Big Sur back in 2020 when it was first released, it's not mine so I don't have the hardware anymore. The Lenovo laptop it's the current device I use.

Lenovo Ideapad 500 - 14ISK 6 GB of DDR3 RAM @ 1600 Mhz Intel Core i5 6200U Intel HD Graphics 520

OpenCore 0.9.3 macOS 12.6.7 (21G651) Lilu 1.6.6 VoodooPS2 2.3.5

OC.zip

vit9696 commented 10 months ago

If the hardware gives us the same scan code, not much we can do. Perhaps there is a way to access the keyboard through some other proprietary protocol (not PS/2).