Dev Branch initial keyboards commit
This commit is contained in:
		
							parent
							
								
									35edec2998
								
							
						
					
					
						commit
						c616ee6336
					
				
					 14 changed files with 929 additions and 0 deletions
				
			
		
							
								
								
									
										16
									
								
								keyboards/kprepublic/bm60hsrgb_poker/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								keyboards/kprepublic/bm60hsrgb_poker/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
# BM60HSRGB_Poker 60% Mechanical Keyboard RGB PCB
 | 
			
		||||
 | 
			
		||||
A 60% hotswap inswitch RGB (north facing) keyboard from KP Republic. 
 | 
			
		||||
 | 
			
		||||
* Hardware Supported: BM60HSRGB_Poker/rev2
 | 
			
		||||
* Hardware Availability: [KP Republic](https://kprepublic.com/products/bm60-rgb-poker-60-gh60-hot-swap-custom-mechanical-keyboard-pcb-program-qmk-underglow-type-c)
 | 
			
		||||
 | 
			
		||||
Make example for this keyboard (after setting up your build environment):
 | 
			
		||||
 | 
			
		||||
    for rev1: make kprepublic/bm60hsrgb_poker/rev1:default
 | 
			
		||||
    for rev2: make kprepublic/bm60hsrgb_poker/rev2:default
 | 
			
		||||
 | 
			
		||||
To determine your board revision, check the PCB. For boards with bm60v2_poker printed on the PCB, use rev2. Otherwise, use rev1
 | 
			
		||||
 | 
			
		||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										29
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,29 @@
 | 
			
		|||
/* Copyright 2021 bdtc123
 | 
			
		||||
 *
 | 
			
		||||
 * 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/>.
 | 
			
		||||
 */
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
 | 
			
		||||
#define IS31FL3733_LED_COUNT 61
 | 
			
		||||
 | 
			
		||||
// Underglow LEDs are WS2812, but someone might want to use RGBLIGHT for them;
 | 
			
		||||
// don't use those LEDs in RGB Matrix in that case.
 | 
			
		||||
#ifdef RGBLIGHT_ENABLE
 | 
			
		||||
#    define WS2812_LED_COUNT 0
 | 
			
		||||
#else
 | 
			
		||||
#    define WS2812_LED_COUNT 6
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define RGB_MATRIX_LED_COUNT (IS31FL3733_LED_COUNT + WS2812_LED_COUNT)
 | 
			
		||||
							
								
								
									
										172
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/keyboard.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										172
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/keyboard.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,172 @@
 | 
			
		|||
{
 | 
			
		||||
    "keyboard_name": "BM60HSRGB Poker Rev2",
 | 
			
		||||
    "manufacturer": "KPrepublic",
 | 
			
		||||
    "url": "",
 | 
			
		||||
    "maintainer": "bdtc123",
 | 
			
		||||
    "usb": {
 | 
			
		||||
        "vid": "0x4B50",
 | 
			
		||||
        "pid": "0x1122",
 | 
			
		||||
        "device_version": "0.0.2"
 | 
			
		||||
    },
 | 
			
		||||
    "ws2812": {
 | 
			
		||||
        "pin": "F0"
 | 
			
		||||
    },
 | 
			
		||||
    "rgb_matrix": {
 | 
			
		||||
        "animations": {
 | 
			
		||||
            "alphas_mods": true,
 | 
			
		||||
            "gradient_up_down": true,
 | 
			
		||||
            "gradient_left_right": true,
 | 
			
		||||
            "breathing": true,
 | 
			
		||||
            "band_sat": true,
 | 
			
		||||
            "band_val": true,
 | 
			
		||||
            "band_pinwheel_sat": true,
 | 
			
		||||
            "band_pinwheel_val": true,
 | 
			
		||||
            "band_spiral_sat": true,
 | 
			
		||||
            "band_spiral_val": true,
 | 
			
		||||
            "cycle_all": true,
 | 
			
		||||
            "cycle_left_right": true,
 | 
			
		||||
            "cycle_up_down": true,
 | 
			
		||||
            "rainbow_moving_chevron": true,
 | 
			
		||||
            "cycle_out_in": true,
 | 
			
		||||
            "cycle_out_in_dual": true,
 | 
			
		||||
            "cycle_pinwheel": true,
 | 
			
		||||
            "cycle_spiral": true,
 | 
			
		||||
            "dual_beacon": true,
 | 
			
		||||
            "rainbow_beacon": true,
 | 
			
		||||
            "rainbow_pinwheels": true,
 | 
			
		||||
            "raindrops": true,
 | 
			
		||||
            "jellybean_raindrops": true,
 | 
			
		||||
            "hue_breathing": true,
 | 
			
		||||
            "hue_pendulum": true,
 | 
			
		||||
            "hue_wave": true,
 | 
			
		||||
            "pixel_fractal": true,
 | 
			
		||||
            "pixel_rain": true,
 | 
			
		||||
            "typing_heatmap": true,
 | 
			
		||||
            "digital_rain": true,
 | 
			
		||||
            "solid_reactive_simple": true,
 | 
			
		||||
            "solid_reactive": true,
 | 
			
		||||
            "solid_reactive_wide": true,
 | 
			
		||||
            "solid_reactive_multiwide": true,
 | 
			
		||||
            "solid_reactive_cross": true,
 | 
			
		||||
            "solid_reactive_multicross": true,
 | 
			
		||||
            "solid_reactive_nexus": true,
 | 
			
		||||
            "solid_reactive_multinexus": true,
 | 
			
		||||
            "splash": true,
 | 
			
		||||
            "multisplash": true,
 | 
			
		||||
            "solid_splash": true,
 | 
			
		||||
            "solid_multisplash": true
 | 
			
		||||
        },
 | 
			
		||||
        "driver": "custom",
 | 
			
		||||
        "max_brightness": 120,
 | 
			
		||||
        "sleep": true
 | 
			
		||||
    },
 | 
			
		||||
    "rgblight": {
 | 
			
		||||
        "saturation_steps": 8,
 | 
			
		||||
        "brightness_steps": 8,
 | 
			
		||||
        "led_count": 6,
 | 
			
		||||
        "max_brightness": 150,
 | 
			
		||||
        "animations": {
 | 
			
		||||
            "breathing": true,
 | 
			
		||||
            "rainbow_mood": true,
 | 
			
		||||
            "rainbow_swirl": true,
 | 
			
		||||
            "snake": true,
 | 
			
		||||
            "knight": true,
 | 
			
		||||
            "christmas": true,
 | 
			
		||||
            "static_gradient": true,
 | 
			
		||||
            "rgb_test": true,
 | 
			
		||||
            "alternating": true
 | 
			
		||||
        },
 | 
			
		||||
        "default": {
 | 
			
		||||
            "animation": "rainbow_mood"
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    "matrix_pins": {
 | 
			
		||||
        "cols": ["B2", "B3", "B7", "B0", "B1", "F7", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"],
 | 
			
		||||
        "rows": ["E6", "D2", "D3", "D5", "F6"]
 | 
			
		||||
    },
 | 
			
		||||
    "diode_direction": "ROW2COL",
 | 
			
		||||
    "processor": "atmega32u4",
 | 
			
		||||
    "bootloader": "atmel-dfu",
 | 
			
		||||
    "features": {
 | 
			
		||||
        "bootmagic": true,
 | 
			
		||||
        "mousekey": true,
 | 
			
		||||
        "extrakey": true,
 | 
			
		||||
        "nkro": true,
 | 
			
		||||
        "rgb_matrix": true
 | 
			
		||||
    },
 | 
			
		||||
    "build": {
 | 
			
		||||
        "lto": true
 | 
			
		||||
    },
 | 
			
		||||
    "community_layouts": ["60_ansi"],
 | 
			
		||||
    "layouts": {
 | 
			
		||||
        "LAYOUT_60_ansi": {
 | 
			
		||||
            "layout": [
 | 
			
		||||
                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
			
		||||
                {"matrix": [0, 1], "x": 1, "y": 0},
 | 
			
		||||
                {"matrix": [0, 2], "x": 2, "y": 0},
 | 
			
		||||
                {"matrix": [0, 3], "x": 3, "y": 0},
 | 
			
		||||
                {"matrix": [0, 4], "x": 4, "y": 0},
 | 
			
		||||
                {"matrix": [0, 5], "x": 5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 6], "x": 6, "y": 0},
 | 
			
		||||
                {"matrix": [0, 7], "x": 7, "y": 0},
 | 
			
		||||
                {"matrix": [0, 8], "x": 8, "y": 0},
 | 
			
		||||
                {"matrix": [0, 9], "x": 9, "y": 0},
 | 
			
		||||
                {"matrix": [0, 10], "x": 10, "y": 0},
 | 
			
		||||
                {"matrix": [0, 11], "x": 11, "y": 0},
 | 
			
		||||
                {"matrix": [0, 12], "x": 12, "y": 0},
 | 
			
		||||
                {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [1, 1], "x": 1.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 2], "x": 2.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 4], "x": 4.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 5], "x": 5.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 6], "x": 6.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 7], "x": 7.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 8], "x": 8.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 9], "x": 9.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 10], "x": 10.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 11], "x": 11.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 12], "x": 12.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
 | 
			
		||||
                {"matrix": [2, 1], "x": 1.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 2], "x": 2.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 3], "x": 3.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 4], "x": 4.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 5], "x": 5.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 6], "x": 6.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 7], "x": 7.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 8], "x": 8.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 9], "x": 9.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 10], "x": 10.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 11], "x": 11.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
 | 
			
		||||
                {"matrix": [3, 1], "x": 2.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 2], "x": 3.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 3], "x": 4.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 4], "x": 5.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 5], "x": 6.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 6], "x": 7.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 7], "x": 8.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 8], "x": 9.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 9], "x": 10.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 10], "x": 11.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
 | 
			
		||||
                {"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,35 @@
 | 
			
		|||
/* Copyright 2021 bdtc123
 | 
			
		||||
 *
 | 
			
		||||
 * 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/>.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    [0] = LAYOUT_60_ansi(
 | 
			
		||||
        QK_GESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC,
 | 
			
		||||
        KC_TAB,      KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS,
 | 
			
		||||
        KC_CAPS,       KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,
 | 
			
		||||
        KC_LSFT,            KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,
 | 
			
		||||
        KC_LCTL,   KC_LGUI,   KC_LALT,                       KC_SPC,                              KC_RALT,  MO(1),  KC_RGUI,       KC_RCTL
 | 
			
		||||
    ),
 | 
			
		||||
    [1] = LAYOUT_60_ansi(
 | 
			
		||||
        _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  QK_BOOT,
 | 
			
		||||
        _______,     RM_TOGG, RM_NEXT, RM_HUEU, RM_HUED, RM_SATU, RM_SATD, RM_VALU, RM_VALD, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______,       _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______, _______, _______, _______, _______,
 | 
			
		||||
        _______,            _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______,   _______,   _______,                      _______,                              _______,   _______,   _______,   _______
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,35 @@
 | 
			
		|||
/* Copyright 2021 bdtc123
 | 
			
		||||
 *
 | 
			
		||||
 * 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/>.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    [0] = LAYOUT_60_ansi(
 | 
			
		||||
        QK_GESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC,
 | 
			
		||||
        KC_TAB,      KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS,
 | 
			
		||||
        KC_CAPS,       KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_ENT,
 | 
			
		||||
        KC_LSFT,            KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT,
 | 
			
		||||
        KC_LCTL,   KC_LGUI,   KC_LALT,                       KC_SPC,                              KC_RALT,  MO(1),  KC_RGUI,       KC_RCTL
 | 
			
		||||
    ),
 | 
			
		||||
    [1] = LAYOUT_60_ansi(
 | 
			
		||||
        _______, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  QK_BOOT,
 | 
			
		||||
        _______,     RM_TOGG, RM_NEXT, RM_HUEU, RM_HUED, RM_SATU, RM_SATD, RM_VALU, RM_VALD, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______,       _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______, _______, _______, _______, _______,
 | 
			
		||||
        _______,            _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______,   _______,   _______,                      _______,                              _______,   _______,   _______,   _______
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										13
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,13 @@
 | 
			
		|||
# BM60 Poker 60% Mechanical Keyboard RGB PCB
 | 
			
		||||
 | 
			
		||||
A 60% hotswap inswitch RGB (north facing) keyboard from KP Republic. 
 | 
			
		||||
 | 
			
		||||
* Keyboard Maintainer: [bdtc123](https://github.com/bdtc123)
 | 
			
		||||
* Hardware Supported: BM60HSRGB_Poker/rev2
 | 
			
		||||
* Hardware Availability: [KP Republic](https://kprepublic.com/products/bm60-rgb-poker-60-gh60-hot-swap-custom-mechanical-keyboard-pcb-program-qmk-underglow-type-c)
 | 
			
		||||
 | 
			
		||||
Make example for this keyboard (after setting up your build environment):
 | 
			
		||||
 | 
			
		||||
    make kprepublic/bm60hsrgb_poker/rev2:default
 | 
			
		||||
 | 
			
		||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
 | 
			
		||||
							
								
								
									
										190
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										190
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/rev2.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,190 @@
 | 
			
		|||
/* Copyright 2021 bdtc123
 | 
			
		||||
 *
 | 
			
		||||
 * 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/>.
 | 
			
		||||
 */
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
 | 
			
		||||
#ifdef RGB_MATRIX_ENABLE
 | 
			
		||||
 | 
			
		||||
#    include "i2c_master.h"
 | 
			
		||||
#    include "is31fl3733.h"
 | 
			
		||||
#    include "ws2812.h"
 | 
			
		||||
 | 
			
		||||
const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
 | 
			
		||||
    { 0, SW2_CS1, SW1_CS1, SW3_CS1 },
 | 
			
		||||
    { 0, SW2_CS2, SW1_CS2, SW3_CS2 },
 | 
			
		||||
    { 0, SW2_CS3, SW1_CS3, SW3_CS3 },
 | 
			
		||||
    { 0, SW2_CS4, SW1_CS4, SW3_CS4 },
 | 
			
		||||
    { 0, SW2_CS5, SW1_CS5, SW3_CS5 },
 | 
			
		||||
    { 0, SW2_CS6, SW1_CS6, SW3_CS6 },
 | 
			
		||||
    { 0, SW2_CS7, SW1_CS7, SW3_CS7 },
 | 
			
		||||
    { 0, SW2_CS8, SW1_CS8, SW3_CS8 },
 | 
			
		||||
    { 0, SW2_CS9, SW1_CS9, SW3_CS9 },
 | 
			
		||||
    { 0, SW2_CS10, SW1_CS10, SW3_CS10 },
 | 
			
		||||
    { 0, SW2_CS11, SW1_CS11, SW3_CS11 },
 | 
			
		||||
    { 0, SW2_CS12, SW1_CS12, SW3_CS12 },
 | 
			
		||||
    { 0, SW2_CS13, SW1_CS13, SW3_CS13 },
 | 
			
		||||
    { 0, SW2_CS14, SW1_CS14, SW3_CS14 },
 | 
			
		||||
 | 
			
		||||
    { 0, SW5_CS1,  SW4_CS1,  SW6_CS1 },
 | 
			
		||||
    { 0, SW5_CS2,  SW4_CS2,  SW6_CS2 },
 | 
			
		||||
    { 0, SW5_CS3,  SW4_CS3,  SW6_CS3 },
 | 
			
		||||
    { 0, SW5_CS4,  SW4_CS4,  SW6_CS4 },
 | 
			
		||||
    { 0, SW5_CS5,  SW4_CS5,  SW6_CS5 },
 | 
			
		||||
    { 0, SW5_CS6,  SW4_CS6,  SW6_CS6 },
 | 
			
		||||
    { 0, SW5_CS7,  SW4_CS7,  SW6_CS7 },
 | 
			
		||||
    { 0, SW5_CS8,  SW4_CS8,  SW6_CS8 },
 | 
			
		||||
    { 0, SW5_CS9,  SW4_CS9,  SW6_CS9 },
 | 
			
		||||
    { 0, SW5_CS10, SW4_CS10, SW6_CS10 },
 | 
			
		||||
    { 0, SW5_CS11, SW4_CS11, SW6_CS11 },
 | 
			
		||||
    { 0, SW5_CS12, SW4_CS12, SW6_CS12 },
 | 
			
		||||
    { 0, SW5_CS13, SW4_CS13, SW6_CS13 },
 | 
			
		||||
    { 0, SW5_CS14, SW4_CS14, SW6_CS14 },
 | 
			
		||||
 | 
			
		||||
    { 0, SW8_CS1,  SW7_CS1,  SW9_CS1 },
 | 
			
		||||
    { 0, SW8_CS2,  SW7_CS2,  SW9_CS2 },
 | 
			
		||||
    { 0, SW8_CS3,  SW7_CS3,  SW9_CS3 },
 | 
			
		||||
    { 0, SW8_CS4,  SW7_CS4,  SW9_CS4 },
 | 
			
		||||
    { 0, SW8_CS5,  SW7_CS5,  SW9_CS5 },
 | 
			
		||||
    { 0, SW8_CS6,  SW7_CS6,  SW9_CS6 },
 | 
			
		||||
    { 0, SW8_CS7,  SW7_CS7,  SW9_CS7 },
 | 
			
		||||
    { 0, SW8_CS8,  SW7_CS8,  SW9_CS8 },
 | 
			
		||||
    { 0, SW8_CS9,  SW7_CS9,  SW9_CS9 },
 | 
			
		||||
    { 0, SW8_CS10, SW7_CS10, SW9_CS10 },
 | 
			
		||||
    { 0, SW8_CS11, SW7_CS11, SW9_CS11 },
 | 
			
		||||
    { 0, SW8_CS12, SW7_CS12, SW9_CS12 },
 | 
			
		||||
    { 0, SW8_CS14, SW7_CS14, SW9_CS14 },
 | 
			
		||||
 | 
			
		||||
    { 0, SW11_CS1,  SW10_CS1,  SW12_CS1 },
 | 
			
		||||
    { 0, SW11_CS2,  SW10_CS2,  SW12_CS2 },
 | 
			
		||||
    { 0, SW11_CS3,  SW10_CS3,  SW12_CS3 },
 | 
			
		||||
    { 0, SW11_CS4,  SW10_CS4,  SW12_CS4 },
 | 
			
		||||
    { 0, SW11_CS5,  SW10_CS5,  SW12_CS5 },
 | 
			
		||||
    { 0, SW11_CS6,  SW10_CS6,  SW12_CS6 },
 | 
			
		||||
    { 0, SW11_CS7,  SW10_CS7,  SW12_CS7 },
 | 
			
		||||
    { 0, SW11_CS8,  SW10_CS8,  SW12_CS8 },
 | 
			
		||||
    { 0, SW11_CS9,  SW10_CS9,  SW12_CS9 },
 | 
			
		||||
    { 0, SW11_CS10, SW10_CS10, SW12_CS10 },
 | 
			
		||||
    { 0, SW11_CS11, SW10_CS11, SW12_CS11 },
 | 
			
		||||
    { 0, SW11_CS13, SW10_CS13, SW12_CS13 },
 | 
			
		||||
 | 
			
		||||
    { 0, SW8_CS16, SW7_CS16, SW9_CS16 },
 | 
			
		||||
    { 0, SW8_CS15, SW7_CS15, SW9_CS15 },
 | 
			
		||||
    { 0, SW8_CS13, SW7_CS13, SW9_CS13 },
 | 
			
		||||
    { 0, SW5_CS15, SW4_CS15, SW6_CS15 },
 | 
			
		||||
    { 0, SW11_CS15, SW10_CS15, SW12_CS15 },
 | 
			
		||||
    { 0, SW11_CS16, SW10_CS16, SW12_CS16 },
 | 
			
		||||
    { 0, SW11_CS12, SW10_CS12, SW12_CS12 },
 | 
			
		||||
    { 0, SW5_CS16, SW4_CS16, SW6_CS16 }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
led_config_t g_led_config = {
 | 
			
		||||
    {
 | 
			
		||||
        { 0,      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, NO_LED,     40 },
 | 
			
		||||
        { 41,     42,     43,     44,     45,     46,     47,     48,     49,     50,     51, NO_LED, NO_LED,     52 },
 | 
			
		||||
        { 53,     54,     55,   NO_LED,   NO_LED, 56, NO_LED,   NO_LED,   NO_LED, 57,     58,     59, NO_LED,     60 }
 | 
			
		||||
    }, {
 | 
			
		||||
    // Esc, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -, =, Backspace
 | 
			
		||||
    {   0,   0 }, {  15,   0 }, {  30,   0 }, {  45,   0 }, {  60,   0 }, {  75,   0 }, {  90,   0 }, { 105,   0 }, { 120,   0 }, { 135,   0 }, { 150,   0 }, { 165,   0 }, { 180,   0 }, { 202,   0 },
 | 
			
		||||
    // Tab, Q, W, E, R, T, Y, U, I, O, P, [, ],  ,
 | 
			
		||||
    {   7,  16 }, {  22,  16 }, {  37,  16 }, {  52,  16 }, {  67,  16 }, {  82,  16 }, {  97,  16 }, { 112,  16 }, { 127,  16 }, { 142,  16 }, { 157,  16 }, { 172,  16 }, { 187,  16 }, { 206,  16 },
 | 
			
		||||
    // Capslock, A, S, D, F, G, H, J, K, L, ;, ', Enter
 | 
			
		||||
    {  11,  32 }, {  26,  32 }, {  41,  32 }, {  56,  32 }, {  71,  32 }, {  86,  32 }, { 101,  32 }, { 116,  32 }, { 131,  32 }, { 146,  32 }, { 161,  32 }, { 176,  32 }, { 198,  32 },
 | 
			
		||||
    // LShift, Z, X, C, V, B, N, M, ,, ., /, Shift, Up,
 | 
			
		||||
    {  18,  48 }, {  30,  48 }, {  45,  48 }, {  60,  48 }, {  75,  48 }, {  90,  48 }, { 105,  48 }, { 120,  48 }, { 135,  48 }, { 150,  48 }, { 165,  48 }, { 191,  48 },
 | 
			
		||||
    // Ctrl, GUI, Alt, Space, RAlt, FN, Left, Down, Right
 | 
			
		||||
    {   3,  64 }, {  22,  64 }, {  33,  64 }, { 101,  64 }, { 135,  64 }, { 153,  64 }, { 210,  64 }, { 225,  64 }
 | 
			
		||||
#    if WS2812_LED_COUNT > 0
 | 
			
		||||
        ,{ 28, 40}, { 62, 40}, { 96, 40}, {130, 40}, {164, 40}, {198, 40}
 | 
			
		||||
#    endif
 | 
			
		||||
}, {
 | 
			
		||||
    // Esc, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, -, =, Backspace
 | 
			
		||||
    4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    // Tab, Q, W, E, R, T, Y, U, I, O, P, [, ], backslash
 | 
			
		||||
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
 | 
			
		||||
    // Capslock, A, S, D, F, G, H, J, K, L, ;, ', Enter
 | 
			
		||||
    9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    // LShift, Z, X, C, V, B, N, M, ,, ., /, Shift, Up,
 | 
			
		||||
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    // Ctrl, GUI, Alt, Space, RAlt, FN, Left, Down, Right
 | 
			
		||||
    1, 1, 1, 4, 1, 1, 1, 1
 | 
			
		||||
#    if WS2812_LED_COUNT > 0
 | 
			
		||||
        ,2, 2, 2, 2, 2, 2
 | 
			
		||||
#    endif
 | 
			
		||||
    }
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
bool rgb_matrix_indicators_kb(void) {
 | 
			
		||||
    if (!rgb_matrix_indicators_user()) {
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
    if (host_keyboard_led_state().caps_lock) {
 | 
			
		||||
        rgb_matrix_set_color(28, 0xFF, 0xFF, 0xFF);
 | 
			
		||||
    }
 | 
			
		||||
    return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// clang-format on
 | 
			
		||||
 | 
			
		||||
// ==========================================================================
 | 
			
		||||
// Custom RGB Matrix driver that combines IS31FL3733 and WS2812
 | 
			
		||||
// ==========================================================================
 | 
			
		||||
 | 
			
		||||
static void rgb_matrix_driver_init(void) {
 | 
			
		||||
    i2c_init();
 | 
			
		||||
    is31fl3733_init(0);
 | 
			
		||||
    ws2812_init();
 | 
			
		||||
    for (uint8_t index = 0; index < IS31FL3733_LED_COUNT; index++) {
 | 
			
		||||
        bool enabled = true;
 | 
			
		||||
        is31fl3733_set_led_control_register(index, enabled, enabled, enabled);
 | 
			
		||||
    }
 | 
			
		||||
    is31fl3733_update_led_control_registers(0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void rgb_matrix_driver_flush(void) {
 | 
			
		||||
    is31fl3733_update_pwm_buffers(0);
 | 
			
		||||
#    if WS2812_LED_COUNT > 0
 | 
			
		||||
    ws2812_flush();
 | 
			
		||||
#    endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void rgb_matrix_driver_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
 | 
			
		||||
    if (index < IS31FL3733_LED_COUNT) {
 | 
			
		||||
        is31fl3733_set_color(index, red, green, blue);
 | 
			
		||||
#    if WS2812_LED_COUNT > 0
 | 
			
		||||
    } else {
 | 
			
		||||
        ws2812_set_color(index - IS31FL3733_LED_COUNT, red, green, blue);
 | 
			
		||||
#    endif
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void rgb_matrix_driver_set_color_all(uint8_t red, uint8_t green, uint8_t blue) {
 | 
			
		||||
    is31fl3733_set_color_all(red, green, blue);
 | 
			
		||||
#    if WS2812_LED_COUNT > 0
 | 
			
		||||
    ws2812_set_color_all(red, green, blue);
 | 
			
		||||
#    endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
const rgb_matrix_driver_t rgb_matrix_driver = {
 | 
			
		||||
    .init          = rgb_matrix_driver_init,
 | 
			
		||||
    .flush         = rgb_matrix_driver_flush,
 | 
			
		||||
    .set_color     = rgb_matrix_driver_set_color,
 | 
			
		||||
    .set_color_all = rgb_matrix_driver_set_color_all,
 | 
			
		||||
};
 | 
			
		||||
// clang-format on
 | 
			
		||||
 | 
			
		||||
#endif /* RGB_MATRIX_ENABLE */
 | 
			
		||||
							
								
								
									
										7
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								keyboards/kprepublic/bm60hsrgb_poker/rev2/rules.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
# The custom RGB Matrix driver combines IS31FL3733 and WS2812; things that are
 | 
			
		||||
# normally done by common_features.mk for both of these drivers need to be done
 | 
			
		||||
# here manually.
 | 
			
		||||
COMMON_VPATH += $(DRIVER_PATH)/led/issi
 | 
			
		||||
SRC += is31fl3733.c
 | 
			
		||||
I2C_DRIVER_REQUIRED = yes
 | 
			
		||||
WS2812_DRIVER_REQUIRED = yes
 | 
			
		||||
							
								
								
									
										21
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/config.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,21 @@
 | 
			
		|||
 /* Copyright 2022 bdtc123
 | 
			
		||||
  * Copyright 2022 peepeetee
 | 
			
		||||
  *
 | 
			
		||||
  * 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/>.
 | 
			
		||||
  */
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#define IS31FL3741_I2C_ADDRESS_1 IS31FL3741_I2C_ADDRESS_GND
 | 
			
		||||
 | 
			
		||||
#define RGB_MATRIX_DISABLE_SHARED_KEYCODES
 | 
			
		||||
							
								
								
									
										168
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/keyboard.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										168
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/keyboard.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,168 @@
 | 
			
		|||
{
 | 
			
		||||
    "keyboard_name": "BM68HSRGB Rev2",
 | 
			
		||||
    "manufacturer": "KPrepublic",
 | 
			
		||||
    "url": "",
 | 
			
		||||
    "maintainer": "bdtc123",
 | 
			
		||||
    "usb": {
 | 
			
		||||
        "vid": "0x4B50",
 | 
			
		||||
        "pid": "0x1131",
 | 
			
		||||
        "device_version": "0.0.2"
 | 
			
		||||
    },
 | 
			
		||||
    "ws2812": {
 | 
			
		||||
        "pin": "E2"
 | 
			
		||||
    },
 | 
			
		||||
    "rgb_matrix": {
 | 
			
		||||
        "animations": {
 | 
			
		||||
            "alphas_mods": true,
 | 
			
		||||
            "gradient_up_down": true,
 | 
			
		||||
            "gradient_left_right": true,
 | 
			
		||||
            "breathing": true,
 | 
			
		||||
            "band_sat": true,
 | 
			
		||||
            "band_val": true,
 | 
			
		||||
            "band_pinwheel_sat": true,
 | 
			
		||||
            "band_pinwheel_val": true,
 | 
			
		||||
            "band_spiral_sat": true,
 | 
			
		||||
            "band_spiral_val": true,
 | 
			
		||||
            "cycle_all": true,
 | 
			
		||||
            "cycle_left_right": true,
 | 
			
		||||
            "cycle_up_down": true,
 | 
			
		||||
            "rainbow_moving_chevron": true,
 | 
			
		||||
            "typing_heatmap": true,
 | 
			
		||||
            "digital_rain": true,
 | 
			
		||||
            "solid_reactive_simple": true,
 | 
			
		||||
            "solid_reactive": true,
 | 
			
		||||
            "solid_reactive_wide": true,
 | 
			
		||||
            "solid_reactive_multiwide": true,
 | 
			
		||||
            "solid_reactive_cross": true,
 | 
			
		||||
            "solid_reactive_multicross": true,
 | 
			
		||||
            "solid_reactive_nexus": true,
 | 
			
		||||
            "solid_reactive_multinexus": true,
 | 
			
		||||
            "splash": true,
 | 
			
		||||
            "multisplash": true,
 | 
			
		||||
            "solid_splash": true,
 | 
			
		||||
            "solid_multisplash": true
 | 
			
		||||
        },
 | 
			
		||||
        "driver": "is31fl3741",
 | 
			
		||||
        "max_brightness": 180,
 | 
			
		||||
        "sleep": true
 | 
			
		||||
    },
 | 
			
		||||
    "rgblight": {
 | 
			
		||||
        "saturation_steps": 8,
 | 
			
		||||
        "brightness_steps": 8,
 | 
			
		||||
        "led_count": 6,
 | 
			
		||||
        "max_brightness": 150,
 | 
			
		||||
        "animations": {
 | 
			
		||||
            "breathing": true,
 | 
			
		||||
            "rainbow_mood": true,
 | 
			
		||||
            "rainbow_swirl": true,
 | 
			
		||||
            "snake": true,
 | 
			
		||||
            "knight": true,
 | 
			
		||||
            "christmas": true,
 | 
			
		||||
            "static_gradient": true,
 | 
			
		||||
            "rgb_test": true,
 | 
			
		||||
            "alternating": true,
 | 
			
		||||
            "twinkle": true
 | 
			
		||||
        },
 | 
			
		||||
        "default": {
 | 
			
		||||
            "animation": "rainbow_mood"
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    "build": {
 | 
			
		||||
        "lto": true
 | 
			
		||||
    },
 | 
			
		||||
    "features": {
 | 
			
		||||
        "bootmagic": true,
 | 
			
		||||
        "command": false,
 | 
			
		||||
        "console": false,
 | 
			
		||||
        "extrakey": true,
 | 
			
		||||
        "mousekey": false,
 | 
			
		||||
        "nkro": true,
 | 
			
		||||
        "rgblight": true,
 | 
			
		||||
        "rgb_matrix": true
 | 
			
		||||
    },
 | 
			
		||||
    "matrix_pins": {
 | 
			
		||||
        "cols": ["F0", "F1", "B0", "B1", "B2", "B3", "E6", "B7", "D2", "D7", "B4", "B5", "B6", "C6", "C7"],
 | 
			
		||||
        "rows": ["D6", "D4", "D5", "D3", "F6"]
 | 
			
		||||
    },
 | 
			
		||||
    "diode_direction": "ROW2COL",
 | 
			
		||||
    "processor": "atmega32u4",
 | 
			
		||||
    "bootloader": "atmel-dfu",
 | 
			
		||||
    "layouts": {
 | 
			
		||||
        "LAYOUT_65_ansi": {
 | 
			
		||||
            "layout": [
 | 
			
		||||
                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
			
		||||
                {"matrix": [0, 1], "x": 1, "y": 0},
 | 
			
		||||
                {"matrix": [0, 2], "x": 2, "y": 0},
 | 
			
		||||
                {"matrix": [0, 3], "x": 3, "y": 0},
 | 
			
		||||
                {"matrix": [0, 4], "x": 4, "y": 0},
 | 
			
		||||
                {"matrix": [0, 5], "x": 5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 6], "x": 6, "y": 0},
 | 
			
		||||
                {"matrix": [0, 7], "x": 7, "y": 0},
 | 
			
		||||
                {"matrix": [0, 8], "x": 8, "y": 0},
 | 
			
		||||
                {"matrix": [0, 9], "x": 9, "y": 0},
 | 
			
		||||
                {"matrix": [0, 10], "x": 10, "y": 0},
 | 
			
		||||
                {"matrix": [0, 11], "x": 11, "y": 0},
 | 
			
		||||
                {"matrix": [0, 12], "x": 12, "y": 0},
 | 
			
		||||
                {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
 | 
			
		||||
                {"matrix": [0, 14], "x": 15, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [1, 1], "x": 1.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 2], "x": 2.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 3], "x": 3.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 4], "x": 4.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 5], "x": 5.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 6], "x": 6.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 7], "x": 7.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 8], "x": 8.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 9], "x": 9.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 10], "x": 10.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 11], "x": 11.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 12], "x": 12.5, "y": 1},
 | 
			
		||||
                {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [1, 14], "x": 15, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
 | 
			
		||||
                {"matrix": [2, 1], "x": 1.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 2], "x": 2.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 3], "x": 3.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 4], "x": 4.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 5], "x": 5.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 6], "x": 6.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 7], "x": 7.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 8], "x": 8.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 9], "x": 9.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 10], "x": 10.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 11], "x": 11.75, "y": 2},
 | 
			
		||||
                {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
 | 
			
		||||
                {"matrix": [2, 14], "x": 15, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
 | 
			
		||||
                {"matrix": [3, 2], "x": 2.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 3], "x": 3.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 4], "x": 4.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 5], "x": 5.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 6], "x": 6.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 7], "x": 7.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 8], "x": 8.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 9], "x": 9.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 10], "x": 10.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 11], "x": 11.25, "y": 3},
 | 
			
		||||
                {"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
 | 
			
		||||
                {"matrix": [3, 13], "x": 14, "y": 3},
 | 
			
		||||
                {"matrix": [3, 14], "x": 15, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
 | 
			
		||||
                {"matrix": [4, 9], "x": 10, "y": 4},
 | 
			
		||||
                {"matrix": [4, 10], "x": 11, "y": 4},
 | 
			
		||||
                {"matrix": [4, 11], "x": 12, "y": 4},
 | 
			
		||||
                {"matrix": [4, 12], "x": 13, "y": 4},
 | 
			
		||||
                {"matrix": [4, 13], "x": 14, "y": 4},
 | 
			
		||||
                {"matrix": [4, 14], "x": 15, "y": 4}
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,47 @@
 | 
			
		|||
 /* Copyright 2022 bdtc123
 | 
			
		||||
  *
 | 
			
		||||
  * 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/>.
 | 
			
		||||
  */
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    [0] = LAYOUT_65_ansi(
 | 
			
		||||
        QK_GESC,        KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_HOME,
 | 
			
		||||
        KC_TAB,         KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
 | 
			
		||||
        KC_CAPS,        KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,  KC_PGDN,
 | 
			
		||||
        KC_LSFT,                 KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_UP,   KC_END,
 | 
			
		||||
        KC_LCTL,        KC_LGUI, KC_LALT,                            KC_SPC,                    KC_RALT, MO(1),   KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
    ),
 | 
			
		||||
    [1] = LAYOUT_65_ansi(
 | 
			
		||||
        QK_GESC,        KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_DEL,  QK_BOOT,
 | 
			
		||||
        _______,        UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_VALU, UG_VALD, UG_SPDU, UG_SPDD, _______, _______, _______, _______,
 | 
			
		||||
        KC_CAPS,        RM_TOGG, RM_NEXT, RM_HUEU, RM_HUED, RM_SATU, RM_SATD, RM_VALU, RM_VALD, _______, _______,  _______,         _______, _______,
 | 
			
		||||
        _______,                 _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______,
 | 
			
		||||
        _______,        _______, _______,                            _______,                   _______, _______, _______, _______, KC_VOLD, _______
 | 
			
		||||
    ),
 | 
			
		||||
    [2] = LAYOUT_65_ansi(
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______,
 | 
			
		||||
        _______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______,                            _______,                   _______, _______, _______, _______, _______, _______
 | 
			
		||||
    ),
 | 
			
		||||
    [3] = LAYOUT_65_ansi(
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______,
 | 
			
		||||
        _______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______,                            _______,                   _______, _______, _______, _______, _______, _______
 | 
			
		||||
    )
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										47
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,47 @@
 | 
			
		|||
 /* Copyright 2022 bdtc123
 | 
			
		||||
  *
 | 
			
		||||
  * 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/>.
 | 
			
		||||
  */
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    [0] = LAYOUT_65_ansi(
 | 
			
		||||
        QK_GESC,        KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_HOME,
 | 
			
		||||
        KC_TAB,         KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
 | 
			
		||||
        KC_CAPS,        KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,  KC_PGDN,
 | 
			
		||||
        KC_LSFT,                 KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_UP,   KC_END,
 | 
			
		||||
        KC_LCTL,        KC_LGUI, KC_LALT,                            KC_SPC,                    KC_RALT, MO(1),   KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
    ),
 | 
			
		||||
    [1] = LAYOUT_65_ansi(
 | 
			
		||||
        QK_GESC,        KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_DEL,  QK_BOOT,
 | 
			
		||||
        _______,        UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_VALU, UG_VALD, UG_SPDU, UG_SPDD, _______, _______, _______, _______,
 | 
			
		||||
        KC_CAPS,        RM_TOGG, RM_NEXT, RM_HUEU, RM_HUED, RM_SATU, RM_SATD, RM_VALU, RM_VALD, _______, _______,  _______,         _______, _______,
 | 
			
		||||
        _______,                 _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______,
 | 
			
		||||
        _______,        _______, _______,                            _______,                   _______, _______, _______, _______, KC_VOLD, _______
 | 
			
		||||
    ),
 | 
			
		||||
    [2] = LAYOUT_65_ansi(
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______,
 | 
			
		||||
        _______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______,                            _______,                   _______, _______, _______, _______, _______, _______
 | 
			
		||||
    ),
 | 
			
		||||
    [3] = LAYOUT_65_ansi(
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______,
 | 
			
		||||
        _______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______,                            _______,                   _______, _______, _______, _______, _______, _______
 | 
			
		||||
    )
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										24
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,24 @@
 | 
			
		|||
# BM68HSRGB
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
A 65% hotswap in switch RGB keyboard from KPRepublic.
 | 
			
		||||
 | 
			
		||||
* Keyboard Maintainer: [peepeetee](https://github.com/peepeetee)
 | 
			
		||||
* Hardware Supported: BM68HSRGB
 | 
			
		||||
* Hardware Availability: [KP Republic](https://kprepublic.com/products/bm68rgb-bm68-rgb-65-hot-swappable-custom-mechanical-keyboard-pcb-programmed-qmk-via-firmware-full-rgb-switch-underglow-type-c)
 | 
			
		||||
 | 
			
		||||
Make example for this keyboard (after setting up your build environment):
 | 
			
		||||
 | 
			
		||||
    make kprepublic/bm68hsrgb/rev2:default
 | 
			
		||||
 | 
			
		||||
Flashing example for this keyboard:
 | 
			
		||||
 | 
			
		||||
    make kprepublic/bm68hsrgb/rev2:default:flash
 | 
			
		||||
 | 
			
		||||
To reset the board into bootloader mode, do one of the following:
 | 
			
		||||
 | 
			
		||||
* Short the two-pad footprint to the left of the spacebar switch while the board is plugged in
 | 
			
		||||
* Hold the Esc key while connecting the USB cable (also erases persistent settings)
 | 
			
		||||
 | 
			
		||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
 | 
			
		||||
							
								
								
									
										125
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/rev2.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										125
									
								
								keyboards/kprepublic/bm68hsrgb/rev2/rev2.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,125 @@
 | 
			
		|||
 /* Copyright 2022 bdtc123
 | 
			
		||||
  *
 | 
			
		||||
  * 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/>.
 | 
			
		||||
  */
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
 | 
			
		||||
#ifdef RGB_MATRIX_ENABLE
 | 
			
		||||
 | 
			
		||||
const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {
 | 
			
		||||
    {0, SW1_CS6, SW1_CS5, SW1_CS4},
 | 
			
		||||
    {0, SW2_CS6, SW2_CS5, SW2_CS4},
 | 
			
		||||
    {0, SW3_CS6, SW3_CS5, SW3_CS4},
 | 
			
		||||
    {0, SW4_CS6, SW4_CS5, SW4_CS4},
 | 
			
		||||
    {0, SW5_CS6, SW5_CS5, SW5_CS4},
 | 
			
		||||
    {0, SW6_CS6, SW6_CS5, SW6_CS4},
 | 
			
		||||
    {0, SW7_CS6, SW7_CS5, SW7_CS4},
 | 
			
		||||
    {0, SW8_CS6, SW8_CS5, SW8_CS4},
 | 
			
		||||
    {0, SW1_CS18, SW1_CS17, SW1_CS16},
 | 
			
		||||
    {0, SW2_CS18, SW2_CS17, SW2_CS16},
 | 
			
		||||
    {0, SW3_CS18, SW3_CS17, SW3_CS16},
 | 
			
		||||
    {0, SW4_CS18, SW4_CS17, SW4_CS16},
 | 
			
		||||
    {0, SW5_CS18, SW5_CS17, SW5_CS16},
 | 
			
		||||
    {0, SW6_CS18, SW6_CS17, SW6_CS16},
 | 
			
		||||
    {0, SW7_CS18, SW7_CS17, SW7_CS16},
 | 
			
		||||
 | 
			
		||||
    {0, SW1_CS9, SW1_CS8, SW1_CS7},
 | 
			
		||||
    {0, SW2_CS9, SW2_CS8, SW2_CS7},
 | 
			
		||||
    {0, SW3_CS9, SW3_CS8, SW3_CS7},
 | 
			
		||||
    {0, SW4_CS9, SW4_CS8, SW4_CS7},
 | 
			
		||||
    {0, SW5_CS9, SW5_CS8, SW5_CS7},
 | 
			
		||||
    {0, SW6_CS9, SW6_CS8, SW6_CS7},
 | 
			
		||||
    {0, SW7_CS9, SW7_CS8, SW7_CS7},
 | 
			
		||||
    {0, SW8_CS9, SW8_CS8, SW8_CS7},
 | 
			
		||||
    {0, SW1_CS21, SW1_CS20, SW1_CS19},
 | 
			
		||||
    {0, SW2_CS21, SW2_CS20, SW2_CS19},
 | 
			
		||||
    {0, SW3_CS21, SW3_CS20, SW3_CS19},
 | 
			
		||||
    {0, SW4_CS21, SW4_CS20, SW4_CS19},
 | 
			
		||||
    {0, SW5_CS21, SW5_CS20, SW5_CS19},
 | 
			
		||||
    {0, SW6_CS21, SW6_CS20, SW6_CS19},
 | 
			
		||||
    {0, SW7_CS21, SW7_CS20, SW7_CS19},
 | 
			
		||||
 | 
			
		||||
    {0, SW1_CS12, SW1_CS11, SW1_CS10},
 | 
			
		||||
    {0, SW2_CS12, SW2_CS11, SW2_CS10},
 | 
			
		||||
    {0, SW3_CS12, SW3_CS11, SW3_CS10},
 | 
			
		||||
    {0, SW4_CS12, SW4_CS11, SW4_CS10},
 | 
			
		||||
    {0, SW5_CS12, SW5_CS11, SW5_CS10},
 | 
			
		||||
    {0, SW6_CS12, SW6_CS11, SW6_CS10},
 | 
			
		||||
    {0, SW7_CS12, SW7_CS11, SW7_CS10},
 | 
			
		||||
    {0, SW8_CS12, SW8_CS11, SW8_CS10},
 | 
			
		||||
    {0, SW1_CS24, SW1_CS23, SW1_CS22},
 | 
			
		||||
    {0, SW2_CS24, SW2_CS23, SW2_CS22},
 | 
			
		||||
    {0, SW3_CS24, SW3_CS23, SW3_CS22},
 | 
			
		||||
    {0, SW4_CS24, SW4_CS23, SW4_CS22},
 | 
			
		||||
    {0, SW6_CS24, SW6_CS23, SW6_CS22},
 | 
			
		||||
    {0, SW7_CS24, SW7_CS23, SW7_CS22},
 | 
			
		||||
 | 
			
		||||
    {0, SW1_CS15, SW1_CS14, SW1_CS13},
 | 
			
		||||
    {0, SW3_CS15, SW3_CS14, SW3_CS13},
 | 
			
		||||
    {0, SW4_CS15, SW4_CS14, SW4_CS13},
 | 
			
		||||
    {0, SW5_CS15, SW5_CS14, SW5_CS13},
 | 
			
		||||
    {0, SW6_CS15, SW6_CS14, SW6_CS13},
 | 
			
		||||
    {0, SW7_CS15, SW7_CS14, SW7_CS13},
 | 
			
		||||
    {0, SW8_CS15, SW8_CS14, SW8_CS13},
 | 
			
		||||
    {0, SW1_CS27, SW1_CS26, SW1_CS25},
 | 
			
		||||
    {0, SW2_CS27, SW2_CS26, SW2_CS25},
 | 
			
		||||
    {0, SW3_CS27, SW3_CS26, SW3_CS25},
 | 
			
		||||
    {0, SW4_CS27, SW4_CS26, SW4_CS25},
 | 
			
		||||
    {0, SW5_CS27, SW5_CS26, SW5_CS25},
 | 
			
		||||
    {0, SW6_CS27, SW6_CS26, SW6_CS25},
 | 
			
		||||
    {0, SW7_CS27, SW7_CS26, SW7_CS25},
 | 
			
		||||
 | 
			
		||||
    {0, SW1_CS3, SW1_CS2, SW1_CS1},
 | 
			
		||||
    {0, SW2_CS3, SW2_CS2, SW2_CS1},
 | 
			
		||||
    {0, SW3_CS3, SW3_CS2, SW3_CS1},
 | 
			
		||||
    {0, SW7_CS3, SW7_CS2, SW7_CS1},
 | 
			
		||||
    {0, SW2_CS30, SW2_CS29, SW2_CS28},
 | 
			
		||||
    {0, SW3_CS30, SW3_CS29, SW3_CS28},
 | 
			
		||||
    {0, SW4_CS30, SW4_CS29, SW4_CS28},
 | 
			
		||||
    {0, SW5_CS30, SW5_CS29, SW5_CS28},
 | 
			
		||||
    {0, SW6_CS30, SW6_CS29, SW6_CS28},
 | 
			
		||||
    {0, SW7_CS30, SW7_CS29, SW7_CS28}
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
led_config_t g_led_config = { {
 | 
			
		||||
    {  0,      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, NO_LED,    42,  43 },
 | 
			
		||||
    {  44,NO_LED, 45,     46,     47,    48,  49,      50,      51, 52,  53,  54,     55,    56,  57 },
 | 
			
		||||
    {  58,    59, 60, NO_LED, NO_LED,NO_LED,  61,  NO_LED,  NO_LED, 62,  63,  64,     65,    66,  67 }
 | 
			
		||||
}, {
 | 
			
		||||
    {0,0},{15,0},{30,0},{45,0},{60,0},{75,0},{90,0},{105,0},{120,0},{135,0},{150,0},{165,0},{180,0},{203,0},{224,0},
 | 
			
		||||
	{4,16},{23,16},{38,16},{53,16},{68,16},{83,16},{98,16},{113,16},{128,16},{143,16},{158,16},{173,16},{188,16},{206,16},{224,16},
 | 
			
		||||
	{6,32},{26,32},{41,32},{56,32},{71,32},{86,32},{101,32},{116,32},{131,32},{146,32},{161,32},{176,32},{201,32},{224,32},
 | 
			
		||||
	{9,48},{34,48},{49,48},{64,48},{79,48},{94,48},{109,48},{124,48},{139,48},{154,48},{169,48},{189,48},{210,48},{224,48},
 | 
			
		||||
        {   2,  64 }, {  21,  64 }, {  39,  64 },                                           {  96,  64 },                             { 150,  64 }, { 165,  64 }, { 180,  64 }, { 195,  64 }, { 210,  64 }, { 224,  64 }
 | 
			
		||||
}, {
 | 
			
		||||
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
 | 
			
		||||
    1, 1, 1, 4, 1, 1, 1, 1, 1, 1
 | 
			
		||||
} };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
bool rgb_matrix_indicators_kb(void) {
 | 
			
		||||
    if (!rgb_matrix_indicators_user()) {
 | 
			
		||||
        return false;
 | 
			
		||||
    }
 | 
			
		||||
    if (host_keyboard_led_state().caps_lock) {
 | 
			
		||||
        rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF);
 | 
			
		||||
    }
 | 
			
		||||
    return true;
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue