summaryrefslogtreecommitdiff
path: root/keyboards/takashicompany
diff options
context:
space:
mode:
authorInigoGutierrez <inigogf.95@gmail.com>2022-09-25 16:02:54 +0200
committerInigoGutierrez <inigogf.95@gmail.com>2022-09-25 16:02:54 +0200
commit6afdd9d74da250e47ac64d6690bd19d037045e99 (patch)
tree661f6cfb244c02bcd1fbfe8fb9b2bd9242a91394 /keyboards/takashicompany
parent93a55e61b59d20f7cd842cce02e5b18a63a23612 (diff)
parent1bdf4cdc22ae57d111efb2f7d71e405e5c7b3f11 (diff)
downloadqmk_firmware-6afdd9d74da250e47ac64d6690bd19d037045e99.tar.gz
qmk_firmware-6afdd9d74da250e47ac64d6690bd19d037045e99.zip
Merge branch 'master' into taamas
Diffstat (limited to 'keyboards/takashicompany')
-rw-r--r--keyboards/takashicompany/center_enter/config.h8
-rw-r--r--keyboards/takashicompany/center_enter/info.json6
-rw-r--r--keyboards/takashicompany/center_enter/readme.md2
-rw-r--r--keyboards/takashicompany/compacx/config.h8
-rw-r--r--keyboards/takashicompany/compacx/info.json6
-rw-r--r--keyboards/takashicompany/compacx/readme.md2
-rw-r--r--keyboards/takashicompany/dogtag/config.h8
-rw-r--r--keyboards/takashicompany/dogtag/info.json6
-rw-r--r--keyboards/takashicompany/dogtag/readme.md2
-rw-r--r--keyboards/takashicompany/endzone34/config.h8
-rw-r--r--keyboards/takashicompany/endzone34/info.json6
-rw-r--r--keyboards/takashicompany/goat51/info.json498
-rw-r--r--keyboards/takashicompany/goat51/keymaps/default/keymap.c123
-rw-r--r--keyboards/takashicompany/goat51/keymaps/via/config.h6
-rw-r--r--keyboards/takashicompany/goat51/keymaps/via/keymap.c106
-rw-r--r--keyboards/takashicompany/goat51/keymaps/via/rules.mk2
-rw-r--r--keyboards/takashicompany/goat51/readme.md40
-rw-r--r--keyboards/takashicompany/goat51/rules.mk1
-rw-r--r--keyboards/takashicompany/heavy_left/config.h8
-rw-r--r--keyboards/takashicompany/heavy_left/info.json8
-rw-r--r--keyboards/takashicompany/heavy_left/readme.md2
-rw-r--r--keyboards/takashicompany/minizone/config.h8
-rw-r--r--keyboards/takashicompany/minizone/info.json277
-rw-r--r--keyboards/takashicompany/minizone/keymaps/default/keymap.c52
-rw-r--r--keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/config.h7
-rw-r--r--keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/keymap.c465
-rw-r--r--keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/rules.mk4
-rw-r--r--keyboards/takashicompany/minizone/keymaps/via/keymap.c73
-rw-r--r--keyboards/takashicompany/minizone/readme.md2
-rw-r--r--keyboards/takashicompany/qoolee/config.h8
-rw-r--r--keyboards/takashicompany/qoolee/info.json6
-rw-r--r--keyboards/takashicompany/qoolee/readme.md2
-rw-r--r--keyboards/takashicompany/radialex/config.h8
-rw-r--r--keyboards/takashicompany/radialex/info.json6
-rw-r--r--keyboards/takashicompany/radialex/keymaps/default/keymap.c69
-rw-r--r--keyboards/takashicompany/radialex/keymaps/via/config.h2
-rw-r--r--keyboards/takashicompany/radialex/keymaps/via/keymap.c72
-rw-r--r--keyboards/takashicompany/radialex/readme.md2
-rw-r--r--keyboards/takashicompany/spreadwriter/readme.md2
39 files changed, 1503 insertions, 418 deletions
diff --git a/keyboards/takashicompany/center_enter/config.h b/keyboards/takashicompany/center_enter/config.h
index d6840ca682..aa675c32ad 100644
--- a/keyboards/takashicompany/center_enter/config.h
+++ b/keyboards/takashicompany/center_enter/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0012
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT Center x Enter
-
/* key matrix size */
#define MATRIX_ROWS 3
#define MATRIX_COLS 12
@@ -42,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define MATRIX_ROW_PINS { E6, B4, B5 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, D7, B2, B6, D0, D4, C6}
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/center_enter/info.json b/keyboards/takashicompany/center_enter/info.json
index cd7861f453..c9ecdb67ec 100644
--- a/keyboards/takashicompany/center_enter/info.json
+++ b/keyboards/takashicompany/center_enter/info.json
@@ -1,7 +1,13 @@
{
"keyboard_name": "Center x Enter",
+ "manufacturer": "takashicompany",
"url": "",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0012",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/center_enter/readme.md b/keyboards/takashicompany/center_enter/readme.md
index d8db5cc7eb..1a7f16ac68 100644
--- a/keyboards/takashicompany/center_enter/readme.md
+++ b/keyboards/takashicompany/center_enter/readme.md
@@ -26,4 +26,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/compacx/config.h b/keyboards/takashicompany/compacx/config.h
index 1db4a7357a..10c70e472b 100644
--- a/keyboards/takashicompany/compacx/config.h
+++ b/keyboards/takashicompany/compacx/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0014
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT Compacx
-
/* key matrix size */
#define MATRIX_ROWS 5 * 2
#define MATRIX_COLS 7
@@ -42,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 }
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/compacx/info.json b/keyboards/takashicompany/compacx/info.json
index 431579feb1..7690d3c333 100644
--- a/keyboards/takashicompany/compacx/info.json
+++ b/keyboards/takashicompany/compacx/info.json
@@ -1,7 +1,13 @@
{
"keyboard_name": "Compacx",
+ "manufacturer": "takashicompany",
"url": "https://github.com/takashicompany/compacx",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0014",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/compacx/readme.md b/keyboards/takashicompany/compacx/readme.md
index ac5cfee169..6aca4b45f8 100644
--- a/keyboards/takashicompany/compacx/readme.md
+++ b/keyboards/takashicompany/compacx/readme.md
@@ -26,4 +26,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/dogtag/config.h b/keyboards/takashicompany/dogtag/config.h
index bc4c44d24c..adcf8d7321 100644
--- a/keyboards/takashicompany/dogtag/config.h
+++ b/keyboards/takashicompany/dogtag/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0018
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT DogTag
-
/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 5
@@ -45,7 +38,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_ROW_PINS_RIGHT { B2, B6, B3 }
#define MATRIX_COL_PINS_RIGHT { B1, F7, F6, F5, F4 }
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/dogtag/info.json b/keyboards/takashicompany/dogtag/info.json
index 72bd5eb136..b9f82c26cb 100644
--- a/keyboards/takashicompany/dogtag/info.json
+++ b/keyboards/takashicompany/dogtag/info.json
@@ -1,7 +1,13 @@
{
"keyboard_name": "DogTag",
+ "manufacturer": "takashicompany",
"url": "https://github.com/takashicompany/dogtag",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0018",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/dogtag/readme.md b/keyboards/takashicompany/dogtag/readme.md
index a68ea6f53b..3947e4b807 100644
--- a/keyboards/takashicompany/dogtag/readme.md
+++ b/keyboards/takashicompany/dogtag/readme.md
@@ -34,4 +34,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/endzone34/config.h b/keyboards/takashicompany/endzone34/config.h
index c2c9e04200..f74b828516 100644
--- a/keyboards/takashicompany/endzone34/config.h
+++ b/keyboards/takashicompany/endzone34/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0006
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT EndZone34
-
/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 10
@@ -42,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define MATRIX_ROW_PINS { B3, B2, B6, B5 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, D4, C6, D7, E6, B4 }
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/endzone34/info.json b/keyboards/takashicompany/endzone34/info.json
index a70799b39b..2284f7a3b4 100644
--- a/keyboards/takashicompany/endzone34/info.json
+++ b/keyboards/takashicompany/endzone34/info.json
@@ -1,7 +1,13 @@
{
"keyboard_name": "EndZone34",
+ "manufacturer": "takashicompany",
"url": "https://github.com/takashicompany/endzone34",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0006",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/goat51/info.json b/keyboards/takashicompany/goat51/info.json
new file mode 100644
index 0000000000..b87b08161e
--- /dev/null
+++ b/keyboards/takashicompany/goat51/info.json
@@ -0,0 +1,498 @@
+{
+ "manufacturer": "takashicompany",
+ "keyboard_name": "GOAT51",
+ "maintainer": "takashicompany",
+ "development_board": "promicro",
+ "diode_direction": "COL2ROW",
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "encoder": true,
+ "rgblight": true
+ },
+ "matrix_pins": {
+ "cols": [
+ "D4",
+ "C6",
+ "D7",
+ "E6",
+ "B4",
+ "B5",
+ "D2"
+ ],
+ "rows": [
+ "F4",
+ "F5",
+ "F6",
+ "F7",
+ "B1",
+ "B3",
+ "B2",
+ "B6"
+ ]
+ },
+ "encoder": {
+ "rotary": [
+ { "pin_a": "D1", "pin_b": "D0" }
+ ]
+ },
+ "url": "https://github.com/takashicompany/goat51",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x0029",
+ "vid": "0x7463"
+ },
+ "rgblight": {
+ "led_count": 11,
+ "pin": "D3",
+ "hue_steps": 10,
+ "saturation_steps": 17,
+ "brightness_steps": 17,
+ "animations": {
+ "alternating": true,
+ "breathing": true,
+ "christmas": true,
+ "knight": true,
+ "rainbow_mood": true,
+ "rainbow_swirl": true,
+ "rgb_test": true,
+ "snake": true,
+ "static_gradient": true,
+ "twinkle": true
+ }
+ },
+ "layouts": {
+ "LAYOUT": {
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0.5
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 1,
+ "y": 0.5
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 2,
+ "y": 0.25
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 1
+ ],
+ "x": 10,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 13,
+ "y": 0.25
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 14,
+ "y": 0.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 15,
+ "y": 0.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 1
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 2,
+ "y": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 3,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 1,
+ 4
+ ],
+ "x": 4,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 5,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 7.5,
+ "y": 0.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 10,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 11,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 12,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 5,
+ 4
+ ],
+ "x": 13,
+ "y": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 14,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 15,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 1,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 2,
+ "y": 2.25
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 3,
+ "y": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 4,
+ "y": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 5,
+ "y": 2
+ },
+ {
+ "matrix": [
+ 6,
+ 1
+ ],
+ "x": 10,
+ "y": 2
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 11,
+ "y": 2
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 12,
+ "y": 2
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 13,
+ "y": 2.25
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 14,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 15,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 0,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 1,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 2,
+ "y": 3.25
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 3,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 3,
+ 4
+ ],
+ "x": 4,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 5,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 6,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 9,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 7,
+ 1
+ ],
+ "x": 10,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 11,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 12,
+ "y": 3
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 13,
+ "y": 3.25
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 14,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 15,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 8,
+ "y": 1.5
+ }
+ ]
+ }
+ }
+} \ No newline at end of file
diff --git a/keyboards/takashicompany/goat51/keymaps/default/keymap.c b/keyboards/takashicompany/goat51/keymaps/default/keymap.c
new file mode 100644
index 0000000000..4e2c0e2d57
--- /dev/null
+++ b/keyboards/takashicompany/goat51/keymaps/default/keymap.c
@@ -0,0 +1,123 @@
+// Copyright 2022 takashicompany (@takashicompany)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+enum custom_keycodes {
+ GOAT51 = SAFE_RANGE,
+ WEB,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ // 0: JIS-Alphabet
+ LAYOUT(
+ KC_ESC, LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ KC_LCTL, KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, GOAT51, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT, KC_ENT,
+ KC_LSFT, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_DEL,
+ TG(6), KC_PGUP, KC_PGDN, KC_LCTL, KC_LGUI, ALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_RALT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
+ KC_PGDN, KC_PGUP
+ ),
+
+ // 1: JIS-Num
+ LAYOUT(
+ KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS,
+ KC_TRNS, LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, GOAT51, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 2: JIS-Shift-Num
+ LAYOUT(
+ KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_PLUS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), GOAT51, KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 3: US-Alphabet
+ LAYOUT(
+ KC_TRNS, LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_TRNS,
+ KC_TRNS, KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, GOAT51, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_TRNS,
+ TG(6), KC_PGUP, KC_PGDN, KC_LCTL, KC_LGUI, ALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(5, KC_SPC), LT(4, KC_LANG1), KC_RALT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
+ KC_PGDN, KC_PGUP
+ ),
+
+ // 4: US-Num
+ LAYOUT(
+ KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS,
+ KC_TRNS, KC_CIRC, KC_AT, KC_SLSH, KC_MINS, KC_UNDS, GOAT51, KC_SCLN, KC_COLN, KC_LBRC, KC_RBRC, KC_JYEN, KC_TRNS,
+ KC_TRNS, LT(5, KC_TILD), KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 5: US-Shift-Num
+ LAYOUT(
+ KC_TRNS, KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_BSLS, KC_TRNS,
+ KC_TRNS, KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, GOAT51, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 6: Cursor
+ LAYOUT(
+ KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PAST, KC_PCMM, GOAT51, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_P1), KC_P2, KC_P3, KC_PMNS, KC_KP_EQUAL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ TG(6), KC_P0, KC_PDOT, KC_PENT, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 7: Function
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, GOAT51, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ KC_TRNS, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(8), MO(9), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 8: LED
+ LAYOUT(
+ KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, DF(0), DF(3), KC_TRNS,
+ KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, GOAT51, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ )
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case GOAT51:
+ if (record->event.pressed) {
+ SEND_STRING("GOAT51");
+ rgblight_toggle();
+ }
+ return false;
+
+ case WEB:
+ if (record->event.pressed) {
+ SEND_STRING("github.com/takashicompany/goat51");
+ }
+ return false;
+ }
+
+ return true;
+}
+
+bool encoder_update_user(uint8_t index, bool clockwise) {
+
+ if (clockwise) {
+ tap_code(KC_MS_WH_DOWN);
+ } else {
+ tap_code(KC_MS_WH_UP);
+ }
+
+ return true;
+} \ No newline at end of file
diff --git a/keyboards/takashicompany/goat51/keymaps/via/config.h b/keyboards/takashicompany/goat51/keymaps/via/config.h
new file mode 100644
index 0000000000..dc91fa69c2
--- /dev/null
+++ b/keyboards/takashicompany/goat51/keymaps/via/config.h
@@ -0,0 +1,6 @@
+// Copyright 2022 takashicompany (@takashicompany)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define DYNAMIC_KEYMAP_LAYER_COUNT 7 \ No newline at end of file
diff --git a/keyboards/takashicompany/goat51/keymaps/via/keymap.c b/keyboards/takashicompany/goat51/keymaps/via/keymap.c
new file mode 100644
index 0000000000..6adb87dc32
--- /dev/null
+++ b/keyboards/takashicompany/goat51/keymaps/via/keymap.c
@@ -0,0 +1,106 @@
+// Copyright 2022 takashicompany (@takashicompany)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+enum custom_keycodes {
+ GOAT51 = SAFE_RANGE,
+ WEB,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ // 0: JIS-Alphabet
+ LAYOUT(
+ KC_ESC, LT(4, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
+ KC_LCTL, KC_A, KC_S, LT(3, KC_D), KC_F, KC_G, GOAT51, KC_H, KC_J, LT(3, KC_K), KC_L, KC_ENT, KC_ENT,
+ KC_LSFT, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_DEL,
+ TG(3), KC_PGUP, KC_PGDN, KC_LCTL, KC_LGUI, ALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_RALT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT,
+ KC_PGDN, KC_PGUP
+ ),
+
+ // 1: JIS-Num
+ LAYOUT(
+ KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS,
+ KC_TRNS, LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, GOAT51, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 2: JIS-Shift-Num
+ LAYOUT(
+ KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_PLUS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), GOAT51, KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 3: Cursor
+ LAYOUT(
+ KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PAST, KC_PCMM, GOAT51, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_P1), KC_P2, KC_P3, KC_PMNS, KC_KP_EQUAL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ TG(3), KC_P0, KC_PDOT, KC_PENT, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 4: Function
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, GOAT51, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ KC_TRNS, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(5), MO(6), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ // 5: LED
+ LAYOUT(
+ KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, GOAT51, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS
+ ),
+
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case GOAT51:
+ if (record->event.pressed) {
+ SEND_STRING("GOAT51");
+ rgblight_toggle();
+ }
+ return false;
+
+ case WEB:
+ if (record->event.pressed) {
+ SEND_STRING("github.com/takashicompany/goat51");
+ }
+ return false;
+ }
+
+ return true;
+}
+
+#if defined(ENCODER_MAP_ENABLE)
+const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
+ { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN) },
+ { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+ { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
+};
+#endif \ No newline at end of file
diff --git a/keyboards/takashicompany/goat51/keymaps/via/rules.mk b/keyboards/takashicompany/goat51/keymaps/via/rules.mk
new file mode 100644
index 0000000000..4253f570f0
--- /dev/null
+++ b/keyboards/takashicompany/goat51/keymaps/via/rules.mk
@@ -0,0 +1,2 @@
+VIA_ENABLE = yes
+ENCODER_MAP_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/takashicompany/goat51/readme.md b/keyboards/takashicompany/goat51/readme.md
new file mode 100644
index 0000000000..b2edaa157e
--- /dev/null
+++ b/keyboards/takashicompany/goat51/readme.md
@@ -0,0 +1,40 @@
+# 🐐 GOAT51
+
+![takashicompany/GOAT51](https://i.imgur.com/7xD9a4zh.jpg)
+
+GOAT51は51キーのキーボードです。
+特徴的な放射状のキーレイアウトは指を自然に置くことができ、効率的な入力が可能です。
+MX互換のキースイッチとChoc v1キースイッチの取り付けに対応しております。
+またPCBにキースイッチソケットを取り付けることが可能で、容易にキースイッチの交換ができます。
+キーボードの中央にはお気に入りのキーキャップを取り付ける専用スペースがあり、アルチザンキーキャップやお気に入りのキーキャップを飾ることができます。
+実はそこにはロータリーエンコーダを置くこともできちゃいます。
+
+---
+GOAT51 is a 51-key keyboard.
+The distinctive radial key layout allows the fingers to be placed naturally for efficient typing.
+It supports the installation of MX compatible key switches and Choc v1 key switches.
+A key switch socket can also be installed on the PCB for easy keyswitch replacement.
+There is a dedicated space in the center of the keyboard for mounting your favorite keycaps, allowing you to display Artisan keycaps or your favorite keycaps.
+In fact, you can even place a rotary encoder there.
+
+* Keyboard Maintainer: [takashicompany](https://github.com/takashicompany)
+* Hardware Supported: GOAT51 PCB, Pro Micro
+* Hardware Availability: https://github.com/takashicompany/goat51
+
+Make example for this keyboard (after setting up your build environment):
+
+ make takashicompany/goat51:default
+
+Flashing example for this keyboard:
+
+ make takashicompany/goat51:default:flash
+
+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).
+
+## Bootloader
+
+Enter the bootloader in 3 ways:
+
+* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
+* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/goat51/rules.mk b/keyboards/takashicompany/goat51/rules.mk
new file mode 100644
index 0000000000..7ff128fa69
--- /dev/null
+++ b/keyboards/takashicompany/goat51/rules.mk
@@ -0,0 +1 @@
+# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/takashicompany/heavy_left/config.h b/keyboards/takashicompany/heavy_left/config.h
index 4c3138fc8e..fa31dccb90 100644
--- a/keyboards/takashicompany/heavy_left/config.h
+++ b/keyboards/takashicompany/heavy_left/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0015
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT Heavy Left
-
/* key matrix size */
#define MATRIX_ROWS 5 * 2
#define MATRIX_COLS 10
@@ -42,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, D1, D0 }
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/heavy_left/info.json b/keyboards/takashicompany/heavy_left/info.json
index 878618e63d..6f04de1738 100644
--- a/keyboards/takashicompany/heavy_left/info.json
+++ b/keyboards/takashicompany/heavy_left/info.json
@@ -1,7 +1,13 @@
{
- "keyboard_name": "heavy_left",
+ "keyboard_name": "Heavy Left",
+ "manufacturer": "takashicompany",
"url": "",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0015",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/heavy_left/readme.md b/keyboards/takashicompany/heavy_left/readme.md
index 4cd0e1b0cc..a048103f84 100644
--- a/keyboards/takashicompany/heavy_left/readme.md
+++ b/keyboards/takashicompany/heavy_left/readme.md
@@ -30,4 +30,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/minizone/config.h b/keyboards/takashicompany/minizone/config.h
index 73a85e2d9f..0c8def659f 100644
--- a/keyboards/takashicompany/minizone/config.h
+++ b/keyboards/takashicompany/minizone/config.h
@@ -5,13 +5,6 @@
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0021
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT miniZone
-
/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 7
@@ -28,7 +21,6 @@
*/
#define MATRIX_ROW_PINS { D4, C6, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2}
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/minizone/info.json b/keyboards/takashicompany/minizone/info.json
index 75e0c6258e..51fb57276c 100644
--- a/keyboards/takashicompany/minizone/info.json
+++ b/keyboards/takashicompany/minizone/info.json
@@ -1,239 +1,58 @@
{
"keyboard_name": "miniZone",
+ "manufacturer": "takashicompany",
"url": "https://github.com/takashicompany/minizone",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0021",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
- {
- "x": 1.68,
- "y": 0,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 7.56,
- "y": 0,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 0.84,
- "y": 0.21,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 2.52,
- "y": 0.21,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 6.72,
- "y": 0.21,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 8.4,
- "y": 0.21,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 0,
- "y": 0.42,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 3.36,
- "y": 0.42,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 5.88,
- "y": 0.42,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 9.24,
- "y": 0.42,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 1.68,
- "y": 0.84,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 7.56,
- "y": 0.84,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 0.84,
- "y": 1.05,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 2.52,
- "y": 1.05,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 6.72,
- "y": 1.05,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 8.4,
- "y": 1.05,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 0,
- "y": 1.26,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 3.36,
- "y": 1.26,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 5.88,
- "y": 1.26,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 9.24,
- "y": 1.26,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 1.68,
- "y": 1.68,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 7.56,
- "y": 1.68,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 0.84,
- "y": 1.89,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 2.52,
- "y": 1.89,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 6.72,
- "y": 1.89,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 8.4,
- "y": 1.89,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 0,
- "y": 2.1,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 3.36,
- "y": 2.1,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 5.88,
- "y": 2.1,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 9.24,
- "y": 2.1,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 1.68,
- "y": 2.52,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 7.56,
- "y": 2.52,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 2.52,
- "y": 2.73,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 6.72,
- "y": 2.73,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 3.36,
- "y": 2.94,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 4.2,
- "y": 2.94,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 5.04,
- "y": 2.94,
- "w": 0.84,
- "h": 0.84
- },
- {
- "x": 5.88,
- "y": 2.94,
- "w": 0.84,
- "h": 0.84
- }
+ { "x": 0, "y": 0.42, "w": 0.84, "h": 0.84 },
+ { "x": 0.84, "y": 0.21, "w": 0.84, "h": 0.84 },
+ { "x": 1.68, "y": 0, "w": 0.84, "h": 0.84 },
+ { "x": 2.52, "y": 0.21, "w": 0.84, "h": 0.84 },
+ { "x": 3.36, "y": 0.42, "w": 0.84, "h": 0.84 },
+ { "x": 5.88, "y": 0.42, "w": 0.84, "h": 0.84 },
+ { "x": 6.72, "y": 0.21, "w": 0.84, "h": 0.84 },
+ { "x": 7.56, "y": 0, "w": 0.84, "h": 0.84 },
+ { "x": 8.4, "y": 0.21, "w": 0.84, "h": 0.84 },
+ { "x": 9.24, "y": 0.42, "w": 0.84, "h": 0.84 },
+
+ { "x": 0, "y": 1.26, "w": 0.84, "h": 0.84 },
+ { "x": 0.84, "y": 1.05, "w": 0.84, "h": 0.84 },
+ { "x": 1.68, "y": 0.84, "w": 0.84, "h": 0.84 },
+ { "x": 2.52, "y": 1.05, "w": 0.84, "h": 0.84 },
+ { "x": 3.36, "y": 1.26, "w": 0.84, "h": 0.84 },
+ { "x": 5.88, "y": 1.26, "w": 0.84, "h": 0.84 },
+ { "x": 6.72, "y": 1.05, "w": 0.84, "h": 0.84 },
+ { "x": 7.56, "y": 0.84, "w": 0.84, "h": 0.84 },
+ { "x": 8.4, "y": 1.05, "w": 0.84, "h": 0.84 },
+ { "x": 9.24, "y": 1.26, "w": 0.84, "h": 0.84 },
+
+ { "x": 0, "y": 2.1, "w": 0.84, "h": 0.84 },
+ { "x": 0.84, "y": 1.89, "w": 0.84, "h": 0.84 },
+ { "x": 1.68, "y": 1.68, "w": 0.84, "h": 0.84 },
+ { "x": 2.52, "y": 1.89, "w": 0.84, "h": 0.84 },
+ { "x": 3.36, "y": 2.1, "w": 0.84, "h": 0.84 },
+ { "x": 5.88, "y": 2.1, "w": 0.84, "h": 0.84 },
+ { "x": 6.72, "y": 1.89, "w": 0.84, "h": 0.84 },
+ { "x": 7.56, "y": 1.68, "w": 0.84, "h": 0.84 },
+ { "x": 8.4, "y": 1.89, "w": 0.84, "h": 0.84 },
+ { "x": 9.24, "y": 2.1, "w": 0.84, "h": 0.84 },
+
+ { "x": 1.68, "y": 2.52, "w": 0.84, "h": 0.84 },
+ { "x": 2.52, "y": 2.73, "w": 0.84, "h": 0.84 },
+ { "x": 3.36, "y": 2.94, "w": 0.84, "h": 0.84 },
+ { "x": 4.2, "y": 2.94, "w": 0.84, "h": 0.84 },
+ { "x": 5.04, "y": 2.94, "w": 0.84, "h": 0.84 },
+ { "x": 5.88, "y": 2.94, "w": 0.84, "h": 0.84 },
+ { "x": 6.72, "y": 2.73, "w": 0.84, "h": 0.84 },
+ { "x": 7.56, "y": 2.52, "w": 0.84, "h": 0.84 }
]
}
}
-} \ No newline at end of file
+}
diff --git a/keyboards/takashicompany/minizone/keymaps/default/keymap.c b/keyboards/takashicompany/minizone/keymaps/default/keymap.c
index 0d651325b2..51c9cc1678 100644
--- a/keyboards/takashicompany/minizone/keymaps/default/keymap.c
+++ b/keyboards/takashicompany/minizone/keymaps/default/keymap.c
@@ -6,55 +6,63 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT(
- LT(6, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_A, KC_S, LT(5, KC_D), KC_F, KC_G, KC_H, KC_J, LT(5, KC_K), KC_L, KC_ENT,
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT,
LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC,
- KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), KC_SPC, LT(1, KC_LANG1), KC_PGUP, KC_NO
+ KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_PGUP, KC_PGDN
),
-
+
LAYOUT(
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN,
+ LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN),
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN),
+ KC_PLUS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN),
KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
- LAYOUT(LT(6, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_A, KC_S, LT(5, KC_D), KC_F, KC_G, KC_H, KC_J, LT(5, KC_K), KC_L, KC_ENT,
+
+ LAYOUT(
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT,
LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC,
- KC_TRNS, KC_TRNS, LALT_T(KC_LANG2), LSFT_T(KC_TAB), KC_SPC, LT(3, KC_LANG1), KC_TRNS, KC_TRNS
+ KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(5, KC_SPC), LT(4, KC_LANG1), KC_PGUP, KC_PGDN
),
-
+
LAYOUT(
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
KC_CIRC, KC_AT, KC_SLSH, KC_MINS, KC_UNDS, KC_SCLN, KC_COLN, KC_LBRC, KC_RBRC, KC_JYEN,
- MO(4), KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
+ LT(5, KC_TILD), KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_0,
- KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
- KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
+ KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_BSLS,
+ KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
+ KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
- KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_WH_U, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO,
- KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_WH_D, KC_LANG1, KC_NO, KC_NO, KC_DEL,
+ KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO,
+ KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_NO, KC_LANG1, KC_NO, KC_NO, KC_DEL,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
+ ),
+
LAYOUT(
KC_NO, KC_TAB, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
KC_NO, KC_NO, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(7), MO(8),
+ KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(8), MO(9),
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(2),
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(3),
RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
diff --git a/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/config.h b/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/config.h
new file mode 100644
index 0000000000..bcc6982848
--- /dev/null
+++ b/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/config.h
@@ -0,0 +1,7 @@
+// Copyright 2022 takashicompany (@takashicompany)
+// SPDX-License-Identifier: GPL-2.0-or-later
+#pragma once
+
+#define DYNAMIC_KEYMAP_LAYER_COUNT 10
+#define PIMORONI_TRACKBALL_SCALE 1
+#define POINTING_DEVICE_TASK_THROTTLE_MS 1 \ No newline at end of file
diff --git a/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/keymap.c b/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/keymap.c
new file mode 100644
index 0000000000..f1652d344a
--- /dev/null
+++ b/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/keymap.c
@@ -0,0 +1,465 @@
+// Copyright 2022 takashicompany (@takashicompany)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include QMK_KEYBOARD_H
+
+typedef union {
+ uint32_t raw;
+ struct {
+ int8_t trackball_movement_ratio;
+ int8_t mode;
+ };
+} user_config_t;
+
+user_config_t user_config;
+
+enum custom_keycodes {
+ KC_MY_BTN1 = SAFE_RANGE,
+ KC_MY_BTN2,
+ KC_MY_BTN3,
+ KC_MY_SCR,
+ KC_TB_RAT_INC,
+ KC_TB_RAT_DEC,
+ KC_TB_MODE,
+};
+
+
+enum click_state {
+ NONE = 0,
+ WAITING, // マウスレイヤーが有効になるのを待つ。 Wait for mouse layer to activate.
+ CLICKABLE, // マウスレイヤー有効になりクリック入力が取れる。 Mouse layer is enabled to take click input.
+ CLICKING, // クリック中。 Clicking.
+ SCROLLING // スクロール中。 Scrolling.
+};
+
+enum click_state state; // 現在のクリック入力受付の状態 Current click input reception status
+uint16_t click_timer; // タイマー。状態に応じて時間で判定する。 Timer. Time to determine the state of the system.
+
+uint16_t to_clickable_time = 10; // この秒数(千分の一秒)、WAITING状態ならクリックレイヤーが有効になる。 For this number of seconds (milliseconds), if in WAITING state, the click layer is activated.
+uint16_t to_reset_time = 1000; // この秒数(千分の一秒)、CLICKABLE状態ならクリックレイヤーが無効になる。 For this number of seconds (milliseconds), the click layer is disabled if in CLICKABLE state.
+
+uint16_t click_layer = 9; // マウス入力が可能になった際に有効になるレイヤー。Layers enabled when mouse input is enabled
+
+int16_t scroll_v_mouse_interval_counter; // 垂直スクロールの入力をカウントする。 Counting Vertical Scroll Inputs
+int16_t scroll_h_mouse_interval_counter; // 水平スクロールの入力をカウントする。 Counts horizontal scrolling inputs.
+
+int16_t scroll_v_threshold = 30; // この閾値を超える度に垂直スクロールが実行される。 Vertical scrolling is performed each time this threshold is exceeded.
+int16_t scroll_h_threshold = 30; // この閾値を超える度に水平スクロールが実行される。 Each time this threshold is exceeded, horizontal scrolling is performed.
+
+int16_t after_click_lock_movement = 0; // クリック入力後の移動量を測定する変数。 Variable that measures the amount of movement after a click input.
+
+int16_t mouse_record_threshold = 30; // ポインターの動きを一時的に記録するフレーム数。 Number of frames in which the pointer movement is temporarily recorded.
+
+int16_t mouse_record_x;
+int16_t mouse_record_y;
+int16_t mouse_record_count;
+
+int16_t mouse_move_remain_count;
+
+bool is_record_mouse;
+
+bool is_mouse_move_x_min;
+int16_t mouse_move_x_sign;
+int16_t mouse_move_y_sign;
+
+double mouse_interval_delta;
+double mouse_interval_counter;
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ LAYOUT(
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT,
+ LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC,
+ KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_PGUP, KC_PGDN
+ ),
+
+ LAYOUT(
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
+ LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN,
+ LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN),
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN),
+ KC_PLUS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN),
+ KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT,
+ LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC,
+ KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(5, KC_SPC), LT(4, KC_LANG1), KC_PGUP, KC_PGDN
+ ),
+
+ LAYOUT(
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
+ KC_CIRC, KC_AT, KC_SLSH, KC_MINS, KC_UNDS, KC_SCLN, KC_COLN, KC_LBRC, KC_RBRC, KC_JYEN,
+ LT(5, KC_TILD), KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_BSLS,
+ KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
+ KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
+ KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO,
+ KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_NO, KC_LANG1, KC_NO, KC_NO, KC_DEL,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_NO, KC_TAB, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
+ KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(8), MO(9),
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TB_RAT_INC, KC_TB_RAT_DEC, KC_TB_MODE, DF(0), DF(3),
+ RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, EEP_RST, KC_NO, KC_NO, KC_NO, KC_NO,
+ RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MY_BTN1, KC_MY_SCR, KC_MY_BTN2, KC_MY_BTN3, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_MY_SCR, KC_MY_BTN1, KC_TRNS, KC_MY_SCR, KC_MY_BTN2, KC_MY_BTN3, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ )
+};
+
+void eeconfig_init_user(void) {
+ user_config.raw = 0;
+ user_config.trackball_movement_ratio = 10;
+ user_config.mode = 0;
+ eeconfig_update_user(user_config.raw);
+}
+
+void keyboard_post_init_user(void) {
+ user_config.raw = eeconfig_read_user();
+}
+
+// クリック用のレイヤーを有効にする。 Enable layers for clicks
+void enable_click_layer(void) {
+ layer_on(click_layer);
+ click_timer = timer_read();
+ state = CLICKABLE;
+}
+
+// クリック用のレイヤーを無効にする。 Disable layers for clicks.
+void disable_click_layer(void) {
+ state = NONE;
+ layer_off(click_layer);
+ scroll_v_mouse_interval_counter = 0;
+ scroll_h_mouse_interval_counter = 0;
+}
+
+// 自前の絶対数を返す関数。 Functions that return absolute numbers.
+int16_t my_abs(int16_t num) {
+ if (num < 0) {
+ num = -num;
+ }
+
+ return num;
+}
+
+// 自前の符号を返す関数。 Function to return the sign.
+int16_t my_sign(int16_t num) {
+ if (num < 0) {
+ return -1;
+ }
+
+ return 1;
+}
+
+// 現在クリックが可能な状態か。 Is it currently clickable?
+bool is_clickable_mode(void) {
+ return state == CLICKABLE || state == CLICKING || state == SCROLLING;
+}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+
+ switch (keycode) {
+ case KC_MY_BTN1:
+ case KC_MY_BTN2:
+ case KC_MY_BTN3:
+ {
+ report_mouse_t currentReport = pointing_device_get_report();
+
+ // どこのビットを対象にするか。 Which bits are to be targeted?
+ uint8_t btn = 1 << (keycode - KC_MY_BTN1);
+
+ if (record->event.pressed) {
+ // ビットORは演算子の左辺と右辺の同じ位置にあるビットを比較して、両方のビットのどちらかが「1」の場合に「1」にします。
+ // Bit OR compares bits in the same position on the left and right sides of the operator and sets them to "1" if either of both bits is "1".
+ currentReport.buttons |= btn;
+ state = CLICKING;
+ after_click_lock_movement = 30;
+ } else {
+ // ビットANDは演算子の左辺と右辺の同じ位置にあるビットを比較して、両方のビットが共に「1」の場合だけ「1」にします。
+ // Bit AND compares the bits in the same position on the left and right sides of the operator and sets them to "1" only if both bits are "1" together.
+ currentReport.buttons &= ~btn;
+ enable_click_layer();
+ }
+
+ pointing_device_set_report(currentReport);
+ pointing_device_send();
+ return false;
+ }
+
+ case KC_MY_SCR:
+ if (record->event.pressed) {
+ state = SCROLLING;
+ } else {
+ enable_click_layer(); // スクロールキーを離した時に再度クリックレイヤーを有効にする。 Enable click layer again when the scroll key is released.
+ }
+ return false;
+
+ case KC_TB_RAT_INC:
+ if (record->event.pressed) {
+ user_config.trackball_movement_ratio += 1;
+ eeconfig_update_user(user_config.raw);
+ }
+
+ return false;
+
+ case KC_TB_RAT_DEC:
+ if (record->event.pressed) {
+ if (user_config.trackball_movement_ratio > 1) user_config.trackball_movement_ratio -= 1;
+ eeconfig_update_user(user_config.raw);
+ }
+
+ return false;
+
+ case KC_TB_MODE:
+ if (record->event.pressed) {
+
+ if (user_config.mode == 0)
+ {
+ user_config.mode = 1;
+ }
+ else
+ {
+ user_config.mode = 0;
+ }
+
+ eeconfig_update_user(user_config.raw);
+ }
+ return false;
+
+ default:
+ if (record->event.pressed) {
+ disable_click_layer();
+ }
+
+ }
+
+ return true;
+}
+
+
+report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {
+
+ if (user_config.mode == 0)
+ {
+ if (!is_record_mouse) {
+ if (mouse_report.x != 0 || mouse_report.y != 0) {
+ is_record_mouse = true;
+ mouse_record_x = 0;
+ mouse_record_y = 0;
+ mouse_record_count = 0;
+ }
+ }
+
+ if (is_record_mouse) {
+ mouse_record_x += mouse_report.x; // * user_config.trackball_movement_ratio;
+ mouse_record_y += mouse_report.y; // * user_config.trackball_movement_ratio;
+ mouse_record_count++;
+
+ if (mouse_record_count >= mouse_record_threshold) {
+ mouse_interval_counter = 0;
+ int16_t absX = my_abs(mouse_record_x);
+ int16_t absY = my_abs(mouse_record_y);
+ is_mouse_move_x_min = absX < absY;
+
+ mouse_move_remain_count = is_mouse_move_x_min ? absY : absX;
+ mouse_move_remain_count *= user_config.trackball_movement_ratio;
+
+ mouse_move_x_sign = my_sign(mouse_record_x);
+ mouse_move_y_sign = my_sign(mouse_record_y);
+
+ if (is_mouse_move_x_min) {
+ if (mouse_record_x == 0) {
+ mouse_interval_delta = 0;
+ } else {
+ mouse_interval_delta = (double)absX / (double)absY;
+ }
+ } else {
+ if (mouse_record_y == 0) {
+ mouse_interval_delta = 0;
+ } else {
+ mouse_interval_delta = (double)absY / (double)absX;
+ }
+ }
+
+ is_record_mouse = false;
+ mouse_record_count = 0;
+ }
+ }
+
+ if (mouse_move_remain_count > 0) {
+ mouse_interval_counter += mouse_interval_delta;
+
+ bool can_move_min = mouse_interval_counter >= 0.99;
+
+ if (can_move_min) {
+ mouse_interval_counter -= 0.99;
+ }
+
+ if (is_mouse_move_x_min) {
+
+ mouse_report.y = mouse_move_y_sign;
+
+ if (can_move_min) {
+ mouse_report.x = mouse_move_x_sign;
+ }
+ } else {
+
+ mouse_report.x = mouse_move_x_sign;
+
+ if (can_move_min) {
+ mouse_report.y = mouse_move_y_sign;
+ }
+ }
+
+ mouse_report.x *= 1 + mouse_move_remain_count / 10;
+ mouse_report.y *= 1 + mouse_move_remain_count / 10;
+
+ mouse_move_remain_count--;
+ } else {
+ mouse_report.x = 0;
+ mouse_report.y = 0;
+ }
+ }
+ else
+ {
+ mouse_report.x *= user_config.trackball_movement_ratio;
+ mouse_report.y *= user_config.trackball_movement_ratio;
+ }
+
+ int16_t current_x = mouse_report.x;
+ int16_t current_y = mouse_report.y;
+ int16_t current_h = 0;
+ int16_t current_v = 0;
+
+ if (current_x != 0 || current_y != 0) {
+
+ switch (state) {
+ case CLICKABLE:
+ click_timer = timer_read();
+ break;
+
+ case CLICKING:
+ after_click_lock_movement -= my_abs(current_x) + my_abs(current_y);
+
+ if (after_click_lock_movement > 0) {
+ current_x = 0;
+ current_y = 0;
+ }
+
+ break;
+
+ case SCROLLING:
+ {
+ int8_t rep_v = 0;
+ int8_t rep_h = 0;
+
+ // 垂直スクロールの方の感度を高める。 Increase sensitivity toward vertical scrolling.
+ if (my_abs(current_y) * 2 > my_abs(current_x)) {
+
+ scroll_v_mouse_interval_counter += current_y;
+ while (my_abs(scroll_v_mouse_interval_counter) > scroll_v_threshold) {
+ if (scroll_v_mouse_interval_counter < 0) {
+ scroll_v_mouse_interval_counter += scroll_v_threshold;
+ rep_v += scroll_v_threshold;
+ } else {
+ scroll_v_mouse_interval_counter -= scroll_v_threshold;
+ rep_v -= scroll_v_threshold;
+ }
+
+ }
+ } else {
+
+ scroll_h_mouse_interval_counter += current_x;
+
+ while (my_abs(scroll_h_mouse_interval_counter) > scroll_h_threshold) {
+ if (scroll_h_mouse_interval_counter < 0) {
+ scroll_h_mouse_interval_counter += scroll_h_threshold;
+ rep_h += scroll_h_threshold;
+ } else {
+ scroll_h_mouse_interval_counter -= scroll_h_threshold;
+ rep_h -= scroll_h_threshold;
+ }
+ }
+ }
+
+ current_h = rep_h / scroll_h_threshold;
+ current_v = -rep_v / scroll_v_threshold;
+ current_x = 0;
+ current_y = 0;
+ }
+ break;
+
+ case WAITING:
+ if (timer_elapsed(click_timer) > to_clickable_time) {
+ enable_click_layer();
+ }
+ break;
+
+ default:
+ click_timer = timer_read();
+ state = WAITING;
+ }
+ }
+ else
+ {
+ switch (state) {
+ case CLICKING:
+ case SCROLLING:
+
+ break;
+
+ case CLICKABLE:
+ if (timer_elapsed(click_timer) > to_reset_time) {
+ disable_click_layer();
+ }
+ break;
+
+ case WAITING:
+ if (timer_elapsed(click_timer) > 50) {
+ state = NONE;
+ }
+ break;
+
+ default:
+ state = NONE;
+ }
+ }
+
+ mouse_report.x = current_x;
+ mouse_report.y = current_y;
+ mouse_report.h = current_h;
+ mouse_report.v = current_v;
+
+ return mouse_report;
+}
diff --git a/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/rules.mk b/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/rules.mk
new file mode 100644
index 0000000000..df0cf51896
--- /dev/null
+++ b/keyboards/takashicompany/minizone/keymaps/pimoroni_trackball/rules.mk
@@ -0,0 +1,4 @@
+POINTING_DEVICE_ENABLE = yes
+POINTING_DEVICE_DRIVER = pimoroni_trackball
+OLED_ENABLE = no
+VIA_ENABLE = yes
diff --git a/keyboards/takashicompany/minizone/keymaps/via/keymap.c b/keyboards/takashicompany/minizone/keymaps/via/keymap.c
index 8fa3480915..d78a5bbf17 100644
--- a/keyboards/takashicompany/minizone/keymaps/via/keymap.c
+++ b/keyboards/takashicompany/minizone/keymaps/via/keymap.c
@@ -6,86 +6,71 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT(
- LT(6, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_A, KC_S, LT(5, KC_D), KC_F, KC_G, KC_H, KC_J, LT(5, KC_K), KC_L, KC_ENT,
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT,
LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC,
- KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), KC_SPC, LT(1, KC_LANG1), KC_PGUP, KC_NO
+ KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_PGUP, KC_PGDN
),
-
+
LAYOUT(
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN,
+ LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN),
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN),
+ KC_PLUS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN),
KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
- LAYOUT(LT(6, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_A, KC_S, LT(5, KC_D), KC_F, KC_G, KC_H, KC_J, LT(5, KC_K), KC_L, KC_ENT,
+
+ LAYOUT(
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT,
LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC,
- KC_TRNS, KC_TRNS, LALT_T(KC_LANG2), LSFT_T(KC_TAB), KC_SPC, LT(3, KC_LANG1), KC_TRNS, KC_TRNS
+ KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(5, KC_SPC), LT(4, KC_LANG1), KC_PGUP, KC_PGDN
),
-
+
LAYOUT(
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
KC_CIRC, KC_AT, KC_SLSH, KC_MINS, KC_UNDS, KC_SCLN, KC_COLN, KC_LBRC, KC_RBRC, KC_JYEN,
- MO(4), KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
+ LT(5, KC_TILD), KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_0,
+ KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_BSLS,
KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE,
KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
- KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_WH_U, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO,
- KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_WH_D, KC_LANG1, KC_NO, KC_NO, KC_DEL,
+ KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO,
+ KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_NO, KC_LANG1, KC_NO, KC_NO, KC_DEL,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
+ ),
+
LAYOUT(
KC_NO, KC_TAB, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
KC_NO, KC_NO, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
- KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(7), MO(8),
+ KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(8), MO(9),
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(2),
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(3),
RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
- LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
- ),
-
+ ),
LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
-
}; \ No newline at end of file
diff --git a/keyboards/takashicompany/minizone/readme.md b/keyboards/takashicompany/minizone/readme.md
index 79f2fef7ad..04b6896d28 100644
--- a/keyboards/takashicompany/minizone/readme.md
+++ b/keyboards/takashicompany/minizone/readme.md
@@ -50,4 +50,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/qoolee/config.h b/keyboards/takashicompany/qoolee/config.h
index 36bb330c95..f71e3de280 100644
--- a/keyboards/takashicompany/qoolee/config.h
+++ b/keyboards/takashicompany/qoolee/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0013
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT QooLee
-
/* key matrix size */
#define MATRIX_ROWS 3
#define MATRIX_COLS 12
@@ -42,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define MATRIX_ROW_PINS { E6, B4, B5 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, D0, D4, C6, D7}
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/qoolee/info.json b/keyboards/takashicompany/qoolee/info.json
index 56ef36b6e9..89335351ce 100644
--- a/keyboards/takashicompany/qoolee/info.json
+++ b/keyboards/takashicompany/qoolee/info.json
@@ -1,7 +1,13 @@
{
"keyboard_name": "QooLee",
+ "manufacturer": "takashicompany",
"url": "https://github.com/takashicompany/qoolee",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0013",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/qoolee/readme.md b/keyboards/takashicompany/qoolee/readme.md
index 35ee431c1c..55fbff82a2 100644
--- a/keyboards/takashicompany/qoolee/readme.md
+++ b/keyboards/takashicompany/qoolee/readme.md
@@ -27,4 +27,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/radialex/config.h b/keyboards/takashicompany/radialex/config.h
index 7aa3c85360..468a850f4b 100644
--- a/keyboards/takashicompany/radialex/config.h
+++ b/keyboards/takashicompany/radialex/config.h
@@ -19,13 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
-/* USB Device descriptor parameter */
-#define VENDOR_ID 0x7463 // tc = takashicompany
-#define PRODUCT_ID 0x0019
-#define DEVICE_VER 0x0001
-#define MANUFACTURER takashicompany
-#define PRODUCT Radialex
-
/* key matrix size */
#define MATRIX_ROWS 7
#define MATRIX_COLS 7
@@ -42,7 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define MATRIX_ROW_PINS { B6, D4, C6, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 }
-#define UNUSED_PINS
/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW
diff --git a/keyboards/takashicompany/radialex/info.json b/keyboards/takashicompany/radialex/info.json
index d78e301ee9..8aff0b5ab8 100644
--- a/keyboards/takashicompany/radialex/info.json
+++ b/keyboards/takashicompany/radialex/info.json
@@ -1,7 +1,13 @@
{
"keyboard_name": "Radialex",
+ "manufacturer": "takashicompany",
"url": "https://github.com/takashicompany/radialex",
"maintainer": "takashicompany",
+ "usb": {
+ "vid": "0x7463",
+ "pid": "0x0019",
+ "device_version": "0.0.1"
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/takashicompany/radialex/keymaps/default/keymap.c b/keyboards/takashicompany/radialex/keymaps/default/keymap.c
index ad8274e432..7bb266e00b 100644
--- a/keyboards/takashicompany/radialex/keymaps/default/keymap.c
+++ b/keyboards/takashicompany/radialex/keymaps/default/keymap.c
@@ -21,34 +21,69 @@ enum custom_keycodes {
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-
+
LAYOUT(
- LT(2, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_ESC, KC_A, KC_S, LT(2, KC_D), KC_F, KC_G, RADIALEX, KC_H, KC_J, LT(2, KC_K), KC_L, KC_ENT, KC_DEL,
- KC_LSFT, SFT_T(KC_Z), GUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, CTL_T(KC_DOT), KC_BSPC, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, ALT_T(KC_LANG2), SFT_T(KC_TAB), KC_SPC, LT(1, KC_LANG1), KC_RALT, KC_RGUI, KC_RCTL
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_ESC, KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, RADIALEX, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT, KC_ENT,
+ KC_LSFT, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_DEL,
+ KC_PSCR, KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_RALT, KC_RGUI, KC_RCTL
),
+
LAYOUT(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LCTL, CTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_TRNS, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, KC_TRNS,
- KC_TRNS, SFT_T(LSFT(KC_LBRC)), LSFT(KC_LBRC), LSFT(KC_SLSH), LSFT(KC_MINS), LSFT(KC_RO), LSFT(KC_SCLN), LSFT(KC_QUOT), LSFT(KC_RBRC), LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
+ KC_TRNS, LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_TRNS, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
- KC_TRNS, KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS,
- KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_TRNS, KC_LANG1, KC_NO, MO(3), KC_DEL, KC_TRNS,
+ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN),
+ KC_TRNS, KC_TRNS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_TRNS, KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
+ LAYOUT(
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_TRNS, KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, RADIALEX, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_TRNS,
+ KC_PSCR, KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(5, KC_SPC), LT(4, KC_LANG1), KC_RALT, KC_RGUI, KC_RCTL
+ ),
+
LAYOUT(
- RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS,
- KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, KC_TRNS,
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
+ KC_TRNS, KC_CIRC, KC_AT, KC_SLSH, KC_MINS, KC_UNDS, KC_TRNS, KC_SCLN, KC_COLN, KC_LBRC, KC_RBRC, KC_JYEN, KC_TRNS,
+ KC_TRNS, LT(5, KC_TILD), KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
+ LAYOUT(
+ KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_BSLS,
+ KC_TRNS, KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_TRNS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
+ KC_TRNS, KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_NO, KC_LANG1, KC_NO, KC_NO, KC_DEL, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ KC_NO, KC_TAB, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
+ KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F7, KC_TRNS, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(8), MO(9), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
+ LAYOUT(
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(3),
+ KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
+ KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ )
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
diff --git a/keyboards/takashicompany/radialex/keymaps/via/config.h b/keyboards/takashicompany/radialex/keymaps/via/config.h
index 74f9e9e64f..c93405c3b3 100644
--- a/keyboards/takashicompany/radialex/keymaps/via/config.h
+++ b/keyboards/takashicompany/radialex/keymaps/via/config.h
@@ -17,4 +17,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#define DYNAMIC_KEYMAP_LAYER_COUNT 8
+#define DYNAMIC_KEYMAP_LAYER_COUNT 9
diff --git a/keyboards/takashicompany/radialex/keymaps/via/keymap.c b/keyboards/takashicompany/radialex/keymaps/via/keymap.c
index ce9c9d78ea..b84ccc86b2 100644
--- a/keyboards/takashicompany/radialex/keymaps/via/keymap.c
+++ b/keyboards/takashicompany/radialex/keymaps/via/keymap.c
@@ -20,57 +20,65 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
LAYOUT(
- LT(2, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
- KC_ESC, KC_A, KC_S, LT(2, KC_D), KC_F, KC_G, RADIALEX, KC_H, KC_J, LT(2, KC_K), KC_L, KC_ENT, KC_DEL,
- KC_LSFT, SFT_T(KC_Z), GUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, CTL_T(KC_DOT), KC_BSPC, KC_RSFT,
- KC_LCTL, KC_LGUI, KC_LALT, ALT_T(KC_LANG2), SFT_T(KC_TAB), KC_SPC, LT(1, KC_LANG1), KC_RALT, KC_RGUI, KC_RCTL
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_ESC, KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, RADIALEX, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT, KC_ENT,
+ KC_LSFT, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_DEL,
+ KC_PSCR, KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(2, KC_SPC), LT(1, KC_LANG1), KC_RALT, KC_RGUI, KC_RCTL
),
+
LAYOUT(
- KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
- KC_LCTL, CTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_TRNS, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, KC_TRNS,
- KC_TRNS, SFT_T(LSFT(KC_LBRC)), LSFT(KC_LBRC), LSFT(KC_SLSH), LSFT(KC_MINS), LSFT(KC_RO), LSFT(KC_SCLN), LSFT(KC_QUOT), LSFT(KC_RBRC), LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
+ KC_TRNS, LCTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_TRNS, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_PLUS), KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
- KC_TRNS, KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS,
- KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_TRNS, KC_LANG1, KC_NO, MO(3), KC_DEL, KC_TRNS,
+ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, LGUI(KC_JYEN),
+ KC_TRNS, KC_TRNS, KC_LCBR, KC_QUES, KC_UNDS, LSFT(KC_RO), KC_TRNS, KC_COLN, KC_DQUO, KC_RCBR, LSFT(KC_NUHS), LSFT(KC_JYEN), KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5,
- KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS,
- KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ LT(7, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
+ KC_TRNS, KC_A, KC_S, LT(6, KC_D), KC_F, KC_G, RADIALEX, KC_H, KC_J, LT(6, KC_K), KC_L, KC_ENT, KC_TRNS,
+ KC_TRNS, LSFT_T(KC_Z), LGUI_T(KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, LCTL_T(KC_DOT), KC_BSPC, KC_TRNS,
+ KC_PSCR, KC_LCTL, KC_LGUI, LALT_T(KC_LANG2), LSFT_T(KC_TAB), LT(5, KC_SPC), LT(4, KC_LANG1), KC_RALT, KC_RGUI, KC_RCTL
),
-
+
LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0,
+ KC_TRNS, KC_CIRC, KC_AT, KC_SLSH, KC_MINS, KC_UNDS, KC_TRNS, KC_SCLN, KC_COLN, KC_LBRC, KC_RBRC, KC_JYEN, KC_TRNS,
+ KC_TRNS, LT(5, KC_TILD), KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_EXLM, KC_DQUO, KC_HASH, KC_DLR, KC_PERC, KC_AMPR, KC_QUOT, KC_LPRN, KC_RPRN, KC_BSLS,
+ KC_TRNS, KC_TILD, KC_GRV, KC_QUES, KC_EQL, KC_UNDS, KC_TRNS, KC_PLUS, KC_ASTR, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_LSFT, KC_SPC, KC_LANG1, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
+ LAYOUT(
+ KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO,
+ KC_TRNS, KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_LGUI, KC_LALT, KC_LANG2, KC_TRNS, KC_NO, KC_LANG1, KC_NO, KC_NO, KC_DEL, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+
LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_NO, KC_TAB, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6,
+ KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_F7, KC_TRNS, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
+ KC_TRNS, KC_LSFT, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, MO(8), MO(9), KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
-
+
LAYOUT(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, DF(0), DF(3),
+ KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
+ KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
diff --git a/keyboards/takashicompany/radialex/readme.md b/keyboards/takashicompany/radialex/readme.md
index 1468e7b0b1..2f723ba686 100644
--- a/keyboards/takashicompany/radialex/readme.md
+++ b/keyboards/takashicompany/radialex/readme.md
@@ -28,4 +28,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
diff --git a/keyboards/takashicompany/spreadwriter/readme.md b/keyboards/takashicompany/spreadwriter/readme.md
index 972dcba4de..3cf6eccb50 100644
--- a/keyboards/takashicompany/spreadwriter/readme.md
+++ b/keyboards/takashicompany/spreadwriter/readme.md
@@ -32,4 +32,4 @@ Enter the bootloader in 3 ways:
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
-* **Keycode in layout**: Press the key mapped to `RESET` if it is available
+* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available