add alphadox layouts to atreus and ergodox
This commit is contained in:
		
							parent
							
								
									2e2b9962cd
								
							
						
					
					
						commit
						22cb73fad3
					
				
					 5 changed files with 268 additions and 0 deletions
				
			
		
							
								
								
									
										80
									
								
								keyboards/atreus/keymaps/alphadox/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								keyboards/atreus/keymaps/alphadox/config.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,80 @@
 | 
			
		|||
/*
 | 
			
		||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
 | 
			
		||||
 | 
			
		||||
This program is free software: you can redistribute it and/or modify
 | 
			
		||||
it under the terms of the GNU General Public License as published by
 | 
			
		||||
the Free Software Foundation, either version 2 of the License, or
 | 
			
		||||
(at your option) any later version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful,
 | 
			
		||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License
 | 
			
		||||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
#ifndef CONFIG_H
 | 
			
		||||
#define CONFIG_H
 | 
			
		||||
 | 
			
		||||
#include "config_common.h"
 | 
			
		||||
 | 
			
		||||
/* USB Device descriptor parameter */
 | 
			
		||||
 | 
			
		||||
#define VENDOR_ID       0xFEED
 | 
			
		||||
#define PRODUCT_ID      0x6060
 | 
			
		||||
#define DEVICE_VER      0x0001
 | 
			
		||||
#define MANUFACTURER    Arbitrary Definitions
 | 
			
		||||
#define PRODUCT         Planckeus
 | 
			
		||||
#define DESCRIPTION     q.m.k. keyboard firmware for Planckeus
 | 
			
		||||
 | 
			
		||||
/* key matrix size */
 | 
			
		||||
#define MATRIX_ROWS 4
 | 
			
		||||
#define MATRIX_COLS 11
 | 
			
		||||
 | 
			
		||||
#define MATRIX_ROW_PINS { D0, D1, D2, D3 }
 | 
			
		||||
#define MATRIX_COL_PINS { F6, F5, F4, F1, F0, F7, B0, B1, B2, B3, B7 }
 | 
			
		||||
#define UNUSED_PINS
 | 
			
		||||
 | 
			
		||||
/* COL2ROW or ROW2COL */
 | 
			
		||||
#define DIODE_DIRECTION COL2ROW
 | 
			
		||||
 | 
			
		||||
/* define if matrix has ghost */
 | 
			
		||||
//#define MATRIX_HAS_GHOST
 | 
			
		||||
 | 
			
		||||
/* number of backlight levels */
 | 
			
		||||
//#define BACKLIGHT_LEVELS 3
 | 
			
		||||
 | 
			
		||||
/* Set 0 if debouncing isn't needed */
 | 
			
		||||
#define DEBOUNCING_DELAY 5
 | 
			
		||||
 | 
			
		||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
 | 
			
		||||
#define LOCKING_SUPPORT_ENABLE
 | 
			
		||||
/* Locking resynchronize hack */
 | 
			
		||||
#define LOCKING_RESYNC_ENABLE
 | 
			
		||||
 | 
			
		||||
/* key combination for command */
 | 
			
		||||
#define IS_COMMAND() ( \
 | 
			
		||||
    keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Feature disable options
 | 
			
		||||
 *  These options are also useful to firmware size reduction.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
/* disable debug print */
 | 
			
		||||
//#define NO_DEBUG
 | 
			
		||||
 | 
			
		||||
/* disable print */
 | 
			
		||||
//#define NO_PRINT
 | 
			
		||||
 | 
			
		||||
/* disable action features */
 | 
			
		||||
//#define NO_ACTION_LAYER
 | 
			
		||||
//#define NO_ACTION_TAPPING
 | 
			
		||||
//#define NO_ACTION_ONESHOT
 | 
			
		||||
//#define NO_ACTION_MACRO
 | 
			
		||||
//#define NO_ACTION_FUNCTION
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										50
									
								
								keyboards/atreus/keymaps/alphadox/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								keyboards/atreus/keymaps/alphadox/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,50 @@
 | 
			
		|||
#include "atreus.h"
 | 
			
		||||
 | 
			
		||||
