Compare commits
	
		
			7 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 852d94f4e6 | ||
|   | 1c87b97dd6 | ||
|   | d9ef323f8a | ||
|   | 57b21c037c | ||
|   | fd3c1aa909 | ||
|   | 3d50a2867b | ||
|   | 0836e47e33 | 
| @@ -16,6 +16,7 @@ include common.mk | ||||
| KEYBOARD_FILESAFE := $(subst /,_,$(KEYBOARD)) | ||||
| TARGET ?= $(KEYBOARD_FILESAFE)_$(KEYMAP) | ||||
| KEYBOARD_OUTPUT := $(BUILD_DIR)/obj_$(KEYBOARD_FILESAFE) | ||||
| STM32_PATH := quantum/stm32 | ||||
|  | ||||
| # Force expansion | ||||
| TARGET := $(TARGET) | ||||
| @@ -68,6 +69,7 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_1)/)","") | ||||
|     KEYBOARD_PATHS += $(KEYBOARD_PATH_1) | ||||
| endif | ||||
|  | ||||
|  | ||||
| # Pull in rules.mk files from all our subfolders | ||||
| ifneq ("$(wildcard $(KEYBOARD_PATH_5)/rules.mk)","") | ||||
|     include $(KEYBOARD_PATH_5)/rules.mk | ||||
| @@ -85,6 +87,19 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_1)/rules.mk)","") | ||||
|     include $(KEYBOARD_PATH_1)/rules.mk | ||||
| endif | ||||
|  | ||||
| ifeq ($(strip $(PROTON)), yes) | ||||
|     OPT_DEFS += -DPROTON_CONVERSION | ||||
|     include $(STM32_PATH)/proton_c.mk | ||||
| endif | ||||
|  | ||||
| include quantum/mcu_selection.mk | ||||
|  | ||||
| ifdef MCU_FAMILY | ||||
|     OPT_DEFS += -DQMK_STM32 | ||||
|     KEYBOARD_PATHS += $(STM32_PATH) | ||||
| endif | ||||
|  | ||||
|  | ||||
| # Find all the C source files to be compiled in subfolders. | ||||
| KEYBOARD_SRC := | ||||
|  | ||||
|   | ||||
| @@ -18,14 +18,14 @@ | ||||
| #define _BOARD_H_ | ||||
| 
 | ||||
| /*
 | ||||
|  * Setup for Clueboard 60% Keyboard | ||||
|  * Setup for Generic STM32_F303 Board | ||||
|  */ | ||||
| 
 | ||||
| /*
 | ||||
|  * Board identifier. | ||||
|  */ | ||||
| #define BOARD_GENERIC_STM32_F303XC | ||||
| #define BOARD_NAME                  "Planck PCB" | ||||
| #define BOARD_NAME                  "STM32_F303" | ||||
| 
 | ||||
