Merge pull request #13 from rswiernik/master

Updated Readme and Build info
master
Jack Humbert 2015-04-25 12:50:56 -04:00
commit 61b4d273da
3 changed files with 115 additions and 18 deletions

View File

@ -47,19 +47,24 @@ TOP_DIR = ../..
# Directory keyboard dependent files exist # Directory keyboard dependent files exist
TARGET_DIR = . TARGET_DIR = .
# # project specific files # # project specific files
# SRC = keymap_common.c \ ifdef COMMON_KEYMAP
# matrix_handwire.c \
# led.c \
# backlight.c
# ifdef KEYMAP SRC = keymap_common.c \
# SRC := keymap_$(KEYMAP).c $(SRC) matrix_handwire.c \
# else led.c \
# SRC := keymap_jack.c $(SRC) backlight.c
# endif
ifdef KEYMAP
SRC := keymap_$(KEYMAP).c $(SRC)
else
SRC := keymap_jack.c $(SRC)
endif
else
# project specific files
SRC = extended_keymap_common.c \ SRC = extended_keymap_common.c \
matrix_handwire.c \ matrix_handwire.c \
led.c \ led.c \
@ -71,6 +76,8 @@ else
SRC := extended_keymap_jack.c $(SRC) SRC := extended_keymap_jack.c $(SRC)
endif endif
endif
CONFIG_H = config.h CONFIG_H = config.h
# MCU name # MCU name

View File

@ -18,20 +18,36 @@ If you include extended_keymap_common.h instead of keymap_common.h at the top of
## Build ## Build
Follow [this guide](http://deskthority.net/workshop-f7/how-to-build-your-very-own-keyboard-firmware-t7177.html) to setup your development environment before anything else. Follow [this guide](http://deskthority.net/workshop-f7/how-to-build-your-very-own-keyboard-firmware-t7177.html) to setup your development environment before anything else. Abbreviated instructions are provide at the [bottom of this document](https://github.com/rswiernik/tmk_keyboard/tree/rswiernik_dev/keyboard/planck#environment-setup)
Download the whole firmware [here](https://github.com/jackhumbert/tmk_keyboard/archive/master.zip) and navigate to the keyboard/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex that you can load with the Teensy app onto your Planck (once you've hit reset/shorted GND & RST). Download the whole firmware [here](https://github.com/jackhumbert/tmk_keyboard/archive/master.zip) and navigate to the keyboard/planck folder. Once your dev env is setup, you'll be able to type `make` to generate your .hex that you can load with the Teensy app onto your Planck (once you've hit reset/shorted GND & RST).
Move to this directory then just run `make` like: Depending on which keymap you would like to use, you will have to compile slightly differently.
####Default
To build with the default keymap, simply move to the tmk\_keyboard/keyboard/planck/ and run `make` as follows:
```
$ make $ make
```
## Keymap ## 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. 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: ####**Extended Keymaps**
$ make KEYMAP=[<name>] To build the firmware binary hex file with an extended keymap just do `make` with `KEYMAP` option like:
```
$ make KEYMAP=[common|jack|<name>]
```
_The only applicable keymaps will work with this option._ Extended keymaps follow the format **__extended\_keymap\_\<name\>.c__**
####**Common Keymaps**
Building with a common keymap is as simple as adding the COMMON option. Note that only
```
$ make KEYMAP=[common|jack|<name>] COMMON=true
```
_The only applicable keymaps will work with this option._ Common keymaps follow the format **__keymap\_\<name\>.c__**
## Notable TMK forks (which some of the keymap files are from) ## Notable TMK forks (which some of the keymap files are from)
- [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck) - [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck)

View File

@ -0,0 +1,74 @@
#include "keymap_common.h"
/*
* BUILD:
* Simply run the command below in the keyboard/planck directory
* to build against this keymap
*
* make KEYMAP=reed COMMON_KEYMAP=true
*
*
* DETAILS:
*
* This layout works off of Jack's layout, making some changes that I
* feel significantly improve the function of the keyboard. Major changes
* include adding a "gaming mode" that will allow users to still access
* the number keys 1 through 4 easily for games that require it. Also
* included is the ability to use the tap/hold function for easy use of
* right shift and thumb shift with their tapped companions.
*
*/
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = KEYMAP_GRID( /* Reed */
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
TAB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN5,
LCTL, CAPS, LALT, LGUI, FN2, FN7, SPC, FN1, LEFT, DOWN, UP, RGHT),
[1] = KEYMAP_GRID( /* Reed EXTREME GAMING */
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
TAB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, FN5,
LCTL, 1, 2, 3, 4, SPC, FN2, FN1, LEFT, DOWN, UP, RGHT),
[2] = KEYMAP_GRID( /* Reed RAISE */
GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSPC,
TRNS, FN3, FN4, PAUSE, TRNS, TRNS, TRNS, MINS, EQL, LBRC, RBRC, BSLS,
TRNS, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, FN1, MNXT, VOLD, VOLU, MPLY),
[3] = KEYMAP_GRID( /* Reed LOWER */
TRNS , FN10, FN11, FN12, FN13, FN14, FN15, FN16, FN17, FN18, FN19, DEL,
TRNS, TRNS, TRNS, PAUSE, TRNS, TRNS, TRNS, FN20, FN21, FN23, FN24, FN28,
TRNS, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, TRNS,
TRNS, TRNS, TRNS, TRNS, FN2, TRNS, TRNS, TRNS, MNXT, VOLD, VOLU, MPLY),
};
const uint16_t PROGMEM fn_actions[] = {
[1] = ACTION_LAYER_MOMENTARY(2), // to Fn overlay - RAISE
[2] = ACTION_LAYER_MOMENTARY(3), // to Fn overlay - LOWER
[3] = ACTION_DEFAULT_LAYER_SET(0),
[4] = ACTION_DEFAULT_LAYER_SET(1),
// Actions for the tap/hold modifiers listed above
[5] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_ENT),
[7] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPC),
[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),
[29] = ACTION_MODS_KEY(MOD_LSFT | MOD_RSFT, KC_PAUSE),
};