#define BASE 0
 | 
			
		||||
#define SYMB 1
 | 
			
		||||
#define ETC 2
 | 
			
		||||
 | 
			
		||||
enum macro_id {
 | 
			
		||||
    TEENSY,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
[BASE] = KEYMAP(
 | 
			
		||||
    KC_Q,          KC_W,    KC_D,     KC_F,           KC_K,                                              KC_J,             KC_U,            KC_R,     KC_L,     KC_SCLN,
 | 
			
		||||
    LT(ETC,KC_A),  KC_S,    KC_E,     KC_T,           KC_G,                                              KC_Y,             KC_N,            KC_I,     KC_O,     KC_H,
 | 
			
		||||
    SFT_T(KC_Z),   KC_X,    KC_C,     KC_V,           KC_B,                                              KC_P,             KC_M,            KC_COMM,  KC_DOT,   SFT_T(KC_SLSH),
 | 
			
		||||
    KC_GRV,        KC_DEL,  KC_LALT,  GUI_T(KC_TAB),  LT(SYMB,KC_BSPC),  CTL_T(KC_ESC),  SFT_T(KC_ENT),  LT(SYMB,KC_SPC),  GUI_T(KC_LEFT),  KC_DOWN,  KC_UP,    LCAG_T(KC_RGHT)
 | 
			
		||||
),
 | 
			
		||||
 | 
			
		||||
[SYMB] = KEYMAP(
 | 
			
		||||
    KC_EXLM,  KC_AT,    KC_LCBR,  KC_RCBR,  KC_PIPE,                      KC_EQL,   KC_7,  KC_8,   KC_9,    KC_PLUS,
 | 
			
		||||
    KC_HASH,  KC_DLR,   KC_LPRN,  KC_RPRN,  KC_BSLS,                      KC_MINS,  KC_4,  KC_5,   KC_6,    KC_QUOT,
 | 
			
		||||
    KC_PERC,  KC_CIRC,  KC_LBRC,  KC_RBRC,  KC_ASTR,                      KC_UNDS,  KC_1,  KC_2,   KC_3,    KC_DQUO,
 | 
			
		||||
    KC_TILD,  KC_AMPR,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_0,  KC_NO,  KC_DOT,  KC_TRNS
 | 
			
		||||
),
 | 
			
		||||
 | 
			
		||||
[ETC] = KEYMAP(
 | 
			
		||||
    RESET,         KC_NO,  KC_NO,    KC_NO,    KC_PGUP,                      KC_VOLU,  KC_F7,  KC_F8,  KC_F9,   KC_HOME,
 | 
			
		||||
    LT(ETC,KC_A),  KC_NO,  KC_NO,    KC_NO,    KC_PGDN,                      KC_VOLD,  KC_F4,  KC_F5,  KC_F6,   KC_END,
 | 
			
		||||
    KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_DEL,                       KC_MUTE,  KC_F1,  KC_F2,  KC_F3,   KC_INS,
 | 
			
		||||
    KC_TRNS,       KC_NO,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_TRNS,  KC_NO,  KC_NO,  KC_NO,   KC_NO
 | 
			
		||||
),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case TEENSY:
 | 
			
		||||
      clear_keyboard();
 | 
			
		||||
      print("\n\nJump to bootloader... ");
 | 
			
		||||
      _delay_ms(250);
 | 
			
		||||
      bootloader_jump(); // should not return
 | 
			
		||||
      print("not supported.\n");
 | 
			
		||||
      break;
 | 
			
		||||
  }
 | 
			
		||||
  return MACRO_NONE;
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										17
									
								
								keyboards/ergodox/keymaps/alphadox/Makefile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/ergodox/keymaps/alphadox/Makefile
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
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      = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ # nkro-doesnt-work
 | 
			
		||||
BACKLIGHT_ENABLE = no  # 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  = no  # Enable WS2812 RGB underlight.  Do not enable this with audio at the same time.
 | 
			
		||||
SLEEP_LED_ENABLE = no  # Breathing sleep LED during USB suspend
 | 
			
		||||
 | 
			
		||||
ifndef QUANTUM_DIR
 | 
			
		||||
	include ../../../../Makefile
 | 
			
		||||
endif
 | 
			
		||||
							
								
								
									
										9
									
								
								keyboards/ergodox/keymaps/alphadox/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								keyboards/ergodox/keymaps/alphadox/config.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,9 @@
 | 
			
		|||
#ifndef CONFIG_USER_H
 | 
			
		||||
#define CONFIG_USER_H
 | 
			
		||||
 | 
			
		||||
#include "../../config.h"
 | 
			
		||||
 | 
			
		||||
#define FORCE_NKRO
 | 
			
		||||
#define PREVENT_STUCK_MODIFIERS
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										112
									
								
								keyboards/ergodox/keymaps/alphadox/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								keyboards/ergodox/keymaps/alphadox/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,112 @@
 | 
			
		|||
#include "ergodox.h"
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
 | 
			
		||||
#define BASE 0 // default layer
 | 
			
		||||
#define SYMB 1 // symbols
 | 
			
		||||
#define ETC  2 // etc
 | 
			
		||||
 | 
			
		||||
enum macro_id {
 | 
			
		||||
    TEENSY,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
 | 
			
		||||
[BASE] = KEYMAP(
 | 
			
		||||
    KC_NO,          KC_NO,         KC_NO,   KC_NO,    KC_NO,          KC_NO,  KC_NO,
 | 
			
		||||
    KC_TAB,         KC_Q,          KC_W,    KC_D,     KC_F,           KC_K,   KC_PGUP,
 | 
			
		||||
    CTL_T(KC_ESC),  LT(ETC,KC_A),  KC_S,    KC_E,     KC_T,           KC_G,
 | 
			
		||||
    KC_LSFT,        KC_Z,          KC_X,    KC_C,     KC_V,           KC_B,   KC_PGDN,
 | 
			
		||||
    KC_GRV,         KC_DEL,        KC_DEL,  KC_LALT,  GUI_T(KC_TAB),
 | 
			
		||||
                                                                      KC_NO,  KC_NO,
 | 
			
		||||
                                                                              KC_NO,
 | 
			
		||||
                                           LT(SYMB,KC_BSPC),  CTL_T(KC_ESC),  KC_NO,
 | 
			
		||||
 | 
			
		||||
    KC_NO,    KC_NO,  KC_NO,          KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
    KC_VOLU,  KC_J,   KC_U,           KC_R,     KC_L,     KC_SCLN,  KC_BSLS,
 | 
			
		||||
              KC_Y,   KC_N,           KC_I,     KC_O,     KC_H,     KC_QUOT,
 | 
			
		||||
    KC_VOLD,  KC_P,   KC_M,           KC_COMM,  KC_DOT,   KC_SLSH,  KC_RSFT,
 | 
			
		||||
                      GUI_T(KC_TAB),  KC_LEFT,  KC_DOWN,  KC_UP,    LCAG_T(KC_RGHT),
 | 
			
		||||
    KC_NO,  KC_NO,
 | 
			
		||||
    KC_NO,
 | 
			
		||||
    KC_NO,  SFT_T(KC_ENT),  LT(SYMB,KC_SPC)
 | 
			
		||||
),
 | 
			
		||||
 | 
			
