summaryrefslogtreecommitdiffstats
path: root/layouts/community/numpad_5x6/bjohnson/keymap.c
blob: 79e87e69f4c448b17d520413e9e74259ffe4ef1d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include QMK_KEYBOARD_H

extern rgblight_config_t rgblight_config;

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
	[0] = LAYOUT_numpad_5x6(
		KC_F1,   LT(1,KC_F2),    KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
		KC_F3,   KC_F4,    KC_P7,   KC_P8,   KC_P9,
		KC_F5,   KC_F6,    KC_P4,   KC_P5,   KC_P6,   KC_PPLS,
		KC_F7,   KC_F8,    KC_P1,   KC_P2,   KC_P3,
		KC_F9,   KC_F10,        KC_P0,       KC_PDOT, KC_PENT
  ),
	[1] = LAYOUT_numpad_5x6(
		RGB_TOG, _______,  _______, _______, _______, RESET,
		RGB_MOD, RGB_RMOD, _______, _______, _______,
		RGB_HUI, RGB_HUD,  _______, _______, _______, _______,
		RGB_SAI, RGB_SAD,  _______, _______, _______,
		RGB_VAI, RGB_VAD,       _______,     _______, _______
  ),
};


void keyboard_post_init_user(void) {
#ifdef RGBLIGHT_ENABLE
  uint8_t temp_mode = rgblight_config.mode;
	rgblight_enable_noeeprom();
	rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
	for (uint16_t i = 360; i > 0; i--) {
		rgblight_sethsv_noeeprom( ( i + 180) % 360, 255, 255);
    wait_ms(8);
	}
	led_set_user(host_keyboard_leds());
  rgblight_mode_noeeprom(temp_mode);
#endif
}

void led_set_user(uint8_t usb_led) {
  if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
    rgblight_sethsv_noeeprom_cyan();
  } else {
    rgblight_sethsv_noeeprom_magenta();
  }
}

void shutdown_user (void) {
  #ifdef RGBLIGHT_ENABLE
    rgblight_enable_noeeprom();
    rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
    rgblight_setrgb_red();
  #endif // RGBLIGHT_ENABLE
}