Update crkbd/qmk
This commit is contained in:
parent
7911c37181
commit
0237bac482
@ -1,23 +1,17 @@
|
|||||||
{
|
{
|
||||||
"keyboard_name": "Corne",
|
|
||||||
"manufacturer": "foostan",
|
"manufacturer": "foostan",
|
||||||
"url": "",
|
"url": "https://github.com/foostan/crkbd",
|
||||||
"maintainer": "qmk",
|
"maintainer": "qmk",
|
||||||
"usb": {
|
"usb": {
|
||||||
"vid": "0x4653",
|
"vid": "0x4653"
|
||||||
"pid": "0x0001",
|
|
||||||
"device_version": "0.0.1"
|
|
||||||
},
|
|
||||||
"rgb_matrix": {
|
|
||||||
"driver": "ws2812"
|
|
||||||
},
|
},
|
||||||
"features": {
|
"features": {
|
||||||
"bootmagic": true,
|
"bootmagic": true,
|
||||||
"extrakey": true,
|
"extrakey": true,
|
||||||
"lto": true,
|
|
||||||
"mousekey": true,
|
|
||||||
"nkro": true,
|
"nkro": true,
|
||||||
"oled": true
|
"oled": true,
|
||||||
|
"rgblight": false,
|
||||||
|
"rgb_matrix": true
|
||||||
},
|
},
|
||||||
"build": {
|
"build": {
|
||||||
"lto": true
|
"lto": true
|
||||||
@ -30,6 +24,113 @@
|
|||||||
"split": {
|
"split": {
|
||||||
"enabled": true
|
"enabled": true
|
||||||
},
|
},
|
||||||
"processor": "atmega32u4",
|
"layout_aliases": {
|
||||||
"community_layouts": [ "split_3x5_3", "split_3x6_3" ]
|
"LAYOUT": "LAYOUT_split_3x6_3"
|
||||||
|
},
|
||||||
|
"community_layouts": [ "split_3x5_3", "split_3x6_3" ],
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_split_3x5_3": {
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [0, 1], "x": 0, "y": 0.3},
|
||||||
|
{"matrix": [0, 2], "x": 1, "y": 0.1},
|
||||||
|
{"matrix": [0, 3], "x": 2, "y": 0},
|
||||||
|
{"matrix": [0, 4], "x": 3, "y": 0.1},
|
||||||
|
{"matrix": [0, 5], "x": 4, "y": 0.2},
|
||||||
|
|
||||||
|
{"matrix": [4, 5], "x": 8, "y": 0.2},
|
||||||
|
{"matrix": [4, 4], "x": 9, "y": 0.1},
|
||||||
|
{"matrix": [4, 3], "x": 10, "y": 0},
|
||||||
|
{"matrix": [4, 2], "x": 11, "y": 0.1},
|
||||||
|
{"matrix": [4, 1], "x": 12, "y": 0.3},
|
||||||
|
|
||||||
|
{"matrix": [1, 1], "x": 0, "y": 1.3},
|
||||||
|
{"matrix": [1, 2], "x": 1, "y": 1.1},
|
||||||
|
{"matrix": [1, 3], "x": 2, "y": 1},
|
||||||
|
{"matrix": [1, 4], "x": 3, "y": 1.1},
|
||||||
|
{"matrix": [1, 5], "x": 4, "y": 1.2},
|
||||||
|
|
||||||
|
{"matrix": [5, 5], "x": 8, "y": 1.2},
|
||||||
|
{"matrix": [5, 4], "x": 9, "y": 1.1},
|
||||||
|
{"matrix": [5, 3], "x": 10, "y": 1},
|
||||||
|
{"matrix": [5, 2], "x": 11, "y": 1.1},
|
||||||
|
{"matrix": [5, 1], "x": 12, "y": 1.3},
|
||||||
|
|
||||||
|
{"matrix": [2, 1], "x": 0, "y": 2.3},
|
||||||
|
{"matrix": [2, 2], "x": 1, "y": 2.1},
|
||||||
|
{"matrix": [2, 3], "x": 2, "y": 2},
|
||||||
|
{"matrix": [2, 4], "x": 3, "y": 2.1},
|
||||||
|
{"matrix": [2, 5], "x": 4, "y": 2.2},
|
||||||
|
|
||||||
|
{"matrix": [6, 5], "x": 8, "y": 2.2},
|
||||||
|
{"matrix": [6, 4], "x": 9, "y": 2.1},
|
||||||
|
{"matrix": [6, 3], "x": 10, "y": 2},
|
||||||
|
{"matrix": [6, 2], "x": 11, "y": 2.1},
|
||||||
|
{"matrix": [6, 1], "x": 12, "y": 2.3},
|
||||||
|
|
||||||
|
{"matrix": [3, 3], "x": 3, "y": 3.7},
|
||||||
|
{"matrix": [3, 4], "x": 4, "y": 3.7},
|
||||||
|
{"matrix": [3, 5], "x": 5, "y": 3.2, "h": 1.5},
|
||||||
|
|
||||||
|
{"matrix": [7, 5], "x": 7, "y": 3.2, "h": 1.5},
|
||||||
|
{"matrix": [7, 4], "x": 8, "y": 3.7},
|
||||||
|
{"matrix": [7, 3], "x": 9, "y": 3.7}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"LAYOUT_split_3x6_3": {
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [0, 0], "x": 0, "y": 0.3},
|
||||||
|
{"matrix": [0, 1], "x": 1, "y": 0.3},
|
||||||
|
{"matrix": [0, 2], "x": 2, "y": 0.1},
|
||||||
|
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||||
|
{"matrix": [0, 4], "x": 4, "y": 0.1},
|
||||||
|
{"matrix": [0, 5], "x": 5, "y": 0.2},
|
||||||
|
|
||||||
|
{"matrix": [4, 5], "x": 9, "y": 0.2},
|
||||||
|
{"matrix": [4, 4], "x": 10, "y": 0.1},
|
||||||
|
{"matrix": [4, 3], "x": 11, "y": 0},
|
||||||
|
{"matrix": [4, 2], "x": 12, "y": 0.1},
|
||||||
|
{"matrix": [4, 1], "x": 13, "y": 0.3},
|
||||||
|
{"matrix": [4, 0], "x": 14, "y": 0.3},
|
||||||
|
|
||||||
|
{"matrix": [1, 0], "x": 0, "y": 1.3},
|
||||||
|
{"matrix": [1, 1], "x": 1, "y": 1.3},
|
||||||
|
{"matrix": [1, 2], "x": 2, "y": 1.1},
|
||||||
|
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||||
|
{"matrix": [1, 4], "x": 4, "y": 1.1},
|
||||||
|
{"matrix": [1, 5], "x": 5, "y": 1.2},
|
||||||
|
|
||||||
|
{"matrix": [5, 5], "x": 9, "y": 1.2},
|
||||||
|
{"matrix": [5, 4], "x": 10, "y": 1.1},
|
||||||
|
{"matrix": [5, 3], "x": 11, "y": 1},
|
||||||
|
{"matrix": [5, 2], "x": 12, "y": 1.1},
|
||||||
|
{"matrix": [5, 1], "x": 13, "y": 1.3},
|
||||||
|
{"matrix": [5, 0], "x": 14, "y": 1.3},
|
||||||
|
|
||||||
|
{"matrix": [2, 0], "x": 0, "y": 2.3},
|
||||||
|
{"matrix": [2, 1], "x": 1, "y": 2.3},
|
||||||
|
{"matrix": [2, 2], "x": 2, "y": 2.1},
|
||||||
|
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||||
|
{"matrix": [2, 4], "x": 4, "y": 2.1},
|
||||||
|
{"matrix": [2, 5], "x": 5, "y": 2.2},
|
||||||
|
|
||||||
|
{"matrix": [6, 5], "x": 9, "y": 2.2},
|
||||||
|
{"matrix": [6, 4], "x": 10, "y": 2.1},
|
||||||
|
{"matrix": [6, 3], "x": 11, "y": 2},
|
||||||
|
{"matrix": [6, 2], "x": 12, "y": 2.1},
|
||||||
|
{"matrix": [6, 1], "x": 13, "y": 2.3},
|
||||||
|
{"matrix": [6, 0], "x": 14, "y": 2.3},
|
||||||
|
|
||||||
|
{"matrix": [3, 3], "x": 4, "y": 3.7},
|
||||||
|
{"matrix": [3, 4], "x": 5, "y": 3.7},
|
||||||
|
{"matrix": [3, 5], "x": 6, "y": 3.2, "h": 1.5},
|
||||||
|
|
||||||
|
{"matrix": [7, 5], "x": 8, "y": 3.2, "h": 1.5},
|
||||||
|
{"matrix": [7, 4], "x": 9, "y": 3.7},
|
||||||
|
{"matrix": [7, 3], "x": 10, "y": 3.7}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rgb_matrix": {
|
||||||
|
"driver": "ws2812"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -45,7 +45,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
//# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
//# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
||||||
// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
|
// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
|
||||||
// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
||||||
# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
# define RGB_MATRIX_SLEEP // turn off effects when suspended
|
||||||
//# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
//# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
// # define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
|
// # define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
|
||||||
// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
|
// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
|
||||||
|
|||||||
@ -68,3 +68,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||||||
//`--------------------------' `--------------------------'
|
//`--------------------------' `--------------------------'
|
||||||
)
|
)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef ENCODER_MAP_ENABLE
|
||||||
|
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||||
|
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
[1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
[2] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
[3] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|||||||
12
keyboards/crkbd/qmk/qmk_firmware/keymaps/mb_via/readme.md
Normal file
12
keyboards/crkbd/qmk/qmk_firmware/keymaps/mb_via/readme.md
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# Default Via keyboard for the Corne R2G by Mechboards UK
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Corne R2G is an eddition of the classic CRKBD by footsan remade to feature a full smd assembly
|
||||||
|
|
||||||
|
In this fold can be found the default via enabled keymap that can be in conjunction
|
||||||
|
|
||||||
|
Flash example for this Keymap:
|
||||||
|
```sh
|
||||||
|
qmk flash -kb crkbd/r2g -km mb_via
|
||||||
|
```
|
||||||
@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||||||
|
|
||||||
[3] = LAYOUT_split_3x6_3(
|
[3] = LAYOUT_split_3x6_3(
|
||||||
//,-----------------------------------------------------. ,-----------------------------------------------------.
|
//,-----------------------------------------------------. ,-----------------------------------------------------.
|
||||||
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||||
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||||
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||||
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------|
|
||||||
@ -68,3 +68,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||||||
//`--------------------------' `--------------------------'
|
//`--------------------------' `--------------------------'
|
||||||
)
|
)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef ENCODER_MAP_ENABLE
|
||||||
|
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||||
|
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
[1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
[2] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
[3] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT), ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(KC_RGHT, KC_LEFT), },
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|||||||
@ -1,3 +1,2 @@
|
|||||||
MOUSEKEY_ENABLE = no # Mouse keys
|
ENCODER_MAP_ENABLE = yes
|
||||||
VIA_ENABLE = yes # Enable VIA
|
VIA_ENABLE = yes
|
||||||
LTO_ENABLE = yes
|
|
||||||
|
|||||||
@ -1,10 +0,0 @@
|
|||||||
# Default Via keymap for the Corne R2G by Mechboards UK
|
|
||||||
|
|
||||||
Corne R2G is an edition of the classic CRKBD by foostan remade to feature full smd assembly
|
|
||||||
|
|
||||||
In this folder can be found the default via enabled keymap that can be in conjunction with the mechboards R2G PCB.
|
|
||||||
|
|
||||||
Flash example for this Keymap:
|
|
||||||
```sh
|
|
||||||
qmk flash -kb crkbd/r2g -km via_mechboards
|
|
||||||
```
|
|
||||||
@ -1,4 +1,10 @@
|
|||||||
{
|
{
|
||||||
|
"keyboard_name": "Corne",
|
||||||
|
"usb": {
|
||||||
|
"pid": "0x0001",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
|
"processor": "atmega32u4",
|
||||||
"features": {
|
"features": {
|
||||||
"rgb_matrix": true
|
"rgb_matrix": true
|
||||||
},
|
},
|
||||||
@ -28,6 +34,7 @@
|
|||||||
"layout_aliases": {
|
"layout_aliases": {
|
||||||
"LAYOUT": "LAYOUT_split_3x6_3"
|
"LAYOUT": "LAYOUT_split_3x6_3"
|
||||||
},
|
},
|
||||||
|
"community_layouts": [ "split_3x5_3", "split_3x6_3" ],
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_split_3x5_3": {
|
"LAYOUT_split_3x5_3": {
|
||||||
"layout": [
|
"layout": [
|
||||||
|
|||||||
@ -0,0 +1,2 @@
|
|||||||
|
RGBLIGHT_SUPPORTED = yes
|
||||||
|
RGB_MATRIX_SUPPORTED = yes
|
||||||
@ -1,28 +1,33 @@
|
|||||||
# Corne Keyboard (CRKBD)
|
# Corne Keyboard (CRKBD)
|
||||||
|
|
||||||
Also known (incorrectly) as the `HeliDox`.
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
A split keyboard with 3x6 vertically staggered keys and 3 thumb keys.
|
A split keyboard with 3x6 vertically staggered keys and 3 thumb keys.
|
||||||
|
Also, it has the option that use extension keys and rotary encoders.
|
||||||
|
|
||||||
Keyboard Maintainer: [foostan](https://github.com/foostan/) [@foostan](https://twitter.com/foostan)
|
Keyboard Maintainer: [foostan](https://github.com/foostan/) [@foostan](https://twitter.com/foostan)
|
||||||
Hardware Supported: Crkbd PCB, Pro Micro
|
Hardware Supported: Corne PCB
|
||||||
Hardware Availability: [PCB & Case Data](https://github.com/foostan/crkbd)
|
Hardware Availability: [PCB & Case Data](https://github.com/foostan/crkbd)
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
Flash example for this keyboard of v1 - v3:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
make crkbd:default
|
qmk flash -kb crkbd/rev1 -km default
|
||||||
|
```
|
||||||
|
|
||||||
|
Flash example for this keyboard of v4:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
qmk flash -kb crkbd/rev4 -km 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).
|
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
|
## Bootloader
|
||||||
|
|
||||||
The Corne PCBs have a reset button next to the TRRS jack to enter in to the bootloader.
|
The Corne PCBs have a reset and boot buttons next to the TRRS jack to enter in to the bootloader.
|
||||||
|
|
||||||
Additionally, if you hold down the "Q" or "P" buttons when plugging in that half of the keyboard (per the default QWERTY layout), this will jump to the bootloader and reset the EEPROM (persistent storage). This would normally be the very top corner-most position, but due to the breakaway column, it's left at Q and P for compatibility.
|
Additionally, if you hold down the "Q" or "P" buttons when plugging in that half of the keyboard (per the default QWERTY layout), this will jump to the bootloader and reset the EEPROM (persistent storage). This would normally be the very top corner-most position, but due to the breakaway column, it's left at Q and P for compatibility.
|
||||||
|
|
||||||
@ -43,7 +48,7 @@ And in your `config.h` file, add the following:
|
|||||||
#ifdef RGB_MATRIX_ENABLE
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
||||||
// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
|
// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
|
||||||
# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
# define RGB_MATRIX_SLEEP // turn off effects when suspended
|
||||||
# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
|
// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
|
||||||
// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
|
// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
|
||||||
|
|||||||
@ -1,4 +1,10 @@
|
|||||||
{
|
{
|
||||||
|
"keyboard_name": "Corne",
|
||||||
|
"usb": {
|
||||||
|
"pid": "0x0001",
|
||||||
|
"device_version": "0.0.1"
|
||||||
|
},
|
||||||
|
"processor": "atmega32u4",
|
||||||
"features": {
|
"features": {
|
||||||
"rgblight": true
|
"rgblight": true
|
||||||
},
|
},
|
||||||
@ -70,110 +76,5 @@
|
|||||||
{"matrix": [6, 0], "x": 224, "y": 41, "flags": 1}
|
{"matrix": [6, 0], "x": 224, "y": 41, "flags": 1}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"development_board": "promicro",
|
"development_board": "promicro"
|
||||||
"layout_aliases": {
|
|
||||||
"LAYOUT": "LAYOUT_split_3x6_3"
|
|
||||||
},
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT_split_3x5_3": {
|
|
||||||
"layout": [
|
|
||||||
{"matrix": [0, 1], "x": 0, "y": 0.3},
|
|
||||||
{"matrix": [0, 2], "x": 1, "y": 0.1},
|
|
||||||
{"matrix": [0, 3], "x": 2, "y": 0},
|
|
||||||
{"matrix": [0, 4], "x": 3, "y": 0.1},
|
|
||||||
{"matrix": [0, 5], "x": 4, "y": 0.2},
|
|
||||||
|
|
||||||
{"matrix": [4, 5], "x": 8, "y": 0.2},
|
|
||||||
{"matrix": [4, 4], "x": 9, "y": 0.1},
|
|
||||||
{"matrix": [4, 3], "x": 10, "y": 0},
|
|
||||||
{"matrix": [4, 2], "x": 11, "y": 0.1},
|
|
||||||
{"matrix": [4, 1], "x": 12, "y": 0.3},
|
|
||||||
|
|
||||||
{"matrix": [1, 1], "x": 0, "y": 1.3},
|
|
||||||
{"matrix": [1, 2], "x": 1, "y": 1.1},
|
|
||||||
{"matrix": [1, 3], "x": 2, "y": 1},
|
|
||||||
{"matrix": [1, 4], "x": 3, "y": 1.1},
|
|
||||||
{"matrix": [1, 5], "x": 4, "y": 1.2},
|
|
||||||
|
|
||||||
{"matrix": [5, 5], "x": 8, "y": 1.2},
|
|
||||||
{"matrix": [5, 4], "x": 9, "y": 1.1},
|
|
||||||
{"matrix": [5, 3], "x": 10, "y": 1},
|
|
||||||
{"matrix": [5, 2], "x": 11, "y": 1.1},
|
|
||||||
{"matrix": [5, 1], "x": 12, "y": 1.3},
|
|
||||||
|
|
||||||
{"matrix": [2, 1], "x": 0, "y": 2.3},
|
|
||||||
{"matrix": [2, 2], "x": 1, "y": 2.1},
|
|
||||||
{"matrix": [2, 3], "x": 2, "y": 2},
|
|
||||||
{"matrix": [2, 4], "x": 3, "y": 2.1},
|
|
||||||
{"matrix": [2, 5], "x": 4, "y": 2.2},
|
|
||||||
|
|
||||||
{"matrix": [6, 5], "x": 8, "y": 2.2},
|
|
||||||
{"matrix": [6, 4], "x": 9, "y": 2.1},
|
|
||||||
{"matrix": [6, 3], "x": 10, "y": 2},
|
|
||||||
{"matrix": [6, 2], "x": 11, "y": 2.1},
|
|
||||||
{"matrix": [6, 1], "x": 12, "y": 2.3},
|
|
||||||
|
|
||||||
{"matrix": [3, 3], "x": 3, "y": 3.7},
|
|
||||||
{"matrix": [3, 4], "x": 4, "y": 3.7},
|
|
||||||
{"matrix": [3, 5], "x": 5, "y": 3.2, "h": 1.5},
|
|
||||||
|
|
||||||
{"matrix": [7, 5], "x": 7, "y": 3.2, "h": 1.5},
|
|
||||||
{"matrix": [7, 4], "x": 8, "y": 3.7},
|
|
||||||
{"matrix": [7, 3], "x": 9, "y": 3.7}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"LAYOUT_split_3x6_3": {
|
|
||||||
"layout": [
|
|
||||||
{"matrix": [0, 0], "x": 0, "y": 0.3},
|
|
||||||
{"matrix": [0, 1], "x": 1, "y": 0.3},
|
|
||||||
{"matrix": [0, 2], "x": 2, "y": 0.1},
|
|
||||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
|
||||||
{"matrix": [0, 4], "x": 4, "y": 0.1},
|
|
||||||
{"matrix": [0, 5], "x": 5, "y": 0.2},
|
|
||||||
|
|
||||||
{"matrix": [4, 5], "x": 9, "y": 0.2},
|
|
||||||
{"matrix": [4, 4], "x": 10, "y": 0.1},
|
|
||||||
{"matrix": [4, 3], "x": 11, "y": 0},
|
|
||||||
{"matrix": [4, 2], "x": 12, "y": 0.1},
|
|
||||||
{"matrix": [4, 1], "x": 13, "y": 0.3},
|
|
||||||
{"matrix": [4, 0], "x": 14, "y": 0.3},
|
|
||||||
|
|
||||||
{"matrix": [1, 0], "x": 0, "y": 1.3},
|
|
||||||
{"matrix": [1, 1], "x": 1, "y": 1.3},
|
|
||||||
{"matrix": [1, 2], "x": 2, "y": 1.1},
|
|
||||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
|
||||||
{"matrix": [1, 4], "x": 4, "y": 1.1},
|
|
||||||
{"matrix": [1, 5], "x": 5, "y": 1.2},
|
|
||||||
|
|
||||||
{"matrix": [5, 5], "x": 9, "y": 1.2},
|
|
||||||
{"matrix": [5, 4], "x": 10, "y": 1.1},
|
|
||||||
{"matrix": [5, 3], "x": 11, "y": 1},
|
|
||||||
{"matrix": [5, 2], "x": 12, "y": 1.1},
|
|
||||||
{"matrix": [5, 1], "x": 13, "y": 1.3},
|
|
||||||
{"matrix": [5, 0], "x": 14, "y": 1.3},
|
|
||||||
|
|
||||||
{"matrix": [2, 0], "x": 0, "y": 2.3},
|
|
||||||
{"matrix": [2, 1], "x": 1, "y": 2.3},
|
|
||||||
{"matrix": [2, 2], "x": 2, "y": 2.1},
|
|
||||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
|
||||||
{"matrix": [2, 4], "x": 4, "y": 2.1},
|
|
||||||
{"matrix": [2, 5], "x": 5, "y": 2.2},
|
|
||||||
|
|
||||||
{"matrix": [6, 5], "x": 9, "y": 2.2},
|
|
||||||
{"matrix": [6, 4], "x": 10, "y": 2.1},
|
|
||||||
{"matrix": [6, 3], "x": 11, "y": 2},
|
|
||||||
{"matrix": [6, 2], "x": 12, "y": 2.1},
|
|
||||||
{"matrix": [6, 1], "x": 13, "y": 2.3},
|
|
||||||
{"matrix": [6, 0], "x": 14, "y": 2.3},
|
|
||||||
|
|
||||||
{"matrix": [3, 3], "x": 4, "y": 3.7},
|
|
||||||
{"matrix": [3, 4], "x": 5, "y": 3.7},
|
|
||||||
{"matrix": [3, 5], "x": 6, "y": 3.2, "h": 1.5},
|
|
||||||
|
|
||||||
{"matrix": [7, 5], "x": 8, "y": 3.2, "h": 1.5},
|
|
||||||
{"matrix": [7, 4], "x": 9, "y": 3.7},
|
|
||||||
{"matrix": [7, 3], "x": 10, "y": 3.7}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1 @@
|
|||||||
|
# This file intentionally left blank
|
||||||
28
keyboards/crkbd/qmk/qmk_firmware/rev4/config.h
Normal file
28
keyboards/crkbd/qmk/qmk_firmware/rev4/config.h
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2023 @foostan
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
#define SERIAL_USART_FULL_DUPLEX
|
||||||
|
#define SERIAL_USART_TX_PIN GP12
|
||||||
|
#define SERIAL_USART_RX_PIN GP13
|
||||||
|
#define SPLIT_HAND_PIN GP21
|
||||||
|
|
||||||
|
#define I2C_DRIVER I2CD1
|
||||||
|
#define OLED_UPDATE_INTERVAL 50
|
||||||
|
#define I2C1_SDA_PIN GP6
|
||||||
|
#define I2C1_SCL_PIN GP7
|
||||||
7
keyboards/crkbd/qmk/qmk_firmware/rev4/halconf.h
Normal file
7
keyboards/crkbd/qmk/qmk_firmware/rev4/halconf.h
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
// Copyright 2023 QMK
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
||||||
234
keyboards/crkbd/qmk/qmk_firmware/rev4/info.json
Normal file
234
keyboards/crkbd/qmk/qmk_firmware/rev4/info.json
Normal file
@ -0,0 +1,234 @@
|
|||||||
|
{
|
||||||
|
"keyboard_name": "Corne v4",
|
||||||
|
"usb": {
|
||||||
|
"pid": "0x0004",
|
||||||
|
"device_version": "4.0.0"
|
||||||
|
},
|
||||||
|
"processor": "RP2040",
|
||||||
|
"bootloader": "rp2040",
|
||||||
|
"features": {
|
||||||
|
"mousekey": true,
|
||||||
|
"encoder": true
|
||||||
|
},
|
||||||
|
"matrix_pins": {
|
||||||
|
"direct":[
|
||||||
|
["GP22", "GP20", "GP23", "GP26", "GP29", "GP0", "GP4"],
|
||||||
|
["GP19", "GP18", "GP24", "GP27", "GP1", "GP2", "GP8"],
|
||||||
|
["GP17", "GP16", "GP25", "GP28", "GP3", "GP9", null],
|
||||||
|
[ null, null, null, "GP14", "GP15", "GP11", null]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"encoder": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "GP5", "pin_b": "GP7"},
|
||||||
|
{"pin_a": "GP6", "pin_b": "GP7"}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"split": {
|
||||||
|
"matrix_pins": {
|
||||||
|
"right": {
|
||||||
|
"direct": [
|
||||||
|
[ "GP8", "GP9", "GP3", "GP2", "GP1", "GP27", "GP25"],
|
||||||
|
["GP11", "GP14", "GP4", "GP0", "GP28", "GP26", "GP23"],
|
||||||
|
["GP15", "GP18", "GP5", "GP29", "GP20", "GP22", null],
|
||||||
|
[ null, null, null, "GP16", "GP17", "GP19", null]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"encoder": {
|
||||||
|
"right": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "GP24", "pin_b": "GP7"},
|
||||||
|
{"pin_a": "GP6", "pin_b": "GP7"}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"transport": {
|
||||||
|
"sync": {
|
||||||
|
"matrix_state": true,
|
||||||
|
"layer_state": true,
|
||||||
|
"modifiers": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_split_3x6_3_ex2": {
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [0, 0], "x": 0, "y": 0.3},
|
||||||
|
{"matrix": [0, 1], "x": 1, "y": 0.3},
|
||||||
|
{"matrix": [0, 2], "x": 2, "y": 0.1},
|
||||||
|
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||||
|
{"matrix": [0, 4], "x": 4, "y": 0.1},
|
||||||
|
{"matrix": [0, 5], "x": 5, "y": 0.2},
|
||||||
|
{"matrix": [0, 6], "x": 6, "y": 0.7},
|
||||||
|
|
||||||
|
{"matrix": [4, 6], "x": 8, "y": 0.7},
|
||||||
|
{"matrix": [4, 5], "x": 9, "y": 0.2},
|
||||||
|
{"matrix": [4, 4], "x": 10, "y": 0.1},
|
||||||
|
{"matrix": [4, 3], "x": 11, "y": 0},
|
||||||
|
{"matrix": [4, 2], "x": 12, "y": 0.1},
|
||||||
|
{"matrix": [4, 1], "x": 13, "y": 0.3},
|
||||||
|
{"matrix": [4, 0], "x": 14, "y": 0.3},
|
||||||
|
|
||||||
|
{"matrix": [1, 0], "x": 0, "y": 1.3},
|
||||||
|
{"matrix": [1, 1], "x": 1, "y": 1.3},
|
||||||
|
{"matrix": [1, 2], "x": 2, "y": 1.1},
|
||||||
|
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||||
|
{"matrix": [1, 4], "x": 4, "y": 1.1},
|
||||||
|
{"matrix": [1, 5], "x": 5, "y": 1.2},
|
||||||
|
{"matrix": [1, 6], "x": 6, "y": 1.7},
|
||||||
|
|
||||||
|
{"matrix": [5, 6], "x": 8, "y": 1.7},
|
||||||
|
{"matrix": [5, 5], "x": 9, "y": 1.2},
|
||||||
|
{"matrix": [5, 4], "x": 10, "y": 1.1},
|
||||||
|
{"matrix": [5, 3], "x": 11, "y": 1},
|
||||||
|
{"matrix": [5, 2], "x": 12, "y": 1.1},
|
||||||
|
{"matrix": [5, 1], "x": 13, "y": 1.3},
|
||||||
|
{"matrix": [5, 0], "x": 14, "y": 1.3},
|
||||||
|
|
||||||
|
{"matrix": [2, 0], "x": 0, "y": 2.3},
|
||||||
|
{"matrix": [2, 1], "x": 1, "y": 2.3},
|
||||||
|
{"matrix": [2, 2], "x": 2, "y": 2.1},
|
||||||
|
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||||
|
{"matrix": [2, 4], "x": 4, "y": 2.1},
|
||||||
|
{"matrix": [2, 5], "x": 5, "y": 2.2},
|
||||||
|
|
||||||
|
{"matrix": [6, 5], "x": 9, "y": 2.2},
|
||||||
|
{"matrix": [6, 4], "x": 10, "y": 2.1},
|
||||||
|
{"matrix": [6, 3], "x": 11, "y": 2},
|
||||||
|
{"matrix": [6, 2], "x": 12, "y": 2.1},
|
||||||
|
{"matrix": [6, 1], "x": 13, "y": 2.3},
|
||||||
|
{"matrix": [6, 0], "x": 14, "y": 2.3},
|
||||||
|
|
||||||
|
{"matrix": [3, 3], "x": 4, "y": 3.7},
|
||||||
|
{"matrix": [3, 4], "x": 5, "y": 3.7},
|
||||||
|
{"matrix": [3, 5], "x": 6, "y": 3.2, "h": 1.5},
|
||||||
|
|
||||||
|
{"matrix": [7, 5], "x": 8, "y": 3.2, "h": 1.5},
|
||||||
|
{"matrix": [7, 4], "x": 9, "y": 3.7},
|
||||||
|
{"matrix": [7, 3], "x": 10, "y": 3.7}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ws2812": {
|
||||||
|
"driver": "vendor",
|
||||||
|
"pin": "GP10"
|
||||||
|
},
|
||||||
|
"rgblight": {
|
||||||
|
"led_count": 46,
|
||||||
|
"split": true,
|
||||||
|
"split_count": [23, 23],
|
||||||
|
"max_brightness": 120,
|
||||||
|
"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
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rgb_matrix": {
|
||||||
|
"driver": "ws2812",
|
||||||
|
"max_brightness": 120,
|
||||||
|
"split_count": [23, 23],
|
||||||
|
"animations": {
|
||||||
|
"alphas_mods": true,
|
||||||
|
"gradient_up_down": true,
|
||||||
|
"gradient_left_right": true,
|
||||||
|
"breathing": true,
|
||||||
|
"band_sat": true,
|
||||||
|
"band_val": true,
|
||||||
|
"band_pinwheel_sat": true,
|
||||||
|
"band_pinwheel_val": true,
|
||||||
|
"band_spiral_sat": true,
|
||||||
|
"band_spiral_val": true,
|
||||||
|
"cycle_all": true,
|
||||||
|
"cycle_left_right": true,
|
||||||
|
"cycle_up_down": true,
|
||||||
|
"rainbow_moving_chevron": true,
|
||||||
|
"cycle_out_in": true,
|
||||||
|
"cycle_out_in_dual": true,
|
||||||
|
"cycle_pinwheel": true,
|
||||||
|
"cycle_spiral": true,
|
||||||
|
"dual_beacon": true,
|
||||||
|
"rainbow_beacon": true,
|
||||||
|
"rainbow_pinwheels": true,
|
||||||
|
"raindrops": true,
|
||||||
|
"jellybean_raindrops": true,
|
||||||
|
"hue_breathing": true,
|
||||||
|
"hue_pendulum": true,
|
||||||
|
"hue_wave": true,
|
||||||
|
"pixel_fractal": true,
|
||||||
|
"pixel_flow": true,
|
||||||
|
"pixel_rain": true,
|
||||||
|
"typing_heatmap": true,
|
||||||
|
"digital_rain": true,
|
||||||
|
"solid_reactive_simple": true,
|
||||||
|
"solid_reactive": true,
|
||||||
|
"solid_reactive_wide": true,
|
||||||
|
"solid_reactive_multiwide": true,
|
||||||
|
"solid_reactive_cross": true,
|
||||||
|
"solid_reactive_multicross": true,
|
||||||
|
"solid_reactive_nexus": true,
|
||||||
|
"solid_reactive_multinexus": true,
|
||||||
|
"splash": true,
|
||||||
|
"multisplash": true,
|
||||||
|
"solid_splash": true,
|
||||||
|
"solid_multisplash": true
|
||||||
|
},
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [3, 5], "x": 95, "y": 63, "flags": 4},
|
||||||
|
{"matrix": [2, 5], "x": 85, "y": 39, "flags": 4},
|
||||||
|
{"matrix": [1, 5], "x": 85, "y": 21, "flags": 4},
|
||||||
|
{"matrix": [0, 5], "x": 85, "y": 4, "flags": 4},
|
||||||
|
{"matrix": [0, 4], "x": 68, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [1, 4], "x": 68, "y": 19, "flags": 4},
|
||||||
|
{"matrix": [2, 4], "x": 68, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [3, 4], "x": 80, "y": 58, "flags": 4},
|
||||||
|
{"matrix": [3, 3], "x": 60, "y": 55, "flags": 4},
|
||||||
|
{"matrix": [2, 3], "x": 50, "y": 35, "flags": 4},
|
||||||
|
{"matrix": [1, 3], "x": 50, "y": 13, "flags": 4},
|
||||||
|
{"matrix": [0, 3], "x": 50, "y": 0, "flags": 4},
|
||||||
|
{"matrix": [0, 2], "x": 33, "y": 3, "flags": 4},
|
||||||
|
{"matrix": [1, 2], "x": 33, "y": 20, "flags": 4},
|
||||||
|
{"matrix": [2, 2], "x": 33, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [2, 1], "x": 16, "y": 42, "flags": 4},
|
||||||
|
{"matrix": [1, 1], "x": 16, "y": 24, "flags": 4},
|
||||||
|
{"matrix": [0, 1], "x": 16, "y": 7, "flags": 4},
|
||||||
|
{"matrix": [0, 0], "x": 0, "y": 7, "flags": 4},
|
||||||
|
{"matrix": [1, 0], "x": 0, "y": 24, "flags": 4},
|
||||||
|
{"matrix": [2, 0], "x": 0, "y": 41, "flags": 4},
|
||||||
|
{"matrix": [0, 6], "x": 103, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [1, 6], "x": 103, "y": 24, "flags": 4},
|
||||||
|
|
||||||
|
{"matrix": [7, 5], "x": 129, "y": 63, "flags": 4},
|
||||||
|
{"matrix": [6, 5], "x": 139, "y": 39, "flags": 4},
|
||||||
|
{"matrix": [5, 5], "x": 139, "y": 21, "flags": 4},
|
||||||
|
{"matrix": [4, 5], "x": 139, "y": 4, "flags": 4},
|
||||||
|
{"matrix": [4, 4], "x": 156, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [5, 4], "x": 156, "y": 19, "flags": 4},
|
||||||
|
{"matrix": [6, 4], "x": 156, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [7, 4], "x": 144, "y": 58, "flags": 4},
|
||||||
|
{"matrix": [7, 3], "x": 164, "y": 55, "flags": 4},
|
||||||
|
{"matrix": [6, 3], "x": 174, "y": 35, "flags": 4},
|
||||||
|
{"matrix": [5, 3], "x": 174, "y": 13, "flags": 4},
|
||||||
|
{"matrix": [4, 3], "x": 174, "y": 0, "flags": 4},
|
||||||
|
{"matrix": [4, 2], "x": 191, "y": 3, "flags": 4},
|
||||||
|
{"matrix": [5, 2], "x": 191, "y": 20, "flags": 4},
|
||||||
|
{"matrix": [6, 2], "x": 191, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [6, 1], "x": 208, "y": 42, "flags": 4},
|
||||||
|
{"matrix": [5, 1], "x": 208, "y": 24, "flags": 4},
|
||||||
|
{"matrix": [4, 1], "x": 208, "y": 7, "flags": 4},
|
||||||
|
{"matrix": [4, 0], "x": 224, "y": 7, "flags": 4},
|
||||||
|
{"matrix": [5, 0], "x": 224, "y": 24, "flags": 4},
|
||||||
|
{"matrix": [6, 0], "x": 224, "y": 41, "flags": 4},
|
||||||
|
{"matrix": [4, 6], "x": 122, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [5, 6], "x": 122, "y": 24, "flags": 4}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
22
keyboards/crkbd/qmk/qmk_firmware/rev4/mcuconf.h
Normal file
22
keyboards/crkbd/qmk/qmk_firmware/rev4/mcuconf.h
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2023 @foostan
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include_next <mcuconf.h>
|
||||||
|
|
||||||
|
#undef RP_I2C_USE_I2C1
|
||||||
|
#define RP_I2C_USE_I2C1 TRUE
|
||||||
1
keyboards/crkbd/qmk/qmk_firmware/rev4/rules.mk
Normal file
1
keyboards/crkbd/qmk/qmk_firmware/rev4/rules.mk
Normal file
@ -0,0 +1 @@
|
|||||||
|
SERIAL_DRIVER = vendor
|
||||||
28
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/config.h
Normal file
28
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/config.h
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2023 @foostan
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
#define SERIAL_USART_FULL_DUPLEX
|
||||||
|
#define SERIAL_USART_TX_PIN GP12
|
||||||
|
#define SERIAL_USART_RX_PIN GP13
|
||||||
|
#define SPLIT_HAND_PIN GP21
|
||||||
|
|
||||||
|
#define I2C_DRIVER I2CD1
|
||||||
|
#define OLED_UPDATE_INTERVAL 50
|
||||||
|
#define I2C1_SDA_PIN GP6
|
||||||
|
#define I2C1_SCL_PIN GP7
|
||||||
7
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/halconf.h
Normal file
7
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/halconf.h
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
// Copyright 2023 QMK
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
||||||
222
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/info.json
Normal file
222
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/info.json
Normal file
@ -0,0 +1,222 @@
|
|||||||
|
{
|
||||||
|
"keyboard_name": "Corne v4 mini",
|
||||||
|
"usb": {
|
||||||
|
"pid": "0x0104",
|
||||||
|
"device_version": "4.0.0"
|
||||||
|
},
|
||||||
|
"processor": "RP2040",
|
||||||
|
"bootloader": "rp2040",
|
||||||
|
"features": {
|
||||||
|
"mousekey": true,
|
||||||
|
"encoder": true
|
||||||
|
},
|
||||||
|
"matrix_pins": {
|
||||||
|
"direct":[
|
||||||
|
["GP22", "GP20", "GP23", "GP26", "GP29", "GP0", "GP4"],
|
||||||
|
["GP19", "GP18", "GP24", "GP27", "GP1", "GP2", "GP8"],
|
||||||
|
["GP17", "GP16", "GP25", "GP28", "GP3", "GP9", null],
|
||||||
|
[ null, null, null, "GP14", "GP15", "GP11", null]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"encoder": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "GP5", "pin_b": "GP7"},
|
||||||
|
{"pin_a": "GP6", "pin_b": "GP7"}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"split": {
|
||||||
|
"matrix_pins": {
|
||||||
|
"right": {
|
||||||
|
"direct": [
|
||||||
|
[ "GP8", "GP9", "GP3", "GP2", "GP1", "GP27", "GP25"],
|
||||||
|
["GP11", "GP14", "GP4", "GP0", "GP28", "GP26", "GP23"],
|
||||||
|
["GP15", "GP18", "GP5", "GP29", "GP20", "GP22", null],
|
||||||
|
[ null, null, null, "GP16", "GP17", "GP19", null]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"encoder": {
|
||||||
|
"right": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "GP24", "pin_b": "GP7"},
|
||||||
|
{"pin_a": "GP6", "pin_b": "GP7"}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"transport": {
|
||||||
|
"sync": {
|
||||||
|
"matrix_state": true,
|
||||||
|
"layer_state": true,
|
||||||
|
"modifiers": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT_split_3x5_3_ex2": {
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [0, 1], "x": 0, "y": 0.3},
|
||||||
|
{"matrix": [0, 2], "x": 1, "y": 0.1},
|
||||||
|
{"matrix": [0, 3], "x": 2, "y": 0},
|
||||||
|
{"matrix": [0, 4], "x": 3, "y": 0.1},
|
||||||
|
{"matrix": [0, 5], "x": 4, "y": 0.2},
|
||||||
|
{"matrix": [0, 6], "x": 5, "y": 0.7},
|
||||||
|
|
||||||
|
{"matrix": [4, 6], "x": 8, "y": 0.7},
|
||||||
|
{"matrix": [4, 5], "x": 9, "y": 0.2},
|
||||||
|
{"matrix": [4, 4], "x": 10, "y": 0.1},
|
||||||
|
{"matrix": [4, 3], "x": 11, "y": 0},
|
||||||
|
{"matrix": [4, 2], "x": 12, "y": 0.1},
|
||||||
|
{"matrix": [4, 1], "x": 13, "y": 0.3},
|
||||||
|
|
||||||
|
{"matrix": [1, 1], "x": 0, "y": 1.3},
|
||||||
|
{"matrix": [1, 2], "x": 1, "y": 1.1},
|
||||||
|
{"matrix": [1, 3], "x": 2, "y": 1},
|
||||||
|
{"matrix": [1, 4], "x": 3, "y": 1.1},
|
||||||
|
{"matrix": [1, 5], "x": 4, "y": 1.2},
|
||||||
|
{"matrix": [1, 6], "x": 5, "y": 1.7},
|
||||||
|
|
||||||
|
{"matrix": [5, 6], "x": 8, "y": 1.7},
|
||||||
|
{"matrix": [5, 5], "x": 9, "y": 1.2},
|
||||||
|
{"matrix": [5, 4], "x": 10, "y": 1.1},
|
||||||
|
{"matrix": [5, 3], "x": 11, "y": 1},
|
||||||
|
{"matrix": [5, 2], "x": 12, "y": 1.1},
|
||||||
|
{"matrix": [5, 1], "x": 13, "y": 1.3},
|
||||||
|
|
||||||
|
{"matrix": [2, 1], "x": 0, "y": 2.3},
|
||||||
|
{"matrix": [2, 2], "x": 1, "y": 2.1},
|
||||||
|
{"matrix": [2, 3], "x": 2, "y": 2},
|
||||||
|
{"matrix": [2, 4], "x": 3, "y": 2.1},
|
||||||
|
{"matrix": [2, 5], "x": 4, "y": 2.2},
|
||||||
|
|
||||||
|
{"matrix": [6, 5], "x": 9, "y": 2.2},
|
||||||
|
{"matrix": [6, 4], "x": 10, "y": 2.1},
|
||||||
|
{"matrix": [6, 3], "x": 11, "y": 2},
|
||||||
|
{"matrix": [6, 2], "x": 12, "y": 2.1},
|
||||||
|
{"matrix": [6, 1], "x": 13, "y": 2.3},
|
||||||
|
|
||||||
|
{"matrix": [3, 3], "x": 4, "y": 3.7},
|
||||||
|
{"matrix": [3, 4], "x": 5, "y": 3.7},
|
||||||
|
{"matrix": [3, 5], "x": 6, "y": 3.2, "h": 1.5},
|
||||||
|
|
||||||
|
{"matrix": [7, 5], "x": 8, "y": 3.2, "h": 1.5},
|
||||||
|
{"matrix": [7, 4], "x": 9, "y": 3.7},
|
||||||
|
{"matrix": [7, 3], "x": 10, "y": 3.7}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ws2812": {
|
||||||
|
"driver": "vendor",
|
||||||
|
"pin": "GP10"
|
||||||
|
},
|
||||||
|
"rgblight": {
|
||||||
|
"led_count": 40,
|
||||||
|
"split": true,
|
||||||
|
"split_count": [20, 20],
|
||||||
|
"max_brightness": 120,
|
||||||
|
"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
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rgb_matrix": {
|
||||||
|
"driver": "ws2812",
|
||||||
|
"max_brightness": 120,
|
||||||
|
"split_count": [20, 20],
|
||||||
|
"animations": {
|
||||||
|
"alphas_mods": true,
|
||||||
|
"gradient_up_down": true,
|
||||||
|
"gradient_left_right": true,
|
||||||
|
"breathing": true,
|
||||||
|
"band_sat": true,
|
||||||
|
"band_val": true,
|
||||||
|
"band_pinwheel_sat": true,
|
||||||
|
"band_pinwheel_val": true,
|
||||||
|
"band_spiral_sat": true,
|
||||||
|
"band_spiral_val": true,
|
||||||
|
"cycle_all": true,
|
||||||
|
"cycle_left_right": true,
|
||||||
|
"cycle_up_down": true,
|
||||||
|
"rainbow_moving_chevron": true,
|
||||||
|
"cycle_out_in": true,
|
||||||
|
"cycle_out_in_dual": true,
|
||||||
|
"cycle_pinwheel": true,
|
||||||
|
"cycle_spiral": true,
|
||||||
|
"dual_beacon": true,
|
||||||
|
"rainbow_beacon": true,
|
||||||
|
"rainbow_pinwheels": true,
|
||||||
|
"raindrops": true,
|
||||||
|
"jellybean_raindrops": true,
|
||||||
|
"hue_breathing": true,
|
||||||
|
"hue_pendulum": true,
|
||||||
|
"hue_wave": true,
|
||||||
|
"pixel_fractal": true,
|
||||||
|
"pixel_flow": true,
|
||||||
|
"pixel_rain": true,
|
||||||
|
"typing_heatmap": true,
|
||||||
|
"digital_rain": true,
|
||||||
|
"solid_reactive_simple": true,
|
||||||
|
"solid_reactive": true,
|
||||||
|
"solid_reactive_wide": true,
|
||||||
|
"solid_reactive_multiwide": true,
|
||||||
|
"solid_reactive_cross": true,
|
||||||
|
"solid_reactive_multicross": true,
|
||||||
|
"solid_reactive_nexus": true,
|
||||||
|
"solid_reactive_multinexus": true,
|
||||||
|
"splash": true,
|
||||||
|
"multisplash": true,
|
||||||
|
"solid_splash": true,
|
||||||
|
"solid_multisplash": true
|
||||||
|
},
|
||||||
|
"layout": [
|
||||||
|
{"matrix": [3, 5], "x": 95, "y": 63, "flags": 4},
|
||||||
|
{"matrix": [2, 5], "x": 85, "y": 39, "flags": 4},
|
||||||
|
{"matrix": [1, 5], "x": 85, "y": 21, "flags": 4},
|
||||||
|
{"matrix": [0, 5], "x": 85, "y": 4, "flags": 4},
|
||||||
|
{"matrix": [0, 4], "x": 68, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [1, 4], "x": 68, "y": 19, "flags": 4},
|
||||||
|
{"matrix": [2, 4], "x": 68, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [3, 4], "x": 80, "y": 58, "flags": 4},
|
||||||
|
{"matrix": [3, 3], "x": 60, "y": 55, "flags": 4},
|
||||||
|
{"matrix": [2, 3], "x": 50, "y": 35, "flags": 4},
|
||||||
|
{"matrix": [1, 3], "x": 50, "y": 13, "flags": 4},
|
||||||
|
{"matrix": [0, 3], "x": 50, "y": 0, "flags": 4},
|
||||||
|
{"matrix": [0, 2], "x": 33, "y": 3, "flags": 4},
|
||||||
|
{"matrix": [1, 2], "x": 33, "y": 20, "flags": 4},
|
||||||
|
{"matrix": [2, 2], "x": 33, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [2, 1], "x": 16, "y": 42, "flags": 4},
|
||||||
|
{"matrix": [1, 1], "x": 16, "y": 24, "flags": 4},
|
||||||
|
{"matrix": [0, 1], "x": 16, "y": 7, "flags": 4},
|
||||||
|
{"matrix": [0, 6], "x": 103, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [1, 6], "x": 103, "y": 24, "flags": 4},
|
||||||
|
|
||||||
|
{"matrix": [7, 5], "x": 129, "y": 63, "flags": 4},
|
||||||
|
{"matrix": [6, 5], "x": 139, "y": 39, "flags": 4},
|
||||||
|
{"matrix": [5, 5], "x": 139, "y": 21, "flags": 4},
|
||||||
|
{"matrix": [4, 5], "x": 139, "y": 4, "flags": 4},
|
||||||
|
{"matrix": [4, 4], "x": 156, "y": 2, "flags": 4},
|
||||||
|
{"matrix": [5, 4], "x": 156, "y": 19, "flags": 4},
|
||||||
|
{"matrix": [6, 4], "x": 156, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [7, 4], "x": 144, "y": 58, "flags": 4},
|
||||||
|
{"matrix": [7, 3], "x": 164, "y": 55, "flags": 4},
|
||||||
|
{"matrix": [6, 3], "x": 174, "y": 35, "flags": 4},
|
||||||
|
{"matrix": [5, 3], "x": 174, "y": 13, "flags": 4},
|
||||||
|
{"matrix": [4, 3], "x": 174, "y": 0, "flags": 4},
|
||||||
|
{"matrix": [4, 2], "x": 191, "y": 3, "flags": 4},
|
||||||
|
{"matrix": [5, 2], "x": 191, "y": 20, "flags": 4},
|
||||||
|
{"matrix": [6, 2], "x": 191, "y": 37, "flags": 4},
|
||||||
|
{"matrix": [6, 1], "x": 208, "y": 42, "flags": 4},
|
||||||
|
{"matrix": [5, 1], "x": 208, "y": 24, "flags": 4},
|
||||||
|
{"matrix": [4, 1], "x": 208, "y": 7, "flags": 4},
|
||||||
|
{"matrix": [4, 6], "x": 122, "y": 17, "flags": 4},
|
||||||
|
{"matrix": [5, 6], "x": 122, "y": 24, "flags": 4}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
22
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/mcuconf.h
Normal file
22
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/mcuconf.h
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2023 @foostan
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include_next <mcuconf.h>
|
||||||
|
|
||||||
|
#undef RP_I2C_USE_I2C1
|
||||||
|
#define RP_I2C_USE_I2C1 TRUE
|
||||||
1
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/rules.mk
Normal file
1
keyboards/crkbd/qmk/qmk_firmware/rev4_mini/rules.mk
Normal file
@ -0,0 +1 @@
|
|||||||
|
SERIAL_DRIVER = vendor
|
||||||
@ -3,6 +3,3 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
DEFAULT_FOLDER = crkbd/rev1
|
DEFAULT_FOLDER = crkbd/rev1
|
||||||
|
|
||||||
RGBLIGHT_SUPPORTED = yes
|
|
||||||
RGB_MATRIX_SUPPORTED = yes
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user