]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/ergoinu/rules.mk
de4bcad526ad3fcd68b1009377f43d7e29d7e67b
[qmk_firmware.git] / keyboards / ergoinu / rules.mk
1 SRC += matrix.c serial.c split_util.c
2
3 # MCU name
4 #MCU = at90usb1287
5 MCU = atmega32u4
6
7 # Processor frequency.
8 #     This will define a symbol, F_CPU, in all source code files equal to the
9 #     processor frequency in Hz. You can then use this symbol in your source code to
10 #     calculate timings. Do NOT tack on a 'UL' at the end, this will be done
11 #     automatically to create a 32-bit value in your source code.
12 #
13 #     This will be an integer division of F_USB below, as it is sourced by
14 #     F_USB after it has run through any CPU prescalers. Note that this value
15 #     does not *change* the processor frequency - it should merely be updated to
16 #     reflect the processor speed set externally so that the code can use accurate
17 #     software delays.
18 F_CPU = 16000000
19
20 #
21 # LUFA specific
22 #
23 # Target architecture (see library "Board Types" documentation).
24 ARCH = AVR8
25
26 # Input clock frequency.
27 #     This will define a symbol, F_USB, in all source code files equal to the
28 #     input clock frequency (before any prescaling is performed) in Hz. This value may
29 #     differ from F_CPU if prescaling is used on the latter, and is required as the
30 #     raw input clock is fed directly to the PLL sections of the AVR for high speed
31 #     clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
32 #     at the end, this will be done automatically to create a 32-bit value in your
33 #     source code.
34 #
35 #     If no clock division is performed on the input clock inside the AVR (via the
36 #     CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
37 F_USB = $(F_CPU)
38
39 # Bootloader
40 #     This definition is optional, and if your keyboard supports multiple bootloaders of
41 #     different sizes, comment this out, and the correct address will be loaded
42 #     automatically (+60). See bootloader.mk for all options.
43 BOOTLOADER = caterina
44
45 # Interrupt driven control endpoint task(+60)
46 OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
47
48 # Build Options
49 #   change to "no" to disable the options, or define them in the Makefile in
50 #   the appropriate keymap folder that will get included automatically
51 #
52 BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000)
53 MOUSEKEY_ENABLE = no       # Mouse keys(+4700)
54 EXTRAKEY_ENABLE = no       # Audio control and System control(+450)
55 CONSOLE_ENABLE = no         # Console for debug(+400)
56 COMMAND_ENABLE = no        # Commands for debug and configuration
57 NKRO_ENABLE = no            # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
58 BACKLIGHT_ENABLE = no      # Enable keyboard backlight functionality
59 MIDI_ENABLE = no            # MIDI controls
60 AUDIO_ENABLE = no           # Audio output on port C6
61 UNICODE_ENABLE = no         # Unicode
62 BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
63 RGBLIGHT_ENABLE = no       # Enable WS2812 RGB underlight. 
64 SUBPROJECT_rev1 = no
65 USE_I2C = no               # i2c is not supported
66 # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
67 SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
68
69 CUSTOM_MATRIX = yes
70
71 DEFAULT_FOLDER = ergoinu
72
73 # ergoinu configs
74 DISABLE_PROMICRO_LEDs = yes
75
76 ifneq ($(strip $(ERGOINU)),)
77   ifeq ($(findstring promicroled, $(ERGOINU)), promicroled)
78     DISABLE_PROMICRO_LEDs = no
79   endif
80 endif
81
82 ifeq ($(strip $(DISABLE_PROMICRO_LEDs)), yes)
83   OPT_DEFS += -DDISABLE_PROMICRO_LEDs
84 endif