Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add KB12 keyboard #21605

Merged
merged 49 commits into from
Sep 29, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
4856d6b
Add KB12 keyboard
DOIO2022 Mar 24, 2023
a11f0ca
Update config.h
DOIO2022 Mar 24, 2023
a3f0aec
Update info.json
DOIO2022 Mar 24, 2023
2307776
Update keyboards/doio/kb12/keymaps/default/keymap.c
DOIO2022 Mar 24, 2023
5fd73ae
Update keyboards/doio/kb12/keymaps/default/keymap.c
DOIO2022 Mar 24, 2023
25764b5
Update keyboards/doio/kb12/keymaps/via/keymap.c
DOIO2022 Mar 24, 2023
35c7bf6
Update keyboards/doio/kb12/keymaps/via/keymap.c
DOIO2022 Mar 24, 2023
0090a7e
Update keymap.c
DOIO2022 Mar 24, 2023
4d010b1
Delete kb12.h
DOIO2022 Mar 24, 2023
16b40c5
Add files via upload
DOIO2022 Mar 24, 2023
b5edc69
Update keymap.c
DOIO2022 Mar 24, 2023
b1d4c7e
Update keyboards/doio/kb12/info.json
DOIO2022 Mar 28, 2023
fe6c37d
Update keyboards/doio/kb12/info.json
DOIO2022 Mar 28, 2023
39b81af
Update keyboards/doio/kb12/keymaps/via/rules.mk
DOIO2022 Mar 28, 2023
d64c008
Update keyboards/doio/kb12/config.h
DOIO2022 Mar 28, 2023
6b950c1
Update keyboards/doio/kb12/rules.mk
DOIO2022 Mar 28, 2023
51f6c5c
Update keyboards/doio/kb12/info.json
DOIO2022 Mar 28, 2023
ee9a7f1
Update keyboards/doio/kb12/kb12.c
DOIO2022 Mar 28, 2023
6ef4b65
Update keyboards/doio/kb12/kb12.c
DOIO2022 Mar 28, 2023
5074531
Delete chconf.h
DOIO2022 Mar 28, 2023
2a5021e
Delete halconf.h
DOIO2022 Mar 28, 2023
fcacab9
Delete mcuconf.h
DOIO2022 Mar 28, 2023
c6c7990
Create readme.md
DOIO2022 Mar 28, 2023
3ba9c39
Update readme.md
DOIO2022 Mar 28, 2023
c7f6d9f
Delete kb12.h
DOIO2022 Mar 28, 2023
8557933
Update keyboards/doio/kb12/config.h
DOIO2022 Apr 4, 2023
531ed91
Update keyboards/doio/kb12/kb12.c
DOIO2022 Apr 4, 2023
b3c2248
Update keyboards/doio/kb12/kb12.c
DOIO2022 Apr 4, 2023
e5b3043
Update keyboards/doio/kb12/config.h
DOIO2022 Apr 4, 2023
aae12ef
Update keyboards/doio/kb12/info.json
DOIO2022 May 10, 2023
efe8f27
Merge branch 'qmk:master' into master
DOIO2022 Jul 3, 2023
813088f
Merge branch 'qmk:master' into master
DOIO2022 Jul 25, 2023
d4e6fe6
Delete keyboards/doio/kb12 directory
DOIO2022 Jul 25, 2023
2ec3289
Add files via upload
DOIO2022 Jul 25, 2023
cb25f34
Update config.h
DOIO2022 Jul 25, 2023
accb47e
Update keyboards/doio/kb12/config.h
DOIO2022 Jul 26, 2023
ea953f8
Update keyboards/doio/kb12/keymaps/default/keymap.c
DOIO2022 Jul 26, 2023
3aab31f
Update keyboards/doio/kb12/keymaps/via/keymap.c
DOIO2022 Jul 26, 2023
78de680
Update keyboards/doio/kb12/keymaps/via/rules.mk
DOIO2022 Jul 26, 2023
497feee
Update keyboards/doio/kb12/rules.mk
DOIO2022 Jul 26, 2023
836402e
Update keyboards/doio/kb12/readme.md
DOIO2022 Jul 26, 2023
ac495dc
Update keyboards/doio/kb12/config.h
DOIO2022 Jul 26, 2023
23f7720
Update keyboards/doio/kb12/kb12.c
DOIO2022 Jul 26, 2023
028d3fe
Update keyboards/doio/kb12/info.json
DOIO2022 Jul 26, 2023
ede6230
Update keyboards/doio/kb12/info.json
DOIO2022 Jul 29, 2023
8ca3cff
Update keyboards/doio/kb12/config.h
DOIO2022 Jul 29, 2023
0b26456
Delete kb12.c
DOIO2022 Jul 29, 2023
a3174d6
Merge branch 'qmk:master' into master
DOIO2022 Sep 16, 2023
766fc0a
Update keyboards/doio/kb12/info.json
DOIO2022 Sep 28, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 70 additions & 0 deletions keyboards/doio/kb12/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
/* Copyright 2022 DOIO
* Copyright 2022 DOIO2022 <https://github.com/DOIO2022>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#pragma once

/* RGB Matrix config */
#define RGB_MATRIX_LED_COUNT 12
#define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_UP_DOWN
#define RGB_DISABLE_WHEN_USB_SUSPENDED
#define RGB_MATRIX_KEYPRESSES
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS

/* RGB Matrix effect */
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
#define ENABLE_RGB_MATRIX_BREATHING
#define ENABLE_RGB_MATRIX_BAND_SAT
#define ENABLE_RGB_MATRIX_BAND_VAL
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
#define ENABLE_RGB_MATRIX_CYCLE_ALL
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
#define ENABLE_RGB_MATRIX_DUAL_BEACON
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
#define ENABLE_RGB_MATRIX_RAINDROPS
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
#define ENABLE_RGB_MATRIX_HUE_BREATHING
#define ENABLE_RGB_MATRIX_HUE_PENDULUM
#define ENABLE_RGB_MATRIX_HUE_WAVE
#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
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
#define ENABLE_RGB_MATRIX_SPLASH
#define ENABLE_RGB_MATRIX_MULTISPLASH
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
78 changes: 78 additions & 0 deletions keyboards/doio/kb12/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
{
"keyboard_name": "KB12-01",
"manufacturer": "DOIO",
"url": "",
"maintainer": "DOIO2022",
"usb": {
"vid": "0xD010",
"pid": "0x1201",
"device_version": "0.0.1"
},
"rgb_matrix": {
"driver": "ws2812"
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
{"matrix": [0, 1], "x": 75, "y": 0, "flags": 4},
{"matrix": [0, 2], "x": 150, "y": 0, "flags": 4},
{"matrix": [0, 3], "x": 224, "y": 0, "flags": 4},
{"matrix": [1, 0], "x": 0, "y": 32, "flags": 4},
{"matrix": [1, 1], "x": 75, "y": 32, "flags": 4},
{"matrix": [1, 2], "x": 150, "y": 32, "flags": 4},
{"matrix": [1, 3], "x": 224, "y": 32, "flags": 4},
{"matrix": [2, 0], "x": 0, "y": 64, "flags": 4},
{"matrix": [2, 1], "x": 75, "y": 64, "flags": 4},
{"matrix": [2, 2], "x": 150, "y": 64, "flags": 4},
{"matrix": [2, 3], "x": 224, "y": 64, "flags": 4}
],
"max_brightness": 200
},
DOIO2022 marked this conversation as resolved.
Show resolved Hide resolved
"matrix_pins": {
"cols": ["B14", "B13", "B12", "B0", "A7"],
"rows": ["B3", "B4", "B9"]
},
"diode_direction": "COL2ROW",
"dynamic_keymap": {
"layer_count": 6
},
"encoder": {
DOIO2022 marked this conversation as resolved.
Show resolved Hide resolved
"rotary": [
{"pin_a": "B5", "pin_b": "B6"}
]
},
"ws2812": {
"pin": "A10"
},
"processor": "STM32F103",
"bootloader": "stm32duino",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true,
"rgb_matrix": true,
"encoder": true
},
"layouts": {
"LAYOUT": {
"layout": [
{ "matrix": [0, 4], "x": 0, "y": 0 },
{ "matrix": [0, 0], "x": 3.25, "y": 0 },
{ "matrix": [0, 1], "x": 4.25, "y": 0 },
{ "matrix": [0, 2], "x": 5.25, "y": 0 },
{ "matrix": [0, 3], "x": 6.25, "y": 0 },

{ "matrix": [1, 0], "x": 7.75, "y": 0 },
{ "matrix": [1, 1], "x": 8.75, "y": 0 },
{ "matrix": [1, 2], "x": 9.75, "y": 0 },
{ "matrix": [1, 3], "x": 10.75, "y": 0 },

{ "matrix": [2, 0], "x": 12.25, "y": 0 },
{ "matrix": [2, 1], "x": 13.25, "y": 0 },
{ "matrix": [2, 2], "x": 14.25, "y": 0 },
{ "matrix": [2, 3], "x": 15.25, "y": 0 }
]
}
}
}
55 changes: 55 additions & 0 deletions keyboards/doio/kb12/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
/* Copyright 2022 DOIO
* Copyright 2022 DOIO2022 <https://github.com/DOIO2022>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/


#include QMK_KEYBOARD_H

enum layer_names {
_LAY0,
_LAY1,
_LAY2,
_LAY3,
_LAY4,
_LAY5
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_LAY0] = LAYOUT(
TO(1), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12),
[_LAY1] = LAYOUT(
TO(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY2] = LAYOUT(
TO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY3] = LAYOUT(
TO(4), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY4] = LAYOUT(
TO(5), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY5] = LAYOUT(
TO(0), RGB_TOG, RGB_MOD, RGB_SPI, RGB_SPD, RGB_SAI, RGB_SAD, RGB_HUI, RGB_HUD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS)

};

#ifdef ENCODER_MAP_ENABLE
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[_LAY0] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN) },
[_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY4] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY5] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
};
#endif
55 changes: 55 additions & 0 deletions keyboards/doio/kb12/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
/* Copyright 2022 DOIO
* Copyright 2022 DOIO2022 <https://github.com/DOIO2022>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/


#include QMK_KEYBOARD_H

enum layer_names {
_LAY0,
_LAY1,
_LAY2,
_LAY3,
_LAY4,
_LAY5
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_LAY0] = LAYOUT(
TO(1), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12),
[_LAY1] = LAYOUT(
TO(2), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY2] = LAYOUT(
TO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY3] = LAYOUT(
TO(4), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY4] = LAYOUT(
TO(5), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
[_LAY5] = LAYOUT(
TO(0), RGB_TOG, RGB_MOD, RGB_SPI, RGB_SPD, RGB_SAI, RGB_SAD, RGB_HUI, RGB_HUD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS)

};

#ifdef ENCODER_MAP_ENABLE
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[_LAY0] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN) },
[_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY4] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
[_LAY5] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
};
#endif
2 changes: 2 additions & 0 deletions keyboards/doio/kb12/keymaps/via/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
VIA_ENABLE = yes
ENCODER_MAP_ENABLE = yes
24 changes: 24 additions & 0 deletions keyboards/doio/kb12/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# doio/kb12

QMK for DOIO Knob 12% .

* Keyboard Maintainer: DOIO2022
* Hardware Supported: DOIO Knob 12%
drashna marked this conversation as resolved.
Show resolved Hide resolved

Make example for this keyboard (after setting up your build environment):

make doio/kb12:default

Flashing example for this keyboard:

make doio/kb12: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
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
1 change: 1 addition & 0 deletions keyboards/doio/kb12/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# This file intentionally left blank