[Keyboard] Add kudox game keyboard (#6460)

* Add configurations for Kudox Game Keyboard rev1.

* Modified Kudox Game Keyboard readme and keymap.

* Remove unnecessary codes.

* Set BootLoader caterina.

* Remove wrong settings on rules.mk.

* Clean up config.h.

* Modified MATRIX_ROWS on kudox_game/rev1/config.h.

* Modified RGB_LED_NUM on kudox_game/rev1/config.h.
This commit is contained in:
x1
2019-08-07 01:16:55 +09:00
committed by MechMerlin
parent d967d3a6b5
commit e5831d79c0
14 changed files with 397 additions and 0 deletions

View File

@@ -0,0 +1,91 @@
/*
Copyright 2019 Kumao Kobo <kumaokobo@gmail.com>
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
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x9696
#define DEVICE_VER 0x0100
#define MANUFACTURER Kumao Kobo
#define PRODUCT The Kudox Game Keyboard
#define DESCRIPTION Custom keyboard for game
/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 7
// wiring of each half
#define MATRIX_ROW_PINS { D4, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2, B6 }
// #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6, F5} //uncomment this line and comment line above if you need to reverse left-to-right key order
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
// #define BACKLIGHT_LEVELS 3
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* serial.c configuration for split keyboard */
#define SOFT_SERIAL_PIN D0
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* ws2812 RGB LED */
#define RGB_DI_PIN D3
#undef RGBLED_NUM
#define RGBLED_NUM 7 // Number of LEDs
#define RGBLIGHT_ANIMATIONS
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
// #define NO_DEBUG
/* disable print */
// #define NO_PRINT
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_DELAY 0
#define MOUSEKEY_TIME_TO_MAX 60
#define MOUSEKEY_MAX_SPEED 7
#define MOUSEKEY_WHEEL_DELAY 0

View File

@@ -0,0 +1,22 @@
#include "kudox_game.h"
#ifdef SSD1306OLED
void led_set_kb(uint8_t usb_led) {
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
led_set_user(usb_led);
}
#endif
void matrix_init_kb(void) {
// // green led on
// DDRD |= (1<<5);
// PORTD &= ~(1<<5);
// // orange led on
// DDRB |= (1<<0);
// PORTB &= ~(1<<0);
matrix_init_user();
};

View File

@@ -0,0 +1,20 @@
#pragma once
#include "../kudox_game.h"
#include "quantum.h"
#define LAYOUT( \
k00, k01, k02, k03, k04, k05, \
k11, k12, k13, k14, k15, \
k20, k21, k22, k23, k24, k25, k26, \
k30, k31, k34, k35, k36, \
k40, k45, k46 \
) \
{ \
{ k00, k01, k02, k03, k04, k05, KC_NO }, \
{ KC_NO, k11, k12, k13, k14, k15, KC_NO }, \
{ k20, k21, k22, k23, k24, k25, k26 }, \
{ k30, k31, KC_NO, KC_NO, k34, k35, k36 }, \
{ k40, KC_NO, KC_NO, KC_NO, KC_NO, k45, k46 } \
}

View File