Skip to content

Commit

Permalink
Keymap: Update for Drashna code - Proton C Prep Edition (#4708)
Browse files Browse the repository at this point in the history
* Make CRKBD keylogger output actually show tap keys

* check MT/LT for twinkling

* Add ortho 5x12 support for fractal keyboard

* Use newer interface for setting pins/ports

* Remove custom unicode methods

* Reomve unicode input info

* Odd rules issue

* Redefine REST note to be more pleasing

* Properly disable PM LEDs with GPIO commands

* Update gitlab CI yaml file

* Remove extra mod tap check

* Remove initial state on ergodox glow

* Rev6 Cleanup

* Fix KC_MAKE macro

* Update GitLab CI yaml file

* More GitLab CI changes

* One final GitLab CI change

* Remove unneeded unicode support

* Optimize KC_MAKE
  • Loading branch information
drashna authored and mechmerlin committed Dec 31, 2018
1 parent 7f0def7 commit 4038308
Show file tree
Hide file tree
Showing 19 changed files with 324 additions and 178 deletions.
12 changes: 7 additions & 5 deletions keyboards/crkbd/keymaps/drashna/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -93,11 +93,13 @@ void matrix_init_keymap(void) {
iota_gfx_init(!has_usb()); // turns on the display
#endif

DDRD &= ~(1<<5);
PORTD &= ~(1<<5);
#ifndef CONVERT_TO_PROTON_C
setPinOutput(D5);
writePinHigh(D5);

DDRB &= ~(1<<0);
PORTB &= ~(1<<0);
setPinOutput(B0);
writePinHigh(B0);
#endif
}

//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
Expand Down Expand Up @@ -126,10 +128,10 @@ const char code_to_name[60] = {

void set_keylog(uint16_t keycode, keyrecord_t *record) {
char name = ' ';
if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { keycode = keycode & 0xFF; }
if (keycode < 60) {
name = code_to_name[keycode];
}

// update keylog
snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c",
record->event.key.row, record->event.key.col,
Expand Down
10 changes: 6 additions & 4 deletions keyboards/iris/keymaps/drashna/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -89,9 +89,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {


void matrix_init_keymap(void) {
DDRD &= ~(1<<5);
PORTD &= ~(1<<5);
#ifndef CONVERT_TO_PROTON_C
setPinOutput(D5);
writePinHigh(D5);

DDRB &= ~(1<<0);
PORTB &= ~(1<<0);
setPinOutput(B0);
writePinHigh(B0);
#endif
}
10 changes: 6 additions & 4 deletions keyboards/orthodox/keymaps/drashna/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
};

void matrix_init_keymap(void) {
DDRD &= ~(1<<5);
PORTD &= ~(1<<5);
#ifndef CONVERT_TO_PROTON_C
setPinOutput(D5);
writePinHigh(D5);

DDRB &= ~(1<<0);
PORTB &= ~(1<<0);
setPinOutput(B0);
writePinHigh(B0);
#endif
}
11 changes: 7 additions & 4 deletions keyboards/viterbi/keymaps/drashna/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -87,10 +87,13 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {




void matrix_init_keymap(void) {
DDRD &= ~(1<<5);
PORTD &= ~(1<<5);
#ifndef CONVERT_TO_PROTON_C
setPinOutput(D5);
writePinHigh(D5);

DDRB &= ~(1<<0);
PORTB &= ~(1<<0);
setPinOutput(B0);
writePinHigh(B0);
#endif
}
10 changes: 2 additions & 8 deletions layouts/community/ergodox/drashna/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#ifdef UNICODEMAP_ENABLE
#include "drashna_unicode.h"
#endif // UNICODEMAP_ENABLE
extern uint8_t input_mode;

#ifdef RGB_MATRIX_ENABLE
extern bool g_suspend_state;
Expand Down Expand Up @@ -425,17 +424,12 @@ void rgb_matrix_indicators_user(void) {
}

void matrix_init_keymap(void) {
#if 0
#ifdef RGB_MATRIX_KEYPRESSES
rgblight_mode(RGB_MATRIX_MULTISPLASH);
#else
rgblight_mode(RGB_MATRIX_RAINBOW_MOVING_CHEVRON);
#endif

input_mode = 2;
}

#else
void matrix_init_keymap(void) {
input_mode = 2;
#endif
}
#endif //RGB_MATRIX_INIT
2 changes: 1 addition & 1 deletion layouts/community/ergodox/drashna/rules.mk
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
TAP_DANCE_ENABLE = yes
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
COMMAND_ENABLE = yes # Commands for debug and configuration
COMMAND_ENABLE = no # Commands for debug and configuration
ifneq (,$(findstring ergodox_ez,$(KEYBOARD)))
RGBLIGHT_ENABLE = yes
RGB_MATRIX_ENABLE = no
Expand Down
2 changes: 2 additions & 0 deletions layouts/community/ergodox/drashna_glow/rules.mk
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@ ifneq (,$(findstring ergodox_ez,$(KEYBOARD)))
RGBLIGHT_ENABLE = no
RGB_MATRIX_ENABLE = yes
endif

COMMAND_ENABLE = no
5 changes: 1 addition & 4 deletions layouts/community/ortho_4x12/drashna/config.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#pragma once


#if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM)
Expand Down Expand Up @@ -61,5 +60,3 @@

/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2

#endif
13 changes: 12 additions & 1 deletion layouts/community/ortho_4x12/drashna/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_MAKE, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, KC_RST,
VRSN, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, EEP_RST,
_______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NUKE
)


Expand Down Expand Up @@ -219,4 +219,15 @@ void rgb_matrix_indicators_user(void) {
void matrix_init_keymap(void) {
rgblight_mode(RGB_MATRIX_MULTISPLASH);
}
#else //RGB_MATRIX_INIT

void matrix_init_keymap(void) {
#ifndef CONVERT_TO_PROTON_C
setPinOutput(D5);
writePinHigh(D5);

setPinOutput(B0);
writePinHigh(B0);
#endif
}
#endif //RGB_MATRIX_INIT
16 changes: 16 additions & 0 deletions layouts/community/ortho_5x12/drashna/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#pragma once


/* ws2812 RGB LED */
#if defined(KEYBOARD_fractal)
#define RGB_DI_PIN D2
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 29 // Number of LEDs
#undef RGBLIGHT_HUE_STEP
#define RGBLIGHT_HUE_STEP 8
#undef RGBLIGHT_SAT_STEP
#define RGBLIGHT_SAT_STEP 8
#undef RGBLIGHT_VAL_STEP
#define RGBLIGHT_VAL_STEP 8
#endif
156 changes: 156 additions & 0 deletions layouts/community/ortho_5x12/drashna/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
/* Copyright 2015-2017 Jack Humbert
* Modified by KeyPCB for the Fractal keyboard
* Backlight isn't on the Fractal, so I've removed the keycode from the keymaps
*
* 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/>.
*/

#include QMK_KEYBOARD_H
#include "drashna.h"

#define LAYOUT_ortho_5x12_base( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, \
K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A \
) \
LAYOUT_ortho_5x12_wrapper( \
KC_GRV, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \
KC_TAB, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_BSPC, \
KC_ESC, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_QUOT, \
KC_MLSF, CTL_T(K31), K32, K33, K34, K35, K36, K37, K38, K39, CTL_T(K3A), KC_ENT, \
KC_NO, OS_LCTL, OS_LALT, OS_LGUI, SP_LWER, BK_LWER, DL_RAIS, ET_RAIS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT \
)
#define LAYOUT_ortho_5x12_base_wrapper(...) LAYOUT_ortho_5x12_base(__VA_ARGS__)


const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

[_QWERTY] = LAYOUT_ortho_5x12_base_wrapper(
________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
_________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
_________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
_________________QWERTY_L3_________________, _________________QWERTY_R3_________________
),

[_COLEMAK] = LAYOUT_ortho_5x12_base_wrapper(
________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
_________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
_________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
_________________COLEMAK_L3________________, _________________COLEMAK_R3________________
),

[_DVORAK] = LAYOUT_ortho_5x12_base_wrapper(
________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
_________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
_________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
_________________DVORAK_L3_________________, _________________DVORAK_R3_________________
),

[_WORKMAN] = LAYOUT_ortho_5x12_base_wrapper(
________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________,
_________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
_________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________
),

[_MODS] = LAYOUT_ortho_5x12_wrapper(
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
KC_LSFT, ___________________BLANK___________________, ___________________BLANK___________________, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),

/* Lower
* ,-----------------------------------------------------------------------------------.
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | Next | Vol- | Vol+ | Play |
* `-----------------------------------------------------------------------------------'
*/
[_LOWER] = LAYOUT_ortho_5x12_wrapper( \
_______, ___________________BLANK___________________, ___________________BLANK___________________, _______,
KC_TILD, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_PIPE,
KC_DEL, _________________LOWER_L2__________________, _________________LOWER_R2__________________, _______,
_______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
),

/* Raise
* ,-----------------------------------------------------------------------------------.
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | Next | Vol- | Vol+ | Play |
* `-----------------------------------------------------------------------------------'
*/
[_RAISE] = LAYOUT_ortho_5x12_wrapper( \
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_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______,
KC_DEL, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS,
_______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______,
_______, _______, _______, _______, _______, _______, _______, _________________RAISE_R3__________________
),

/* Adjust (Lower + Raise)
* ,-----------------------------------------------------------------------------------.
* | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | Reset| | | | | | | | | | Del |
* |------+------+------+------+------+-------------+------+------+------+------+------|
* | | | |Aud on|AudOff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
* |------+------+------+------+------+------|------+------+------+------+------+------|
* | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
* |------+------+------+------+------+------+------+------+------+------+------+------|
* | | | | | | | | | | | |
* `-----------------------------------------------------------------------------------'
*/
[_ADJUST] = LAYOUT_ortho_5x12_wrapper( \
KC_MAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RST,
VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EEP_RST,
_______, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, _______,
_______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)


};

bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
}
return true;
};

void matrix_init_keymap(void) {
#ifdef KEYBOARD_fractal
setPinOutput(D5);
writePinHigh(D5);

setPinOutput(B0);
writePinHigh(B0);
#endif
}
23 changes: 23 additions & 0 deletions layouts/community/ortho_5x12/drashna/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
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
TAP_DANCE_ENABLE = no
AUDIO_ENABLE = yes
ifneq (,$(findstring fractal,$(KEYBOARD))) # Make sure it IS the Planck Light
RGB_MATRIX_ENABLE = no
AUDIO_ENABLE = no
RGBLIGHT_ENABLE = yes
RGBLIGHT_TWINKLE = yes
BOOTLOADER = qmk-dfu
endif

ifeq ($(strip $(PROTOCOL)), VUSB)
NKRO_ENABLE = no
else
NKRO_ENABLE = yes
endif


MACROS_ENABLED = no
Loading

0 comments on commit 4038308

Please sign in to comment.