]> git.donarmstrong.com Git - tmk_firmware.git/blobdiff - converter/adb_usb/README.md
Add ISO keymap(issue #35) and use new keymap API
[tmk_firmware.git] / converter / adb_usb / README.md
index 33fd55040dec5794304d68ee29a4da5394167c1e..defc477e2c77c0e142880381ba7cecbb1770f329 100644 (file)
@@ -7,23 +7,32 @@ But binary size is about 10KB or more it doesn't fit into 8K flash like ATMega8U
 Discuss: http://geekhack.org/showwiki.php?title=Island:14290
 
 
-Build
------
-0. Connect ADB keyboard to Teensy by 3 lines(Vcc, GND, Data). By default Data line uses port F0.
+Wiring
+------
+0. Connect ADB keyboard to Teensy by 3 lines(Vcc, GND, Data). By default Data line uses port PD0.
    This converter uses AVR's internal pull-up, but it seems to be too weak, in particular when you want to use a long or coiled cable.
    The external pull-up resistor(1K-10K Ohm) on Data is strongly recommended.
-1. Define following macros for ADB connection in config.h if you use other than port F0.
+1. Define following macros for ADB connection in config.h if you use other than port PD0.
    ADB_PORT, ADB_PIN, ADB_DDR, ADB_DATA_BIT
 2. make
 3. program Teensy
 
 
+Build
+-----
+Just make
+
+    $ make clean
+    $ make
+
+If your keyboard is ISO layout
+
+    $ make KEYMAP=iso
+
+
 LOCKING CAPSLOCK
 ----------------
-Many old ADB keyboards have mechanical push-lock switch for Capslock key. This converter support the locking Capslock key by default.
-This feature will prevent you from remaping as normal key. You can disable the feature by *commenting out* a macro in config.h like this:
-
-    //#define MATRIX_HAS_LOCKING_CAPS
+Many of old ADB keyboards have mechanical push-lock switch for Capslock key and this converter supports the locking Capslock key by default. See README in top directory for more detail about this feature.
 
 Also you may want to remove locking pin from the push-lock switch to use capslock as a normal momentary switch.
 http://www.youtube.com/watch?v=9wqnt2mGJ2Y
@@ -51,14 +60,14 @@ effort at this time.
      * |-----------------------------------------------------------|     ,---.     |---------------|
      * |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  ,|  /|Shift     |     |Up |     |  1|  2|  3|   |
      * |-----------------------------------------------------------| ,-----------. |-----------|Ent|
-     * |Ctrl |Gui |Alt |         Space           |     |    |      | |Lef|Dow|Rig| |      0|  .|   |
+     * |Ctrl |Alt |Gui |         Space             |Gui |Alt |Ctrl | |Lef|Dow|Rig| |      0|  .|   |
      * `-----------------------------------------------------------' `-----------' `---------------'
      */
     KEYMAP(
     ESC, F1,  F2,  F3,  F4,  F5,  F6,  F7,  F8,  F9,  F10, F11, F12,           PSCR,SLCK,BRK,                    PWR,
     GRV, 1,   2,   3,   4,   5,   6,   7,   8,   9,   0,   MINS,EQL, BSPC,     INS, HOME,PGUP,    NLCK,EQL, PSLS,PAST,
     TAB, Q,   W,   E,   R,   T,   Y,   U,   I,   O,   P,   LBRC,RBRC,BSLS,     DEL, END, PGDN,    P7,  P8,  P9,  PMNS,
-    CAPS,A,   S,   D,   F,   G,   H,   J,   K,   L,   SCLN,QUOT,     ENT,                         P4,  P5,  P6,  PPLS,
+    LCAP,A,   S,   D,   F,   G,   H,   J,   K,   L,   SCLN,QUOT,     ENT,                         P4,  P5,  P6,  PPLS,
     LSFT,Z,   X,   C,   V,   B,   N,   M,   COMM,DOT, SLSH,          RSFT,          UP,           P1,  P2,  P3,
     LCTL,LGUI,LALT,          SPC,                                              LEFT,DOWN,RGHT,    P0,       PDOT,PENT
     ),
@@ -71,11 +80,17 @@ To get help press `h` holding Magic key. Magic key is `Power key`.
 
 Notes
 -----
-Many ADB keyboards has no discrimination between right modifier and left one,
+Not-extended ADB keyboards have no discrimination between right modifier and left one,
 you will always see left control even if you press right control key.
-Apple Extended Keyboard and Apple Extended Keyboard II are the examples.
-Though ADB protocol itsef has the ability of distinction between right and left.
-And most ADB keyboard has no NKRO functionality, though ADB protocol itsef has that. 
-See protocol/adb.c for more info.
+Apple Extended Keyboard and Apple Extended Keyboard II can discriminate both side
+modifiers except for GUI key(Windows/Command).
+
+And most ADB keyboard has no diodes in its matrix so they are not NKRO,
+though ADB protocol itself supports it. See protocol/adb.c for more info.
+
+If keyobard has ISO layout you need to use ISO keymap with `make KEYMAP=iso`. With ANSI
+keymap you will suffer from swapped keys problem.
+
+https://github.com/tmk/tmk_keyboard/issues/35
 
 EOF