]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboard/gh60/README.md
Makefile redo & other features (#395)
[qmk_firmware.git] / keyboard / gh60 / README.md
index 41a757ea3ae07f97310be8835f3747a9b57b2eec..bf209be8c6a04b2ff4066694d5566e530d66f83f 100644 (file)
-GH60 keyboard firmware
-======================
-DIY compact keyboard designed and run by komar007 and Geekhack community.
-
-- Both Rev.A and Rev.B PCB are supported by one firmware binary(issue #64)
-
-## GH60 Resources
-- [KOMAR's project page](http://blog.komar.be/projects/gh60-programmable-keyboard/)
-- [Prototyping](http://geekhack.org/index.php?topic=34959.0)
-- [Rev.A PCB test](http://geekhack.org/index.php?topic=37570.0)
-- [Rev.B PCB test](http://geekhack.org/index.php?topic=50685.0)
-- [Group buy](http://geekhack.org/index.php?topic=41464.0)
-
-
-## Build
-Move to this directory then just run `make` like:
-
-    $ make
-
-Use `make -f Makefile.pjrc` if you want to use PJRC stack but I find no reason to do so now.
-
-
-## Keymap
-Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `<name>.c` in the keymaps folder, and see keymap document(you can find in top README.md) and existent keymap files.
-
-To build firmware binary hex file with a certain keymap just do `make` with `KEYMAP` option like:
-
-    $ make KEYMAP=[poker|poker_set|poker_bit|plain|hasu|spacefn|hhkb|<name>]
-
-
-### 1  Poker
-[poker.c](keymaps/poker.c) emulates original Poker layers
-while both [poker_bit.c](keymaps/poker_bit.c) and [poker_set.c](keymaps/poker_set.c) implement the same layout in different ways and they fix a minor issue of original Poker and enhance arrow keys.
-
-    Fn + Esc = `
-    Fn + {left, down, up, right}  = {home, pgdown, pgup, end}
-
-#### 1.0 Default layer
-    ,-----------------------------------------------------------.
-    |  `|  1|  2|  3|  4|  5|  6|  7|  8|  9|  0|  -|  =|Backsp |
-    |-----------------------------------------------------------|
-    |Tab  |  Q|  W|  E|  R|  T|  Y|  U|  I|  O|  P|  [|  ]|    \|
-    |-----------------------------------------------------------|
-    |Caps  |  A|  S|  D|  F|  G|  H|  J|  K|  L|  ;|  '|Return  |
-    |-----------------------------------------------------------|
-    |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift     |
-    |-----------------------------------------------------------|
-    |Ctrl|Gui |Alt |      Space             |Fn  |Gui |App |Ctrl|
-    `-----------------------------------------------------------'
-#### 1.1 Poker Fn layer
-    ,-----------------------------------------------------------.
-    |Esc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|       |
-    |-----------------------------------------------------------|
-    |     |FnQ| Up|   |   |   |   |   |   |Cal|   |Hom|Ins|     |
-    |-----------------------------------------------------------|
-    |      |Lef|Dow|Rig|   |   |Psc|Slk|Pau|   |Tsk|End|        |
-    |-----------------------------------------------------------|
-    |        |Del|   |Web|Mut|VoU|VoD|   |PgU|PgD|Del|   Up     |
-    |-----------------------------------------------------------|
-    |    |    |    |         FnS            |Fn  |Left|Down|Righ|
-    `-----------------------------------------------------------'
-
-
-### 2. Plain
-Without any Fn layer this will be useful if you want to use key remapping tool like AHK on host.
-See [plain.c](keymaps/plain.c) for detail.
-
-#### 1.0 Plain Default layer
-    ,-----------------------------------------------------------.
-    |Esc|  1|  2|  3|  4|  5|  6|  7|  8|  9|  0|  -|  =|Backsp |
-    |-----------------------------------------------------------|
-    |Tab  |  Q|  W|  E|  R|  T|  Y|  U|  I|  O|  P|  [|  ]|    \|
-    |-----------------------------------------------------------|
-    |Caps  |  A|  S|  D|  F|  G|  H|  J|  K|  L|  ;|  '|Return  |
-    |-----------------------------------------------------------|
-    |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift     |
-    |-----------------------------------------------------------|
-    |Ctrl|Gui |Alt |      Space             |Alt |Gui |App |Ctrl|
-    `-----------------------------------------------------------'
-
-
-### 3. Hasu
-This is my favorite keymap with HHKB Fn, Vi cursor and Mousekey layer. See [hasu.c](keymaps/hasu.c) for detail.
-
-
-### 4. SpaceFN
-This layout proposed by spiceBar uses space bar to change layer with using Dual role key technique. See [spacefn.c](keymaps/spacefn.c) and [SpaceFN discussion](http://geekhack.org/index.php?topic=51069.0).
-
-#### 4.0 Default layer
-    ,-----------------------------------------------------------.
-    |Esc|  1|  2|  3|  4|  5|  6|  7|  8|  9|  0|  -|  =|Backsp |
-    |-----------------------------------------------------------|
-    |Tab  |  Q|  W|  E|  R|  T|  Y|  U|  I|  O|  P|  [|  ]|    \|
-    |-----------------------------------------------------------|
-    |Caps  |  A|  S|  D|  F|  G|  H|  J|  K|  L|  ;|  '|Return  |
-    |-----------------------------------------------------------|
-    |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift     |
-    |-----------------------------------------------------------|
-    |Ctrl|Gui |Alt |      Space/Fn          |Alt |Gui |App |Ctrl|
-    `-----------------------------------------------------------'
-#### 4.1 SpaceFN layer
-    ,-----------------------------------------------------------.
-    |`  | F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Delete |
-    |-----------------------------------------------------------|
-    |     |   |   |   |   |   |   |Hom|Up |End|Psc|Slk|Pau|Ins  |
-    |-----------------------------------------------------------|
-    |      |   |   |   |   |   |PgU|Lef|Dow|Rig|   |   |        |
-    |-----------------------------------------------------------|
-    |        |   |   |   |   |Spc|PgD|`  |~  |   |   |          |
-    |-----------------------------------------------------------|
-    |    |    |    |            Fn          |    |    |    |    |
-    `-----------------------------------------------------------'
-
-
-### 5. HHKB
-[hhkb.c](keymaps/hhkb.c) emulates original HHKB layers.
-#### 5.0: Default layer
-    ,-----------------------------------------------------------.
-    |Esc|  1|  2|  3|  4|  5|  6|  7|  8|  9|  0|  -|  =|  \|  `|
-    |-----------------------------------------------------------|
-    |Tab  |  Q|  W|  E|  R|  T|  Y|  U|  I|  O|  P|  [|  ]|Bspc |
-    |-----------------------------------------------------------|
-    |Ctrl  |  A|  S|  D|  F|  G|  H|  J|  K|  L|Fn3|  '|Return  |
-    |-----------------------------------------------------------|
-    |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift |Fn |
-    |-----------------------------------------------------------|
-    |    |Gui |Alt |      Space             |    |Alt |Gui |    |
-    `-----------------------------------------------------------'
-#### 5.1: HHKB Fn layer
-    ,-----------------------------------------------------------.
-    |Pwr| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
-    |-----------------------------------------------------------|
-    |Caps |   |   |   |   |   |   |   |Psc|Slk|Pus|Up |   |     |
-    |-----------------------------------------------------------|
-    |      |VoD|VoU|Mut|Ejc|   |  *|  /|Hom|PgU|Lef|Rig|Enter   |
-    |-----------------------------------------------------------|
-    |        |   |   |   |   |   |  +|  -|End|PgD|Dow|      |   |
-    |-----------------------------------------------------------|
-    |    |    |    |                        |    |    |    |    |
-    `-----------------------------------------------------------'
-
+## gh60 Rev C keyboard firmware\r
+\r
+![gh60 Rev C PCB](gh60revc.jpg)\r
+\r
+    /* Column pin configuration\r
+    * col: 0   1   2   3   4   5   6   7   8   9   10  11  12  13\r
+    * pin: F0  F1  E6  C7  C6  B6  D4  B1  B7  B5  B4  D7  D6  B3  (Rev.C)\r
+    */\r
+     \r
+    /* Row pin configuration\r
+    * row: 0   1   2   3   4\r
+    * pin: D0  D1  D2  D3  D5\r
+    */\r
+     \r
+    GPIO pads\r
+    0 F7 WASD LEDs\r
+    1 F6 ESC LED\r
+    2 F5 FN LED\r
+    3 F4 POKER Arrow LEDs\r
+     \r
+    B2 Capslock LED\r
+    B0 not connected\r
+       \r
+Functions to controls LED clusters\r
+       \r
+    gh60_caps_led_on()\r
+    gh60_poker_leds_on()\r
+    gh60_fn_led_on()\r
+    gh60_esc_led_on()\r
+    gh60_wasd_leds_on()\r
+    \r
+    gh60_caps_led_off()\r
+    gh60_poker_leds_off()\r
+    gh60_fn_led_off()\r
+    gh60_esc_led_off()\r
+    gh60_wasd_leds_off()\r
+       \r
+======================\r
+\r
+## Quantum MK Firmware\r
+\r
+For the full Quantum feature list, see [the parent README.md](/README.md).\r
+\r
+## Building\r
+\r
+Download or clone the whole firmware and navigate to the keyboard/gh60_rev_c folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex - you can then use the Teensy Loader to program your .hex file. \r
+\r
+Depending on which keymap you would like to use, you will have to compile slightly differently.\r
+\r
+### Default\r
+To build with the default keymap, simply run `make`.\r
+\r
+### Other Keymaps\r
+Several version of keymap are available in advance but you are recommended to define your favorite layout yourself. To define your own keymap create file named `<name>.c` in the keymaps folder, and see keymap document (you can find in top README.md) and existent keymap files.\r
+\r
+To build the firmware binary hex file with a keymap just do `make` with `KEYMAP` option like:\r
+```\r
+$ make KEYMAP=[default|jack|<name>]\r
+```\r
+Keymaps follow the format **__\<name\>.c__** and are stored in the `keymaps` folder.\r