aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/tenki/config.h41
-rw-r--r--keyboards/tenki/info.json12
-rw-r--r--keyboards/tenki/keymaps/default/keymap.c19
-rw-r--r--keyboards/tenki/keymaps/via/keymap.c38
-rw-r--r--keyboards/tenki/keymaps/via/rules.mk2
-rw-r--r--keyboards/tenki/readme.md16
-rw-r--r--keyboards/tenki/rules.mk27
-rw-r--r--keyboards/tenki/tenki.c1
-rw-r--r--keyboards/tenki/tenki.h18
9 files changed, 174 insertions, 0 deletions
diff --git a/keyboards/tenki/config.h b/keyboards/tenki/config.h
new file mode 100644
index 000000000..b3c7201d8
--- /dev/null
+++ b/keyboards/tenki/config.h
@@ -0,0 +1,41 @@
1#pragma once
2
3#include "config_common.h"
4
5/* USB Device descriptor parameter */
6#define VENDOR_ID 0x5058 // "PX"
7#define PRODUCT_ID 0x5445 // "TE"
8#define DEVICE_VER 0x1001
9#define MANUFACTURER Pixlup
10#define PRODUCT TENKI
11#define DESCRIPTION Customizable Mechanical Numpad
12
13/* key matrix size */
14#define MATRIX_ROWS 5
15#define MATRIX_COLS 4
16
17/* key matrix pins */
18#define MATRIX_ROW_PINS { B1, B4, F6, B6, B2 }
19#define MATRIX_COL_PINS { F4, F5, D4, D0 }
20#define UNUSED_PINS
21
22#define DIODE_DIRECTION COL2ROW
23
24/* Set 0 if debouncing isn't needed */
25#define DEBOUNCE 5
26
27/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
28#define LOCKING_SUPPORT_ENABLE
29
30/* Locking resynchronize hack */
31#define LOCKING_RESYNC_ENABLE
32
33
34/* ws2812 RGB LED */
35#define RGB_DI_PIN D1
36#define RGBLIGHT_ANIMATIONS
37#define RGBLED_NUM 3 // Number of LEDs
38#define RGBLIGHT_HUE_STEP 10
39#define RGBLIGHT_SAT_STEP 10
40#define RGBLIGHT_VAL_STEP 10
41#define RGBLIGHT_SLEEP
diff --git a/keyboards/tenki/info.json b/keyboards/tenki/info.json
new file mode 100644
index 000000000..6c37a4560
--- /dev/null
+++ b/keyboards/tenki/info.json
@@ -0,0 +1,12 @@
1{
2 "keyboard_name": "TENKI",
3 "url": "https://tokopedia.com/pixlup",
4 "maintainer": "eriqadams",
5 "width": 4,
6 "height": 5,
7 "layouts": {
8 "LAYOUT_ortho_5x4": {
9 "layout": [{"label":"Num Lock", "x":0, "y":0}, {"label":"/", "x":1, "y":0}, {"label":"*", "x":2, "y":0}, {"label":"-", "x":3, "y":0}, {"label":"7", "x":0, "y":1}, {"label":"8", "x":1, "y":1}, {"label":"9", "x":2, "y":1}, {"label":"+", "x":3, "y":1}, {"label":"4", "x":0, "y":2}, {"label":"5", "x":1, "y":2}, {"label":"6", "x":2, "y":2}, {"label":"Bspc", "x":3, "y":2}, {"label":"1", "x":0, "y":3}, {"label":"2", "x":1, "y":3}, {"label":"3", "x":2, "y":3}, {"label":"=", "x":3, "y":3}, {"label":"0", "x":0, "y":4}, {"label":"PrtScr", "x":1, "y":4}, {"label":".", "x":2, "y":4}, {"label":"Enter", "x":3, "y":4}]
10 }
11 }
12}
diff --git a/keyboards/tenki/keymaps/default/keymap.c b/keyboards/tenki/keymaps/default/keymap.c
new file mode 100644
index 000000000..85a8f3230
--- /dev/null
+++ b/keyboards/tenki/keymaps/default/keymap.c
@@ -0,0 +1,19 @@
1#include QMK_KEYBOARD_H
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 [0] = LAYOUT_ortho_5x4(
5 KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,\
6 KC_P7, KC_P8, KC_P9, KC_PPLS,\
7 KC_P4, KC_P5, KC_P6, KC_BSPC,\
8 KC_P1, KC_P2, KC_P3, KC_PEQL,\
9 KC_P0, KC_PSCR , LT(1,KC_PDOT), KC_PENT
10 ),
11
12 [1] = LAYOUT_ortho_5x4(
13 KC_TRNS, RGB_HUI, RGB_HUD, RGB_VAD,\
14 KC_TRNS, KC_VOLU, RGB_TOG, RGB_VAI,\
15 KC_MPRV, KC_MUTE, KC_MNXT, KC_TRNS,\
16 KC_TRNS, KC_VOLD, KC_TRNS, KC_TRNS,\
17 RESET, KC_TRNS, KC_TRNS, RGB_MOD
18 )
19};
diff --git a/keyboards/tenki/keymaps/via/keymap.c b/keyboards/tenki/keymaps/via/keymap.c
new file mode 100644
index 000000000..9180d8d97
--- /dev/null
+++ b/keyboards/tenki/keymaps/via/keymap.c
@@ -0,0 +1,38 @@
1#include QMK_KEYBOARD_H
2
3const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
4 [0] = LAYOUT_ortho_5x4(
5 KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,\
6 KC_P7, KC_P8, KC_P9, KC_PPLS,\
7 KC_P4, KC_P5, KC_P6, KC_BSPC,\
8 KC_P1, KC_P2, KC_P3, KC_PEQL,\
9 KC_P0, KC_PSCR, LT(1,KC_PDOT), KC_PENT
10 ),
11
12 [1] = LAYOUT_ortho_5x4(
13 KC_TRNS, RGB_HUI, RGB_HUD, RGB_VAD,\
14 KC_TRNS, KC_VOLU, RGB_TOG, RGB_VAI,\
15 KC_MPRV, KC_MUTE, KC_MNXT, KC_TRNS,\
16 KC_TRNS, KC_VOLD, KC_TRNS, KC_TRNS,\
17 RESET, KC_TRNS, KC_TRNS, RGB_MOD
18 ),
19
20 [2] = LAYOUT_ortho_5x4(
21 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
22 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
23 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
24 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
25 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
26 ),
27
28 [3] = LAYOUT_ortho_5x4(
29 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
30 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35
36};
37
38
diff --git a/keyboards/tenki/keymaps/via/rules.mk b/keyboards/tenki/keymaps/via/rules.mk
new file mode 100644
index 000000000..36b7ba9cb
--- /dev/null
+++ b/keyboards/tenki/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
1VIA_ENABLE = yes
2LTO_ENABLE = yes
diff --git a/keyboards/tenki/readme.md b/keyboards/tenki/readme.md
new file mode 100644
index 000000000..bb9d42406
--- /dev/null
+++ b/keyboards/tenki/readme.md
@@ -0,0 +1,16 @@
1# TENKI
2![TENKI](https://i.imgur.com/nOaxFwR.png)
3
4TENKI is a customizable hotswap mechanical numpad.
5Supported layout:
6![TENKI LAYOUT](https://i.imgur.com/sD9kxID.png)
7
8Keyboard Maintainer: [eriqadams](https://github.com/eriqadams)
9Hardware Supported: TENKI PCB, Pro Micro
10Hardware Availability: [If you're in Indonesia you can purchase here](https://tokopedia.com/pixlup)
11
12Make example for this keyboard (after setting up your build environment):
13
14 make tenki:default
15
16See 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/tenki/rules.mk b/keyboards/tenki/rules.mk
new file mode 100644
index 000000000..4c47d369b
--- /dev/null
+++ b/keyboards/tenki/rules.mk
@@ -0,0 +1,27 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5# Teensy halfkay
6# Pro Micro caterina
7# Atmel DFU atmel-dfu
8# LUFA DFU lufa-dfu
9# QMK DFU qmk-dfu
10# ATmega32A bootloadHID
11BOOTLOADER = caterina
12
13# Build Options
14# comment out to disable the options.
15#
16BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration
17MOUSEKEY_ENABLE = yes # Mouse keys
18EXTRAKEY_ENABLE = yes # Audio control and System control
19CONSOLE_ENABLE = no # Console for debug
20COMMAND_ENABLE = no # Commands for debug and configuration
21SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
22NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
23BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
24AUDIO_ENABLE = no
25RGBLIGHT_ENABLE = yes
26
27LAYOUTS = ortho_5x4
diff --git a/keyboards/tenki/tenki.c b/keyboards/tenki/tenki.c
new file mode 100644
index 000000000..318f8d475
--- /dev/null
+++ b/keyboards/tenki/tenki.c
@@ -0,0 +1 @@
#include "tenki.h"
diff --git a/keyboards/tenki/tenki.h b/keyboards/tenki/tenki.h
new file mode 100644
index 000000000..29ec6303a
--- /dev/null
+++ b/keyboards/tenki/tenki.h
@@ -0,0 +1,18 @@
1#pragma once
2
3#include "quantum.h"
4
5#define LAYOUT_ortho_5x4( \
6 K00, K01, K02, K03, \
7 K10, K11, K12, K13, \
8 K20, K21, K22, K23, \
9 K30, K31, K32, K33, \
10 K40, K41, K42, K43 \
11) { \
12 { K00, K01, K02, K03}, \
13 { K10, K11, K12, K13}, \
14 { K20, K21, K22, K23}, \
15 { K30, K31, K32, K33}, \
16 { K40, K41, K42, K43} \
17}
18