Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Split-Cloud, a Handwired Keyboard #21327

Merged
merged 8 commits into from
Oct 9, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Simplified default keymap further, changes to info.json
  • Loading branch information
coolsa committed Jun 21, 2023
commit ed7cdc7d3f72938fe73d57b8c14e3fa053b9d2ab
4 changes: 4 additions & 0 deletions keyboards/handwired/split_cloud/info.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@
"enabled": true,
"matrix": [0, 0]
},
coolsa marked this conversation as resolved.
Show resolved Hide resolved
"features": {
"extrakey": true,
"nkro": true
},
"split": {
"enabled": true,
"soft_serial_pin": "D3",
Expand Down
51 changes: 19 additions & 32 deletions keyboards/handwired/split_cloud/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,31 @@
#include QMK_KEYBOARD_H
#include "keymap_steno.h"

extern keymap_config_t keymap_config;
// clang-format off

enum split_cloud_layers { _QWERTY, _COLEMAK, _DVORAK, _LOWER, _RAISE, _PLOVER, _ADJUST };
enum layer_names {
_QWERTY,
_COLEMAK,
_DVORAK,
_LOWER,
_RAISE,
_PLOVER,
_ADJUST
};

enum split_cloud_keycodes { QWERTY = SAFE_RANGE, COLEMAK, DVORAK, PLOVER, LOWER, RAISE, BACKLIT, EXT_PLV };
enum custom_keycodes {
QWERTY = SAFE_RANGE,
COLEMAK,
DVORAK,
PLOVER,
LOWER,
RAISE,
EXT_PLV
};

#define ST_BOLT QK_STENO_BOLT
#define ST_GEM QK_STENO_GEMINI

// clang-format off

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

/* Qwerty
Expand Down Expand Up @@ -189,19 +203,16 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case DVORAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_DVORAK);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
Expand All @@ -211,7 +222,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
Expand All @@ -221,39 +231,16 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case BACKLIT:
if (record->event.pressed) {
register_code(KC_RSFT);
#ifdef BACKLIGHT_ENABLE
backlight_step();
#endif
#ifdef RGBLIGHT_ENABLE
rgblight_step();
#endif
#ifdef __AVR__
writePinLow(E6);
#endif
} else {
unregister_code(KC_RSFT);
#ifdef __AVR__
writePinHigh(E6);
#endif
}
return false;
break;
case PLOVER:
if (!record->event.pressed) {
layer_on(_PLOVER);
}
return false;
break;
case EXT_PLV:
if (record->event.pressed) {
layer_off(_PLOVER);
}
return false;
break;
}
return true;
};
14 changes: 0 additions & 14 deletions keyboards/handwired/split_cloud/rules.mk
Original file line number Diff line number Diff line change
@@ -1,14 +0,0 @@
#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
#
MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
NKRO_ENABLE = yes # Enable NKRO

LAYOUT_HAS_RGB = no