]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergodox_ez/rules.mk
b8c0eb4f50a584ac5ab4d3bb9accd81f0b7dc0f7
[qmk_firmware.git] / keyboards / ergodox_ez / rules.mk
1 #----------------------------------------------------------------------------
2 # On command line:
3 #
4 # make = Make software.
5 #
6 # make clean = Clean out built project files.
7 #
8 # That's pretty much all you need. To compile, always go make clean,
9 # followed by make.
10 #
11 # For advanced users only:
12 # make teensy = Download the hex file to the device, using teensy_loader_cli.
13 #               (must have teensy_loader_cli installed).
14 #
15 #----------------------------------------------------------------------------
16
17 # # project specific files
18 SRC = twimaster.c \
19           matrix.c
20
21 # MCU name
22 MCU = atmega32u4
23
24 # Processor frequency.
25 #     This will define a symbol, F_CPU, in all source code files equal to the
26 #     processor frequency in Hz. You can then use this symbol in your source code to
27 #     calculate timings. Do NOT tack on a 'UL' at the end, this will be done
28 #     automatically to create a 32-bit value in your source code.
29 #
30 #     This will be an integer division of F_USB below, as it is sourced by
31 #     F_USB after it has run through any CPU prescalers. Note that this value
32 #     does not *change* the processor frequency - it should merely be updated to
33 #     reflect the processor speed set externally so that the code can use accurate
34 #     software delays.
35 F_CPU = 16000000
36
37
38 #
39 # LUFA specific
40 #
41 # Target architecture (see library "Board Types" documentation).
42 ARCH = AVR8
43
44 # Input clock frequency.
45 #     This will define a symbol, F_USB, in all source code files equal to the
46 #     input clock frequency (before any prescaling is performed) in Hz. This value may
47 #     differ from F_CPU if prescaling is used on the latter, and is required as the
48 #     raw input clock is fed directly to the PLL sections of the AVR for high speed
49 #     clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
50 #     at the end, this will be done automatically to create a 32-bit value in your
51 #     source code.
52 #
53 #     If no clock division is performed on the input clock inside the AVR (via the
54 #     CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
55 F_USB = $(F_CPU)
56
57 # Bootloader
58 #     This definition is optional, and if your keyboard supports multiple bootloaders of
59 #     different sizes, comment this out, and the correct address will be loaded
60 #     automatically (+60). See bootloader.mk for all options.
61 BOOTLOADER = halfkay
62
63 # Interrupt driven control endpoint task(+60)
64 OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
65
66 # If you have Left LEDs (see
67 # https://geekhack.org/index.php?topic=22780.msg873819#msg873819 for
68 # details), include the following define:
69 # OPT_DEFS += -DLEFT_LEDS
70
71 # Build Options
72 #   comment out to disable the options.
73 #
74 BOOTMAGIC_ENABLE = no  # Virtual DIP switch configuration(+1000)
75 MOUSEKEY_ENABLE  = yes # Mouse keys(+4700)
76 EXTRAKEY_ENABLE  = yes # Audio control and System control(+450)
77 CONSOLE_ENABLE   = no  # Console for debug(+400)
78 COMMAND_ENABLE   = yes # Commands for debug and configuration
79 CUSTOM_MATRIX    = yes # Custom matrix file for the ErgoDox EZ
80 NKRO_ENABLE      = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
81 UNICODE_ENABLE   = yes # Unicode
82 SWAP_HANDS_ENABLE= yes # Allow swapping hands of keyboard
83 SLEEP_LED_ENABLE = no
84 API_SYSEX_ENABLE = no
85 RGBLIGHT_ENABLE = no
86 RGB_MATRIX_ENABLE = no
87
88 LAYOUTS = ergodox