This repository has been archived on 2025-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
Files
dgvigil-keebs/iris/light_layers.h
2023-10-12 17:40:51 -05:00

128 lines
6.1 KiB
C

// Copyright 2022 Ignacy Radliński (@radlinskii)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/*
LED index mapping:
(31) (32) (33) (67) (66) (65)
┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
│0 │1 │2 │3 │4 │5 │ │39 │38 │37 │36 │35 │34 │
├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
│11 │10 │9 │8 │7 │6 │ │40 │41 │42 │43 │44 │45 │
├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤
│12 │13 │14 │15 │16 │17 │ │51 │50 │49 │48 │47 │46 │
├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
│23 │22 │21 │20 │19 │18 │27 │ │61 │52 │53 │54 │55 │56 │57 │
└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘
│24 │25 │26 │ │60 │59 │58 │
└────────┴────────┴────────┘ └────────┴────────┴────────┘
(30) (29) (28) (62) (63) (64)
*/
const rgblight_segment_t PROGMEM COLEMAK_LIGHT_LAYER[] = RGBLIGHT_LAYER_SEGMENTS(
// left side
{0, 1, HSV_GREEN}, // Computer
{1, 1, 0, 55, 140},
{2, 1, HSV_ORANGE}, // B-WING
{3, 1, HSV_WHITE}, // X-WING
{4, 1, HSV_YELLOW}, // Y-WING
{5, 1, 160, 160, 160}, // M FALCON
{6, 1, HSV_BLUE}, // R2-D2
{7, 1, 0, 55, 140},
{8, 1, HSV_YELLOW}, // C3PO
{9, 1, 0, 55, 140},
{10, 1, HSV_ORANGE}, // BB8
{11, 1, 0, 55, 140},
{12, 6, 0, 55, 140},
{18, 6, 0, 55, 140},
{24, 1, 0, 55, 140},
{25, 1, HSV_BLUE}, // Thumb/Jedi
{26, 1, 0, 55, 140},
{27, 1, HSV_BLUE}, // Rebel
{28, 3, HSV_BLUE}, // underglow
{31, 3, HSV_BLUE}, // underglow
// right side
{34, 3, 0, 55, 140},
{37, 3, 160, 160, 160}, // AT-AT, AT-ST, Tie fighter
{40, 1, HSV_GREEN}, // Boba Fett
{41, 1, 0, 55, 140},
{42, 1, HSV_WHITE}, // Storm Trooper
{43, 1, 0, 55, 140},
{44, 1, 160, 160, 160}, // Death Star
{45, 1, 0, 55, 140},
{46, 6, 0, 55, 140},
{52, 6, 0, 55, 140},
{58, 1, 0, 55, 140},
{59, 1, HSV_RED}, // Thumb / Empire
{60, 1, 0, 55, 140},
{61, 1, 32, 32, 32}, // Vader
{62, 3, HSV_RED}, // underglow
{65, 3, HSV_RED} // underglow
);
const rgblight_segment_t PROGMEM QWERTY_LIGHT_LAYER[] = RGBLIGHT_LAYER_SEGMENTS(
// left side
{0, 6, HSV_RED},
{6, 6, HSV_RED},
{12, 6, HSV_RED},
{18, 6, HSV_RED},
{24, 1, HSV_RED},
{25, 1, HSV_WHITE}, // THUMB
{26, 2, HSV_RED},
{28, 3, HSV_RED}, // underglow
{31, 3, HSV_RED}, // underglow
// right side
{34, 6, HSV_RED},
{40, 6,HSV_RED},
{46, 6, HSV_RED},
{52, 6, HSV_RED},
{58, 1, HSV_RED},
{59, 1, HSV_WHITE}, // THUMB
{60, 2, HSV_RED},
{62, 3, HSV_RED}, // underglow
{65, 3, HSV_RED} // underglow
);
const rgblight_segment_t PROGMEM NAV_LIGHT_LAYER[] = RGBLIGHT_LAYER_SEGMENTS(
// left side
{0, 3, HSV_RED}, // F1-F3
{3, 3, HSV_BLACK},
{6, 1, HSV_ORANGE}, // KC_GRV
{7, 2, HSV_BLUE}, // Macro 1 & 2
{9, 2, HSV_RED}, // F4-F6
{12, 3, HSV_RED}, // F7-F9
{15, 3, HSV_ORANGE},// L/R and bracket
{18, 1, HSV_WHITE}, // bracket
{19, 2, HSV_BLACK},
{21, 3, HSV_RED}, // F10-F12
{24, 1, HSV_BLACK},
{25, 1, HSV_BLACK}, // THUMB
{26, 2, HSV_BLACK},
{28, 3, HSV_WHITE}, // underglow
{31, 3, HSV_WHITE}, // underglow
// right side
{34, 3, HSV_WHITE}, // NUM 7-9
{37, 3, HSV_BLACK},
{40, 3, HSV_BLACK},
{43, 3, HSV_WHITE}, // NUM 4-6
{46, 3, HSV_WHITE}, // NUM 1-3
{49, 3, HSV_ORANGE}, // U/D and bracket
{52, 1, HSV_ORANGE}, // bracket
{53, 2, HSV_BLACK},
{55, 1, HSV_WHITE}, // NUM 0
{56, 2, HSV_YELLOW}, // Dot and Enter
{58, 3, HSV_BLACK},
{62, 3, HSV_WHITE}, // underglow
{65, 3, HSV_WHITE} // underglow
);
const rgblight_segment_t* const PROGMEM MY_LIGHT_LAYERS[] = RGBLIGHT_LAYERS_LIST(
COLEMAK_LIGHT_LAYER,
QWERTY_LIGHT_LAYER,
NAV_LIGHT_LAYER
);