Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apple Keyboard with Touch ID 2021 Product ID not included #88

Open
Woz4tetra opened this issue Dec 17, 2022 · 2 comments
Open

Apple Keyboard with Touch ID 2021 Product ID not included #88

Woz4tetra opened this issue Dec 17, 2022 · 2 comments

Comments

@Woz4tetra
Copy link

I wasn't able to get my keyboard to work until I added these lines:

hid-apple.c

                .driver_data = APPLE_HAS_FN },
        { HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021),
                .driver_data = APPLE_HAS_FN },
+       { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_TOUCH_ID_2021),
+               .driver_data = APPLE_HAS_FN },
+       { HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_TOUCH_ID_2021),
+               .driver_data = APPLE_HAS_FN },
        { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_ANSI),
                .driver_data = APPLE_HAS_FN },
        { HID_BLUETOOTH_DEVICE(BT_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_ANSI),

hid-ids.h

 #define USB_DEVICE_ID_APPLE_MAGICTRACKPAD      0x030e
 #define USB_DEVICE_ID_APPLE_MAGICTRACKPAD2     0x0265
 #define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_2021 0x029c
+#define USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_TOUCH_ID_2021 0x029f
 #define USB_DEVICE_ID_APPLE_FOUNTAIN_ANSI      0x020e
 #define USB_DEVICE_ID_APPLE_FOUNTAIN_ISO       0x020f
 #define USB_DEVICE_ID_APPLE_GEYSER_ANSI        0x0214

I noticed that the device was being loaded with hid-generic in dmesg logs until I rebuilt the module with these lines added.

Also, not sure if this is the correct way to do it but in order to get the module to load at boot, I added hid_apple the /etc/modules file. Otherwise, I'd have to run sudo modprobe -r hid_apple; sudo modprobe hid_apple after logging in.

This is the exact product in question:
https://www.apple.com/shop/product/MMMR3LL/A/magic-keyboard-with-touch-id-and-numeric-keypad-for-mac-models-with-apple-silicon-us-english-black-keys

@Woz4tetra
Copy link
Author

Related issue: #79

@free5lot
Copy link
Owner

Thank you for feedback, I will sync the patched project with upstream to support it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants