mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-01 21:26:55 +06:00
69 lines
4.3 KiB
C
69 lines
4.3 KiB
C
// Copyright 2021 Tybera (@tybera)
|
|
// Copyright 2021 Werther (@thewerther)
|
|
// Copyright 2022 Vino Rodrigues (@vinorodrigues)
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#include "quantum.h"
|
|
|
|
#define __ NO_LED
|
|
|
|
#if defined(RGB_MATRIX_ENABLE)
|
|
|
|
/* NB!!: Indices are reversed on the physical board, top left is bottom right.
|
|
* These "LED Index to *" arrays are in that reversed order!
|
|
* i.e., Space row on top, listed right to left */
|
|
led_config_t g_led_config = { {
|
|
/* Under- / Per-Key
|
|
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐
|
|
* │66 │65 │64 │63 │62 │61 │60 │59 │58 │57 │56 │55 │54 │ 53 │52 │
|
|
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤
|
|
* │ 51 │50 │49 │48 │47 │46 │45 │44 │43 │42 │41 │40 │39 │ 38 │37 │
|
|
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
|
|
* │ 36 │35 │34 │33 │32 │31 │30 │29 │28 │27 │26 │25 │ 24 │23 │
|
|
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
|
|
* │ 22 │21 │20 │19 │18 │17 │16 │15 │14 │13 │12 │ 11 │10 │ 9 │
|
|
* ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤
|
|
* │ 8 │ 7 │ 6 │ 5 │ 4 │ 3 │ │ 2 │ 1 │ 0 │
|
|
* └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘
|
|
*
|
|
* Bottom Side (as seen from top orientation)
|
|
* 67 68 69 70 71
|
|
* 76 75 74 73 72
|
|
*/
|
|
// Key Matrix to LED Index
|
|
{66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52},
|
|
{51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37},
|
|
{36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, __, 24, 23},
|
|
{22, __, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9},
|
|
{ 8, 7, __, 6, __, __, 5, __, __, __, 4, 3, 2, 1, 0},
|
|
}, {
|
|
// LED Index to Physical Position
|
|
// based on: https://gist.github.com/vinorodrigues/07fd735683856b2a06c7c52b9b3878cb
|
|
// **NB: In reverse order**
|
|
{224,64 }, {209,64 }, {194,64 }, {170,64 }, {151,64 }, { 95,64 }, { 39,64 }, { 21,64 }, { 2,64 },
|
|
{224,48 }, {209,48 }, {189,48 }, {168,48 }, {153,48 }, {138,48 }, {123,48 }, {108,48 }, { 93,48 }, { 78,48 }, { 63,48 }, { 49,48 }, { 34,48 }, { 9,48 },
|
|
{224,32 }, {200,32 }, {175,32 }, {161,32 }, {146,32 }, {131,32 }, {116,32 }, {101,32 }, { 86,32 }, { 71,32 }, { 56,32 }, { 41,32 }, { 26,32 }, { 6,32 },
|
|
{224,16 }, {205,16 }, {187,16 }, {172,16 }, {157,16 }, {142,16 }, {127,16 }, {112,16 }, { 97,16 }, { 82,16 }, { 67,16 }, { 52,16 }, { 37,16 }, { 22,16 }, { 4,16 },
|
|
{224,0 }, {202,0 }, {179,0 }, {164,0 }, {149,0 }, {134,0 }, {119,0 }, {105,0 }, { 90,0 }, { 75,0 }, { 60,0 }, { 45,0 }, { 30,0 }, { 15,0 }, { 0,0 }
|
|
// underglow LEDs
|
|
#ifndef ID67_DISABLE_UNDERGLOW
|
|
, {0, 0}, {56, 0}, {112, 0}, {168, 0}, {224, 0},
|
|
{224, 64}, {168, 64}, {112, 64}, {56, 64}, {0, 64}
|
|
#endif
|
|
}, {
|
|
// LED Index to Flag
|
|
// **NB: In reverse order**
|
|
1, 1, 1, 1, 1, 4, 1, 1, 1, // fifth/bottom row
|
|
1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // fourth row
|
|
1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 9, // third row
|
|
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // second row
|
|
1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1 // first/top row
|
|
// underglow LEDs
|
|
#ifndef ID67_DISABLE_UNDERGLOW
|
|
, 2, 2, 2, 2, 2,
|
|
2, 2, 2, 2, 2
|
|
#endif
|
|
} };
|
|
|
|
#endif // RGB_MATRIX_ENABLE
|