Skip to content

Commit

Permalink
[Keyboard] Add Klor
Browse files Browse the repository at this point in the history
  • Loading branch information
azzamsa committed Sep 6, 2024
1 parent 4a6ba1e commit a3e539e
Show file tree
Hide file tree
Showing 6 changed files with 206 additions and 0 deletions.
4 changes: 4 additions & 0 deletions keyboards/klor/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#pragma once



167 changes: 167 additions & 0 deletions keyboards/klor/keyboard.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,167 @@
{
"manufacturer": "Geigeigeist",
"keyboard_name": "Klor",
"maintainer": "waffle87",
"build": {
"lto": true
},
"development_board": "elite_c",
"diode_direction": "COL2ROW",
"encoder": {
"rotary": [
{"pin_a": "F5", "pin_b": "F4"}
]
},
"features": {
"bootmagic": true,
"encoder": true,
"extrakey": true,
"haptic": true,
"mousekey": true,
"oled": true,
"pointing_device": false,
"rgb_matrix": true,
"audio": false
},
"haptic": {
"driver": "drv2605l"
},
"matrix_pins": {
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
"rows": ["C6", "D7", "E6", "B4"]
},
"rgb_matrix": {
"driver": "ws2812",
"animations": {
"alphas_mods": true,
"band_sat": true,
"band_val": true,
"breathing": true,
"gradient_left_right": true,
"gradient_up_down": true
},
"layout": [
{"matrix": [3, 4], "x": 102, "y": 63, "flags": 1},
{"matrix": [3, 3], "x": 89, "y": 54, "flags": 1},
{"matrix": [3, 2], "x": 74, "y": 49, "flags": 1},
{"matrix": [2, 5], "x": 75, "y": 34, "flags": 4},
{"matrix": [1, 5], "x": 75, "y": 21, "flags": 4},
{"matrix": [0, 5], "x": 75, "y": 8, "flags": 4},
{"matrix": [0, 4], "x": 60, "y": 6, "flags": 4},
{"matrix": [1, 4], "x": 60, "y": 19, "flags": 4},
{"matrix": [2, 4], "x": 60, "y": 32, "flags": 4},
{"matrix": [3, 1], "x": 58, "y": 48, "flags": 1},
{"matrix": [2, 3], "x": 46, "y": 25, "flags": 4},
{"matrix": [1, 3], "x": 46, "y": 12, "flags": 4},
{"matrix": [0, 3], "x": 46, "y": 0, "flags": 4},
{"matrix": [0, 2], "x": 29, "y": 7, "flags": 4},
{"matrix": [1, 2], "x": 30, "y": 20, "flags": 4},
{"matrix": [2, 2], "x": 31, "y": 33, "flags": 4},
{"matrix": [2, 1], "x": 17, "y": 42, "flags": 4},
{"matrix": [1, 1], "x": 15, "y": 30, "flags": 4},
{"matrix": [0, 1], "x": 13, "y": 17, "flags": 4},
{"matrix": [1, 0], "x": 0, "y": 28, "flags": 1},
{"matrix": [2, 0], "x": 3, "y": 41, "flags": 1},
{"matrix": [7, 4], "x": 122, "y": 63, "flags": 1},
{"matrix": [7, 3], "x": 135, "y": 54, "flags": 1},
{"matrix": [7, 2], "x": 150, "y": 49, "flags": 1},
{"matrix": [6, 5], "x": 149, "y": 34, "flags": 4},
{"matrix": [5, 5], "x": 149, "y": 21, "flags": 4},
{"matrix": [4, 5], "x": 149, "y": 8, "flags": 4},
{"matrix": [4, 4], "x": 163, "y": 6, "flags": 4},
{"matrix": [5, 4], "x": 163, "y": 19, "flags": 4},
{"matrix": [6, 4], "x": 163, "y": 32, "flags": 4},
{"matrix": [7, 1], "x": 166, "y": 48, "flags": 1},
{"matrix": [6, 3], "x": 178, "y": 25, "flags": 4},
{"matrix": [5, 3], "x": 178, "y": 12, "flags": 4},
{"matrix": [4, 3], "x": 178, "y": 0, "flags": 4},
{"matrix": [4, 2], "x": 195, "y": 7, "flags": 4},
{"matrix": [5, 2], "x": 194, "y": 20, "flags": 4},
{"matrix": [6, 2], "x": 193, "y": 33, "flags": 4},
{"matrix": [4, 1], "x": 206, "y": 42, "flags": 4},
{"matrix": [5, 1], "x": 209, "y": 30, "flags": 4},
{"matrix": [6, 1], "x": 211, "y": 17, "flags": 4},
{"matrix": [5, 0], "x": 224, "y": 28, "flags": 1},
{"matrix": [6, 0], "x": 221, "y": 41, "flags": 1}
],
"split_count": [21, 21]
},
"split": {
"enabled": true,
"encoder": {
"right": {
"rotary": [
{"pin_a": "F4", "pin_b": "F5"}
]
}
},
"serial": {
"pin": "D2"
},
"transport": {
"sync": {
"oled": true,
"matrix_state": true
}
}
},
"url": "https://github.com/geigeigeist/klor",
"usb": {
"device_version": "1.0.0",
"pid": "0x0001",
"vid": "0x3A3C"
},
"ws2812": {
"pin": "D3"
},
"layouts": {
"LAYOUT": {
"layout": [
{"label": "L01", "matrix": [0, 1], "x": 1, "y": 0},
{"label": "L02", "matrix": [0, 2], "x": 2, "y": 0},
{"label": "L03", "matrix": [0, 3], "x": 3, "y": 0},
{"label": "L04", "matrix": [0, 4], "x": 4, "y": 0},
{"label": "L05", "matrix": [0, 5], "x": 5, "y": 0},
{"label": "R00", "matrix": [4, 5], "x": 9, "y": 0},
{"label": "R01", "matrix": [4, 4], "x": 10, "y": 0},
{"label": "R02", "matrix": [4, 3], "x": 11, "y": 0},
{"label": "R03", "matrix": [4, 2], "x": 12, "y": 0},
{"label": "R04", "matrix": [4, 1], "x": 13, "y": 0},
{"label": "L10", "matrix": [1, 0], "x": 0, "y": 1},
{"label": "L11", "matrix": [1, 1], "x": 1, "y": 1},
{"label": "L12", "matrix": [1, 2], "x": 2, "y": 1},
{"label": "L13", "matrix": [1, 3], "x": 3, "y": 1},
{"label": "L14", "matrix": [1, 4], "x": 4, "y": 1},
{"label": "L15", "matrix": [1, 5], "x": 5, "y": 1},
{"label": "R10", "matrix": [5, 5], "x": 9, "y": 1},
{"label": "R11", "matrix": [5, 4], "x": 10, "y": 1},
{"label": "R12", "matrix": [5, 3], "x": 11, "y": 1},
{"label": "R13", "matrix": [5, 2], "x": 12, "y": 1},
{"label": "R14", "matrix": [5, 1], "x": 13, "y": 1},
{"label": "R15", "matrix": [5, 0], "x": 14, "y": 1},
{"label": "L20", "matrix": [2, 0], "x": 0, "y": 2},
{"label": "L21", "matrix": [2, 1], "x": 1, "y": 2},
{"label": "L22", "matrix": [2, 2], "x": 2, "y": 2},
{"label": "L23", "matrix": [2, 3], "x": 3, "y": 2},
{"label": "L24", "matrix": [2, 4], "x": 4, "y": 2},
{"label": "L25", "matrix": [2, 5], "x": 5, "y": 2},
{"label": "L35", "matrix": [3, 5], "x": 6, "y": 2},
{"label": "R30", "matrix": [7, 5], "x": 8, "y": 2},
{"label": "R20", "matrix": [6, 5], "x": 9, "y": 2},
{"label": "R21", "matrix": [6, 4], "x": 10, "y": 2},
{"label": "R22", "matrix": [6, 3], "x": 11, "y": 2},
{"label": "R23", "matrix": [6, 2], "x": 12, "y": 2},
{"label": "R24", "matrix": [6, 1], "x": 13, "y": 2},
{"label": "R25", "matrix": [6, 0], "x": 14, "y": 2},
{"label": "L31", "matrix": [3, 1], "x": 2, "y": 3},
{"label": "L32", "matrix": [3, 2], "x": 3, "y": 3},
{"label": "L33", "matrix": [3, 3], "x": 4, "y": 3},
{"label": "L34", "matrix": [3, 4], "x": 5, "y": 3},
{"label": "R31", "matrix": [7, 4], "x": 9, "y": 3},
{"label": "R32", "matrix": [7, 3], "x": 10, "y": 3},
{"label": "R33", "matrix": [7, 2], "x": 11, "y": 3},
{"label": "R34", "matrix": [7, 1], "x": 12, "y": 3}
]
}
}
}
13 changes: 13 additions & 0 deletions keyboards/klor/keymaps/default/keymap.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"keyboard": "geigeigeist/klor",
"keymap": "default",
"layout": "LAYOUT",
"layers": [
[
"KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P",
"KC_TAB", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_H", "KC_J", "KC_K", "KC_L", "KC_SCLN", "KC_QUOT",
"KC_DEL", "KC_Z", "KC_X", "KC_C", "KC_V", "KC_B", "KC_MUTE", "KC_MPLY", "KC_N", "KC_M", "KC_COMM", "KC_DOT", "KC_SLSH", "KC_RSFT",
"KC_LCTL", "KC_TRNS", "KC_SPC", "KC_LALT", "KC_LGUI", "KC_ENT", "KC_TRNS", "KC_BSPC"
]
]
}
1 change: 1 addition & 0 deletions keyboards/klor/klor.c
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#include "quantum.h"
20 changes: 20 additions & 0 deletions keyboards/klor/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
```
█ █ █ ▄▄▄▀▀▀▀▀▀▄▄▄ █▀▀▀▀▀▀▀▀▀▀█
█ █ █ ▄▀ ▀▄ █ █
█ █ █ ▄▀ ▀▄ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █ █
█ █ █ █ █ █▄▄▄▄▄▄▄▄▄▄█
█ █ █ █ █ █ █ █
█ █ █ █ █ █ █ █
█ █ █ █ ▀▄ ▄▀ █ █
██ █ █ ▀▄ ▄▀ █ █
█ █ █▄▄▄▄▄▄▄▄ ▀▀▀▄▄▄▄▄▄▀▀▀ █ █
```
# KLOR split keyboard

KLOR is 42 keys column-staggered split keyboard made by @geigeigeist. It supports a per key RGB matrix, encoders, OLED displays, haptic feedback, audio, a Pixart Paw3204 trackball and four different layouts, through brake off parts.
It's schematics are based on the Sofle, while the layout is based on the Yacc46.

You can use this command to compile the firmware
`qmk compile -kb klor -km default`
1 change: 1 addition & 0 deletions keyboards/klor/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
POINTING_DEVICE_DRIVER = paw3204

0 comments on commit a3e539e

Please sign in to comment.