qmk_firmware/keyboard/planck
Jack Humbert f1daa266ad macros
2015-03-23 00:35:05 -04:00
..
backlight.c Replaced tabs with spaces to match TMK convention. 2015-03-17 00:56:41 +11:00
backlight.h Added backlight.h, backlight.c 2015-03-17 00:51:36 +11:00
config.h Initial commit for Planck PCB Rev 1. 2015-03-17 00:43:37 +11:00
extended_keymap_common.c macros 2015-03-23 00:33:54 -04:00
extended_keymap_common.h macros 2015-03-23 00:33:54 -04:00
extended_keymap_jack.c macros 2015-03-23 00:33:54 -04:00
keymap_brett.c brett 2015-03-05 14:29:33 -05:00
keymap_common.c added planck folder 2014-12-14 10:30:27 -05:00
keymap_common.h Update keymap_nathan.c 2015-03-18 23:58:21 -04:00
keymap_dotcom.c dotcom 2015-01-05 16:32:15 -05:00
keymap_jack.c simon 2015-03-02 20:37:17 -05:00
keymap_joe.c led oops 2015-02-23 23:44:11 -05:00
keymap_matthew.c defined KEYMAP_GRID for grid layouts 2015-01-23 14:17:32 -05:00
keymap_nathan.c Update keymap_nathan.c 2015-03-18 23:58:21 -04:00
keymap_peasant.c dotcom 2015-01-05 16:27:03 -05:00
keymap_sean.c sean 2015-02-15 16:29:35 -05:00
keymap_shane.c Create keymap_shane.c 2015-01-14 21:36:25 -05:00
keymap_simon.c simon 2015-03-02 20:37:17 -05:00
keymap_tim.c working extended keymap 2015-03-20 13:36:13 -04:00
keymap_wilba.c Replaced tabs with spaces to match TMK convention. 2015-03-17 00:56:41 +11:00
led.c Replaced tabs with spaces to match TMK convention. 2015-03-17 00:56:41 +11:00
Makefile working extended keymap 2015-03-20 13:36:13 -04:00
Makefile.pjrc added planck folder 2014-12-14 10:30:27 -05:00
matrix.c Replaced tabs with spaces to match TMK convention. 2015-03-17 00:56:41 +11:00
matrix_center.c working extended keymap 2015-03-20 13:36:13 -04:00
matrix_handwire.c working extended keymap 2015-03-20 13:36:13 -04:00
README.md macros 2015-03-23 00:35:05 -04:00

Planck keyboard firmware

DIY/Assembled compact ortholinear 40% keyboard by Ortholinear Keyboards.

Extended Keymap

If you include extended_keymap_common.h instead of keymap_common.h at the top of your file, you'll have access to a bunch of goodies:

  • Use LSFT(), LCTL(), et. al. (listed in extended_keymap_common.h) as modifiers for keys (daisy-chain-able)
  • Use FUNC(1) instead of FN1 (etc.) to access the function layers beyond the 32 function layer limit
  • Use CM_F instead of KC_F to get the ColeMak equivilent for shortcuts (maps backwards)
  • Use MACRODOWN() instead of MACRO() to easily make a keydown macro (CM_* works here too)

Some notes on usage:

  • The KEYMAP() macro is unable to be used due to the bitwise modifications that take place - refer to extended_keymap_jack.c to see how to set things up with the KC_ prefix
  • Keep an eye on the Makefile - this needs to include the correct files to work
  • Don't forget to use const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { instead of the 8bit equivilent

Build

Follow this guide to setup your development environment before anything else.

Download the whole firmware here 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:

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

To build firmware binary hex file with a certain keymap just do make with KEYMAP option like:

$ make KEYMAP=[<name>]

Notable TMK forks (which some of the keymap files are from)