qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

ranger.c (6382B)


      1 /* Copyright 2021 Shulin Huang <mumu@x-bows.com>
      2  *
      3  * This program is free software: you can redistribute it and/or modify
      4  * it under the terms of the GNU General Public License as published by
      5  * the Free Software Foundation, either version 2 of the License, or
      6  * (at your option) any later version.
      7  *
      8  * This program is distributed in the hope that it will be useful,
      9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     11  * GNU General Public License for more details.
     12  *
     13  * You should have received a copy of the GNU General Public License
     14  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
     15  */
     16 
     17 #include "quantum.h"
     18 
     19  #ifdef RGB_MATRIX_ENABLE
     20 const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
     21 
     22     {0, C3_3, C2_3, C1_3},  // L01
     23     {0, C3_4, C2_4, C1_4},  // L02
     24     {0, C3_5, C2_5, C1_5},  // L03
     25     {0, C3_6, C2_6, C1_6},  // L04
     26     {0, C3_7, C2_7, C1_7},  // L05
     27     {0, C3_8, C2_8, C1_8},  // L06
     28     {1, C3_3, C2_3, C1_3},  // L07
     29     {1, C3_4, C2_4, C1_4},  // L08
     30     {1, C3_5, C2_5, C1_5},  // L09
     31     {1, C3_6, C2_6, C1_6},  // L10
     32     {1, C3_7, C2_7, C1_7},  // L11
     33     {1, C3_8, C2_8, C1_8},  // L12
     34     {2, C3_4, C2_4, C1_4},  // L13
     35     {2, C3_5, C2_5, C1_5},  // L14
     36     {2, C3_6, C2_6, C1_6},  // L15
     37     {2, C3_7, C2_7, C1_7},  // L16
     38 
     39     {0, C6_1, C5_1, C4_1},  // L17
     40     {0, C6_2, C5_2, C4_2},  // L18
     41     {0, C6_3, C5_3, C4_3},  // L19
     42     {0, C6_6, C5_6, C4_6},  // L20
     43     {0, C6_7, C5_7, C4_7},  // L21
     44     {0, C6_8, C5_8, C4_8},  // L22
     45     {1, C6_1, C5_1, C4_1},  // L23
     46     {1, C6_2, C5_2, C4_2},  // L24
     47     {1, C6_3, C5_3, C4_3},  // L25
     48     {1, C6_6, C5_6, C4_6},  // L26
     49     {1, C6_7, C5_7, C4_7},  // L27
     50     {1, C6_8, C5_8, C4_8},  // L28
     51     {2, C6_1, C5_1, C4_1},  // L29
     52     {2, C6_3, C5_3, C4_3},  // L31
     53     {2, C6_6, C5_6, C4_6},  // L32
     54     {2, C6_7, C5_7, C4_7},  // L33
     55 
     56     {0, C9_1, C8_1, C7_1},  // L34
     57     {0, C9_2, C8_2, C7_2},  // L35
     58     {0, C9_3, C8_3, C7_3},  // L36
     59     {0, C9_4, C8_4, C7_4},  // L37
     60     {0, C9_5, C8_5, C7_5},  // L38
     61     {0, C9_6, C8_6, C7_6},  // L39
     62     {1, C9_1, C8_1, C7_1},  // L40
     63     {1, C9_2, C8_2, C7_2},  // L41
     64     {1, C9_3, C8_3, C7_3},  // L42
     65     {1, C9_4, C8_4, C7_4},  // L43
     66     {1, C9_5, C8_5, C7_5},  // L44
     67     {1, C9_6, C8_6, C7_6},  // L45
     68     {2, C9_1, C8_1, C7_1},  // L46
     69     {2, C9_3, C8_3, C7_3},  // L48
     70     {2, C9_4, C8_4, C7_4},  // L49
     71     {2, C9_6, C8_6, C7_6},  // L50
     72 
     73     {0, C3_11, C2_11, C1_11},  // L51
     74     {0, C3_12, C2_12, C1_12},  // L52
     75     {0, C3_13, C2_13, C1_13},  // L53
     76     {0, C3_14, C2_14, C1_14},  // L54
     77     {0, C3_15, C2_15, C1_15},  // L55
     78     {0, C3_16, C2_16, C1_16},  // L56
     79     {1, C3_11, C2_11, C1_11},  // L57
     80     {1, C3_12, C2_12, C1_12},  // L58
     81     {1, C3_13, C2_13, C1_13},  // L59
     82     {1, C3_14, C2_14, C1_14},  // L60
     83     {1, C3_15, C2_15, C1_15},  // L61
     84     {1, C3_16, C2_16, C1_16},  // L62
     85     {2, C3_14, C2_14, C1_14},  // L63
     86     {2, C6_2, C5_2, C4_2},     // L30
     87 
     88     {0, C6_9, C5_9, C4_9},     // L64
     89     {0, C6_10, C5_10, C4_10},  // L65
     90     {0, C6_11, C5_11, C4_11},  // L66
     91     {0, C6_14, C5_14, C4_14},  // L67
     92     {0, C6_15, C5_15, C4_15},  // L68
     93     {0, C6_16, C5_16, C4_16},  // L69
     94     {1, C6_10, C5_10, C4_10},  // L70
     95     {1, C6_11, C5_11, C4_11},  // L71
     96     {1, C6_14, C5_14, C4_14},  // L72
     97     {1, C6_15, C5_15, C4_15},  // L73
     98     {1, C6_16, C5_16, C4_16},  // L74
     99     {2, C3_15, C2_15, C1_15},  // L75
    100     {2, C9_2, C8_2, C7_2},     // L47
    101     {2, C9_14, C8_14, C7_14},  // L76
    102 
    103     {0, C9_9, C8_9, C7_9},     // L77
    104     {0, C9_10, C8_10, C7_10},  // L78
    105     {0, C9_11, C8_11, C7_11},  // L79
    106     {1, C6_9, C5_9, C4_9},     // L80
    107     {1, C9_13, C8_13, C7_13},  // L81
    108     {1, C9_14, C8_14, C7_14},  // L82
    109     {2, C9_9, C8_9, C7_9},     // L83
    110     {2, C9_10, C8_10, C7_10},  // L84
    111     {2, C9_11, C8_11, C7_11},  // L85
    112     {2, C9_12, C8_12, C7_12},  // L86
    113     {2, C9_13, C8_13, C7_13},  // L87
    114 };
    115 
    116 // clang-format off
    117 led_config_t g_led_config = { {
    118         {  0,      1,      2,      3,      4,      5,      6,      7,      8,      9,      10,     11,     12,     13,     14,     15      },
    119         {  16,     17,     18,     19,     20,     21,     22,     23,     24,     25,     26,     27,     28,     29,     30,     31      },
    120         {  32,     33,     34,     35,     36,     37,     38,     39,     40,     41,     42,     43,     44,     45,     46,     47      },
    121         {  48,     49,     50,     51,     52,     53,     54,     55,     56,     57,     58,     59,     60,     61,   NO_LED,   NO_LED  },
    122         {  62,     63,     64,     65,     66,     67,     68,     69,     70,     71,     72,   NO_LED,   73,     74,     75,     NO_LED },
    123         {  76,     77,     78,   NO_LED, NO_LED,   79,   NO_LED, NO_LED, NO_LED,   80,     81,     82,     83,     84,     85,     86     }
    124     }, {
    125         {0,0},  {24,0},  {36,0},  {48,0},  {60,0},  {78,0},  {90,0},   {102,0},  {114,0},  {132,0},  {144,0},  {156,0},  {168,0},  {182,0},  {194,0}, {206,0},
    126         {0,15}, {12,15}, {24,15}, {36,15}, {48,15}, {60,15}, {72,15},  {84,15},  {96,15},  {108,15}, {120,15}, {132,15}, {144,15}, {182,15}, {194,15},{206,15},
    127         {3,27}, {18,27}, {30,27}, {42,27}, {54,27}, {66,27}, {78,27},  {90,27},  {102,27}, {114,27}, {126,27}, {138,27}, {150,27}, {182,27}, {194,27},{206,27},
    128         {4,39}, {20,39}, {32,39}, {44,39}, {56,39}, {68,39}, {80,39},  {92,39},  {104,39}, {116,39}, {128,39}, {140,39}, {162,39}, {162,15},
    129         {6,51}, {26,51}, {38,51}, {50,51}, {62,51}, {74,51}, {86,51},  {98,51},  {110,51}, {122,51}, {134,51}, {155,51}, {165,27}, {210,51},
    130         {1,63}, {16,63}, {31,63}, {64,63}, {121,63},{136,63}, {151,63}, {166,63},{182,63}, {194,63}, {206,63}
    131     }, {
    132         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
    133         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
    134         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
    135         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
    136         4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,    4, 4, 4,
    137         4, 4, 4,       4,          4, 4, 4, 4, 4, 4, 4
    138     }
    139 };
    140 // clang-format on
    141 
    142 bool rgb_matrix_indicators_kb(void) {
    143     if (!rgb_matrix_indicators_user()) {
    144         return false;
    145     }
    146     if (host_keyboard_led_state().caps_lock) {
    147         rgb_matrix_set_color(48, 0xFF, 0xFF, 0xFF);
    148     }
    149     return true;
    150 }
    151 
    152 #endif