]> git.donarmstrong.com Git - tmk_firmware.git/blobdiff - converter/adb_usb/matrix.c
Change ADB scan delay 12ms
[tmk_firmware.git] / converter / adb_usb / matrix.c
index a616d10e40c176fb69e05af205bbc9bec605f8c6..7e58569715114e7ccb89c4cd0a18d8fb2eefb0d8 100644 (file)
@@ -85,6 +85,7 @@ uint8_t matrix_scan(void)
     uint8_t key0, key1;
 
     is_modified = false;
+    _delay_ms(12);  // delay for preventing overload of poor ADB keyboard controller
     codes = adb_host_kbd_recv();
     key0 = codes>>8;
     key1 = codes&0xFF;
@@ -100,9 +101,7 @@ uint8_t matrix_scan(void)
     } else if (codes == 0xFFFF) {   // power key release
         register_key(0xFF);
     } else if (key0 == 0xFF) {      // error
-        if (debug_matrix) print("adb_host_kbd_recv: ERROR(matrix cleared.)\n");
-        // clear matrix to unregister all keys
-        for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00;
+        xprintf("adb_host_kbd_recv: ERROR(%02X)\n", codes);
         return key1;
     } else {
         register_key(key0);