| /*
 | ||||
|  * Board oscillators-related settings. | ||||
| @@ -2,41 +2,8 @@ | ||||
| SRC =	matrix.c | ||||
| LAYOUTS += ortho_4x12 | ||||
|  | ||||
| ## chip/board settings | ||||
| # - the next two should match the directories in | ||||
| #   <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) | ||||
| MCU_FAMILY = STM32 | ||||
| MCU_SERIES = STM32F3xx | ||||
|  | ||||
| # Linker script to use | ||||
| # - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/ | ||||
| #   or <this_dir>/ld/ | ||||
| MCU_LDSCRIPT = STM32F303xC | ||||
|  | ||||
| # Startup code to use | ||||
| #  - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/ | ||||
| MCU_STARTUP = stm32f3xx | ||||
|  | ||||
| # Board: it should exist either in <chibios>/os/hal/boards/ | ||||
| #  or <this_dir>/boards | ||||
| BOARD = GENERIC_STM32_F303XC | ||||
|  | ||||
| # Cortex version | ||||
| MCU  = cortex-m4 | ||||
|  | ||||
| # ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7 | ||||
| ARMV = 7 | ||||
|  | ||||
| USE_FPU = yes | ||||
|  | ||||
| # Vector table for application | ||||
| # 0x00000000-0x00001000 area is occupied by bootlaoder.*/ | ||||
| # The CORTEX_VTOR... is needed only for MCHCK/Infinity KB | ||||
| # OPT_DEFS = -DCORTEX_VTOR_INIT=0x08005000 | ||||
| OPT_DEFS = | ||||
|  | ||||
| # Options to pass to dfu-util when flashing | ||||
| DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave | ||||
| MCU  = STM32F303 | ||||
|  | ||||
| # Build Options | ||||
| #   comment out to disable the options. | ||||
|   | ||||
| @@ -1,39 +1,6 @@ | ||||
| # MCU name | ||||
| #MCU = at90usb1287 | ||||
| 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 | ||||
| #     This definition is optional, and if your keyboard supports multiple bootloaders of | ||||
| #     different sizes, comment this out, and the correct address will be loaded | ||||
|   | ||||
| @@ -33,7 +33,6 @@ | ||||
| #define MATRIX_ROW_PINS { B9 } | ||||
| #define MATRIX_COL_PINS { B0 } | ||||
|  | ||||
|  | ||||
| /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | ||||
| #define DEBOUNCE 6 | ||||
|  | ||||
|   | ||||
| @@ -24,24 +24,22 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
| #define VENDOR_ID       0xFEED | ||||
| #define PRODUCT_ID      0x6063 | ||||
| #define DEVICE_VER      0x0001 | ||||
| #define MANUFACTURER    Ortholinear Keyboards | ||||
| #define PRODUCT         The Subatomic Keyboard | ||||
| #define MANUFACTURER    OLKB | ||||
| #define PRODUCT         Subatomic | ||||
| #define DESCRIPTION     A compact ortholinear keyboard | ||||
|  | ||||
| /* key matrix size */ | ||||
| #define MATRIX_ROWS 5 | ||||
| #define MATRIX_COLS 14 | ||||
| #define MATRIX_ROWS 10 | ||||
| #define MATRIX_COLS 8 | ||||
|  | ||||
| /* Planck PCB default pin-out */ | ||||
| #define MATRIX_ROW_PINS { D2, D5, B5, B6, D3 } | ||||
| #define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7, C6, C5 } | ||||
| #define MATRIX_ROW_PINS { A10, A9, A8, B15, C13, C14, C15, A2, A3, A6 } | ||||
| #define MATRIX_COL_PINS { B11, B10, B2, B1, A7, B0, B9, B8 } | ||||
| #define UNUSED_PINS | ||||
|  | ||||
| // #define AUDIO_VOICES | ||||
| // #define C6_AUDIO | ||||
|  | ||||
| #define BACKLIGHT_PIN B7 | ||||
|  | ||||
| /* COL2ROW or ROW2COL */ | ||||
| #define DIODE_DIRECTION COL2ROW | ||||
|  | ||||
|   | ||||
| @@ -1,29 +0,0 @@ | ||||
| #ifndef CONFIG_USER_H | ||||
| #define CONFIG_USER_H | ||||
|  | ||||
| #include "../../config.h" | ||||
|  | ||||
| /* | ||||
|  * MIDI options | ||||
|  */ | ||||
|  | ||||
| /* Prevent use of disabled MIDI features in the keymap */ | ||||
| //#define MIDI_ENABLE_STRICT 1 | ||||
|  | ||||
| /* enable basic MIDI features: | ||||
|    - MIDI notes can be sent when in Music mode is on | ||||
| */ | ||||
| #define MIDI_BASIC | ||||
|  | ||||
| /* enable advanced MIDI features: | ||||
|    - MIDI notes can be added to the keymap | ||||
|    - Octave shift and transpose | ||||
|    - Virtual sustain, portamento, and modulation wheel | ||||
|    - etc. | ||||
| */ | ||||
| //#define MIDI_ADVANCED | ||||
|  | ||||
| /* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */ | ||||
| //#define MIDI_TONE_KEYCODE_OCTAVES 2 | ||||
|  | ||||
| #endif | ||||
| @@ -44,13 +44,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  * | Pg Dn| Brite| Ctrl | Alt  | GUI  |Lower |    Space    |Raise | Left | Down |  Up  | Right|   \  | | ||||
|  * `-------------------------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_QWERTY] = { | ||||
|   {KC_TRNS, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, KC_TRNS}, | ||||
|   {KC_TRNS, KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_DEL,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_TRNS}, | ||||
|   {KC_TRNS, KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT,  KC_TRNS}, | ||||
|   {KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, KC_TRNS} | ||||
| }, | ||||
| [_QWERTY] = LAYOUT_ortho_5x14( | ||||
|   KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, | ||||
|   KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_DEL, | ||||
|   KC_ESC,  KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, | ||||
|   KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT, | ||||
|   BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT | ||||
| ), | ||||
|  | ||||
| /* Colemak | ||||
|  * ,-------------------------------------------------------------------------------------------------. | ||||
| @@ -65,13 +65,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  * | Pg Dn| Brite| Ctrl | Alt  | GUI  |Lower |    Space    |Raise | Left | Down |  Up  | Right|   \  | | ||||
|  * `-------------------------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_COLEMAK] = { | ||||
|   {KC_TRNS, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, KC_TRNS}, | ||||
|   {KC_TRNS, KC_TAB,  KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,    KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN, KC_DEL,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_ESC,  KC_A,    KC_R,    KC_S,    KC_T,    KC_D,    KC_H,    KC_N,    KC_E,    KC_I,    KC_O,    KC_QUOT, KC_TRNS}, | ||||
|   {KC_TRNS, KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_K,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT,  KC_TRNS}, | ||||
|   {KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, KC_TRNS} | ||||
| }, | ||||
| [_COLEMAK] = LAYOUT_ortho_5x14( | ||||
|   KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, | ||||
|   KC_TAB,  KC_Q,    KC_W,    KC_F,    KC_P,    KC_G,    KC_J,    KC_G,    KC_J,    KC_L,    KC_U,    KC_Y,    KC_SCLN, KC_DEL, | ||||
|   KC_ESC,  KC_A,    KC_R,    KC_S,    KC_T,    KC_D,    KC_H,    KC_D,    KC_H,    KC_N,    KC_E,    KC_I,    KC_O,    KC_QUOT, | ||||
|   KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_K,    KC_B,    KC_K,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT, | ||||
|   BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT | ||||
| ), | ||||
|  | ||||
| /* Dvorak | ||||
|  * ,-------------------------------------------------------------------------------------------------. | ||||
| @@ -86,13 +86,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  * | Pg Dn| Brite| Ctrl | Alt  | GUI  |Lower |    Space    |Raise | Left | Down |  Up  | Right|   \  | | ||||
|  * `-------------------------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_DVORAK] = { | ||||
|   {KC_TRNS, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, KC_TRNS}, | ||||
|   {KC_TRNS, KC_TAB,  KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_DEL,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_ESC,  KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_H,    KC_T,    KC_N,    KC_S,    KC_SLSH, KC_TRNS}, | ||||
|   {KC_TRNS, KC_LSFT, KC_SCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_B,    KC_M,    KC_W,    KC_V,    KC_Z,    KC_ENT,  KC_TRNS}, | ||||
|   {KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, KC_TRNS} | ||||
| }, | ||||
| [_DVORAK] = LAYOUT_ortho_5x14( | ||||
|   KC_TRNS, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, KC_TRNS, | ||||
|   KC_TRNS, KC_TAB,  KC_QUOT, KC_COMM, KC_DOT,  KC_P,    KC_Y,    KC_F,    KC_G,    KC_C,    KC_R,    KC_L,    KC_DEL,  KC_TRNS, | ||||
|   KC_TRNS, KC_ESC,  KC_A,    KC_O,    KC_E,    KC_U,    KC_I,    KC_D,    KC_H,    KC_T,    KC_N,    KC_S,    KC_SLSH, KC_TRNS, | ||||
|   KC_TRNS, KC_LSFT, KC_SCLN, KC_Q,    KC_J,    KC_K,    KC_X,    KC_B,    KC_M,    KC_W,    KC_V,    KC_Z,    KC_ENT,  KC_TRNS, | ||||
|   KC_TRNS, BACKLIT, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT, KC_TRNS | ||||
| ), | ||||
|  | ||||
| /* Lower | ||||
|  * ,-------------------------------------------------------------------------------------------------. | ||||
| @@ -107,13 +107,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  * |      |      |      |      |      |      |             |      | Next | Vol- | Vol+ | Play |      | | ||||
|  * `-------------------------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_LOWER] = { | ||||
|   {KC_TRNS, KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_TRNS}, | ||||
|   {KC_TRNS, KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS}, | ||||
|   {KC_TRNS, _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______,KC_TRNS}, | ||||
|   {KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_TRNS} | ||||
| }, | ||||
| [_LOWER] = LAYOUT_ortho_5x14( | ||||
|    KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, | ||||
|    KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, | ||||
|    KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F5,   KC_F6,   KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, | ||||
|    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_F11,  KC_F12,S(KC_NUHS),S(KC_NUBS),_______, _______, _______, | ||||
|    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY | ||||
|   ), | ||||
|  | ||||
| /* Raise | ||||
|  * ,-------------------------------------------------------------------------------------------------. | ||||
| @@ -128,13 +128,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  * |      |      |      |      |      |      |             |      | Next | Vol- | Vol+ |      | Play | | ||||
|  * `-------------------------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_RAISE] = { | ||||
|   {KC_TRNS, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, KC_TRNS}, | ||||
|   {KC_TRNS, KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_DEL,  KC_TRNS}, | ||||
|   {KC_TRNS, KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS}, | ||||
|   {KC_TRNS, _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_NUHS, KC_NUBS, _______, _______, _______, KC_TRNS}, | ||||
|   {KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, KC_TRNS} | ||||
| }, | ||||
| [_RAISE] = LAYOUT_ortho_5x14( | ||||
|    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC, | ||||
|    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_DEL, | ||||
|    KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS, | ||||
|    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_F11,  KC_F12,  KC_NUHS, KC_NUBS, _______, _______, _______, | ||||
|    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY | ||||
| ), | ||||
|  | ||||
| /* Adjust (Lower + Raise) | ||||
|  * ,-------------------------------------------------------------------------------------------------. | ||||
| @@ -149,13 +149,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  * |      |      |      |      |      |      |             |      |      |      |      |      |      | | ||||
|  * `-------------------------------------------------------------------------------------------------' | ||||
|  */ | ||||
| [_ADJUST] = { | ||||
|   {KC_TRNS, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_TRNS}, | ||||
|   {KC_TRNS, _______, RESET,   _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,  KC_TRNS}, | ||||
|   {KC_TRNS, _______, _______, _______, AU_ON,   AU_OFF,  AG_NORM, AG_SWAP, QWERTY,  COLEMAK, DVORAK,  _______, _______, KC_TRNS}, | ||||
|   {KC_TRNS, _______, MUV_DE,  MUV_IN,  MU_ON,   MU_OFF,  MI_ON,   MI_OFF,  _______, _______, _______, _______, _______, KC_TRNS}, | ||||
|   {KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS} | ||||
| } | ||||
| [_ADJUST] = LAYOUT_ortho_5x14( | ||||
|    KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,  KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12, | ||||
|    _______, RESET,   _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, | ||||
|    _______, _______, _______, AU_ON,   AU_OFF,  AG_NORM, AG_SWAP, AG_NORM, AG_SWAP, QWERTY,  COLEMAK, DVORAK,  _______, _______, | ||||
|    _______, MUV_DE,  MUV_IN,  MU_ON,   MU_OFF,  MI_ON,   MI_OFF,  MI_ON,   MI_OFF,  _______, _______, _______, _______, _______, | ||||
|    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||||
| ) | ||||
|  | ||||
|  | ||||
| }; | ||||
|   | ||||
| @@ -1,69 +1,22 @@ | ||||
| # project specific files | ||||
| #SRC = matrix.c | ||||
|  | ||||
|  | ||||
| # MCU name | ||||
| MCU = at90usb1286 | ||||
|  | ||||
| # 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) | ||||
|  | ||||
| # Interrupt driven control endpoint task(+60) | ||||
| OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT | ||||
|  | ||||
|  | ||||
| # Boot Section Size in *bytes* | ||||
| #   Teensy halfKay   512 | ||||
| #   Teensy++ halfKay 1024 | ||||
| #   Atmel DFU loader 4096 | ||||
| #   LUFA bootloader  4096 | ||||
| #   USBaspLoader     2048 | ||||
| OPT_DEFS += -DBOOTLOADER_SIZE=8192 | ||||
| # Cortex version | ||||
| MCU  = STM32F303 | ||||
|  | ||||
| # Build Options | ||||
| #   change to "no" to disable the options, or define them in the Makefile in  | ||||
| #   the appropriate keymap folder that will get included automatically | ||||
| #   comment out to disable the options. | ||||
| # | ||||
| BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000) | ||||
| MOUSEKEY_ENABLE = no       # Mouse keys(+4700) | ||||
| EXTRAKEY_ENABLE = yes       # Audio control and System control(+450) | ||||
| CONSOLE_ENABLE = no         # Console for debug(+400) | ||||
| COMMAND_ENABLE = no        # 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 = yes            # MIDI controls | ||||
| AUDIO_ENABLE = yes           # Audio output on port C6 | ||||
| UNICODE_ENABLE = no         # Unicode | ||||
| BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID | ||||
| RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight. | ||||
| API_SYSEX_ENABLE = 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 | ||||
| BACKLIGHT_ENABLE = no | ||||
| BOOTMAGIC_ENABLE = yes  # Virtual DIP switch configuration | ||||
| ## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.) | ||||
| MOUSEKEY_ENABLE = yes # Mouse keys | ||||
| EXTRAKEY_ENABLE = yes # Audio control and System control | ||||
| CONSOLE_ENABLE = yes  # Console for debug | ||||
| COMMAND_ENABLE = yes    # Commands for debug and configuration | ||||
| #SLEEP_LED_ENABLE = yes  # Breathing sleep LED during USB suspend | ||||
| NKRO_ENABLE = yes     # USB Nkey Rollover | ||||
| #CUSTOM_MATRIX = yes # Custom matrix file | ||||
| AUDIO_ENABLE = yes | ||||
| RGBLIGHT_ENABLE = no | ||||
| # SERIAL_LINK_ENABLE = yes | ||||
|   | ||||
| @@ -3,4 +3,25 @@ | ||||
|  | ||||
| #include "quantum.h" | ||||
|  | ||||
| #endif | ||||
|  | ||||
| #define LAYOUT_ortho_5x14( \ | ||||
|     k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \ | ||||
|     k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \ | ||||
|     k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ | ||||
|     k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, \ | ||||
|     k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \ | ||||
| ) \ | ||||
| { \ | ||||
|     { k00, k01, k02, k03, k04, k05, KC_NO, KC_NO }, \ | ||||
|     { k10, k11, k12, k13, k14, k15, KC_NO, KC_NO }, \ | ||||
|     { k20, k21, k22, k23, k24, k25, KC_NO, KC_NO }, \ | ||||
|     { k30, k31, k32, k33, k34, k35, KC_NO, KC_NO }, \ | ||||
|     { k06, k07, k08, k09, k0a, k0b, k0c,   k0d }, \ | ||||
|     { k16, k17, k18, k19, k1a, k1b, k1c,   k1d }, \ | ||||
|     { k26, k27, k28, k29, k2a, k2b, k2c,   k2d }, \ | ||||
|     { k36, k37, k38, k39, k3a, k3b, k3c,   k3d }, \ | ||||
|     { k40, k41, k42, k49, k4a, k4b, k4c,   k4d }, \ | ||||
|     { k46, k47, k48, k43, k44, k45, KC_NO, KC_NO }, \ | ||||
| } | ||||
|  | ||||
| #endif | ||||
|   | ||||
							
								
								
									
										70
									
								
								quantum/mcu_selection.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								quantum/mcu_selection.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
