]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - keyboards/zen/rules.mk
Boston meetup 2019 (#5611)
[qmk_firmware.git] / keyboards / zen / rules.mk
index 4e82689111d3917c66cb66e486687982686ecf6f..f5d64a7f03b952641eac7f1cf185fe67b8ee683d 100644 (file)
@@ -1,51 +1,26 @@
-SRC += matrix.c \
-          split_util.c \
-          serial.c
-
-# MCU name
-#MCU = at90usb1287
+# Pro Micro or Elite-C
+# Automagically converted to Proton-C
 MCU = atmega32u4
-
-# Processor frequency.
-#     This will define a symbol, F_CPU, in all source code files equal to the
-#     processor frequency in Hz. You can then use this symbol in your source code to
-#     calculate timings. Do NOT tack on a 'UL' at the end, this will be done
-#     automatically to create a 32-bit value in your source code.
-#
-#     This will be an integer division of F_USB below, as it is sourced by
-#     F_USB after it has run through any CPU prescalers. Note that this value
-#     does not *change* the processor frequency - it should merely be updated to
-#     reflect the processor speed set externally so that the code can use accurate
-#     software delays.
 F_CPU = 16000000
-
-#
-# LUFA specific
-#
-# Target architecture (see library "Board Types" documentation).
 ARCH = AVR8
-
-# Input clock frequency.
-#     This will define a symbol, F_USB, in all source code files equal to the
-#     input clock frequency (before any prescaling is performed) in Hz. This value may
-#     differ from F_CPU if prescaling is used on the latter, and is required as the
-#     raw input clock is fed directly to the PLL sections of the AVR for high speed
-#     clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
-#     at the end, this will be done automatically to create a 32-bit value in your
-#     source code.
-#
-#     If no clock division is performed on the input clock inside the AVR (via the
-#     CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
 F_USB = $(F_CPU)
+BOOTLOADER = dfu
+OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
 
-# Bootloader
-#     This definition is optional, and if your keyboard supports multiple bootloaders of
-#     different sizes, comment this out, and the correct address will be loaded 
-#     automatically (+60). See bootloader.mk for all options.
-BOOTLOADER = caterina
+ifeq ($(strip $(CTPC)), yes)
+  CONVERT_TO_PROTON_C=yes
+endif
 
-# Interrupt driven control endpoint task(+60)
-OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
+ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes)
+  SPLIT_KEYBOARD = no       # currently unsupported on ARM
+  RGBLIGHT_ENABLE = no      # currently unsupported on ARM
+
+  EXTRAFLAGS += -DUSE_PROTON_C
+else
+  # Currently moved to Pro Micro only section because of lack of Proton-C support
+  SPLIT_KEYBOARD = yes
+  RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
+endif
 
 # Build Options
 #   change to "no" to disable the options, or define them in the Makefile in
@@ -57,17 +32,11 @@ EXTRAKEY_ENABLE = yes       # Audio control and System control(+450)
 CONSOLE_ENABLE = no         # Console for debug(+400)
 COMMAND_ENABLE = yes        # Commands for debug and configuration
 NKRO_ENABLE = no            # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
 MIDI_ENABLE = no            # MIDI controls
 AUDIO_ENABLE = no           # Audio output on port C6
 UNICODE_ENABLE = no         # Unicode
 BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight. 
-SUBPROJECT_rev1 = yes
-USE_I2C = no
-# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
-SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
 
-CUSTOM_MATRIX = yes
+SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend
 
-DEFAULT_FOLDER = zen/rev1
+DEFAULT_FOLDER = zen/rev2