-Build Options
--------------
-### `Makefile`
-#### 1. MCU and Frequency.
- MCU = atmega32u4 # Teensy 2.0
- #MCU = at90usb1286 # Teensy++ 2.0
- F_CPU = 16000000
-
-#### 2. Features
-Note that ***comment out*** to disable them.
- MOUSEKEY_ENABLE = yes # Mouse keys
- PS2_MOUSE_ENABLE = yes # PS/2 mouse(TrackPoint) support
- EXTRAKEY_ENABLE = yes # Enhanced feature for Windows(Audio control and System control)
- NKRO_ENABLE = yes # USB Nkey Rollover
-
-#### 3. Programmer
-Set proper command for your controller, bootloader and programmer.
- # for PJRC Teensy
- PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex
-
- # for Atmel AT90USBKEY
- PROGRAM_CMD = dfu-programmer $(MCU) flash $(TARGET).hex
-
- # avrdude
- PROGRAM_CMD = avrdude -p $(MCU) -c avrispmkII -P USB -U flash:w:$(TARGET).hex
- PROGRAM_CMD = avrdude -p $(MCU) -c usbasp -U flash:w:$(TARGET).hex
- PROGRAM_CMD = avrdude -p $(MCU) -c arduino -P COM1 -b 57600 -U flash:w:$(TARGET).hex
-
-### `config.h`
+ ----- Command Help -----
+ c: enter console mode
+ d: toggle debug enable
+ x: toggle matrix debug
+ k: toggle keyboard debug
+ m: toggle mouse debug
+ v: print device version & info
+ t: print timer count
+ s: print status
+ e: print eeprom config
+ n: toggle NKRO
+ 0/F10: switch to Layer0
+ 1/F1: switch to Layer1
+ 2/F2: switch to Layer2
+ 3/F3: switch to Layer3
+ 4/F4: switch to Layer4
+ PScr: power down/remote wake-up
+ Caps: Lock Keyboard(Child Proof)
+ Paus: jump to bootloader
+
+**TBD**
+
+### Boot Magic Configuration - Virtual DIP Switch
+Boot Magic are executed during boot up time. Press Magic key below then plug in keyboard cable.
+Note that you must use keys of **Layer 0** as Magic keys. These settings are stored in EEPROM so that retain your configure over power cycles.
+
+To avoid configuring accidentally additive salt key `KC_SPACE` also needs to be pressed along with the following configuration keys. The salt key is configurable in `config.h`. See [common/bootmagic.h](common/bootmagic.h).
+
+#### General
+- Skip reading EEPROM to start with default configuration(`ESC`)
+- Clear configuration stored in EEPROM to reset configuration(`Backspace`)
+
+#### Bootloader
+- Kick up Bootloader(`B`)
+
+#### Debug
+- Debug enable(`D`)
+- Debug matrix enable(`D`+`X`)
+- Debug keyboard enable(`D`+`K`)
+- Debug mouse enable(`D`+`M`)
+
+#### Keymap
+- Swap Control and CapsLock(`Left Control`)
+- Change CapsLock to Control(`Caps Lock`)
+- Swap LeftAlt and Gui(`Left Alt`)
+- Swap RightAlt and Gui(`Right Alt`)
+- Disable Gui(`Left Gui`)
+- Swap Grave and Escape(`Grave`)
+- Swap BackSlash and BackSpace(`Back Slash`)
+- Enable NKRO on boot(`N`)
+
+#### Default Layer
+- Set Default Layer to 0(`0`)
+- Set Default Layer to 1(`1`)
+- Set Default Layer to 2(`2`)
+- Set Default Layer to 3(`3`)
+- Set Default Layer to 4(`4`)
+- Set Default Layer to 5(`5`)
+- Set Default Layer to 6(`6`)
+- Set Default Layer to 7(`7`)
+
+#### Caution
+Unintentional use of this feature will cause user confusion.
+
+TODO: Magic key combination to avoid unintentional press during plug in
+
+**TBD**
+
+
+Mechanical Locking support
+--------------------------
+This feature makes it possible for you to use mechanical switch for `CapsLock`, `NumLock` or `ScrollLock`. To enable this feature define these macros in `config.h` and use `KC_LCAP`, `KC_LNUM` or `KC_LSCR` in keymap for locking key instead of normal `KC_CAPS`, `KC_NLCK` or `KC_SLCK`. Resync option tries to keep lock switch state consistent with keyboard LED state.
+
+ #define LOCKING_SUPPORT_ENABLE
+ #define LOCKING_RESYNC_ENABLE
+
+
+Start Your Own Project
+-----------------------
+**TBD**
+### Config.h Options