Announcement

Collapse
No announcement yet.

820-02020 Super Weird Issue: Keyboard Input Character Map "Wrong"?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    820-02020 Super Weird Issue: Keyboard Input Character Map "Wrong"?

    So, I have a really bizarre issue that I'm struggling to identify the cause of. Working on an 820-02020 board with some bizarre keyboard/input-source character mapping. My suspicion is a possible damaged SPI ROM (U1970), perhaps, but I'm really not sure in this case:

    1. The issue is pretty weird, but when installing MacOS, I noticed my WiFi password did not work. I quickly realized the special characters (!@#$%^& etc) were not mapping correctly.

    2. I noticed the keyboard layout/input-source is defaulting to JAPANESE every single time I restore the board. I am not located in Japan, and I'm not sure why the board keeps defaulting to that keyboard layout.

    3. So, "just change it", right? Well, I can't! But not because of the weird Ventura-glitch a while back that disabled switching of keyboard input sources. This is different, because the unit is actually showing the *INCORRECT* input values/characters when I go to the input sources and select US/English. The literal keyboard layout for the US keyboard (specifically the special characters), is not correct when I hold "shift" and see the mapping. It shows the Japanese-style keyboard AS THE English/USA input source, if that makes sense. I can compare the one to another unit's input source settings and see it's wrong on this problematic board.

    4. So far, the only workaround I can find, is that the AUSTRALIA keyboard layout actually does match the normal USA/English keyboard layout. But, if you update MacOS or reinstall it, it defaults back to Japanese.

    So, my main question would be: What determines and sets the default keyboard input source when installing MacOS? I would assume it checks your internet connection/location during the DFU restore and/or internet recovery when you install. But, where are the default keyboard character maps stored? Is it within the SPI ROM chip? Is it within the CPU on these?

    I have no clue how to even begin solving this issue. Any help appreciated!

    Here is a photo showing the board's input source keyboard screen; you can see it's selected English/USA, and I am holding the SHIFT key to show the characters. You can see they DO NOT MATCH the standard English/USA keyboard. The special characters are not in the correct places; and this applies for every USA/English option EXCEPT AUSTRALIAN. If I set it to Australian, it works fine. But I can't do this for a retail customer selling the unit as used/wiped/etc. They will OF COURSE notice and have issues, so I need to resolve this.

    Click image for larger version

Name:	02020KBD.jpg
Views:	607
Size:	286.1 KB
ID:	3250502
    Last edited by ugamazing; 04-10-2024, 09:04 AM.

    #2
    I encountered a similar issue on A2442.
    I have an A2442 that originally came with a JIS keyboard and intended to swap it with an ANSI US keyboard. After the switch, I discovered that the identified keyboard layout remained JIS. After reviewing the schematics, I found there seems a mechanism to automatically identify the keyboard layout (KBD_ID1, see attached screenshot). However, for some reason, this mechanism didn't work even after a full DFU restore.
    I have another A2442 that shipped with a US ANSI keyboard. I compared some other ID bits, including BOARD_ID[5:0] and BOARD_REV[3:0], and both of them are identical...

    Have you resolved the issue? I believe the only way I can try is to flash the SoC ROM with the dump from the A2442 with the US keyboard.
    Attached Files

    Comment

    Working...
    X