]> git.donarmstrong.com Git - qmk_firmware.git/blob - FAQ-Build.md
Updated FAQ Build (markdown)
[qmk_firmware.git] / FAQ-Build.md
1 ## READ FIRST
2 - https://github.com/tmk/tmk_keyboard/blob/master/doc/build.md
3
4 In short,
5
6     $ make [-f Makefile.<variant>] [KEYMAP=...] clean
7     $ make [-f Makefile.<variant>] [KEYMAP=...]
8     $ make [-f Makefile.<variant>] [KEYMAP=...] dfu
9
10
11 ## Do 'make clean' before 'make'
12 You'll need `make clean` after you edit **config.h** or change options like `KEYMAP`.
13
14 Frist remove all files made in previous build,
15
16     $ make clean
17
18 then build new frimware. 
19
20     $ make [KEYMAP=...]
21
22 Also you can always try `make clean` when you get other strange result during build.
23
24
25 ## WINAVR is obsolete
26 It is no longer recommended and may cause some problem.
27 See [Issue #99](https://github.com/tmk/tmk_keyboard/issues/99).
28
29 ## USB stack: LUFA or PJRC?
30 Use **LUFA**.
31
32 **PJRC** stack won't be supported actively anymore. There is no reason to hesitate to use LUFA except for binary size(about 1KB lager?). But **PJRC** is still very useful for debug and development purpose.
33 See also [Issue #50](https://github.com/tmk/tmk_keyboard/issues/50) and [Issue #58](https://github.com/tmk/tmk_keyboard/issues/58).
34
35
36 ## Edit configuration but not change
37 Try these.
38 ### 1. make clean
39 This will be needed when you edit **config.h**.
40
41 ### 2. Remove Drivers from Device Manager(Windows)
42 Windows only. Linux, OSX and other OS's doesn't require this. It looks like Windows keeps using driver installed when device was connected first time even after the device changes its configuration. To load proper drivers for new configuration you need to remove existent drivers from **Drvice Manager**.
43
44 You will need this after editing `CONSOLE_ENABLE`, `NKRO_ENABLE`, `EXTRAKEY_ENABLE` or `MOUSEKEY_ENABLE` option in **Makefile**.
45
46
47 ## USB VID and PID
48 You can use any ID you want with editing `config.h`. Using any presumably unused ID will be no problem in fact except for very least chance of collision with other product.
49
50 For example TMK uses following numbers by default.
51 ```
52 keyboard:
53 hhkb: FEED:CAFE
54 gh60: FEED:6060
55
56 converter:
57 x68k: FEED:6800
58 ps2: FEED:6512
59 adb: FEED:0ADB
60 ibm4704: FEED:4704
61 pc98: FEED:9898
62 ```
63
64 Also see this.
65 https://github.com/tmk/tmk_keyboard/issues/150
66
67 You can buy a really unique VID:PID here. I don't think you need this for personal use.
68 - http://www.obdev.at/products/vusb/license.html
69 - http://www.mcselec.com/index.php?page=shop.product_details&flypage=shop.flypage&product_id=92&option=com_phpshop&Itemid=1