example_keyboards
parent
07d090db8b
commit
b3f638f491
@ -1,141 +0,0 @@
|
|||||||
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 `keymap_<name>.c` 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
|
|
||||||
[keymap_poker.c](keymap_poker.c) emulates original Poker layers
|
|
||||||
while both [keymap_poker_bit.c](keymap_poker_bit.c) and [keymap_poker_set.c](keymap_poker_set.c) implements same layout in different way 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 [keymap_plain.c](keymap_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 [keymap_hasu.c](keymap_hasu.c) for detail.
|
|
||||||
|
|
||||||
|
|
||||||
### 4. SpaceFN
|
|
||||||
This layout proposed by spiceBar uses space bar to change layer with using Dual role key technique. See [keymap_spacefn.c](keymap_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
|
|
||||||
[keymap_hhkb.c](keymap_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| | |
|
|
||||||
|-----------------------------------------------------------|
|
|
||||||
| | | | | | | | |
|
|
||||||
`-----------------------------------------------------------'
|
|
||||||
|
|
@ -1,46 +0,0 @@
|
|||||||
#include "keymap_common.h"
|
|
||||||
|
|
||||||
// JCK: Semi-Standard layout
|
|
||||||
|
|
||||||
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* 0: qwerty */
|
|
||||||
[0] = KEYMAP_JCK(GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS, EQL, BSPC, \
|
|
||||||
TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC, RBRC, BSLS, DEL, \
|
|
||||||
ESC, A, S, D, F, G, H, J, K, L, SCLN, QUOT, ENT, MPLY, \
|
|
||||||
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT, VOLD, VOLU, \
|
|
||||||
LCTL, LALT, LGUI, SPC, FN1, LEFT, DOWN, UP, RGHT),
|
|
||||||
[1] = KEYMAP_JCK(GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS, EQL, BSPC, \
|
|
||||||
TAB, Q, W, F, P, G, J, L, U, Y, SCLN, LBRC, RBRC, BSLS, DEL, \
|
|
||||||
ESC, A, R, S, T, D, H, N, E, I, O, QUOT, ENT, MPLY, \
|
|
||||||
LSFT, Z, X, C, V, B, K, M, COMM, DOT, SLSH, RSFT, VOLD, VOLU, \
|
|
||||||
LCTL, LALT, LGUI, SPC, FN1, LEFT, DOWN, UP, RGHT),
|
|
||||||
[2] = KEYMAP_JCK(GRV, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, BSPC, \
|
|
||||||
TAB, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, LBRC, RBRC, BSLS, DEL, \
|
|
||||||
ESC, FN3, FN4, TRNS, TRNS, TRNS, TRNS, MINS, EQL, LBRC, RBRC, BSLS, ENT, MPLY, \
|
|
||||||
LSFT, FN9, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT, VOLD, VOLU, \
|
|
||||||
LCTL, LALT, LGUI, SPC, TRNS, MNXT, VOLD, VOLU, MPLY),
|
|
||||||
};
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
|
||||||
[1] = ACTION_LAYER_MOMENTARY(2), // to Fn overlay
|
|
||||||
[3] = ACTION_DEFAULT_LAYER_SET(0),
|
|
||||||
[4] = ACTION_DEFAULT_LAYER_SET(1),
|
|
||||||
|
|
||||||
[9] = ACTION_MODS_KEY(MOD_LSFT | MOD_RSFT, KC_PAUSE),
|
|
||||||
|
|
||||||
[10] = ACTION_MODS_KEY(MOD_LSFT, KC_1),
|
|
||||||
[11] = ACTION_MODS_KEY(MOD_LSFT, KC_2),
|
|
||||||
[12] = ACTION_MODS_KEY(MOD_LSFT, KC_3),
|
|
||||||
[13] = ACTION_MODS_KEY(MOD_LSFT, KC_4),
|
|
||||||
[14] = ACTION_MODS_KEY(MOD_LSFT, KC_5),
|
|
||||||
[15] = ACTION_MODS_KEY(MOD_LSFT, KC_6),
|
|
||||||
[16] = ACTION_MODS_KEY(MOD_LSFT, KC_7),
|
|
||||||
[17] = ACTION_MODS_KEY(MOD_LSFT, KC_8),
|
|
||||||
[18] = ACTION_MODS_KEY(MOD_LSFT, KC_9),
|
|
||||||
[19] = ACTION_MODS_KEY(MOD_LSFT, KC_0),
|
|
||||||
[20] = ACTION_MODS_KEY(MOD_LSFT, KC_MINS),
|
|
||||||
[21] = ACTION_MODS_KEY(MOD_LSFT, KC_EQL),
|
|
||||||
[22] = ACTION_MODS_KEY(MOD_LSFT, KC_GRV),
|
|
||||||
[23] = ACTION_MODS_KEY(MOD_LSFT, KC_LBRC),
|
|
||||||
[24] = ACTION_MODS_KEY(MOD_LSFT, KC_RBRC),
|
|
||||||
[28] = ACTION_MODS_KEY(MOD_LSFT, KC_BSLS),
|
|
||||||
};
|
|
@ -1,15 +0,0 @@
|
|||||||
#include "keymap_common.h"
|
|
||||||
|
|
||||||
// JCK: Semi-Standard layout
|
|
||||||
|
|
||||||
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* 0: qwerty */
|
|
||||||
[0] = KEYMAP_JCK(GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS, EQL, BSPC, \
|
|
||||||
TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC, RBRC, BSLS, PSCR, \
|
|
||||||
CAPS, A, S, D, F, G, H, J, K, L, SCLN, QUOT, ENT, INS, \
|
|
||||||
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT, UP, DEL, \
|
|
||||||
LCTL, LGUI, LALT, SPC, RALT, RCTL, LEFT, DOWN, RGHT)
|
|
||||||
};
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
|
||||||
};
|
|
||||||
|
|
@ -1,14 +0,0 @@
|
|||||||
#include "keymap_common.h"
|
|
||||||
|
|
||||||
// JCK: Semi-Standard layout
|
|
||||||
|
|
||||||
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* 0: qwerty */
|
|
||||||
[0] = KEYMAP_ASK(GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS, EQL, BSPC, \
|
|
||||||
TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC, RBRC, BSLS, DEL, \
|
|
||||||
CAPS, A, S, D, F, G, H, J, K, L, SCLN, QUOT, ENT, VOLU, \
|
|
||||||
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT, UP, VOLD, \
|
|
||||||
LCTL, LGUI, LALT, LGUI, SPC, RGUI, RALT, RGUI, RCTL, LEFT, DOWN, RGHT)
|
|
||||||
};
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
|
||||||
};
|
|
Loading…
Reference in New Issue