Peter's keyboard firmware (QMK) https://qmk.fm/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

rules.mk 3.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #MCU = at90usb1287
  2. MCU = atmega32u4
  3. # Processor frequency.
  4. # This will define a symbol, F_CPU, in all source code files equal to the
  5. # processor frequency in Hz. You can then use this symbol in your source code to
  6. # calculate timings. Do NOT tack on a 'UL' at the end, this will be done
  7. # automatically to create a 32-bit value in your source code.
  8. #
  9. # This will be an integer division of F_USB below, as it is sourced by
  10. # F_USB after it has run through any CPU prescalers. Note that this value
  11. # does not *change* the processor frequency - it should merely be updated to
  12. # reflect the processor speed set externally so that the code can use accurate
  13. # software delays.
  14. F_CPU = 16000000
  15. # for avr upload
  16. USB = /dev/cu.usbmodem1421
  17. #
  18. # LUFA specific
  19. #
  20. # Target architecture (see library "Board Types" documentation).
  21. ARCH = AVR8
  22. # Input clock frequency.
  23. # This will define a symbol, F_USB, in all source code files equal to the
  24. # input clock frequency (before any prescaling is performed) in Hz. This value may
  25. # differ from F_CPU if prescaling is used on the latter, and is required as the
  26. # raw input clock is fed directly to the PLL sections of the AVR for high speed
  27. # clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
  28. # at the end, this will be done automatically to create a 32-bit value in your
  29. # source code.
  30. #
  31. # If no clock division is performed on the input clock inside the AVR (via the
  32. # CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
  33. F_USB = $(F_CPU)
  34. ifdef TEENSY2
  35. OPT_DEFS += -DATREUS_TEENSY2
  36. ATREUS_UPLOAD_COMMAND = teensy_loader_cli -w -mmcu=$(MCU) $(TARGET).hex
  37. else
  38. OPT_DEFS += -DATREUS_ASTAR
  39. OPT_DEFS += -DCATERINA_BOOTLOADER
  40. ATREUS_UPLOAD_COMMAND = while [ ! -r $(USB) ]; do sleep 1; done; \
  41. avrdude -p $(MCU) -c avr109 -U flash:w:$(TARGET).hex -P $(USB)
  42. endif
  43. # Interrupt driven control endpoint task(+60)
  44. OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
  45. # MCU name
  46. # Boot Section Size in *bytes*
  47. # Teensy halfKay 512
  48. # Teensy++ halfKay 1024
  49. # Atmel DFU loader 4096
  50. # LUFA bootloader 4096
  51. # USBaspLoader 2048
  52. OPT_DEFS += -DBOOTLOADER_SIZE=4096
  53. # Build Options
  54. # change yes to no to disable
  55. #
  56. BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
  57. MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
  58. EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
  59. CONSOLE_ENABLE = no # Console for debug(+400)
  60. COMMAND_ENABLE = no # Commands for debug and configuration
  61. # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
  62. SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
  63. # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
  64. NKRO_ENABLE = no # USB Nkey Rollover
  65. BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
  66. MIDI_ENABLE = no # MIDI controls
  67. UNICODE_ENABLE = no # Unicode
  68. BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
  69. AUDIO_ENABLE = no # Audio output on port C6
  70. RGBLIGHT_ENABLE = yes