|  | ||||
| ifneq ($(findstring STM32, $(MCU)),) | ||||
|   ## chip/board settings | ||||
|   # - the next two should match the directories in | ||||
|   #   <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) | ||||
|   MCU_FAMILY ?= STM32 | ||||
|   MCU_SERIES ?= STM32F3xx | ||||
|  | ||||
|   # Linker script to use | ||||
|   # - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/ | ||||
|   #   or <this_dir>/ld/ | ||||
|   MCU_LDSCRIPT ?= STM32F303xC | ||||
|  | ||||
|   # Startup code to use | ||||
|   #  - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/ | ||||
|   MCU_STARTUP ?= stm32f3xx | ||||
|  | ||||
|   # Board: it should exist either in <chibios>/os/hal/boards/ | ||||
|   #  or <this_dir>/boards | ||||
|   BOARD ?= GENERIC_STM32_F303XC | ||||
|  | ||||
|   # Cortex version | ||||
|   MCU = cortex-m4 | ||||
|  | ||||
|   # ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7 | ||||
|   ARMV ?= 7 | ||||
|  | ||||
|   USE_FPU = yes | ||||
|  | ||||
|   # Vector table for application | ||||
|   # 0x00000000-0x00001000 area is occupied by bootlaoder.*/ | ||||
|   # The CORTEX_VTOR... is needed only for MCHCK/Infinity KB | ||||
|   # OPT_DEFS = -DCORTEX_VTOR_INIT=0x08005000 | ||||
|  | ||||
|   # Options to pass to dfu-util when flashing | ||||
|   DFU_ARGS ?= -d 0483:df11 -a 0 -s 0x08000000:leave | ||||
| endif | ||||
|  | ||||
| ifeq ($(strip $(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) | ||||
| endif | ||||
							
								
								
									
										35
									
								
								quantum/stm32/proton_c.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								quantum/stm32/proton_c.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| ## chip/board settings | ||||
| # - the next two should match the directories in | ||||
| #   <chibios>/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) | ||||
| MCU_FAMILY = STM32 | ||||
| MCU_SERIES = STM32F3xx | ||||
|  | ||||
| # Linker script to use | ||||
| # - it should exist either in <chibios>/os/common/ports/ARMCMx/compilers/GCC/ld/ | ||||
| #   or <this_dir>/ld/ | ||||
| MCU_LDSCRIPT = STM32F303xC | ||||
|  | ||||
| # Startup code to use | ||||
| #  - it should exist in <chibios>/os/common/startup/ARMCMx/compilers/GCC/mk/ | ||||
| MCU_STARTUP = stm32f3xx | ||||
|  | ||||
| # Board: it should exist either in <chibios>/os/hal/boards/ | ||||
| #  or <this_dir>/boards | ||||
| BOARD = GENERIC_STM32_F303XC | ||||
|  | ||||
| # Cortex version | ||||
| MCU  = cortex-m4 | ||||
|  | ||||
| # ARM version, CORTEX-M0/M1 are 6, CORTEX-M3/M4/M7 are 7 | ||||
| ARMV = 7 | ||||
|  | ||||
| USE_FPU = yes | ||||
|  | ||||
| # Vector table for application | ||||
| # 0x00000000-0x00001000 area is occupied by bootlaoder.*/ | ||||
| # The CORTEX_VTOR... is needed only for MCHCK/Infinity KB | ||||
| # OPT_DEFS = -DCORTEX_VTOR_INIT=0x08005000 | ||||
| OPT_DEFS = | ||||
|  | ||||
| # Options to pass to dfu-util when flashing | ||||
| DFU_ARGS = -d 0483:df11 -a 0 -s 0x08000000:leave | ||||
		Reference in New Issue
	
	Block a user