Hi Alex, Thank you very much for cc'ing me. On Fri, Oct 08, 2021 at 01:37:02AM -0600, Alex Henrie wrote: > Some Apple ISO keyboards have a quirk where the backtick/tilde key is > swapped with the less-than/greater-than key. Unfortunately, there is no > perfectly reliable way to detect whether a keyboard has the quirk or > not, but the quirk appears to only be present on models that support > Bluetooth, and the affected keyboards usually report country code 13 in > the HID descriptor. > > Therefore, the best we can do is to change > /sys/module/hid_apple/parameters/iso_layout to a ternary: > > 0 = Not ISO or ISO and not quirky > 1 = ISO and quirky > -1 = Guess based on product ID and country code > > Table of keyboards I have tested: > > Product Model Shape Labels Bus Country Quirky > ========================================================= > 05ac:0201 M2452 ANSI Usonian USB 0 No > 05ac:020b A1048 ANSI Usonian USB 0 No > 05ac:020c A1048 ISO Québécois USB 13 No > 05ac:0221 A1243 ISO Norwegian USB 13 No > 05ac:0221 A1243 ISO Portuguese USB 13 No > 05ac:0221 A1243 ISO Swedish USB 13 No > 05ac:0221 A1243 ISO Swiss USB 13 No > 05ac:022c A1255 ANSI Usonian BT 33 No > 05ac:022d A1255 ISO Hebrew BT 13 Yes > 05ac:022d A1255 ISO Québécois BT 13 Yes > 05ac:022d A1255 ISO Spanish BT 13 Yes > 05ac:023a A1314 ISO Russian BT 13 Yes > 05ac:023a A1314 ISO Swiss BT 13 Yes > 05ac:024f A1243 ANSI Usonian USB 0 No > 05ac:0250 A1243 ISO British USB 13 No > 05ac:0250 A1243 ISO German USB 13 No > 05ac:0250 A1243 ISO Italian USB 13 No > 05ac:0250 A1243 ISO Québécois USB 13 No > 05ac:0251 A1243 JIS Japanese USB 15 No > 05ac:0255 A1314 ANSI Usonian BT 33 No > 05ac:0255 A1314 ANSI Taiwanese BT 33 No > 05ac:0255 A1314 ANSI Thai BT 33 No > 05ac:0256 A1314 ISO Arabic BT 13 Yes > 05ac:0256 A1314 ISO French BT 13 Yes > 05ac:0256 A1314 ISO German BT 13 Yes > 05ac:0256 A1314 ISO Norwegian BT 13 Yes > 05ac:0256 A1314 ISO Spanish BT 13 Yes > 05ac:0256 A1314 ISO Swiss BT 13 Yes > 05ac:0257 A1314 JIS Japanese BT 15 No > 05ac:0267 A1644 ANSI Usonian USB 33 No > 004c:0267 A1644 ANSI Usonian BT 0 No > 05ac:0267 A1644 ISO British USB 13 Yes > 004c:0267 A1644 ISO British BT 0 Yes > 05ac:0267 A1644 ISO Swiss USB 13 Yes > 004c:0267 A1644 ISO Swiss BT 0 Yes > 05ac:0267 A1644 ISO Québécois USB 13 Yes > 004c:0267 A1644 ISO Québécois BT 0 Yes > 05ac:0267 A1644 JIS Japanese USB 15 No > 004c:0267 A1644 JIS Japanese BT 0 No > 05ac:029c A2450 ANSI Usonian USB 33 No > 004c:029c A2450 ANSI Usonian BT 0 No > 05ac:029c A2450 ISO Spanish USB 13 Yes > 004c:029c A2450 ISO Spanish BT 0 Yes > 05ac:029c A2450 JIS Japanese USB 15 No > 004c:029c A2450 JIS Japanese BT 0 No You can add to the table: 05ac:0267 A1644 ISO Spanish USB 13 Yes 004c:0267 A1644 ISO Spanish BT 0 Yes Tested here and it works as expected, both over USB and bluetooth, thank you very much for fixing it! It's a pitty that we need to add a configuration option, for many users it is not going to be easy to discover it. macOS doesn't have this issue, so there must be a way of detecting the keyboard layout... Unless they apply the quirk on user space checking the selected keyboard layout and language in settings. I bought ANSI English keyboard to see if I could figure out where is the difference but no luck so far. For what it's worth, Tested-by: José Expósito <jose.exposito89@xxxxxxxxx>