mirror of
https://github.com/qmk/qmk_userspace.git
synced 2026-04-22 11:30:23 -04:00
Embed Keebart Corne Choc Pro keyboard definition in userspace overlay
The keebart/corne_choc_pro keyboard does not exist in the official qmk/qmk_firmware repository, causing CI builds to fail. This embeds the keyboard hardware definition (from Keebart's vial-qmk fork) directly in the userspace so it gets overlaid onto QMK firmware at build time. - Add keyboard definition files (info.json, config.h, rules.mk, halconf.h, mcuconf.h) with RP2040 pin mappings, split config, OLED, and RGB matrix - Add standard variant keyboard.json with LED layout positions - Remove Vial-QMK fork submodule (.gitmodules, qmk_firmware) since the keyboard definition is now self-contained in the userspace - Remove deprecated COMBO_COUNT define (modern QMK auto-detects) https://claude.ai/code/session_01G7xpKdeQFVBvr4iCzxrcTU
This commit is contained in:
parent
293a4ac80d
commit
39958c6545
9 changed files with 310 additions and 5 deletions
3
.gitmodules
vendored
3
.gitmodules
vendored
|
|
@ -1,3 +0,0 @@
|
||||||
[submodule "qmk_firmware"]
|
|
||||||
path = qmk_firmware
|
|
||||||
url = https://github.com/Keebart/vial-qmk-corne-choc-pro.git
|
|
||||||
24
keyboards/keebart/corne_choc_pro/config.h
Normal file
24
keyboards/keebart/corne_choc_pro/config.h
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define SERIAL_USART_TX_PIN GP12
|
||||||
|
#define USB_VBUS_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
|
||||||
|
|
||||||
|
#define RGB_MATRIX_SLEEP
|
||||||
|
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||||
|
#define RGB_MATRIX_KEYPRESSES
|
||||||
|
|
||||||
|
#define USB_SUSPEND_WAKEUP_DELAY 200
|
||||||
|
|
||||||
|
/* RP2040- and hardware-specific config */
|
||||||
|
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
|
||||||
|
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
|
||||||
|
#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64
|
||||||
|
|
||||||
|
#define SPLIT_LAYER_STATE_ENABLE
|
||||||
|
#define SPLIT_LED_STATE_ENABLE
|
||||||
5
keyboards/keebart/corne_choc_pro/halconf.h
Normal file
5
keyboards/keebart/corne_choc_pro/halconf.h
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define HAL_USE_I2C TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
||||||
217
keyboards/keebart/corne_choc_pro/info.json
Normal file
217
keyboards/keebart/corne_choc_pro/info.json
Normal file
|
|
@ -0,0 +1,217 @@
|
||||||
|
{
|
||||||
|
"manufacturer": "Keebart",
|
||||||
|
"keyboard_name": "corne_choc_pro",
|
||||||
|
"url": "https://keebart.com/products/corne",
|
||||||
|
"maintainer": "Keebart",
|
||||||
|
"bootloader": "rp2040",
|
||||||
|
"diode_direction": "COL2ROW",
|
||||||
|
"features": {
|
||||||
|
"bootmagic": true,
|
||||||
|
"extrakey": true,
|
||||||
|
"nkro": true,
|
||||||
|
"oled": true,
|
||||||
|
"rgblight": false,
|
||||||
|
"rgb_matrix": true,
|
||||||
|
"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]
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"processor": "RP2040",
|
||||||
|
"usb": {
|
||||||
|
"device_version": "1.0.0",
|
||||||
|
"pid": "0x0000",
|
||||||
|
"vid": "0xFEED"
|
||||||
|
},
|
||||||
|
"encoder": {
|
||||||
|
"rotary": [
|
||||||
|
{"pin_a": "GP5", "pin_b": "GP7"},
|
||||||
|
{"pin_a": "GP6", "pin_b": "GP7"}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"bootmagic": {
|
||||||
|
"enabled": true,
|
||||||
|
"matrix": [0, 1]
|
||||||
|
},
|
||||||
|
"split": {
|
||||||
|
"enabled": true,
|
||||||
|
"bootmagic": {
|
||||||
|
"matrix": [4, 1]
|
||||||
|
},
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
"watchdog": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"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}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ws2812": {
|
||||||
|
"driver": "vendor",
|
||||||
|
"pin": "GP10"
|
||||||
|
},
|
||||||
|
"rgb_matrix": {
|
||||||
|
"driver": "ws2812",
|
||||||
|
"max_brightness": 100,
|
||||||
|
"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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
6
keyboards/keebart/corne_choc_pro/mcuconf.h
Normal file
6
keyboards/keebart/corne_choc_pro/mcuconf.h
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include_next <mcuconf.h>
|
||||||
|
|
||||||
|
#undef RP_I2C_USE_I2C1
|
||||||
|
#define RP_I2C_USE_I2C1 TRUE
|
||||||
1
keyboards/keebart/corne_choc_pro/rules.mk
Normal file
1
keyboards/keebart/corne_choc_pro/rules.mk
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
SERIAL_DRIVER = vendor
|
||||||
57
keyboards/keebart/corne_choc_pro/standard/keyboard.json
Normal file
57
keyboards/keebart/corne_choc_pro/standard/keyboard.json
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "Corne Choc Pro",
|
||||||
|
"usb": {
|
||||||
|
"pid": "0x0004"
|
||||||
|
},
|
||||||
|
"rgb_matrix": {
|
||||||
|
"split_count": [23, 23],
|
||||||
|
"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": 16, "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": 16, "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}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 4649f864f15ba9f540ee83d66b50cb9fcd4f7e59
|
|
||||||
|
|
@ -11,6 +11,5 @@
|
||||||
#define RETRO_TAPPING_PER_KEY
|
#define RETRO_TAPPING_PER_KEY
|
||||||
|
|
||||||
// ── Combos ──
|
// ── Combos ──
|
||||||
#define COMBO_COUNT 8
|
|
||||||
#define COMBO_TERM 40
|
#define COMBO_TERM 40
|
||||||
#define COMBO_ONLY_FROM_LAYER 0
|
#define COMBO_ONLY_FROM_LAYER 0
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue