]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
[Keyboard] leds in default keymap (#6357)
authorjotix <47826561+jotix@users.noreply.github.com>
Sat, 20 Jul 2019 20:25:20 +0000 (17:25 -0300)
committerDrashna Jaelre <drashna@live.com>
Sat, 20 Jul 2019 20:25:20 +0000 (13:25 -0700)
keyboards/handwired/jotanck/keymaps/default/keymap.c
keyboards/handwired/jotanck/readme.md

index 3eb01a658154a10e3e1e5629944aa60400a5121a..44f993db60cce3ce9f7541f27e4b0b758fde1d5e 100644 (file)
@@ -13,11 +13,14 @@ extern keymap_config_t keymap_config;
 #define _QWERTY   0
 #define _LOWER    1
 #define _RAISE    2
-#define _ADJUST   3
 
 #define LOWER MO(_LOWER)
 #define RAISE MO(_RAISE)
 
+static bool is_ctl_pressed;
+static bool is_esc_pressed;
+static bool is_bspc_pressed;
+
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 
 /* Qwerty
@@ -73,20 +76,47 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
     _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  _______, _______, _______, _______, _______,
     _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END
 ),
-
-/* Adjust */
-[_ADJUST] = LAYOUT_ortho_4x12 (
-    _______, RESET,   _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
-    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
-    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
-),    
+    
 };
 
 uint32_t layer_state_set_user(uint32_t state) {
-  return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
+  #ifdef JOTANCK_LEDS
+  switch (biton32(state)) {
+  case _LOWER:
+    writePinHigh(JOTANCK_LED1);
+    writePinLow(JOTANCK_LED2);
+    break;
+  case _RAISE:
+    writePinLow(JOTANCK_LED1);
+    writePinHigh(JOTANCK_LED2);
+    break;
+  default:
+    writePinLow(JOTANCK_LED1);
+    writePinLow(JOTANCK_LED2);
+    break; 
+  };
+  #endif
+  return state;
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+  switch (keycode) {
+    case KC_LCTL:
+      is_ctl_pressed = record->event.pressed;
+      break;
+    case KC_ESC:
+      is_esc_pressed = record->event.pressed;
+      break;
+    case KC_BSPC:
+      is_bspc_pressed = record->event.pressed;
+      break;
+  };
+  return true;
 }
 
-void matrix_init_user(void) {
+void matrix_scan_user(void) {
+  if (is_ctl_pressed && is_esc_pressed && is_bspc_pressed) {
+    reset_keyboard();
+  }
 }
 
index e9dd8240301dc68c006275f0034d13729db9e5f2..3ceea1ef4c184a53ad31c257bb7723843dc58543 100644 (file)
@@ -35,4 +35,6 @@ Make example for this keyboard (after setting up your build environment):
 
 ![Default Keymap](https://i.imgur.com/xh7Dmd7.png)
 
+To reset the keyboard press Ctrl+Esc+BackSpace
+
 See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).