		||||
[SYMB] = KEYMAP(
 | 
			
		||||
    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_EXLM,  KC_AT,    KC_LCBR,  KC_RCBR,  KC_PIPE,  KC_TRNS,
 | 
			
		||||
    KC_TRNS,  KC_HASH,  KC_DLR,   KC_LPRN,  KC_RPRN,  KC_BSLS,
 | 
			
		||||
    KC_TRNS,  KC_PERC,  KC_CIRC,  KC_LBRC,  KC_RBRC,  KC_ASTR,  KC_TRNS,
 | 
			
		||||
    KC_TILD,  KC_AMPR,  KC_AMPR,  KC_TRNS,  KC_TRNS,
 | 
			
		||||
                                                      KC_TRNS,  KC_TRNS,
 | 
			
		||||
                                                                KC_TRNS,
 | 
			
		||||
                                              KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
 | 
			
		||||
    KC_NO,    KC_NO,    KC_NO,  KC_NO,  KC_NO,   KC_NO,    KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_EQL,   KC_7,   KC_8,   KC_9,    KC_PLUS,  KC_NO,
 | 
			
		||||
              KC_MINS,  KC_4,   KC_5,   KC_6,    KC_QUOT,  KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_UNDS,  KC_1,   KC_2,   KC_3,    KC_DQUO,  KC_TRNS,
 | 
			
		||||
                        KC_0,   KC_NO,  KC_DOT,  KC_TRNS,  KC_TRNS,
 | 
			
		||||
    KC_TRNS,  KC_TRNS,
 | 
			
		||||
    KC_TRNS,
 | 
			
		||||
    KC_TRNS,  KC_TRNS,  KC_TRNS
 | 
			
		||||
),
 | 
			
		||||
 | 
			
		||||
[ETC] = KEYMAP(
 | 
			
		||||
    RESET,    KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_NO,    KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_PGUP,  KC_TRNS,
 | 
			
		||||
    KC_TRNS,  LT(ETC,KC_A),  KC_NO,  KC_NO,    KC_NO,    KC_PGDN,
 | 
			
		||||
    KC_TRNS,  KC_NO,         KC_NO,  KC_NO,    KC_NO,    KC_DEL,   KC_TRNS,
 | 
			
		||||
    KC_TRNS,  KC_TRNS,       KC_NO,  KC_TRNS,  KC_TRNS,
 | 
			
		||||
                                                         KC_TRNS,  KC_TRNS,
 | 
			
		||||
                                                                   KC_TRNS,
 | 
			
		||||
                                                 KC_TRNS, KC_TRNS, KC_TRNS,
 | 
			
		||||
 | 
			
		||||
    KC_NO,    KC_NO,    KC_NO,  KC_NO,  KC_NO,   KC_NO,    KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_VOLU,  KC_F7,  KC_F8,  KC_F9,   KC_HOME,  KC_NO,
 | 
			
		||||
              KC_VOLD,  KC_F4,  KC_F5,  KC_F6,   KC_END,   KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_MUTE,  KC_F1,  KC_F2,  KC_F3,   KC_INS,   KC_TRNS,
 | 
			
		||||
                        KC_NO,  KC_NO,  KC_NO,   KC_NO,    KC_NO,
 | 
			
		||||
    KC_TRNS,  KC_TRNS,
 | 
			
		||||
    KC_TRNS,
 | 
			
		||||
    KC_TRNS,  KC_TRNS,  KC_TRNS
 | 
			
		||||
),
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM fn_actions[] = {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
 | 
			
		||||
  switch(id) {
 | 
			
		||||
    case TEENSY:
 | 
			
		||||
      clear_keyboard();
 | 
			
		||||
      print("\n\nJump to bootloader... ");
 | 
			
		||||
      _delay_ms(250);
 | 
			
		||||
      bootloader_jump(); // should not return
 | 
			
		||||
      print("not supported.\n");
 | 
			
		||||
      break;
 | 
			
		||||
  }
 | 
			
		||||
  return MACRO_NONE;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
void matrix_init_user(void) {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
void matrix_scan_user(void) {
 | 
			
		||||
    uint8_t layer = biton32(layer_state);
 | 
			
		||||
 | 
			
		||||
    ergodox_board_led_off();
 | 
			
		||||
    ergodox_right_led_1_off();
 | 
			
		||||
    ergodox_right_led_2_off();
 | 
			
		||||
    ergodox_right_led_3_off();
 | 
			
		||||
    switch (layer) {
 | 
			
		||||
        case 1:
 | 
			
		||||
            ergodox_right_led_1_on();
 | 
			
		||||
            break;
 | 
			
		||||
        case 2:
 | 
			
		||||
            ergodox_right_led_2_on();
 | 
			
		||||
            break;
 | 
			
		||||
        default:
 | 
			
		||||
            break;
 | 
			
		||||
    }
 | 
			
		||||
};
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue