From d83ac7a1247ccde863234e71b4c55b2e0d87c41a Mon Sep 17 00:00:00 2001 From: TreasureTypes <73436366+TreasureTypes@users.noreply.github.com> Date: Fri, 15 Sep 2023 23:44:41 +0200 Subject: [PATCH] [Keyboard] Adding Treasure TYPE-9 series III (#21748) Co-authored-by: Duncan Sutherland Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre --- keyboards/treasure/type9s3/config.h | 30 +++++++++ keyboards/treasure/type9s3/info.json | 65 +++++++++++++++++++ .../treasure/type9s3/keymaps/default/keymap.c | 31 +++++++++ .../treasure/type9s3/keymaps/via/keymap.c | 31 +++++++++ .../treasure/type9s3/keymaps/via/rules.mk | 1 + keyboards/treasure/type9s3/readme.md | 22 +++++++ keyboards/treasure/type9s3/rules.mk | 1 + 7 files changed, 181 insertions(+) create mode 100644 keyboards/treasure/type9s3/config.h create mode 100644 keyboards/treasure/type9s3/info.json create mode 100644 keyboards/treasure/type9s3/keymaps/default/keymap.c create mode 100644 keyboards/treasure/type9s3/keymaps/via/keymap.c create mode 100644 keyboards/treasure/type9s3/keymaps/via/rules.mk create mode 100644 keyboards/treasure/type9s3/readme.md create mode 100644 keyboards/treasure/type9s3/rules.mk diff --git a/keyboards/treasure/type9s3/config.h b/keyboards/treasure/type9s3/config.h new file mode 100644 index 0000000000..b87cd59b2f --- /dev/null +++ b/keyboards/treasure/type9s3/config.h @@ -0,0 +1,30 @@ +// Copyright 2023 Treasure +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define RGB_MATRIX_LED_COUNT 9 + +#define RGB_MATRIX_DEFAULT_SPD 40 // Sets the default animation speed, if none has been set +#define RGB_MATRIX_DEFAULT_VAL 120 + +#define RGB_MATRIX_KEYPRESSES +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_DISABLE_WHEN_USB_SUSPENDED + +#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_BREATHING +#define ENABLE_RGB_MATRIX_CYCLE_ALL +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +#define ENABLE_RGB_MATRIX_PIXEL_RAIN +#define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#define ENABLE_RGB_MATRIX_DIGITAL_RAIN +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +#define ENABLE_RGB_MATRIX_SPLASH +#define ENABLE_RGB_MATRIX_SOLID_SPLASH diff --git a/keyboards/treasure/type9s3/info.json b/keyboards/treasure/type9s3/info.json new file mode 100644 index 0000000000..8e9c9fa38f --- /dev/null +++ b/keyboards/treasure/type9s3/info.json @@ -0,0 +1,65 @@ +{ + "manufacturer": "Treasure", + "keyboard_name": "Type-9 Series III", + "maintainer": "arnstadm", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": false, + "nkro": true, + "rgb_matrix": true + }, + "matrix_pins": { + "direct": [ + ["C7", "C6", "D3"], + ["B7", "C5", "D2"], + ["B5", "B4", "D4"] + ] + }, + "processor": "atmega32u2", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x5493", + "vid": "0x5452" + }, + "ws2812": { + "pin": "B6" + }, + "rgb_matrix": { + "driver": "ws2812", + "layout": [ + { "matrix": [2, 0],"flags": 4, "x": 0, "y": 20 }, + { "matrix": [2, 1],"flags": 4, "x": 10, "y": 20 }, + { "matrix": [2, 2],"flags": 4, "x": 20, "y": 20 }, + { "matrix": [1, 2],"flags": 4, "x": 20, "y": 10 }, + { "matrix": [1, 1],"flags": 4, "x": 10, "y": 10 }, + { "matrix": [1, 0],"flags": 4, "x": 0, "y": 10 }, + { "matrix": [0, 0],"flags": 4, "x": 0, "y": 0 }, + { "matrix": [0, 1],"flags": 4, "x": 10, "y": 0 }, + { "matrix": [0, 2],"flags": 4, "x": 20, "y": 0 } + ] + }, + "community_layouts": ["ortho_3x3"], + "layouts": { + "LAYOUT_ortho_3x3": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + + { "matrix": [1, 0], "x": 0, "y": 1 }, + { "matrix": [1, 1], "x": 1, "y": 1 }, + { "matrix": [1, 2], "x": 2, "y": 1 }, + + { "matrix": [2, 0], "x": 0, "y": 2 }, + { "matrix": [2, 1], "x": 1, "y": 2 }, + { "matrix": [2, 2], "x": 2, "y": 2 } + ] + } + } +} diff --git a/keyboards/treasure/type9s3/keymaps/default/keymap.c b/keyboards/treasure/type9s3/keymaps/default/keymap.c new file mode 100644 index 0000000000..166062f649 --- /dev/null +++ b/keyboards/treasure/type9s3/keymaps/default/keymap.c @@ -0,0 +1,31 @@ +// Copyright 2023 Treasure +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_ortho_3x3( + MO(1), KC_MPLY, RGB_TOG, + KC_VOLD, KC_MUTE, KC_VOLU, + KC_KP_1, KC_KP_2, KC_KP_3 + ), + + [1] = LAYOUT_ortho_3x3( + KC_TRNS, RGB_M_P, MO(2), + RGB_MOD, RGB_HUI, RGB_VAI, + RGB_RMOD, RGB_HUD, RGB_VAD + ), + + [2] = LAYOUT_ortho_3x3( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, MO(3) + ), + + [3] = LAYOUT_ortho_3x3( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/treasure/type9s3/keymaps/via/keymap.c b/keyboards/treasure/type9s3/keymaps/via/keymap.c new file mode 100644 index 0000000000..166062f649 --- /dev/null +++ b/keyboards/treasure/type9s3/keymaps/via/keymap.c @@ -0,0 +1,31 @@ +// Copyright 2023 Treasure +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_ortho_3x3( + MO(1), KC_MPLY, RGB_TOG, + KC_VOLD, KC_MUTE, KC_VOLU, + KC_KP_1, KC_KP_2, KC_KP_3 + ), + + [1] = LAYOUT_ortho_3x3( + KC_TRNS, RGB_M_P, MO(2), + RGB_MOD, RGB_HUI, RGB_VAI, + RGB_RMOD, RGB_HUD, RGB_VAD + ), + + [2] = LAYOUT_ortho_3x3( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, MO(3) + ), + + [3] = LAYOUT_ortho_3x3( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/treasure/type9s3/keymaps/via/rules.mk b/keyboards/treasure/type9s3/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/treasure/type9s3/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/treasure/type9s3/readme.md b/keyboards/treasure/type9s3/readme.md new file mode 100644 index 0000000000..354b63b04a --- /dev/null +++ b/keyboards/treasure/type9s3/readme.md @@ -0,0 +1,22 @@ +# Treasure TYPE-9 Series III + +![TYPE9SIII](https://i.imgur.com/lohJ0Dalh.png) + +Treasure TYPE-9 Series III is a 3x3 Macropad. + +* Keyboard Maintainer: [Treasure](https://github.com/TreasureTypes) +* Hardware Supported: Treasure TYPE-9 Series III PCB +* Hardware Availability: [Treasure Store](http://treasuretypes.com) + +Make example for this keyboard (after setting up your build environment): + + make treasure/type9s3:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader : + +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Bootmagic reset**: Hold down the top left key and plug in the keyboard diff --git a/keyboards/treasure/type9s3/rules.mk b/keyboards/treasure/type9s3/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/treasure/type9s3/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank