Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated Readme and Build info #13

Merged
merged 10 commits into from
Apr 25, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 20 additions & 13 deletions keyboard/planck/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -47,20 +47,25 @@ TOP_DIR = ../..
# Directory keyboard dependent files exist
TARGET_DIR = .



# # project specific files
# SRC = keymap_common.c \
# matrix_handwire.c \
# led.c \
# backlight.c

# ifdef KEYMAP
# SRC := keymap_$(KEYMAP).c $(SRC)
# else
# SRC := keymap_jack.c $(SRC)
# endif

# project specific files
SRC = extended_keymap_common.c \
ifdef COMMON_KEYMAP

SRC = keymap_common.c \
matrix_handwire.c \
led.c \
backlight.c

ifdef KEYMAP
SRC := keymap_$(KEYMAP).c $(SRC)
else
SRC := keymap_jack.c $(SRC)
endif

else

SRC = extended_keymap_common.c \
matrix_handwire.c \
led.c \
backlight.c
Expand All @@ -71,6 +76,8 @@ else
SRC := extended_keymap_jack.c $(SRC)
endif

endif

CONFIG_H = config.h

# MCU name
Expand Down
30 changes: 23 additions & 7 deletions keyboard/planck/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,23 +18,39 @@ If you include extended_keymap_common.h instead of keymap_common.h at the top of

## 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.

$ make
####Default
To build with the default keymap, simply move to the tmk\_keyboard/keyboard/planck/ and run `make` as follows:
```
$ make
```

## 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.

####**Extended Keymaps**

To build firmware binary hex file with a certain keymap just do `make` with `KEYMAP` option like:
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__**

$ make KEYMAP=[<name>]
####**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)
- [Shane's Fork](https://github.com/shanecelis/tmk_keyboard/tree/master/keyboard/planck)
- [Pierre's Fork](https://github.com/pcarrier/tmk_keyboard/blob/pcarrier/planck/keyboard/gh60/keymap_planck.c)
- [Nathan's Fork](https://github.com/nathanrosspowell/tmk_keyboard/tree/planck-jack/keyboard/planck)
- [Matthew's Fork](https://github.com/pepers/tmk_keyboard/tree/master/keyboard/planck_grid)
- [Matthew's Fork](https://github.com/pepers/tmk_keyboard/tree/master/keyboard/planck_grid)
74 changes: 74 additions & 0 deletions keyboard/planck/keymap_reed.c
Original file line number Diff line number Diff line change
@@ -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),
};