]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergodox_ez/rules.mk
document how to define LEFT_LEDS and how that hack is done
[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 # Interrupt driven control endpoint task(+60)
58 OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
59
60
61 # Boot Section Size in *bytes*
62 #   Teensy halfKay   512
63 #   Teensy++ halfKay 1024
64 #   Atmel DFU loader 4096
65 #   LUFA bootloader  4096
66 #   USBaspLoader     2048
67 OPT_DEFS += -DBOOTLOADER_SIZE=512
68
69 # If you have Left LEDs (see
70 # https://geekhack.org/index.php?topic=22780.msg873819#msg873819 for
71 # details), include the following define:
72 # OPT_DEFS += -DLEFT_LEDS
73
74 # Build Options
75 #   comment out to disable the options.
76 #
77 BOOTMAGIC_ENABLE = no  # Virtual DIP switch configuration(+1000)
78 MOUSEKEY_ENABLE  = yes # Mouse keys(+4700)
79 EXTRAKEY_ENABLE  = yes # Audio control and System control(+450)
80 CONSOLE_ENABLE   = no  # Console for debug(+400)
81 COMMAND_ENABLE   = yes # Commands for debug and configuration
82 CUSTOM_MATRIX    = yes # Custom matrix file for the ErgoDox EZ
83 NKRO_ENABLE      = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
84 UNICODE_ENABLE   = yes # Unicode
85 ONEHAND_ENABLE   = yes # Allow swapping hands of keyboard
86 SLEEP_LED_ENABLE = no
87 API_SYSEX_ENABLE = no
88 RGBLIGHT_ENABLE = yes
89
90 LAYOUTS = ergodox