~ruther/qmk_firmware

90a6fea4e8aa5c2bb8f9e10dbb90cce78208d01d — Erez Zukerman 7 years ago cf9f6bb + e45290a
Merge pull request #1974 from qmk/f/ez_shine_layer_leds

Shine layer indication
3 files changed, 67 insertions(+), 64 deletions(-)

M keyboards/ergodox_ez/config.h
D keyboards/ergodox_ez/keymaps/default/config.h
M keyboards/ergodox_ez/keymaps/default/keymap.c
M keyboards/ergodox_ez/config.h => keyboards/ergodox_ez/config.h +9 -0
@@ 87,6 87,15 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#define USB_MAX_POWER_CONSUMPTION 500

// #define RGBLIGHT_COLOR_LAYER_0 0x00, 0x00, 0xFF
#define RGBLIGHT_COLOR_LAYER_1 0x00, 0x00, 0xFF
#define RGBLIGHT_COLOR_LAYER_2 0xFF, 0x00, 0x00
#define RGBLIGHT_COLOR_LAYER_3 0x00, 0xFF, 0x00
#define RGBLIGHT_COLOR_LAYER_4 0xFF, 0xFF, 0x00
#define RGBLIGHT_COLOR_LAYER_5 0x00, 0xFF, 0xFF
#define RGBLIGHT_COLOR_LAYER_6 0xFF, 0x00, 0xFF
#define RGBLIGHT_COLOR_LAYER_7 0xFF, 0xFF, 0xFF

/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.

D keyboards/ergodox_ez/keymaps/default/config.h => keyboards/ergodox_ez/keymaps/default/config.h +0 -30
@@ 1,30 0,0 @@
/*
Copyright 2017 Jack Humbert <jack.humbgmail.com>

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/>.
*/

#ifndef ERGODOX_EZ_USER_CONFIG_H
#define ERGODOX_EZ_USRE_CONFIG_H

#include "config_common.h"

#define RGBLIGHT_COLOR_LAYER_0 0x00, 0x00, 0xFF
#define RGBLIGHT_COLOR_LAYER_1 0xFF, 0x00, 0x00
#define RGBLIGHT_COLOR_LAYER_2 0x00, 0xFF, 0x00
#define RGBLIGHT_COLOR_LAYER_3 0xFF, 0xFF, 0x00
#define RGBLIGHT_COLOR_LAYER_4 0x00, 0xFF, 0xFF
#define RGBLIGHT_COLOR_LAYER_5 0xFF, 0x00, 0xFF

#endif
\ No newline at end of file

M keyboards/ergodox_ez/keymaps/default/keymap.c => keyboards/ergodox_ez/keymaps/default/keymap.c +58 -34
@@ 211,39 211,63 @@ uint32_t layer_state_set_user(uint32_t state) {

  uint8_t layer = biton32(state);
  switch (layer) {
    case 0:
      #ifdef RGBLIGHT_COLOR_LAYER_0
        rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0);
      #endif
      break;
    case 1:
      ergodox_right_led_1_on();
      #ifdef RGBLIGHT_COLOR_LAYER_1
        rgblight_setrgb(RGBLIGHT_COLOR_LAYER_1);
      #endif
      break;
    case 2:
      ergodox_right_led_2_on();
      #ifdef RGBLIGHT_COLOR_LAYER_2
        rgblight_setrgb(RGBLIGHT_COLOR_LAYER_2);
      #endif
      break;
    case 3:
      #ifdef RGBLIGHT_COLOR_LAYER_3
        rgblight_setrgb(RGBLIGHT_COLOR_LAYER_3);
      #endif
      break;
    case 4:
      #ifdef RGBLIGHT_COLOR_LAYER_4
        rgblight_setrgb(RGBLIGHT_COLOR_LAYER_4);
      #endif
      break;
    case 5:
      #ifdef RGBLIGHT_COLOR_LAYER_5
        rgblight_setrgb(RGBLIGHT_COLOR_LAYER_5);
      #endif
      break;
  }
      case 0:
        #ifdef RGBLIGHT_COLOR_LAYER_0
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_0);
        #else
          rgblight_init();
        #endif
        break;
      case 1:
        ergodox_right_led_1_on();
        #ifdef RGBLIGHT_COLOR_LAYER_1
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_1);
        #endif
        break;
      case 2:
        ergodox_right_led_2_on();
        #ifdef RGBLIGHT_COLOR_LAYER_2
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_2);
        #endif
        break;
      case 3:
        ergodox_right_led_3_on();
        #ifdef RGBLIGHT_COLOR_LAYER_3
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_3);
        #endif
        break;
      case 4:
        ergodox_right_led_1_on();
        ergodox_right_led_2_on();
        #ifdef RGBLIGHT_COLOR_LAYER_4
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_4);
        #endif
        break;
      case 5:
        ergodox_right_led_1_on();
        ergodox_right_led_3_on();
        #ifdef RGBLIGHT_COLOR_LAYER_5
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_5);
        #endif
        break;
      case 6:
        ergodox_right_led_2_on();
        ergodox_right_led_3_on();
        #ifdef RGBLIGHT_COLOR_LAYER_6
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_6);
        #endif
        break;
      case 7:
        ergodox_right_led_1_on();
        ergodox_right_led_2_on();
        ergodox_right_led_3_on();
        #ifdef RGBLIGHT_COLOR_LAYER_7
          rgblight_setrgb(RGBLIGHT_COLOR_LAYER_6);
        #endif
        break;
      default:
        break;
    }

  return state;
};
\ No newline at end of file
};