Skip to content

Commit

Permalink
Add temporary code to Helix keyboard 'five_rows' keymap to test rgbli…
Browse files Browse the repository at this point in the history
…ght.c .
  • Loading branch information
mtei committed Mar 22, 2019
1 parent 95388ef commit 0bf81a4
Show file tree
Hide file tree
Showing 7 changed files with 143 additions and 26 deletions.
8 changes: 4 additions & 4 deletions keyboards/helix/rev2/keymaps/five_rows/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
//#define RGBLIGHT_EFFECT_SNAKE
//#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
//#define RGBLIGHT_EFFECT_RGB_TEST
//#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_ALTERNATING
#endif

#endif /* CONFIG_USER_H */
38 changes: 32 additions & 6 deletions keyboards/helix/rev2/keymaps/five_rows/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,12 @@ extern uint8_t is_master;
// entirely and just use numbers.
enum layer_number {
_QWERTY = 0,
#if 0
_COLEMAK,
_DVORAK,
_EUCALYN,
_KEYPAD,
#endif
_AUX,
_KAUX,
_LOWER,
Expand Down Expand Up @@ -91,6 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LOWER, LOWER, CAPS, LALT, LGUI, SPC, RABS, RAEN, SPC, RGUI, RALT, APP,LOWER, LOWER \
),

#if 0
/* Colemak
* ,-----------------------------------------. ,-----------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp |
Expand All @@ -111,7 +114,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LSFT, Z, X, C, V, B, GRV, QUOT, K, M, COMM, DOT, SLSH, RSFT, \
LOWER, LOWER, CAPS, LALT, LGUI, SPC, RABS, RAEN, SPC, RGUI, RALT, APP,LOWER, LOWER \
),

#endif
/* Dvorak
* ,-----------------------------------------. ,-----------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp |
Expand All @@ -125,14 +128,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
* `-------------------------------------------------------------------------------------------------'
*/
#if 0
[_DVORAK] = LAYOUT_kc( \
ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSPC, \
TAB, QUOT, COMM, DOT, P, Y, F, G, C, R, L, BSLS, \
LCTL, A, O, E, U, I, D, H, T, N, S, RCTL, \
LSFT, SCLN, Q, J, K, X, GRV, SLSH, B, M, W, V, Z, RSFT, \
LOWER, LOWER, CAPS, LALT, LGUI, SPC, RABS, RAEN, SPC, RGUI, RALT, APP,LOWER, LOWER \
),

#endif
/* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout)
* ,-----------------------------------------. ,-----------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Bksp |
Expand All @@ -146,14 +150,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |Lower | Lower| Caps | Alt | GUI | Space| BS | Enter| Space| GUI | Alt | Menu |Lower |Lower |
* `-------------------------------------------------------------------------------------------------'
*/
#if 0
[_EUCALYN] = LAYOUT_kc( \
ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSPC, \
TAB, Q, W, COMM, DOT, SCLN, M, R, D, Y, P, BSLS, \
LCTL, A, O, E, I, U, G, T, K, S, N, RCTL, \
LSFT, Z, X, C, V, F, GRV, QUOT, B, H, J, L, SLSH, RSFT, \
LOWER, LOWER, CAPS, LALT, LGUI, SPC, RABS, RAEN, SPC, RGUI, RALT, APP,LOWER, LOWER \
),

#endif
/* Keypad
* ,-----------------------------------------. ,-----------------------------------------.
* | Tab | / | * | Del | F1 | F6 | | F1 | F6 | Del | Tab | / | * |
Expand All @@ -167,14 +172,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | 0 | , | . | Enter| F5 | F10 | F12 | F12 | F5 | F10 | Enter| 0 | , | . |
* `-------------------------------------------------------------------------------------------------'
*/
#if 0
[_KEYPAD] = LAYOUT_kc( \
TAB, PSLS, PAST, DEL, F1, F6, F1, F6, DEL, TAB, PSLS, PAST, \
KP_7, KP_8, KP_9, BSPC, F2, F7, F2, F7, BSPC, KP_7, KP_8, KP_9, \
KP_4, KP_5, KP_6, PMNS, F3, F8, F3, F8, PMNS, KP_4, KP_5, KP_6, \
KP_1, KP_2, KP_3, PPLS, F4, F9, F11, F11, F4, F9, PPLS, KP_1, KP_2, KP_3, \
KP_0, COMM, PDOT, PENT, F5, F10, FF12, FF12, F5, F10, PENT, KP_0, COMM, PDOT \
),

#endif
/* AUX modifier key layer
* ,-----------------------------------------. ,-----------------------------------------.
* | | | | | | | | | | | | | |
Expand All @@ -188,14 +194,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | 00 | | | | | | | | | | | 00 | |
* `-------------------------------------------------------------------------------------------------'
*/
#if 0
[_KAUX] = LAYOUT_kc( \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____,ZERO2, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ZERO2,____ \
),

#endif
/* Keypad function layer
* ,-----------------------------------------. ,-----------------------------------------.
* | | | | Pause| ScrLk| PtrSc| | PtrSc| ScrLk| Pause| | | |
Expand Down Expand Up @@ -293,13 +300,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | | | | BS | Enter| | | | | | | |
* `-------------------------------------------------------------------------------------------------'
*/
#if 0
[_AUX] = LAYOUT_kc( \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \
____, ____, ____, ____, ____, BSPC, RAEN, ____, ____, ____, ____, ____, ____, ____ \
)
#endif
};

#else
Expand Down Expand Up @@ -337,14 +346,19 @@ void update_base_layer(int base)
if( current_default_layer != base ) {
eeconfig_update_default_layer(1UL<<base);
default_layer_set(1UL<<base);
#if 0
layer_off(_AUX);
layer_off(_KAUX);
} else {
#endif
}
#if 0
else {
if( base < _KEYPAD )
layer_invert(_AUX);
else
layer_invert(_KAUX);
}
#endif
}

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
Expand All @@ -359,40 +373,48 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return false;
break;
case COLEMAK:
#if 0
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_colemak);
#endif
update_base_layer(_COLEMAK);
}
return false;
#endif
break;
case DVORAK:
#if 0
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_dvorak);
#endif
update_base_layer(_DVORAK);
}
return false;
#endif
break;
case EUCALYN:
#if 0
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_dvorak);
#endif
update_base_layer(_EUCALYN);
}
return false;
#endif
break;
case KEYPAD:
#if 0
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_dvorak);
#endif
update_base_layer(_KEYPAD);
}
return false;
#endif
break;
case KC_ZERO2:
if (record->event.pressed) {
Expand Down Expand Up @@ -511,26 +533,30 @@ static void render_logo(struct CharacterMatrix *matrix) {
}

static const char Qwerty_name[] PROGMEM = " Qwerty";
#if 0
static const char Colemak_name[] PROGMEM = " Colemak";
static const char Dvorak_name[] PROGMEM = " Dvorak";
static const char Eucalyn_name[] PROGMEM = " Eucalyn";
static const char Keypad_name[] PROGMEM = " Keypad";

static const char AUX_name[] PROGMEM = ":AUX";
static const char KAUX_name[] PROGMEM = ":00";
#endif
static const char Padfunc_name[] PROGMEM = ":PadFunc";
static const char Lower_name[] PROGMEM = ":Func";
static const char Raise_name[] PROGMEM = ":Extra";
static const char Adjust_name[] PROGMEM = ":Adjust";

static const char *layer_names[] = {
[_QWERTY] = Qwerty_name,
#if 0
[_COLEMAK] = Colemak_name,
[_DVORAK] = Dvorak_name,
[_EUCALYN]= Eucalyn_name,
[_KEYPAD] = Keypad_name,
[_AUX] = AUX_name,
[_KAUX] = KAUX_name,
#endif
[_LOWER] = Lower_name,
[_RAISE] = Raise_name,
[_PADFUNC]= Padfunc_name,
Expand Down
18 changes: 18 additions & 0 deletions keyboards/helix/rev2/keymaps/five_rows/rules.mk
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
SWAP_HANDS_ENABLE = no # Enable one-hand typing
RGBLIGHT_SPLIT = no
RGBLIGHT_SPLIT_XA = no

define HELIX_CUSTOMISE_MSG
$(info Helix customize)
Expand All @@ -28,6 +30,8 @@ define HELIX_CUSTOMISE_MSG
$(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
$(info - LED_ANIMATION=$(LED_ANIMATIONS))
$(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
$(info - RGBLIGHT_SPLIT=$(RGBLIGHT_SPLIT))
$(info - RGBLIGHT_SPLIT_XA=$(RGBLIGHT_SPLIT_XA))
endef

# Helix keyboard customize
Expand Down Expand Up @@ -56,6 +60,12 @@ Link_Time_Optimization = no # if firmware size over limit, try this option
## make HELIX=oled,back,ios helix:five_rows
##
ifneq ($(strip $(HELIX)),)
ifeq ($(findstring split,$(HELIX)), split)
RGBLIGHT_SPLIT = yes
endif
ifeq ($(findstring splitxa,$(HELIX)), splitxa)
RGBLIGHT_SPLIT_XA = yes
endif
ifeq ($(findstring oled,$(HELIX)), oled)
OLED_ENABLE = yes
endif
Expand Down Expand Up @@ -114,6 +124,14 @@ ifeq ($(strip $(OLED_ENABLE)), yes)
OPT_DEFS += -DOLED_ENABLE
endif

ifeq ($(strip $(RGBLIGHT_SPLIT)), yes)
OPT_DEFS += -DRGBLIGHT_SPLIT
endif

ifeq ($(strip $(RGBLIGHT_SPLIT_XA)), yes)
OPT_DEFS += -DRGBLIGHT_SPLIT_NO_ANIMATION_SYNC
endif

ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
OPT_DEFS += -DLOCAL_GLCDFONT
endif
Expand Down
21 changes: 14 additions & 7 deletions keyboards/helix/rev2/matrix.c
Original file line number Diff line number Diff line change
Expand Up @@ -203,12 +203,16 @@ uint8_t matrix_scan(void)
{
if (is_master) {
matrix_master_scan();
serial_update_rgb();
}else{
matrix_slave_scan();
#ifndef RGBLIGHT_SPLIT
int offset = (isLeftHand) ? ROWS_PER_HAND : 0;
memcpy(&matrix[offset],
(void *)serial_master_buffer, sizeof(serial_master_buffer));
#endif
matrix_scan_quantum();
serial_sync_rgb();
}
return 1;
}
Expand All @@ -220,22 +224,25 @@ uint8_t matrix_master_scan(void) {
int mchanged = 1;

#ifndef KEYBOARD_helix_rev1
#ifndef RGBLIGHT_SPLIT
int offset = (isLeftHand) ? 0 : ROWS_PER_HAND;

#ifdef USE_MATRIX_I2C
#endif
#ifdef USE_MATRIX_I2C
// for (int i = 0; i < ROWS_PER_HAND; ++i) {
/* i2c_slave_buffer[i] = matrix[offset+i]; */
// i2c_slave_buffer[i] = matrix[offset+i];
// }
#else // USE_SERIAL
#ifdef SERIAL_USE_MULTI_TRANSACTION
#else // USE_SERIAL
#ifndef RGBLIGHT_SPLIT
#ifdef SERIAL_USE_MULTI_TRANSACTION
mchanged = memcmp((void *)serial_master_buffer,
&matrix[offset], sizeof(serial_master_buffer));
#endif
#endif
memcpy((void *)serial_master_buffer,
&matrix[offset], sizeof(serial_master_buffer));
#endif
#endif
#endif /* RGBLIGHT_SPLIT */
#endif /*USE_MATRIX_I2C*/
#endif /*KEYBOARD_helix_rev1*/

#ifdef USE_MATRIX_I2C
if( i2c_transaction() ) {
Expand Down
Loading

0 comments on commit 0bf81a4

Please sign in to comment.