|
@@ -0,0 +1,247 @@
|
|
|
+Phantom keyboard firmware
|
|
|
+======================
|
|
|
+DIY keyboard developed by Geekhack and Deskthority communities.
|
|
|
+The PCB was engineered by bpiphany from the original idea of HaveANiceDay.
|
|
|
+
|
|
|
+## Wiki on Deskthority.net
|
|
|
+- [Info](http://deskthority.net/wiki/Phantom)
|
|
|
+- [Assembly Instructions](http://deskthority.net/wiki/Phantom)
|
|
|
+
|
|
|
+
|
|
|
+Build
|
|
|
+-----
|
|
|
+Move to this directory then just run `make` like:
|
|
|
+
|
|
|
+ $ make -f Makefile.[pjrc|lufa] [ansi|ansi_150|iso|iso_150|7bit]
|
|
|
+
|
|
|
+Use `Makefile.pjrc` if you want to use PJRC stack or use `Makefile.lufa` for LUFA stack.
|
|
|
+
|
|
|
+
|
|
|
+LEDs
|
|
|
+----
|
|
|
+It is possible to configure the LEDs in 2 different ways.
|
|
|
+
|
|
|
+### 1. LED Brightness
|
|
|
+The brightness of the LEDs can be controlled by software.
|
|
|
+
|
|
|
+To select brightness edit [config.h](config.h) and set `LED_BRIGHTNESS` to a value
|
|
|
+between 0 and 255:
|
|
|
+
|
|
|
+ #define LED_BRIGHTNESS 250
|
|
|
+
|
|
|
+
|
|
|
+### 2. Sleep LED
|
|
|
+It is possible to have the LEDs fade in and out when the computer is suspended.
|
|
|
+
|
|
|
+To enable this feature, uncoment the `SLEEP_LED_ENABLE` line in the makefile you are using:
|
|
|
+
|
|
|
+ SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend
|
|
|
+
|
|
|
+*Note that this will set the LEDs to full brightness as this feature can't be combined with the brightness control.*
|
|
|
+
|
|
|
+
|
|
|
+Keymap
|
|
|
+------
|
|
|
+The PCB supports multiple physical layouts.
|
|
|
+Each layout have their own keymap file.
|
|
|
+
|
|
|
+*Note that only the ANSI keymap is tested on actual hardware.*
|
|
|
+
|
|
|
+To customize a keymap:
|
|
|
+1. Edit the file that corresponds to your layout.
|
|
|
+2. Specify your layout when building.
|
|
|
+
|
|
|
+See [keymap.c](keymap.c) to define your own custom layout.
|
|
|
+
|
|
|
+
|
|
|
+### 1. ANSI
|
|
|
+This is the default keymap.
|
|
|
+
|
|
|
+See [keymap_ansi.h](keymap_ansi.h) for detail.
|
|
|
+
|
|
|
+#### 1.0. ANSI Default Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ |~ | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp | |Ins|Hom|PgU|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |Del|End|PgD|
|
|
|
+ |-----------------------------------------------------------| '-----------'
|
|
|
+ |Fn0 | A| S| D| F| G| H| J| K| L| ;| '|Return |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | |Up |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ |Ctl|Gui|Alt| Space |Alt|Gui|App|Ctl| |Lef|Dow|Rig|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+#### 1.1. ANSI Media Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ | | | | | | | | | | | | | | | | | | | |Slp|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ | | | | | | | | | | |Mut|V- |V+ | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | |Stp|Ply|Prv|Nxt|Media| | | | |
|
|
|
+ |-----------------------------------------------------------| '-----------'
|
|
|
+ | | | | | | | | | | | | | |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ | | | |Clc| | | | | | | |Caps | | |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ | | | | | | | | | | | | |
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+
|
|
|
+### 2. ANSI 150
|
|
|
+Layout with 1.5 unit modifiers.
|
|
|
+
|
|
|
+See [keymap_ansi_150.h](keymap_ansi_150.h) for detail.
|
|
|
+
|
|
|
+#### 2.0. ANSI 150 Default Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ |~ | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp | |Ins|Hom|PgU|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |Del|End|PgD|
|
|
|
+ |-----------------------------------------------------------| '-----------'
|
|
|
+ |Fn0 | A| S| D| F| G| H| J| K| L| ;| '|Return |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | |Up |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ |Ctl |Gui|Alt | Space |Alt |Gui|Ctl | |Lef|Dow|Rig|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+#### 2.1. ANSI 150 Media Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ | | | | | | | | | | | | | | | | | | | |Slp|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ | | | | | | | | | | |Mut|V- |V+ | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | |Stp|Ply|Prv|Nxt|Media| | | | |
|
|
|
+ |-----------------------------------------------------------| '-----------'
|
|
|
+ | | | | | | | | | | | | | |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ | | | |Clc| | | | | | | |Caps | | |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ | | | | | | | | | | | |
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+
|
|
|
+### 3. ISO
|
|
|
+ISO layout.
|
|
|
+
|
|
|
+See [keymap_iso.h](keymap_iso.h) for detail.
|
|
|
+
|
|
|
+#### 3.0. ISO Default Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ |~ | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp | |Ins|Hom|PgU|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | |Del|End|PgD|
|
|
|
+ |------------------------------------------------------` Ret| '-----------'
|
|
|
+ |Fn0 | A| S| D| F| G| H| J| K| L| ;| '| #| |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ |Shif| \| Z| X| C| V| B| N| M| ,| .| /|Shift | |Up |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ |Ctl|Gui|Alt| Space |Alt|Gui|App|Ctl| |Lef|Dow|Rig|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+#### 3.1. ISO Media Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ | | | | | | | | | | | | | | | | | | | |Slp|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ | | | | | | | | | | |Mut|V- |V+ | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | |Stp|Ply|Prv|Nxt| | | | | |
|
|
|
+ |------------------------------------------------------` Med| '-----------'
|
|
|
+ | | | | | | | | | | | | | | |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ | | | | |Clc| | | | | | | |Caps | | |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ | | | | | | | | | | | | |
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+
|
|
|
+### 4. ISO 150
|
|
|
+ISO layout with 1.5 unit modifiers.
|
|
|
+
|
|
|
+See [keymap_iso_150.h](keymap_iso_150.h) for detail.
|
|
|
+
|
|
|
+#### 4.0. ISO 150 Default Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PrS|ScL|Pau|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ |~ | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp | |Ins|Hom|PgU|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | |Del|End|PgD|
|
|
|
+ |------------------------------------------------------` Ret| '-----------'
|
|
|
+ |Fn0 | A| S| D| F| G| H| J| K| L| ;| '| #| |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ |Shif| \| Z| X| C| V| B| N| M| ,| .| /|Shift | |Up |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ |Ctl |Gui|Alt | Space |Alt |Gui|Ctl | |Lef|Dow|Rig|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+#### 4.1. ISO 150 Media Layer
|
|
|
+ ,---. ,---------------. ,---------------. ,---------------. ,-----------.
|
|
|
+ | | | | | | | | | | | | | | | | | | | |Slp|
|
|
|
+ `---' `---------------' `---------------' `---------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ | | | | | | | | | | |Mut|V- |V+ | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | |Stp|Ply|Prv|Nxt| | | | | |
|
|
|
+ |------------------------------------------------------` Med| '-----------'
|
|
|
+ | | | | | | | | | | | | | | |
|
|
|
+ |-----------------------------------------------------------| ,---.
|
|
|
+ | | | | |Clc| | | | | | | |Caps | | |
|
|
|
+ |-----------------------------------------------------------| ,-----------.
|
|
|
+ | | | | | | | | | | | |
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+
|
|
|
+### 5. 7bit
|
|
|
+Layout using all the available keys on the PCB.
|
|
|
+
|
|
|
+This keymap is only provided as an example of what can be done using this layout.
|
|
|
+No real thought has been put into this keymap.
|
|
|
+
|
|
|
+See [keymap_7bit.h](keymap_7bit.h) for detail.
|
|
|
+
|
|
|
+#### 5.0. 7bit Default Layer
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ |Esc|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|V- |V+ | |PrS|ScL|Pau|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ |~ | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| (| )| |Ins|Hom|PgU|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Backs| |Del|End|PgD|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Fn0 | A| S| D| F| G| H| J| K| L| ;| '| \| Ret| |Stp|Ply|Med|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Cap|Shif| Z| X| C| V| B| N| M| ,| .| /|Shift |Cap| |Prv|Up |Nxt|
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ |Ctrl |Gui|Alt |Spc |Bspc |Del|Ret |Alt |Gui |App|Ctrl | |Lef|Dow|Rig|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+
|
|
|
+#### 5.1. 7bit Media Layer
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ | | | | | | | | | | | | | | | | | | |Slp|
|
|
|
+ `-----------------------------------------------------------' `-----------'
|
|
|
+ ,-----------------------------------------------------------. ,-----------.
|
|
|
+ | | | | | | | | | | |Mut|V- |V+ | | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | |Stp|Ply|Prv|Nxt|Media| | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | | | | | | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | | | | | | | | | | |
|
|
|
+ |-----------------------------------------------------------| |-----------|
|
|
|
+ | | | | | | | | | | | | | | | |
|
|
|
+ `-----------------------------------------------------------' `-----------'
|