aboutsummaryrefslogtreecommitdiff
path: root/keyboards/latin60rgb
diff options
context:
space:
mode:
authorwangyifu <18438880@qq.com>2021-05-14 10:00:45 +0800
committerGitHub <noreply@github.com>2021-05-13 19:00:45 -0700
commitf594b22332dfb9bc0ead6b4604a050bf8674a800 (patch)
tree9e716b697b8036aaf4af29c0f3735417bebd417d /keyboards/latin60rgb
parent0aaddf697fb977c8457f3b0231c2f007ac1e0fb9 (diff)
downloadqmk_firmware-f594b22332dfb9bc0ead6b4604a050bf8674a800.tar.gz
qmk_firmware-f594b22332dfb9bc0ead6b4604a050bf8674a800.zip
[Keyboard] 60% keyboard with ISSI3733RGB IC (#11559)
Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
Diffstat (limited to 'keyboards/latin60rgb')
-rw-r--r--keyboards/latin60rgb/config.h80
-rw-r--r--keyboards/latin60rgb/info.json73
-rw-r--r--keyboards/latin60rgb/keymaps/default/keymap.c40
-rw-r--r--keyboards/latin60rgb/keymaps/via/keymap.c40
-rw-r--r--keyboards/latin60rgb/keymaps/via/rules.mk2
-rw-r--r--keyboards/latin60rgb/latin60rgb.c124
-rw-r--r--keyboards/latin60rgb/latin60rgb.h34
-rw-r--r--keyboards/latin60rgb/readme.md14
-rw-r--r--keyboards/latin60rgb/rules.mk25
9 files changed, 432 insertions, 0 deletions
diff --git a/keyboards/latin60rgb/config.h b/keyboards/latin60rgb/config.h
new file mode 100644
index 000000000..bbe502054
--- /dev/null
+++ b/keyboards/latin60rgb/config.h
@@ -0,0 +1,80 @@
1 /* Copyright 2021 latincompass
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#pragma once
17
18/* USB Device descriptor parameter */
19#include "config_common.h"
20#define VENDOR_ID 0x6C63 // "lc" = latincompass
21#define PRODUCT_ID 0x6C69 // "lp" = latin60RGB
22#define DEVICE_VER 0x0001
23#define MANUFACTURER latincompass
24#define PRODUCT Latin60RGB
25
26/* key matrix size */
27#define MATRIX_ROWS 5
28#define MATRIX_COLS 14
29
30/*
31 * Keyboard Matrix Assignments
32 *
33 * Change this to how you wired your keyboard
34 * COLS: AVR pins used for columns, left to right
35 * ROWS: AVR pins used for rows, top to bottom
36 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
37 * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
38 *
39 */
40#define MATRIX_ROW_PINS {C7, C6, B6, B5, B4 }
41#define MATRIX_COL_PINS {F7, F6, F5, F4, F1, F0, E6, B0, B1, B2, B3, D6, D4, D3}
42#define UNUSED_PINS
43
44/* COL2ROW, ROW2COL*/
45#define DIODE_DIRECTION ROW2COL
46
47/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
48#define DEBOUNCE 3
49
50/* disable these deprecated features by default */
51#define NO_ACTION_MACRO
52#define NO_ACTION_FUNCTION
53
54#ifdef RGB_MATRIX_ENABLE
55# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
56# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended
57# define RGB_MATRIX_KEYPRESSES
58# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
59# define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN
60# define DISABLE_RGB_MATRIX_BAND_SAT
61# define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
62# define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT
63# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
64# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
65# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
66# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
67# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
68# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
69# define DISABLE_RGB_MATRIX_SPLASH
70# define DISABLE_RGB_MATRIX_MULTISPLASH
71# define DISABLE_RGB_MATRIX_SOLID_SPLASH
72# define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH
73# define DISABLE_RGB_MATRIX_DIGITAL_RAIN
74# define DRIVER_ADDR_1 0b1010000
75# define DRIVER_ADDR_2 0b1010000 // this is here for compliancy reasons.
76# define DRIVER_COUNT 2
77# define DRIVER_1_LED_TOTAL 60
78# define DRIVER_LED_TOTAL DRIVER_1_LED_TOTAL
79#endif
80
diff --git a/keyboards/latin60rgb/info.json b/keyboards/latin60rgb/info.json
new file mode 100644
index 000000000..5f4a0d845
--- /dev/null
+++ b/keyboards/latin60rgb/info.json
@@ -0,0 +1,73 @@
1{
2 "keyboard_name": "latin60rgb",
3 "url": "",
4 "maintainer": "latincompass",
5 "width": 14,
6 "height": 5,
7 "layouts": {
8 "LAYOUT_60_latin_hhkb": {
9 "layout": [
10 { "label": "Esc", "x": 0, "y": 0 },
11 { "label": "!", "x": 1, "y": 0 },
12 { "label": "@", "x": 2, "y": 0 },
13 { "label": "#", "x": 3, "y": 0 },
14 { "label": "$", "x": 4, "y": 0 },
15 { "label": "%", "x": 5, "y": 0 },
16 { "label": "^", "x": 6, "y": 0 },
17 { "label": "&", "x": 7, "y": 0 },
18 { "label": "*", "x": 8, "y": 0 },
19 { "label": "(", "x": 9, "y": 0 },
20 { "label": ")", "x": 10, "y": 0 },
21 { "label": "_", "x": 11, "y": 0 },
22 { "label": "+", "x": 12, "y": 0 },
23 { "label": "|", "x": 13, "y": 0 , "w": 2.0},
24 { "label": "Tab", "x": 0, "y": 1, "w": 1.5 },
25 { "label": "Q", "x": 1.5, "y": 1 },
26 { "label": "W", "x": 2.5, "y": 1 },
27 { "label": "E", "x": 3.5, "y": 1 },
28 { "label": "R", "x": 4.5, "y": 1 },
29 { "label": "T", "x": 5.5, "y": 1 },
30 { "label": "Y", "x": 6.5, "y": 1 },
31 { "label": "U", "x": 7.5, "y": 1 },
32 { "label": "I", "x": 8.5, "y": 1 },
33 { "label": "O", "x": 9.5, "y": 1 },
34 { "label": "P", "x": 10.5, "y": 1 },
35 { "label": "{", "x": 11.5, "y": 1 },
36 { "label": "}", "x": 12.5, "y": 1 },
37 { "label": "Delete", "x": 13.5, "y": 1, "w": 1.5 },
38 { "label": "Control", "x": 0, "y": 2, "w": 1.75 },
39 { "label": "A", "x": 1.75, "y": 2 },
40 { "label": "S", "x": 2.75, "y": 2 },
41 { "label": "D", "x": 3.75, "y": 2 },
42 { "label": "F", "x": 4.75, "y": 2 },
43 { "label": "G", "x": 5.75, "y": 2 },
44 { "label": "H", "x": 6.75, "y": 2 },
45 { "label": "J", "x": 7.75, "y": 2 },
46 { "label": "K", "x": 8.75, "y": 2 },
47 { "label": "L", "x": 9.75, "y": 2 },
48 { "label": ":", "x": 10.75, "y": 2 },
49 { "label": "\"", "x": 11.75, "y": 2 },
50 { "label": "Return", "x": 12.75, "y": 2, "w": 2.25 },
51 { "label": "Shift", "x": 0, "y": 3, "w": 2.0 },
52 { "label": "Z", "x": 2.0, "y": 3 },
53 { "label": "X", "x": 3.0, "y": 3 },
54 { "label": "C", "x": 4.0, "y": 3 },
55 { "label": "V", "x": 5.0, "y": 3 },
56 { "label": "B", "x": 6.0, "y": 3 },
57 { "label": "N", "x": 7.0, "y": 3 },
58 { "label": "M", "x": 8.0, "y": 3 },
59 { "label": "<", "x": 9.0, "y": 3 },
60 { "label": ">", "x": 10.0, "y": 3 },
61 { "label": "?", "x": 11.0, "y": 3 },
62 { "label": "Shift", "x": 12.0, "y": 3, "w": 1.0 },
63 { "label": "Shift", "x": 13.0, "y": 3, "w": 1.0 },
64 { "label": "Fn", "x": 14.0, "y": 3, "w": 1.0 },
65 { "label": "L", "x": 1.25, "y": 4 , "w": 1.25},
66 { "label": "L", "x": 2.5, "y": 4, "w": 1.25 },
67 { "x": 3.75, "y": 4, "w": 6.25 },
68 { "label": "L", "x": 10, "y": 4, "w": 1.25 },
69 { "label": "L", "x": 11.25, "y": 4 }
70 ]
71 }
72 }
73}
diff --git a/keyboards/latin60rgb/keymaps/default/keymap.c b/keyboards/latin60rgb/keymaps/default/keymap.c
new file mode 100644
index 000000000..a44bbf660
--- /dev/null
+++ b/keyboards/latin60rgb/keymaps/default/keymap.c
@@ -0,0 +1,40 @@
1 /* Copyright 2021 latincompass
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#include QMK_KEYBOARD_H
17
18const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
19 [0] = LAYOUT_60_latin_hhkb(
20 KC_ESC, 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,
21 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_DEL,
22 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,
23 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), MO(2),
24 KC_LCTRL, KC_LGUI, KC_SPC, KC_PGUP, KC_PGDOWN
25 ),
26 [1] = LAYOUT_60_latin_hhkb(
27 RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
28 _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET,
29 _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, _______,
30 KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,_______,
31 KC_LALT, _______, _______, _______, _______
32 ),
33 [2] = LAYOUT_60_latin_hhkb(
34 RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, RGB_SPI, RGB_SPD, KC_F11, KC_F12, KC_DEL,
35 _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET,
36 _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______,
37 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,
38 _______, _______, _______, _______, _______
39 )
40};
diff --git a/keyboards/latin60rgb/keymaps/via/keymap.c b/keyboards/latin60rgb/keymaps/via/keymap.c
new file mode 100644
index 000000000..a44bbf660
--- /dev/null
+++ b/keyboards/latin60rgb/keymaps/via/keymap.c
@@ -0,0 +1,40 @@
1 /* Copyright 2021 latincompass
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#include QMK_KEYBOARD_H
17
18const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
19 [0] = LAYOUT_60_latin_hhkb(
20 KC_ESC, 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,
21 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_DEL,
22 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,
23 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), MO(2),
24 KC_LCTRL, KC_LGUI, KC_SPC, KC_PGUP, KC_PGDOWN
25 ),
26 [1] = LAYOUT_60_latin_hhkb(
27 RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
28 _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET,
29 _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, _______,
30 KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,_______,
31 KC_LALT, _______, _______, _______, _______
32 ),
33 [2] = LAYOUT_60_latin_hhkb(
34 RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, RGB_SPI, RGB_SPD, KC_F11, KC_F12, KC_DEL,
35 _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET,
36 _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______,
37 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,
38 _______, _______, _______, _______, _______
39 )
40};
diff --git a/keyboards/latin60rgb/keymaps/via/rules.mk b/keyboards/latin60rgb/keymaps/via/rules.mk
new file mode 100644
index 000000000..36b7ba9cb
--- /dev/null
+++ b/keyboards/latin60rgb/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
1VIA_ENABLE = yes
2LTO_ENABLE = yes
diff --git a/keyboards/latin60rgb/latin60rgb.c b/keyboards/latin60rgb/latin60rgb.c
new file mode 100644
index 000000000..cdd6fed44
--- /dev/null
+++ b/keyboards/latin60rgb/latin60rgb.c
@@ -0,0 +1,124 @@
1 /* Copyright 2021 latincompass
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#include "latin60rgb.h"
17
18#ifdef RGB_MATRIX_ENABLE
19const is31_led g_is31_leds[DRIVER_LED_TOTAL] = {
20 { 0, K_13, J_13, L_13 },
21 { 0, K_12, J_12, L_12 },
22 { 0, K_11, J_11, L_11 },
23 { 0, K_10, J_10, L_10 },
24 { 0, K_9, J_9, L_9 },
25 { 0, K_8, J_8, L_8 },
26 { 0, K_7, J_7, L_7 },
27 { 0, K_6, J_6, L_6 },
28 { 0, K_5, J_5, L_5 },
29 { 0, K_4, J_4, L_4 },
30 { 0, K_3, J_3, L_3 },
31 { 0, K_2, J_2, L_2 },
32 { 0, K_1, J_1, L_1 },
33
34 { 0, H_16, G_16, I_16 },
35 { 0, H_15, G_15, I_15 },
36 { 0, H_14, G_14, I_14 },
37 { 0, H_13, G_13, I_13 },
38 { 0, H_12, G_12, I_12 },
39 { 0, H_11, G_11, I_11 },
40 { 0, H_10, G_10, I_10 },
41 { 0, H_9, G_9, I_9 },
42 { 0, H_8, G_8, I_8 },
43 { 0, H_7, G_7, I_7 },
44 { 0, H_6, G_6, I_6 },
45 { 0, H_5, G_5, I_5 },
46 { 0, H_4, G_4, I_4 },
47 { 0, H_3, G_3, I_3 },
48 { 0, H_2, G_2, I_2 },
49 { 0, H_1, G_1, I_1 },
50
51 { 0, E_16, D_16, F_16 },
52 { 0, E_15, D_15, F_15 },
53 { 0, E_14, D_14, F_14 },
54 { 0, E_13, D_13, F_13 },
55 { 0, E_12, D_12, F_12 },
56 { 0, E_11, D_11, F_11 },
57 { 0, E_10, D_10, F_10 },
58 { 0, E_9, D_9, F_9 },
59 { 0, E_8, D_8, F_8 },
60 { 0, E_7, D_7, F_7 },
61 { 0, E_6, D_6, F_6 },
62 { 0, E_5, D_5, F_5 },
63 { 0, E_4, D_4, F_4 },
64 { 0, E_3, D_3, F_3 },
65 { 0, E_2, D_2, F_2 },
66 { 0, E_1, D_1, F_1 },
67
68 { 0, B_16, A_16, C_16 },
69 { 0, B_14, A_14, C_14 },
70 { 0, B_13, A_13, C_13 },
71 { 0, B_12, A_12, C_12 },
72 { 0, B_11, A_11, C_11 },
73 { 0, B_10, A_10, C_10 },
74 { 0, B_9, A_9, C_9 },
75 { 0, B_8, A_8, C_8 },
76 { 0, B_7, A_7, C_7 },
77 { 0, B_6, A_6, C_6 },
78 { 0, B_5, A_5, C_5 },
79 { 0, B_4, A_4, C_4 },
80 { 0, B_3, A_3, C_3 },
81 { 0, B_2, A_2, C_2 },
82 { 0, B_1, A_1, C_1 }
83
84};
85
86led_config_t g_led_config = {
87 {
88 { 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46 },
89 { 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32 },
90 { 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19 },
91 { 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5 },
92 { 4, 3, 2, 1 ,0 }
93 }, {
94 { 224, 0 }, { 208, 0 }, { 192, 0 }, { 176, 0 }, { 160, 0 }, { 144, 0 }, { 128, 0 }, { 112, 0 }, { 96, 0 }, { 80, 0 }, { 64, 0 }, { 48, 0 }, { 32, 0 }, { 16, 0 },
95 { 220, 16 }, { 200, 16 }, { 184, 16 }, { 168, 16 }, { 152, 16 }, { 136, 16 }, { 120, 16 }, { 104, 16 }, { 88, 16 }, { 72, 16 }, { 56, 16 }, { 40, 16 }, { 24, 16 }, { 4, 16 },
96 { 204, 32 }, { 188, 32 }, { 172, 32 }, { 156, 32 }, { 140, 32 }, { 124, 32 }, { 108, 32 }, { 92, 32 }, { 76, 32 }, { 60, 32 }, { 44, 32 }, { 28, 32 }, { 6, 32 },
97 { 224, 48 }, { 198, 64 }, { 202, 48 }, { 180, 48 }, { 164, 48 }, { 148, 48 }, { 132, 48 }, { 116, 48 }, { 100, 48 }, { 84, 48 }, { 68, 48 }, { 52, 48 }, { 20, 48 }, { 10, 48 },
98 { 218, 64 }, { 178, 64 }, { 112, 64 }, { 46, 64 }, { 26, 64 }
99 }, {
100 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
101 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
102 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
103 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
104 1, 1, 4, 1, 1
105 }
106};
107
108void suspend_power_down_kb(void) {
109 rgb_matrix_set_suspend_state(true);
110 suspend_power_down_user();
111}
112
113void suspend_wakeup_init_kb(void) {
114 rgb_matrix_set_suspend_state(false);
115 suspend_wakeup_init_user();
116}
117
118__attribute__ ((weak))
119void rgb_matrix_indicators_user(void) {
120 if (host_keyboard_led_state().caps_lock) {
121 rgb_matrix_set_color(41, 0xFF, 0xFF, 0xFF);
122 }
123}
124#endif
diff --git a/keyboards/latin60rgb/latin60rgb.h b/keyboards/latin60rgb/latin60rgb.h
new file mode 100644
index 000000000..fb1ecb66a
--- /dev/null
+++ b/keyboards/latin60rgb/latin60rgb.h
@@ -0,0 +1,34 @@
1 /* Copyright 2021 latincompass
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#pragma once
17
18#include "quantum.h"
19
20#define XXX KC_NO
21
22#define LAYOUT_60_latin_hhkb( \
23 K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
24 K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
25 K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, \
26 K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \
27 K40, K41, K42, K4A, K4B \
28) { \
29 { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
30 { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \
31 { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C }, \
32 { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D }, \
33 { K40, K41, K42, K4A, K4B, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX } \
34}
diff --git a/keyboards/latin60rgb/readme.md b/keyboards/latin60rgb/readme.md
new file mode 100644
index 000000000..3b5715c2d
--- /dev/null
+++ b/keyboards/latin60rgb/readme.md
@@ -0,0 +1,14 @@
1# Latin60RGB
2
3![Latin60rgb](https://github.com/latincompass/latin62RGB-keyboard/blob/main/PCB-%20(1).png)
4
5 60% RGB keyboard use IS31FL3733 IC like HHKB
6
7* Keyboard Maintainer: [latincompass](https://github.com/latincompass)
8* Hardware Availability: https://github.com/latincompass/latin62RGB-keyboard/blob/main/PCB-%20(1).png
9
10Make example for this keyboard (after setting up your build environment):
11
12 make latin60rgb:default
13
14See 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).
diff --git a/keyboards/latin60rgb/rules.mk b/keyboards/latin60rgb/rules.mk
new file mode 100644
index 000000000..64df3bfe2
--- /dev/null
+++ b/keyboards/latin60rgb/rules.mk
@@ -0,0 +1,25 @@
1
2# MCU name
3MCU = atmega32u4
4
5# Bootloader selection
6BOOTLOADER = atmel-dfu
7
8# Build Options
9# change yes to no to disable
10#
11BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
12MOUSEKEY_ENABLE = yes # Mouse keys
13EXTRAKEY_ENABLE = yes # Audio control and System control
14CONSOLE_ENABLE = no # Console for debug
15COMMAND_ENABLE = no # Commands for debug and configuration
16# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
17SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
18# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
19NKRO_ENABLE = yes # USB Nkey Rollover
20BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
21RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
22BLUETOOTH_ENABLE = no # Enable Bluetooth
23AUDIO_ENABLE = no # Audio output
24RGB_MATRIX_ENABLE = yes # Use RGB matrix
25RGB_MATRIX_DRIVER = IS31FL3733