Prune unused keyboards
This commit is contained in:
parent
579b8ffacd
commit
e856f84f10
21990 changed files with 0 additions and 1629175 deletions
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "0-Sixty",
|
||||
"usb": {
|
||||
"pid": "0x0060"
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "B6"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,366 +0,0 @@
|
|||
{
|
||||
"manufacturer": "ven0mtr0n",
|
||||
"maintainer": "vinamarora8",
|
||||
"usb": {
|
||||
"vid": "0x7654",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B3", "B2"],
|
||||
"rows": ["B1", "F7", "F6", "F5", "F4"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"extrakey": true,
|
||||
"console": true,
|
||||
"command": true,
|
||||
"nkro": true
|
||||
},
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"development_board": "promicro",
|
||||
"layouts": {
|
||||
"LAYOUT_1x2uC": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4},
|
||||
{"matrix": [4, 4], "x": 4, "y": 4},
|
||||
{"matrix": [4, 6], "x": 5, "y": 4, "w": 2},
|
||||
{"matrix": [4, 7], "x": 7, "y": 4},
|
||||
{"matrix": [4, 8], "x": 8, "y": 4},
|
||||
{"matrix": [4, 9], "x": 9, "y": 4},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_2x2uC": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4},
|
||||
{"matrix": [4, 5], "x": 4, "y": 4, "w": 2},
|
||||
{"matrix": [4, 6], "x": 6, "y": 4, "w": 2},
|
||||
{"matrix": [4, 8], "x": 8, "y": 4},
|
||||
{"matrix": [4, 9], "x": 9, "y": 4},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ortho_5x12": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4},
|
||||
{"matrix": [4, 4], "x": 4, "y": 4},
|
||||
{"matrix": [4, 5], "x": 5, "y": 4},
|
||||
{"matrix": [4, 6], "x": 6, "y": 4},
|
||||
{"matrix": [4, 7], "x": 7, "y": 4},
|
||||
{"matrix": [4, 8], "x": 8, "y": 4},
|
||||
{"matrix": [4, 9], "x": 9, "y": 4},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_1x2uR": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4},
|
||||
{"matrix": [4, 4], "x": 4, "y": 4},
|
||||
{"matrix": [4, 5], "x": 5, "y": 4},
|
||||
{"matrix": [4, 6], "x": 6, "y": 4, "w": 2},
|
||||
{"matrix": [4, 8], "x": 8, "y": 4},
|
||||
{"matrix": [4, 9], "x": 9, "y": 4},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_1x2uL": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11, "y": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4},
|
||||
{"matrix": [4, 5], "x": 4, "y": 4, "w": 2},
|
||||
{"matrix": [4, 6], "x": 6, "y": 4},
|
||||
{"matrix": [4, 7], "x": 7, "y": 4},
|
||||
{"matrix": [4, 8], "x": 8, "y": 4},
|
||||
{"matrix": [4, 9], "x": 9, "y": 4},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,168 +0,0 @@
|
|||
/* Copyright 2020 Vinam Arora <vinam@posteo.de>
|
||||
*
|
||||
* 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 zero_sixty_layers {
|
||||
_QWERTY,
|
||||
_COLEMAK,
|
||||
_DVORAK,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_ADJUST
|
||||
};
|
||||
|
||||
#define QWERTY DF(_QWERTY)
|
||||
#define COLEMAK DF(_COLEMAK)
|
||||
#define DVORAK DF(_DVORAK)
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
#define ADJUST MO(_ADJUST)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Esc | A | S | D | F | G | H | J | K | L | ; | " |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Caps | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_QWERTY] = LAYOUT_ortho_5x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_CAPS, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
/* Colemak
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Tab | Q | W | F | P | G | J | L | U | Y | ; | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Esc | A | R | S | T | D | H | N | E | I | O | " |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | K | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Caps | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_COLEMAK] = LAYOUT_ortho_5x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL,
|
||||
KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_CAPS, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
/* Dvorak
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Tab | " | , | . | P | Y | F | G | C | R | L | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Esc | A | O | E | U | I | D | H | T | N | S | / |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Caps | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_DVORAK] = LAYOUT_ortho_5x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_DEL,
|
||||
KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
|
||||
KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT,
|
||||
KC_CAPS, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
/* Lower
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_LOWER] = LAYOUT_ortho_5x12(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
/* Raise
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_RAISE] = LAYOUT_ortho_5x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
/* Adjust
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | Reset| | | | | | | | | | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | | | | | | | |Qwerty|Colemk|Dvorak| | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_ADJUST] = LAYOUT_ortho_5x12(
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
|
||||
_______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
|
||||
_______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
|
||||
};
|
||||
|
||||
layer_state_t layer_state_set_user(layer_state_t state) {
|
||||
return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
|
||||
}
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# 0-Sixty
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
0-Sixty (pronounced "zero to sixty") is a 60 key ortholinear keyboard inspired by the [Discipline](https://github.com/coseyfannitutti/discipline) and the [Preonic](https://drop.com/buy/preonic-mechanical-keyboard). It is designed as a DIY through-hole kit and uses the ProMicro as its controller.
|
||||
|
||||
[More images here](https://imgur.com/a/b0JINqX)
|
||||
|
||||
* Keyboard Maintainer: [vinamarora8](https://github.com/vinamarora8)
|
||||
* Hardware Supported: 0-Sixty PCB
|
||||
* Hardware Availability: Private Group-Buy
|
||||
|
||||
Getting the board into bootloader mode:
|
||||
|
||||
To be able to flash firmware onto this board, you'll need to bring the ProMicro into bootloader mode. Simply tap the small reset button twice. The button is placed to the right of the ProMicro.
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0_sixty:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0_sixty: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).
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
/* Copyright 2021 Vinam Arora <vinam@posteo.de>
|
||||
*
|
||||
* 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
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "0-Sixty-underglow",
|
||||
"usb": {
|
||||
"pid": "0x0061"
|
||||
},
|
||||
"features": {
|
||||
"rgblight": true
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B6"
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 24,
|
||||
"max_brightness": 185,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,108 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "61Key",
|
||||
"manufacturer": "0xC7",
|
||||
"maintainer": "RealEmanGaming",
|
||||
"usb": {
|
||||
"vid": "0xE117",
|
||||
"pid": "0x6161",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": true,
|
||||
"extrakey": false,
|
||||
"key_lock": true,
|
||||
"mousekey": false,
|
||||
"nkro": false
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "F7", "F6", "F5", "F4", "F1", "F0"],
|
||||
"rows": ["B0", "B1", "B2", "B3", "B7"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "atmel-dfu",
|
||||
"layout_aliases": {
|
||||
"LAYOUT": "LAYOUT_60_ansi"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_60_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 1], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
/* Copyright 2021 0xC7
|
||||
*
|
||||
* 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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_60_ansi(
|
||||
QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL
|
||||
),
|
||||
[1] = LAYOUT_60_ansi(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
|
||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, QK_LOCK, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, C(A(KC_DEL))
|
||||
)
|
||||
};
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# 61Key
|
||||
|
||||

|
||||
|
||||
Custom keyboard designed by RealEmanGaming aka 0xC7
|
||||
|
||||
* Keyboard Maintainer: [0xC7](https://github.com/RealEmanGaming)
|
||||
* Hardware Supported: ATMega32u4
|
||||
* Hardware Availability: N/A (private board, might open source)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0xc7/61key:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0xc7/61key: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 - some may have pads you must short instead
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 0xCB - Conor Burns
|
||||
|
||||
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
|
||||
|
||||
/* default setup after eeprom reset */
|
||||
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_EFFECT_BREATHING + 2
|
||||
|
||||
/* Oled Size */
|
||||
#define OLED_DISPLAY_128X64
|
||||
#define OLED_FONT_END 255
|
||||
#define OLED_FONT_H "gfxfont.c"
|
||||
|
|
@ -1,277 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 0xCB - Conor Burns
|
||||
|
||||
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 "progmem.h"
|
||||
// clang-format off
|
||||
static const unsigned char font[] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
|
||||
0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
|
||||
0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
|
||||
0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
|
||||
0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
|
||||
0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
|
||||
0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
|
||||
0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
|
||||
0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
|
||||
0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
|
||||
0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
|
||||
0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
|
||||
0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
|
||||
0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
|
||||
0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
|
||||
0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
|
||||
0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
|
||||
0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
|
||||
0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
|
||||
0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
|
||||
0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
|
||||
0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
|
||||
0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
|
||||
0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
|
||||
0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
|
||||
0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
|
||||
0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
|
||||
0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
|
||||
0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
|
||||
0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
|
||||
0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
|
||||
0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
|
||||
0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
|
||||
0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
|
||||
0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
|
||||
0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
|
||||
0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
|
||||
0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
|
||||
0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
|
||||
0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
|
||||
0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
|
||||
0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
|
||||
0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
|
||||
0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
|
||||
0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
|
||||
0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
|
||||
0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
|
||||
0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
|
||||
0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
|
||||
0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
|
||||
0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
|
||||
0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
|
||||
0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
|
||||
0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
|
||||
0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
|
||||
0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
|
||||
0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
|
||||
0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
|
||||
0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
|
||||
0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
|
||||
0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
|
||||
0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
|
||||
0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
|
||||
0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
|
||||
0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
|
||||
0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
|
||||
0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
|
||||
0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
|
||||
0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
|
||||
0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
|
||||
0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
|
||||
0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
|
||||
0xFC, 0x18, 0x24, 0x24, 0x18, 0x00,
|
||||
0x18, 0x24, 0x24, 0x18, 0xFC, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
|
||||
0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
|
||||
0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
|
||||
0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
|
||||
0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
|
||||
0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
|
||||
0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
|
||||
0x4C, 0x10, 0x10, 0x10, 0x7C, 0x00,
|
||||
0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
|
||||
0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
|
||||
0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
|
||||
0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
|
||||
0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
|
||||
0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
|
||||
0x00, 0xE0, 0xFC, 0x1E, 0x06, 0xC6,
|
||||
0xC6, 0x06, 0x1E, 0xFC, 0xE0, 0x00,
|
||||
0x00, 0x00, 0x60, 0xE0, 0x80, 0x00,
|
||||
0x00, 0x80, 0xE0, 0x60, 0x00, 0x00,
|
||||
0x00, 0x00, 0xE0, 0xF8, 0x3C, 0x0E,
|
||||
0x06, 0x06, 0x06, 0x0E, 0x0C, 0x00,
|
||||
0x00, 0x00, 0xFE, 0xFE, 0x86, 0x86,
|
||||
0x86, 0x86, 0x8C, 0x78, 0x70, 0x00,
|
||||
0x00, 0x0E, 0x0E, 0x06, 0x06, 0xFE,
|
||||
0xFE, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x0C, 0x8E, 0x86, 0x86, 0x86,
|
||||
0x86, 0x86, 0xCE, 0xFE, 0x7C, 0x00,
|
||||
0x00, 0x06, 0x06, 0x06, 0x06, 0x06,
|
||||
0x06, 0xE6, 0xE6, 0x3E, 0x3E, 0x00,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||
0x01, 0x01, 0x06, 0x78, 0x80, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xE0, 0x1C, 0x02, 0x01, 0x04, 0x18,
|
||||
0x00, 0x00, 0x00, 0x02, 0x0C, 0x00,
|
||||
0x80, 0x80, 0x71, 0x02, 0x1C, 0xE0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x80, 0x78, 0x06, 0x01, 0x01,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||
0xF0, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8,
|
||||
0x00, 0x00, 0xFC, 0xFC, 0xFC, 0xFC,
|
||||
0xFC, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
|
||||
0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xF0,
|
||||
0x00, 0x00, 0x40, 0xF0, 0xFC, 0xFF,
|
||||
0xFF, 0xFC, 0xF0, 0xC0, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x3F, 0x78, 0x60, 0x63,
|
||||
0x63, 0x60, 0x78, 0x3F, 0x07, 0x00,
|
||||
0x00, 0x00, 0x60, 0x79, 0x19, 0x06,
|
||||
0x06, 0x19, 0x79, 0x60, 0x00, 0x00,
|
||||
0x00, 0x00, 0x07, 0x1F, 0x3C, 0x70,
|
||||
0x60, 0x60, 0x60, 0x70, 0x30, 0x00,
|
||||
0x00, 0x00, 0x7F, 0x7F, 0x61, 0x61,
|
||||
0x61, 0x61, 0x31, 0x1E, 0x0E, 0x00,
|
||||
0x00, 0x60, 0x60, 0x60, 0x60, 0x7F,
|
||||
0x7F, 0x60, 0x60, 0x60, 0x60, 0x00,
|
||||
0x00, 0x30, 0x71, 0x61, 0x61, 0x61,
|
||||
0x61, 0x61, 0x73, 0x7F, 0x3E, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x7F,
|
||||
0x7F, 0x01, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x03, 0xBC,
|
||||
0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
|
||||
0x87, 0x38, 0x40, 0x80, 0x08, 0x08,
|
||||
0x08, 0x04, 0x04, 0x02, 0x02, 0x01,
|
||||
0x00, 0x00, 0x80, 0x40, 0x38, 0x87,
|
||||
0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
|
||||
0xBC, 0x03, 0x00, 0x00, 0x00, 0x00,
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
|
||||
0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F,
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
|
||||
0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xC0, 0xF0,
|
||||
0xFC, 0xFE, 0xFC, 0xF8, 0xF9, 0xF3,
|
||||
0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC,
|
||||
0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x70, 0xD0, 0x70, 0x00, 0x07, 0x05,
|
||||
0x07, 0x02, 0x02, 0x82, 0xC2, 0x42,
|
||||
0x7E, 0xC0, 0xC0, 0xC0, 0x40, 0x7E,
|
||||
0x42, 0xC2, 0x82, 0x02, 0x02, 0x07,
|
||||
0x05, 0x07, 0x00, 0x70, 0xD0, 0x70,
|
||||
0x00, 0x00, 0x00, 0x80, 0x40, 0x20,
|
||||
0x10, 0xC8, 0xC8, 0x84, 0x04, 0x02,
|
||||
0x02, 0x02, 0x02, 0xC2, 0xC2, 0xC2,
|
||||
0xC2, 0xC4, 0xC4, 0xC8, 0x88, 0x90,
|
||||
0x20, 0x40, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0xFD, 0x05, 0x04, 0x04, 0x04,
|
||||
0x1F, 0x30, 0x40, 0x87, 0x9F, 0x1F,
|
||||
0x01, 0x81, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x1E, 0x9E, 0x86, 0x40, 0x30, 0x1F,
|
||||
0x04, 0x04, 0x04, 0x05, 0xFD, 0x01,
|
||||
0x00, 0x0F, 0x70, 0x80, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0xE0, 0xF8, 0x3E,
|
||||
0x0F, 0x03, 0x00, 0xFF, 0xFF, 0x01,
|
||||
0x01, 0x01, 0x01, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x80, 0x70, 0x0F, 0x00,
|
||||
0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
|
||||
0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
|
||||
0x00, 0x00, 0xFE, 0xFE, 0xFE, 0xFE,
|
||||
0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
|
||||
0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00,
|
||||
0xC0, 0xF0, 0xFC, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0x07, 0x03, 0x03,
|
||||
0x03, 0x03, 0x07, 0xFF, 0xFF, 0xFF,
|
||||
0xDF, 0x9F, 0x3F, 0x3C, 0x70, 0x40,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xC0, 0x5F, 0xD0, 0x90, 0x90, 0x90,
|
||||
0xFC, 0x06, 0x01, 0xF8, 0xFC, 0xFC,
|
||||
0xC0, 0xC0, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x3C, 0x3C, 0x30, 0x01, 0x06, 0xFC,
|
||||
0x90, 0x90, 0x90, 0xD0, 0x5F, 0xC0,
|
||||
0x00, 0xF0, 0x0E, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x01, 0x03, 0x07, 0x1E,
|
||||
0x3C, 0xF0, 0xE0, 0xFF, 0xFF, 0x80,
|
||||
0x80, 0x80, 0x80, 0xC1, 0xC1, 0xFF,
|
||||
0x3E, 0x00, 0x01, 0x0E, 0xF0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x07, 0x05, 0x07, 0x00, 0x70, 0x50,
|
||||
0x70, 0x20, 0x20, 0x20, 0x21, 0x3F,
|
||||
0x01, 0x61, 0x9F, 0x9F, 0x61, 0x01,
|
||||
0x3F, 0x21, 0x20, 0x20, 0x20, 0x70,
|
||||
0x50, 0x70, 0x00, 0x07, 0x05, 0x07,
|
||||
0x00, 0x00, 0x00, 0x01, 0x02, 0x04,
|
||||
0x08, 0x10, 0x13, 0x23, 0x20, 0x40,
|
||||
0x40, 0x40, 0x40, 0x43, 0x43, 0x40,
|
||||
0x40, 0x20, 0x20, 0x10, 0x10, 0x08,
|
||||
0x04, 0x02, 0x01, 0x00, 0x00, 0x00,
|
||||
0x07, 0x07, 0x07, 0x07, 0x0F, 0x0F,
|
||||
0x0F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F,
|
||||
0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x3F,
|
||||
0x3F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFF,
|
||||
0x00, 0x80, 0xC0, 0x70, 0x7C, 0x3F,
|
||||
0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x07,
|
||||
0x07, 0x03, 0x03, 0x02, 0x00, 0x00,
|
||||
0x00, 0x00, 0x02, 0x03, 0x03, 0x07,
|
||||
0x07, 0x07, 0x0F, 0x0F, 0x1E, 0x3E,
|
||||
0x3C, 0x7C, 0x70, 0xC0, 0x80, 0x00,
|
||||
};
|
||||
// clang-format on
|
||||
|
|
@ -1,99 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "1337",
|
||||
"manufacturer": "0xCB",
|
||||
"url": "https://0xCB.dev",
|
||||
"maintainer": "Conor-Burns",
|
||||
"usb": {
|
||||
"vid": "0xCB00",
|
||||
"pid": "0x1337",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"backlight": {
|
||||
"default": {
|
||||
"brightness": 5
|
||||
},
|
||||
"pin": "B5",
|
||||
"levels": 7,
|
||||
"breathing": true
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "F6", "pin_b": "F5"}
|
||||
]
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
},
|
||||
"tap_keycode_delay": 10
|
||||
},
|
||||
"qmk_lufa_bootloader": {
|
||||
"led": "B0"
|
||||
},
|
||||
"rgblight": {
|
||||
"saturation_steps": 8,
|
||||
"brightness_steps": 8,
|
||||
"led_count": 4,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"default": {
|
||||
"hue": 152,
|
||||
"sat": 232,
|
||||
"speed": 2
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "D3"
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "qmk-dfu",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"features": {
|
||||
"backlight": true,
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["D2", "D4", "F4"],
|
||||
["D7", "B1", "B3"],
|
||||
["E6", "B4", "B2"]
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"x": 0, "y": 0, "matrix": [0, 0]},
|
||||
{"x": 1, "y": 0, "matrix": [0, 1]},
|
||||
{"x": 2, "y": 0, "matrix": [0, 2]},
|
||||
|
||||
{"x": 0, "y": 1, "matrix": [1, 0]},
|
||||
{"x": 1, "y": 1, "matrix": [1, 1]},
|
||||
{"x": 2, "y": 1, "matrix": [1, 2]},
|
||||
|
||||
{"x": 0, "y": 2, "matrix": [2, 0]},
|
||||
{"x": 1, "y": 2, "matrix": [2, 1]},
|
||||
{"x": 2, "y": 2, "matrix": [2, 2]}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,177 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 0xCB - Conor Burns
|
||||
|
||||
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
|
||||
// clang-format off
|
||||
enum layer_names {
|
||||
_HOME,
|
||||
_MISC,
|
||||
_RGB,
|
||||
_BLED
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_HOME] = LAYOUT(
|
||||
KC_MPRV, KC_MNXT, KC_MPLY,
|
||||
KC_PGUP, KC_PGDN, TO(3),
|
||||
KC_HOME, KC_END, TO(1)
|
||||
),
|
||||
[_MISC] = LAYOUT(
|
||||
_______, _______, _______,
|
||||
_______, _______, TO(0),
|
||||
_______, _______, TO(2)
|
||||
),
|
||||
[_RGB] = LAYOUT(
|
||||
UG_HUEU, UG_HUED, UG_NEXT,
|
||||
UG_SATU, UG_SATD, TO(1),
|
||||
UG_SPDU, UG_SPDD, TO(3)
|
||||
),
|
||||
[_BLED] = LAYOUT(
|
||||
BL_STEP, BL_BRTG, BL_TOGG,
|
||||
BL_ON, BL_OFF, TO(2),
|
||||
BL_UP, BL_DOWN, TO(0)
|
||||
)
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
/* rotary encoder (SW3) - add more else if blocks for more granular layer control */
|
||||
#ifdef ENCODER_ENABLE
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (IS_LAYER_ON(_RGB)) {
|
||||
# ifdef RGBLIGHT_ENABLE
|
||||
if (clockwise) {
|
||||
rgblight_increase_val();
|
||||
} else {
|
||||
rgblight_decrease_val();
|
||||
}
|
||||
# endif
|
||||
} else if (IS_LAYER_ON(_BLED)) {
|
||||
if (clockwise) {
|
||||
backlight_increase();
|
||||
} else {
|
||||
backlight_decrease();
|
||||
}
|
||||
} else {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* oled stuff :) */
|
||||
#ifdef OLED_ENABLE
|
||||
uint16_t startup_timer;
|
||||
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||
startup_timer = timer_read();
|
||||
return rotation;
|
||||
}
|
||||
|
||||
static void render_logo(void) {
|
||||
static const char PROGMEM raw_logo[] = {
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 64, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 64, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 1, 2, 4, 2, 1, 1, 1, 1, 1, 1, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 1, 1, 1, 1, 1, 1, 2, 4, 2, 1, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 248, 5, 2, 0, 0, 0, 0, 0, 0, 128, 192, 192, 224, 224, 112, 120, 56, 63, 28, 14, 14, 14, 254, 14, 14, 30, 28, 63, 56, 120, 112, 224, 224, 192, 128, 0, 0, 0, 0, 0, 0, 0, 2, 5, 248, 5, 2, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 160, 19, 162, 66, 66, 66, 66, 66, 66, 66, 255, 255, 255, 0, 0, 0, 252, 254, 254, 192, 192, 192, 192, 255, 0, 0, 0, 62, 62, 60, 60, 0, 0, 1, 255, 255, 255, 66, 66, 66, 66, 66, 66, 66, 162, 19, 160, 64, 0, 0, 0, 0, 128, 64, 64, 64, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 192, 64, 64, 192, 128, 0, 0, 192, 64, 64, 192, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 64, 192, 0, 0, 0, 0, 0, 128, 192, 64, 64, 192, 128, 0, 0, 128, 192, 64, 64, 192, 128, 0, 0, 64, 64, 64, 64, 64, 192, 0, 0, 0, 0, 0, 249, 8, 8, 8, 8, 8, 8, 8, 8, 127, 255, 255, 192, 128, 128, 15, 31, 31, 1, 1, 1, 1, 255, 0, 0, 0, 30, 30, 14, 14, 128, 192, 192, 255, 255, 127, 8, 8, 8, 8, 8, 8, 8, 8, 249, 0, 0, 0,
|
||||
0, 0, 31, 49, 64, 78, 64, 49, 31, 0, 0, 97, 22, 8, 22, 97, 0, 0, 31, 49, 96, 64, 64, 96, 32, 0, 0, 127, 68, 68, 100, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 127, 64, 64, 0, 0, 0, 32, 100, 68, 68, 110, 59, 0, 0, 32, 100, 68, 68, 110, 59, 0, 0, 0, 0, 0, 126, 3, 1, 0, 0, 0, 8, 20, 35, 20, 8, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 7, 15, 254, 30, 28, 28, 28, 255, 28, 28, 28, 30, 254, 15, 7, 3, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 4, 10, 17, 10, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 40, 68, 40, 16, 16, 16, 16, 16, 16, 31, 0, 0, 16, 40, 71, 40, 16, 0, 0, 31, 16, 16, 16, 16, 16, 16, 40, 68, 40, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
};
|
||||
oled_write_raw_P(raw_logo, sizeof(raw_logo));
|
||||
}
|
||||
static void render_logo_font(void) {
|
||||
static const char PROGMEM qmk_logo[] = {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0x88, 0x89, 0x8A, 0x8B, 0x8A, 0x8B, 0x8C, 0x8D, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xA8, 0xA9, 0xAA, 0xAB, 0xAA, 0xAB, 0xAC, 0xAD, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0x00};
|
||||
|
||||
oled_write_P(qmk_logo, false);
|
||||
}
|
||||
/* Shows the name of the current layer and locks for the host (CAPS etc.) */
|
||||
static void render_info(void) {
|
||||
oled_write_P(PSTR("Layer: "), false);
|
||||
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case _HOME:
|
||||
oled_write_ln_P(PSTR("HOME"), false);
|
||||
break;
|
||||
case _MISC:
|
||||
oled_write_ln_P(PSTR("MISC"), false);
|
||||
break;
|
||||
case _RGB:
|
||||
oled_write_ln_P(PSTR("RGB"), false);
|
||||
break;
|
||||
case _BLED:
|
||||
oled_write_ln_P(PSTR("Backlight"), false);
|
||||
break;
|
||||
default:
|
||||
oled_write_ln_P(PSTR("Undefined"), false);
|
||||
}
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
|
||||
oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
|
||||
oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
|
||||
}
|
||||
static void render_rgbled_status(void) {
|
||||
char string[4];
|
||||
if (RGBLIGHT_MODES > 1 && rgblight_is_enabled() && get_highest_layer(layer_state) == _RGB) {
|
||||
uint16_t m = rgblight_get_mode();
|
||||
string[3] = '\0';
|
||||
string[2] = '0' + m % 10;
|
||||
string[1] = (m /= 10) % 10 ? '0' + (m) % 10 : (m / 10) % 10 ? '0' : ' ';
|
||||
string[0] = m / 10 ? '0' + m / 10 : ' ';
|
||||
oled_write_P(PSTR("Conf:"), false);
|
||||
oled_write(string, false);
|
||||
uint16_t h = rgblight_get_hue() / RGBLIGHT_HUE_STEP;
|
||||
string[3] = '\0';
|
||||
string[2] = '0' + h % 10;
|
||||
string[1] = (h /= 10) % 10 ? '0' + (h) % 10 : (h / 10) % 10 ? '0' : ' ';
|
||||
string[0] = h / 10 ? '0' + h / 10 : ' ';
|
||||
oled_write_P(PSTR(","), false);
|
||||
oled_write(string, false);
|
||||
uint16_t s = rgblight_get_sat() / RGBLIGHT_SAT_STEP;
|
||||
string[3] = '\0';
|
||||
string[2] = '0' + s % 10;
|
||||
string[1] = (s /= 10) % 10 ? '0' + (s) % 10 : (s / 10) % 10 ? '0' : ' ';
|
||||
string[0] = s / 10 ? '0' + s / 10 : ' ';
|
||||
oled_write_P(PSTR(","), false);
|
||||
oled_write(string, false);
|
||||
uint16_t v = rgblight_get_val() / RGBLIGHT_VAL_STEP;
|
||||
string[3] = '\0';
|
||||
string[2] = '0' + v % 10;
|
||||
string[1] = (v /= 10) % 10 ? '0' + (v) % 10 : (v / 10) % 10 ? '0' : ' ';
|
||||
string[0] = v / 10 ? '0' + v / 10 : ' ';
|
||||
oled_write_P(PSTR(","), false);
|
||||
oled_write(string, false);
|
||||
oled_write_ln_P(PSTR("\n MOD HUE SAT VAR"), false);
|
||||
} else {
|
||||
oled_write_ln_P(PSTR("\n"), false);
|
||||
}
|
||||
}
|
||||
bool oled_task_user(void) {
|
||||
static bool finished_timer = false;
|
||||
if (!finished_timer && (timer_elapsed(startup_timer) < 1000)) {
|
||||
render_logo();
|
||||
} else {
|
||||
if (!finished_timer) {
|
||||
oled_clear();
|
||||
finished_timer = true;
|
||||
}
|
||||
render_info();
|
||||
render_rgbled_status();
|
||||
render_logo_font();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
# 0xCB 1337
|
||||
|
||||
Macro keypad
|
||||
|
||||
* Keyboard Maintainer: [Conor Burns](https://github.com/conor-burns)
|
||||
* Hardware Supported: https://github.com/0xcb-dev/0xcb-1337
|
||||
* Hardware Availability: On [tindie](https://www.tindie.com/products/0xcb/0xcb-1337-a-customizable-macro-keyboard-with-qmk/) or order your own parts - the hardware in the repo is Open Source :D
|
||||
* PCB renders :)
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
More Pictures [here](https://0xcb.dev/1337/)
|
||||
To go to bootloader press row 0 col 0 key (top left) while plugging in the board. (Or press the reset button on V2.0 and v3.0)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0xcb/1337:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0xcb/1337: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).
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
{
|
||||
"development_board": "promicro",
|
||||
"bootloader": "qmk-dfu",
|
||||
"matrix_pins": {
|
||||
"cols": ["F5", "F6", "F7", "F4", "B3", "B1", "B2"],
|
||||
"rows": ["D3", "D2", "D1", "D4", "D7", "E6", "B4", "C6"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"band_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"raindrops": true
|
||||
}
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "B5", "pin_b": "B6"}
|
||||
]
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "D0"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,144 +0,0 @@
|
|||
{
|
||||
"manufacturer": "Freya",
|
||||
"keyboard_name": "splaytoraid",
|
||||
"maintainer": "freya-irl",
|
||||
"url": "https://github.com/freya-irl/splaytoraid40",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0xCB00",
|
||||
"vid": "0x2004"
|
||||
},
|
||||
"features": {
|
||||
"extrakey": true,
|
||||
"rgb_matrix": true,
|
||||
"bootmagic": true,
|
||||
"console": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"encoder": true
|
||||
},
|
||||
"bootmagic": {
|
||||
"matrix": [1, 0]
|
||||
},
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"default": {
|
||||
"animation": "breathing",
|
||||
"hue": 152,
|
||||
"sat": 232,
|
||||
"speed": 50
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"flags": 4, "matrix": [0, 2], "x": 0, "y": 0},
|
||||
{"flags": 4, "matrix": [1, 0], "x": 20, "y": 0},
|
||||
{"flags": 4, "matrix": [7, 0], "x": 61, "y": 0},
|
||||
{"flags": 4, "matrix": [7, 1], "x": 163, "y": 0},
|
||||
{"flags": 4, "matrix": [5, 0], "x": 203, "y": 0},
|
||||
{"flags": 4, "matrix": [4, 2], "x": 224, "y": 0},
|
||||
{"flags": 4, "matrix": [6, 2], "x": 0, "y": 21},
|
||||
{"flags": 4, "matrix": [6, 1], "x": 224, "y": 21},
|
||||
{"flags": 4, "matrix": [3, 3], "x": 20, "y": 43},
|
||||
{"flags": 4, "matrix": [7, 3], "x": 61, "y": 43},
|
||||
{"flags": 4, "matrix": [6, 4], "x": 163, "y": 43},
|
||||
{"flags": 4, "matrix": [6, 3], "x": 203, "y": 43},
|
||||
{"flags": 4, "matrix": [4, 3], "x": 61, "y": 64},
|
||||
{"flags": 4, "matrix": [5, 5], "x": 81, "y": 64},
|
||||
{"flags": 4, "matrix": [7, 4], "x": 101, "y": 64},
|
||||
{"flags": 4, "matrix": [7, 5], "x": 122, "y": 64},
|
||||
{"flags": 4, "matrix": [1, 5], "x": 142, "y": 64},
|
||||
{"flags": 4, "matrix": [0, 3], "x": 163, "y": 64}
|
||||
],
|
||||
"max_brightness": 200
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_36": {
|
||||
"layout": [
|
||||
{"label": "K10", "matrix": [1, 0], "x": 0, "y": 0},
|
||||
{"label": "K11", "matrix": [1, 1], "x": 1, "y": 0},
|
||||
{"label": "K02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "K01", "matrix": [0, 1], "x": 3, "y": 0},
|
||||
{"label": "K12", "matrix": [1, 2], "x": 4, "y": 0},
|
||||
{"label": "K52", "matrix": [5, 2], "x": 6, "y": 0},
|
||||
{"label": "K04", "matrix": [0, 4], "x": 7, "y": 0},
|
||||
{"label": "K03", "matrix": [0, 3], "x": 8, "y": 0},
|
||||
{"label": "K14", "matrix": [1, 4], "x": 9, "y": 0},
|
||||
{"label": "K15", "matrix": [1, 5], "x": 10, "y": 0},
|
||||
{"label": "K30", "matrix": [3, 0], "x": 0, "y": 1},
|
||||
{"label": "K31", "matrix": [3, 1], "x": 1, "y": 1},
|
||||
{"label": "K22", "matrix": [2, 2], "x": 2, "y": 1},
|
||||
{"label": "K21", "matrix": [2, 1], "x": 3, "y": 1},
|
||||
{"label": "K13", "matrix": [1, 3], "x": 4, "y": 1},
|
||||
{"label": "K53", "matrix": [5, 3], "x": 6, "y": 1},
|
||||
{"label": "K24", "matrix": [2, 4], "x": 7, "y": 1},
|
||||
{"label": "K23", "matrix": [2, 3], "x": 8, "y": 1},
|
||||
{"label": "K34", "matrix": [3, 4], "x": 9, "y": 1},
|
||||
{"label": "K35", "matrix": [3, 5], "x": 10, "y": 1},
|
||||
{"label": "K50", "matrix": [5, 0], "x": 0, "y": 2},
|
||||
{"label": "K51", "matrix": [5, 1], "x": 1, "y": 2},
|
||||
{"label": "K42", "matrix": [4, 2], "x": 2, "y": 2},
|
||||
{"label": "K41", "matrix": [4, 1], "x": 3, "y": 2},
|
||||
{"label": "K32", "matrix": [3, 2], "x": 4, "y": 2},
|
||||
{"label": "K72", "matrix": [7, 2], "x": 6, "y": 2},
|
||||
{"label": "K44", "matrix": [4, 4], "x": 7, "y": 2},
|
||||
{"label": "K43", "matrix": [4, 3], "x": 8, "y": 2},
|
||||
{"label": "K54", "matrix": [5, 4], "x": 9, "y": 2},
|
||||
{"label": "K55", "matrix": [5, 5], "x": 10, "y": 2},
|
||||
{"label": "K62", "matrix": [6, 2], "x": 2, "y": 3},
|
||||
{"label": "K61", "matrix": [6, 1], "x": 3, "y": 3},
|
||||
{"label": "K33", "matrix": [3, 3], "x": 4, "y": 3},
|
||||
{"label": "K66", "matrix": [6, 6], "x": 5, "y": 3},
|
||||
{"label": "K73", "matrix": [7, 3], "x": 6, "y": 3},
|
||||
{"label": "K64", "matrix": [6, 4], "x": 7, "y": 3},
|
||||
{"label": "K63", "matrix": [6, 3], "x": 8, "y": 3}
|
||||
]
|
||||
},
|
||||
"LAYOUT_40": {
|
||||
"layout": [
|
||||
{"label": "K70", "matrix": [7, 0], "x": 0, "y": 0},
|
||||
{"label": "K10", "matrix": [1, 0], "x": 1, "y": 0},
|
||||
{"label": "K11", "matrix": [1, 1], "x": 2, "y": 0},
|
||||
{"label": "K02", "matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"label": "K01", "matrix": [0, 1], "x": 4, "y": 0},
|
||||
{"label": "K12", "matrix": [1, 2], "x": 5, "y": 0},
|
||||
{"label": "K52", "matrix": [5, 2], "x": 7, "y": 0},
|
||||
{"label": "K04", "matrix": [0, 4], "x": 8, "y": 0},
|
||||
{"label": "K03", "matrix": [0, 3], "x": 9, "y": 0},
|
||||
{"label": "K14", "matrix": [1, 4], "x": 10, "y": 0},
|
||||
{"label": "K15", "matrix": [1, 5], "x": 11, "y": 0},
|
||||
{"label": "K75", "matrix": [7, 5], "x": 12, "y": 0},
|
||||
{"label": "K71", "matrix": [7, 1], "x": 0, "y": 1},
|
||||
{"label": "K30", "matrix": [3, 0], "x": 1, "y": 1},
|
||||
{"label": "K31", "matrix": [3, 1], "x": 2, "y": 1},
|
||||
{"label": "K22", "matrix": [2, 2], "x": 3, "y": 1},
|
||||
{"label": "K21", "matrix": [2, 1], "x": 4, "y": 1},
|
||||
{"label": "K13", "matrix": [1, 3], "x": 5, "y": 1},
|
||||
{"label": "K53", "matrix": [5, 3], "x": 7, "y": 1},
|
||||
{"label": "K24", "matrix": [2, 4], "x": 8, "y": 1},
|
||||
{"label": "K23", "matrix": [2, 3], "x": 9, "y": 1},
|
||||
{"label": "K34", "matrix": [3, 4], "x": 10, "y": 1},
|
||||
{"label": "K35", "matrix": [3, 5], "x": 11, "y": 1},
|
||||
{"label": "K74", "matrix": [7, 4], "x": 12, "y": 1},
|
||||
{"label": "K50", "matrix": [5, 0], "x": 1, "y": 2},
|
||||
{"label": "K51", "matrix": [5, 1], "x": 2, "y": 2},
|
||||
{"label": "K42", "matrix": [4, 2], "x": 3, "y": 2},
|
||||
{"label": "K41", "matrix": [4, 1], "x": 4, "y": 2},
|
||||
{"label": "K32", "matrix": [3, 2], "x": 5, "y": 2},
|
||||
{"label": "K72", "matrix": [7, 2], "x": 7, "y": 2},
|
||||
{"label": "K44", "matrix": [4, 4], "x": 8, "y": 2},
|
||||
{"label": "K43", "matrix": [4, 3], "x": 9, "y": 2},
|
||||
{"label": "K54", "matrix": [5, 4], "x": 10, "y": 2},
|
||||
{"label": "K55", "matrix": [5, 5], "x": 11, "y": 2},
|
||||
{"label": "K62", "matrix": [6, 2], "x": 3, "y": 3},
|
||||
{"label": "K61", "matrix": [6, 1], "x": 4, "y": 3},
|
||||
{"label": "K33", "matrix": [3, 3], "x": 5, "y": 3},
|
||||
{"label": "K66", "matrix": [6, 6], "x": 6, "y": 3},
|
||||
{"label": "K73", "matrix": [7, 3], "x": 7, "y": 3},
|
||||
{"label": "K64", "matrix": [6, 4], "x": 8, "y": 3},
|
||||
{"label": "K63", "matrix": [6, 3], "x": 9, "y": 3}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
// Copyright 2023 Conor Burns (@Conor-Burns)
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layer_names {
|
||||
_BASE,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_ADJUST
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_BASE] = LAYOUT_40(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,
|
||||
KC_LSFT, KC_ESC, KC_ENT, KC_MPLY, KC_SPC, KC_DEL, KC_RSFT
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_40(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_40(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
|
||||
[_ADJUST] = LAYOUT_40(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_LOWER] = { ENCODER_CCW_CW(KC_MPRV, KC_MNXT) },
|
||||
[_RAISE] = { ENCODER_CCW_CW(UG_VALD, UG_VALU) },
|
||||
[_ADJUST] = { ENCODER_CCW_CW(KC_RGHT, KC_LEFT) }
|
||||
};
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
# splaytoraid
|
||||
|
||||

|
||||
|
||||
A 40% ergonomic keyboard with a stacked acrylic case and RGB underglow.
|
||||
|
||||
* Keyboard Maintainer: [freya](https://github.com/freya-irl)
|
||||
* Hardware Supported: PCB kit and Pro Micro compatible controller
|
||||
* Hardware Availability: [here](https://keeb.supply/products/splaytoraid-messenger-edition)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0xcb/splaytoraid:default
|
||||
make 0xcb/splaytoraid/32u4:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0xcb/splaytoraid:default:flash
|
||||
make 0xcb/splaytoraid/32u4: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 left top 4. col key (usually Escape) and plug in the keyboard
|
||||
* **Physical reset button**: Press the button on the controller (Helios) for more than 500ms or just press it (Pluto)
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||
|
||||
Please note that the default bootloader for the `32u4` version is QMK DFU, for compatibility with [0xCB Pluto](https://github.com/0xCB-dev/0xCB-Pluto). Generic Pro Micros often use a different bootloader, such as `caterina`.
|
||||
|
||||
If the incorrect bootloader is specified, bootmagic reset and the `QK_BOOT` keycode will not work.
|
||||
|
||||
To avoid this problem, set the correct bootloader in your custom keymap's `rules.mk` file before compiling, or flash using an appropriate target (ex: `make 0xcb/splaytoraid/32u4:default:avrdude`). See [flashing instructions and bootloader information](https://docs.qmk.fm/#/flashing) for more details.
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
{
|
||||
"development_board": "promicro_rp2040",
|
||||
"matrix_pins": {
|
||||
"cols": ["GP28", "GP27", "GP26", "GP29", "GP20", "GP22", "GP23"],
|
||||
"rows": ["GP0", "GP1", "GP2", "GP4", "GP6", "GP7", "GP8", "GP5"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"band_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_up_down": true,
|
||||
"digital_rain": true,
|
||||
"dual_beacon": true,
|
||||
"hue_breathing": true,
|
||||
"jellybean_raindrops": true,
|
||||
"multisplash": true,
|
||||
"pixel_fractal": true,
|
||||
"pixel_rain": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"raindrops": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"typing_heatmap": true
|
||||
}
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "GP9", "pin_b": "GP21"}
|
||||
]
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP3",
|
||||
"driver": "vendor"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
# rp2040_ce
|
||||
|
||||
This folder is set as default in the parent rules.mk - it will build firmware compatible with the RP2040 Community Edition. See [here](https://docs.qmk.fm/#/platformdev_rp2040?id=rp2040_ce) for a list.
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 0xCB - Conor Burns
|
||||
|
||||
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
|
||||
|
||||
/* oled custom font */
|
||||
#define OLED_FONT_END 255
|
||||
#define OLED_FONT_H "gfxfont.c"
|
||||
|
|
@ -1,277 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 0xCB - Conor Burns
|
||||
|
||||
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 "progmem.h"
|
||||
// clang-format off
|
||||
static const unsigned char font[] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
|
||||
0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
|
||||
0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
|
||||
0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
|
||||
0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
|
||||
0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
|
||||
0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
|
||||
0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
|
||||
0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
|
||||
0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
|
||||
0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
|
||||
0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
|
||||
0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
|
||||
0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
|
||||
0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
|
||||
0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
|
||||
0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
|
||||
0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
|
||||
0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
|
||||
0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
|
||||
0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
|
||||
0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
|
||||
0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
|
||||
0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
|
||||
0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
|
||||
0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
|
||||
0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
|
||||
0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
|
||||
0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
|
||||
0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
|
||||
0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
|
||||
0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
|
||||
0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
|
||||
0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
|
||||
0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
|
||||
0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
|
||||
0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
|
||||
0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
|
||||
0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
|
||||
0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
|
||||
0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
|
||||
0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
|
||||
0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
|
||||
0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
|
||||
0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
|
||||
0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
|
||||
0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
|
||||
0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
|
||||
0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
|
||||
0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
|
||||
0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
|
||||
0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
|
||||
0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
|
||||
0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
|
||||
0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
|
||||
0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
|
||||
0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
|
||||
0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
|
||||
0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
|
||||
0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
|
||||
0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
|
||||
0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
|
||||
0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
|
||||
0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
|
||||
0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
|
||||
0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
|
||||
0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
|
||||
0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
|
||||
0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
|
||||
0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
|
||||
0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
|
||||
0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
|
||||
0xFC, 0x18, 0x24, 0x24, 0x18, 0x00,
|
||||
0x18, 0x24, 0x24, 0x18, 0xFC, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
|
||||
0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
|
||||
0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
|
||||
0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
|
||||
0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
|
||||
0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
|
||||
0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
|
||||
0x4C, 0x10, 0x10, 0x10, 0x7C, 0x00,
|
||||
0x44, 0xE4, 0xD4, 0x4C, 0x44, 0x00,
|
||||
0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
|
||||
0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
|
||||
0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
|
||||
0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
|
||||
0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
|
||||
0x00, 0xE0, 0xFC, 0x1E, 0x06, 0xC6,
|
||||
0xC6, 0x06, 0x1E, 0xFC, 0xE0, 0x00,
|
||||
0x00, 0x00, 0x60, 0xE0, 0x80, 0x00,
|
||||
0x00, 0x80, 0xE0, 0x60, 0x00, 0x00,
|
||||
0x00, 0x00, 0xE0, 0xF8, 0x3C, 0x0E,
|
||||
0x06, 0x06, 0x06, 0x0E, 0x0C, 0x00,
|
||||
0x00, 0x00, 0xFE, 0xFE, 0x86, 0x86,
|
||||
0x86, 0x86, 0x8C, 0x78, 0x70, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x38, 0x38, 0xC0, 0xC0,
|
||||
0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x0C, 0x0C, 0xF0, 0xF0,
|
||||
0x0C, 0x0C, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x7F, 0x07, 0x07, 0x07,
|
||||
0x03, 0x03, 0x00, 0x00, 0x00, 0x07,
|
||||
0x07, 0x00, 0x00, 0x00, 0x03, 0x03,
|
||||
0x07, 0x07, 0x07, 0x7F, 0xFF, 0xFF,
|
||||
0x70, 0xD0, 0x70, 0x00, 0x07, 0x05,
|
||||
0x07, 0x02, 0x02, 0x82, 0xC2, 0x42,
|
||||
0x7E, 0xC0, 0xC0, 0xC0, 0x40, 0x7E,
|
||||
0x42, 0xC2, 0x82, 0x02, 0x02, 0x07,
|
||||
0x05, 0x07, 0x00, 0x70, 0xD0, 0x70,
|
||||
0x00, 0x07, 0x3F, 0x78, 0x60, 0x63,
|
||||
0x63, 0x60, 0x78, 0x3F, 0x07, 0x00,
|
||||
0x00, 0x00, 0x60, 0x79, 0x19, 0x06,
|
||||
0x06, 0x19, 0x79, 0x60, 0x00, 0x00,
|
||||
0x00, 0x00, 0x07, 0x1F, 0x3C, 0x70,
|
||||
0x60, 0x60, 0x60, 0x70, 0x30, 0x00,
|
||||
0x00, 0x00, 0x7F, 0x7F, 0x61, 0x61,
|
||||
0x61, 0x61, 0x31, 0x1E, 0x0E, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x07, 0x07, 0x3F, 0x3F, 0x00, 0x00,
|
||||
0x0F, 0x0F, 0x30, 0x30, 0x30, 0x30,
|
||||
0x30, 0x30, 0x0F, 0x0F, 0x00, 0x00,
|
||||
0x3F, 0x3F, 0x00, 0x00, 0x03, 0x03,
|
||||
0x00, 0x00, 0x3F, 0x3F, 0x00, 0x00,
|
||||
0x83, 0x83, 0x80, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x18, 0x18, 0xFE,
|
||||
0xFE, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x80, 0x83, 0x83,
|
||||
0xC0, 0x5F, 0xD0, 0x90, 0x90, 0x90,
|
||||
0xFC, 0x06, 0x01, 0xF8, 0xFC, 0xFC,
|
||||
0xC0, 0xC0, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x3C, 0x3C, 0x30, 0x01, 0x06, 0xFC,
|
||||
0x90, 0x90, 0x90, 0xD0, 0x5F, 0xC0,
|
||||
0x00, 0x18, 0x18, 0x86, 0x86, 0x86,
|
||||
0x86, 0x86, 0x86, 0x78, 0x78, 0x00,
|
||||
0x00, 0x06, 0x06, 0x06, 0x06, 0x86,
|
||||
0x86, 0xE6, 0xE6, 0x1E, 0x1E, 0x00,
|
||||
0x00, 0x80, 0x80, 0x60, 0x60, 0x18,
|
||||
0x18, 0xFE, 0xFE, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFC, 0xFC, 0x03, 0x03, 0x03, 0x03,
|
||||
0x03, 0x03, 0x0C, 0x0C, 0x00, 0x00,
|
||||
0xF0, 0xF0, 0x0C, 0x0C, 0x03, 0x03,
|
||||
0x0C, 0x0C, 0xF0, 0xF0, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xC3, 0xC3, 0xC3, 0xC3,
|
||||
0xC3, 0xC3, 0x3C, 0x3C, 0x00, 0x00,
|
||||
0xC1, 0xC1, 0x01, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x40, 0x60, 0x7F,
|
||||
0x7F, 0x60, 0x40, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x01, 0xC1, 0xC1,
|
||||
0x01, 0xFD, 0x05, 0x04, 0x04, 0x04,
|
||||
0x1F, 0x30, 0x40, 0x87, 0x9F, 0x1F,
|
||||
0x01, 0x81, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x1E, 0x9E, 0x86, 0x40, 0x30, 0x1F,
|
||||
0x04, 0x04, 0x04, 0x05, 0xFD, 0x01,
|
||||
0x00, 0x7E, 0x7E, 0x61, 0x61, 0x61,
|
||||
0x61, 0x61, 0x61, 0x60, 0x60, 0x00,
|
||||
0x00, 0x18, 0x18, 0x60, 0x60, 0x61,
|
||||
0x61, 0x61, 0x61, 0x1E, 0x1E, 0x00,
|
||||
0x00, 0x07, 0x07, 0x06, 0x06, 0x06,
|
||||
0x06, 0x7F, 0x7F, 0x06, 0x06, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x0F, 0x30, 0x30, 0x30, 0x30,
|
||||
0x30, 0x30, 0x0C, 0x0C, 0x00, 0x00,
|
||||
0x3F, 0x3F, 0x03, 0x03, 0x03, 0x03,
|
||||
0x03, 0x03, 0x3F, 0x3F, 0x00, 0x00,
|
||||
0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xFE, 0xE0, 0xE0, 0xE0,
|
||||
0xC0, 0xC0, 0x00, 0x00, 0x00, 0xE0,
|
||||
0xE0, 0x00, 0x00, 0x00, 0xC0, 0xC0,
|
||||
0xE0, 0xE0, 0xE0, 0xFE, 0xFF, 0xFF,
|
||||
0x07, 0x05, 0x07, 0x00, 0x70, 0x50,
|
||||
0x70, 0x20, 0x20, 0x20, 0x21, 0x3F,
|
||||
0x01, 0x61, 0x9F, 0x9F, 0x61, 0x01,
|
||||
0x3F, 0x21, 0x20, 0x20, 0x20, 0x70,
|
||||
0x50, 0x70, 0x00, 0x07, 0x05, 0x07,
|
||||
};
|
||||
// clang-format on
|
||||
|
|
@ -1,147 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "Static",
|
||||
"manufacturer": "0xCB",
|
||||
"url": "https://0xCB.dev",
|
||||
"maintainer": "Conor-Burns",
|
||||
"usb": {
|
||||
"vid": "0xCB00",
|
||||
"pid": "0xA455",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B5", "D4", "C0", "C1", "C2", "C3"],
|
||||
"rows": ["D5", "D6", "D7", "B0", "B1", "B2", "B3", "B4"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "D0", "pin_b": "D1"}
|
||||
]
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
},
|
||||
"tap_keycode_delay": 10
|
||||
},
|
||||
"processor": "atmega328p",
|
||||
"bootloader": "usbasploader",
|
||||
"layout_aliases": {
|
||||
"LAYOUT": "LAYOUT_all"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [1, 5], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 0], "x": 1, "y": 1},
|
||||
{"matrix": [0, 1], "x": 2, "y": 1},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [0, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 2], "x": 5, "y": 1},
|
||||
{"matrix": [0, 3], "x": 6, "y": 1},
|
||||
{"matrix": [1, 3], "x": 7, "y": 1},
|
||||
{"matrix": [0, 4], "x": 8, "y": 1},
|
||||
{"matrix": [1, 4], "x": 9, "y": 1},
|
||||
{"matrix": [0, 5], "x": 10, "y": 1},
|
||||
{"matrix": [3, 5], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.25},
|
||||
{"matrix": [3, 0], "x": 1.25, "y": 2},
|
||||
{"matrix": [2, 1], "x": 2.25, "y": 2},
|
||||
{"matrix": [3, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [3, 2], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 6.25, "y": 2},
|
||||
{"matrix": [3, 3], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 8.25, "y": 2},
|
||||
{"matrix": [3, 4], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 10.25, "y": 2, "w": 1.75},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 3, "w": 1.75},
|
||||
{"matrix": [4, 1], "x": 1.75, "y": 3},
|
||||
{"matrix": [5, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [4, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [5, 2], "x": 4.75, "y": 3},
|
||||
{"matrix": [4, 3], "x": 5.75, "y": 3},
|
||||
{"matrix": [5, 3], "x": 6.75, "y": 3},
|
||||
{"matrix": [4, 4], "x": 7.75, "y": 3},
|
||||
{"matrix": [5, 4], "x": 8.75, "y": 3},
|
||||
{"matrix": [4, 5], "x": 9.75, "y": 3},
|
||||
{"matrix": [5, 5], "x": 10.75, "y": 3, "w": 1.25},
|
||||
|
||||
{"matrix": [6, 0], "x": 0, "y": 4},
|
||||
{"matrix": [7, 0], "x": 1, "y": 4},
|
||||
{"matrix": [6, 1], "x": 2, "y": 4},
|
||||
{"matrix": [7, 1], "x": 3, "y": 4, "w": 2.75},
|
||||
{"matrix": [7, 2], "x": 5.75, "y": 4},
|
||||
{"matrix": [6, 4], "x": 6.75, "y": 4, "w": 2.25},
|
||||
{"matrix": [7, 4], "x": 9, "y": 4},
|
||||
{"matrix": [6, 5], "x": 10, "y": 4},
|
||||
{"matrix": [7, 5], "x": 11, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_bigbar": {
|
||||
"layout": [
|
||||
{"matrix": [1, 5], "x": 11, "y": 0},
|
||||
|
||||
{"matrix": [0, 0], "x": 0, "y": 1},
|
||||
{"matrix": [1, 0], "x": 1, "y": 1},
|
||||
{"matrix": [0, 1], "x": 2, "y": 1},
|
||||
{"matrix": [1, 1], "x": 3, "y": 1},
|
||||
{"matrix": [0, 2], "x": 4, "y": 1},
|
||||
{"matrix": [1, 2], "x": 5, "y": 1},
|
||||
{"matrix": [0, 3], "x": 6, "y": 1},
|
||||
{"matrix": [1, 3], "x": 7, "y": 1},
|
||||
{"matrix": [0, 4], "x": 8, "y": 1},
|
||||
{"matrix": [1, 4], "x": 9, "y": 1},
|
||||
{"matrix": [0, 5], "x": 10, "y": 1},
|
||||
{"matrix": [3, 5], "x": 11, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.25},
|
||||
{"matrix": [3, 0], "x": 1.25, "y": 2},
|
||||
{"matrix": [2, 1], "x": 2.25, "y": 2},
|
||||
{"matrix": [3, 1], "x": 3.25, "y": 2},
|
||||
{"matrix": [2, 2], "x": 4.25, "y": 2},
|
||||
{"matrix": [3, 2], "x": 5.25, "y": 2},
|
||||
{"matrix": [2, 3], "x": 6.25, "y": 2},
|
||||
{"matrix": [3, 3], "x": 7.25, "y": 2},
|
||||
{"matrix": [2, 4], "x": 8.25, "y": 2},
|
||||
{"matrix": [3, 4], "x": 9.25, "y": 2},
|
||||
{"matrix": [2, 5], "x": 10.25, "y": 2, "w": 1.75},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 3, "w": 1.75},
|
||||
{"matrix": [4, 1], "x": 1.75, "y": 3},
|
||||
{"matrix": [5, 1], "x": 2.75, "y": 3},
|
||||
{"matrix": [4, 2], "x": 3.75, "y": 3},
|
||||
{"matrix": [5, 2], "x": 4.75, "y": 3},
|
||||
{"matrix": [4, 3], "x": 5.75, "y": 3},
|
||||
{"matrix": [5, 3], "x": 6.75, "y": 3},
|
||||
{"matrix": [4, 4], "x": 7.75, "y": 3},
|
||||
{"matrix": [5, 4], "x": 8.75, "y": 3},
|
||||
{"matrix": [4, 5], "x": 9.75, "y": 3},
|
||||
{"matrix": [5, 5], "x": 10.75, "y": 3, "w": 1.25},
|
||||
|
||||
{"matrix": [6, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [7, 0], "x": 1.25, "y": 4},
|
||||
{"matrix": [6, 1], "x": 2.25, "y": 4},
|
||||
{"matrix": [7, 2], "x": 3.25, "y": 4, "w": 6.25},
|
||||
{"matrix": [6, 5], "x": 9.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [7, 5], "x": 10.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,191 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 0xCB - Conor Burns
|
||||
|
||||
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
|
||||
// clang-format off
|
||||
enum layer_names {
|
||||
_HOME,
|
||||
_FN2,
|
||||
_FN3,
|
||||
_FN4
|
||||
};
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_HOME] = LAYOUT_all(
|
||||
KC_MPLY,
|
||||
QK_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT,
|
||||
SC_LSPO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SC_RSPC,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), MO(2)
|
||||
),
|
||||
[_FN2] = LAYOUT_all(
|
||||
QK_BOOT,
|
||||
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_FN3] = LAYOUT_all(
|
||||
EE_CLR,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, KC_QUOT, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_FN4] = LAYOUT_all(
|
||||
_______,
|
||||
_______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, KC_MSTP, KC_INS, KC_HOME, KC_DEL, KC_END, _______,
|
||||
_______, _______, KC_BRID, KC_BRIU, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
};
|
||||
// clang-format on
|
||||
|
||||
/*layer switcher */
|
||||
layer_state_t layer_state_set_user(layer_state_t state) {
|
||||
state = update_tri_layer_state(state, _FN2, _FN3, _FN4);
|
||||
return state;
|
||||
}
|
||||
/* rotary encoder (MX12) - add different functions for layers here */
|
||||
#ifdef ENCODER_ENABLE
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (IS_LAYER_ON(_FN4)) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
} else if (IS_LAYER_ON(_FN3)) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
} else if (IS_LAYER_ON(_FN2)) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
} else {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* oled stuff :) */
|
||||
#ifdef OLED_ENABLE
|
||||
uint16_t startup_timer = 0;
|
||||
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||
startup_timer = timer_read();
|
||||
return rotation;
|
||||
}
|
||||
static void render_logo(void) {
|
||||
static const char PROGMEM raw_logo[] = {
|
||||
0, 8, 0,192,194,192,192, 60, 60, 44, 60,188, 60, 60, 60, 60, 44, 61, 60,192,192,192,208, 1, 0,252,252,180,252, 60, 60, 44, 60,252,253,252,252, 60, 60, 44, 60,244,220,252,252, 0, 0, 16, 0, 0, 0,192,192, 65,192, 60, 60, 52, 60,192,193,192,192, 16, 0, 0,144, 4, 0,252,125,244, 60, 60, 60, 60, 61,252,252,244,252, 60, 60, 60, 61,248,108,252, 0, 0, 61, 60,188, 60, 52,252,252,220,252, 61, 60, 60, 52, 0, 0,192,210, 64,192, 60, 60, 44, 61, 60, 60, 60, 61, 52, 60, 60, 60,192,192, 64,196, 0, 4, 0,
|
||||
0, 16, 0, 61, 63, 55, 63,192, 64,192,196,192,192,192,200,192,196,192,192, 3, 3, 2, 11, 0, 0, 35, 3, 3, 3, 0, 64, 2, 0,255,255,253,247, 0, 0, 0, 32, 1, 0, 1, 65, 8, 0,189,244,252,236, 3,130, 3, 1, 0, 68, 0, 0, 3, 34,131, 3,252,252,236,252, 0, 32, 17, 1, 1, 0, 0, 32, 0, 2,255,255,127,247, 0, 1, 0, 8, 1, 1, 1, 0, 0, 0, 16, 0, 64, 0,255,191,255,251, 0,129, 0, 2, 32, 0,255,255,239,255, 0, 0, 2, 0, 0, 0, 8, 64, 0, 1, 0, 0, 3, 35, 3, 3, 0, 8, 0,
|
||||
1, 16, 0,192, 64,194,192, 3, 67, 3, 3, 9, 3, 3, 3, 3, 2, 83, 3,252,252,188,244, 0, 2, 32, 0, 0, 2, 0,144, 0, 0,255,255,237,255, 0, 16, 0, 0, 0, 64, 2, 0,128, 0,255,123,255,255, 60, 52, 60, 60, 60, 60, 60, 60, 44, 60, 56, 60,239,255,126,255, 0, 2, 32, 0, 0, 34, 0, 0, 16, 0,255,255,255,223, 0, 0, 4, 0, 0, 0, 33, 0, 0, 17, 0, 0, 0, 0,255,255,239,255, 0,128, 0, 0, 72, 0,255,253,247,255, 0, 0, 1, 0,144, 0, 4, 0, 32, 0, 0, 2,192,192,192,200, 0, 16, 0,
|
||||
64, 4, 0, 3, 7, 3, 3, 60, 60, 52,188, 60, 61, 60, 60, 60, 60, 44, 60, 67, 3, 3, 3, 0, 0, 64, 0, 0, 4, 0, 0, 16, 0, 47, 63, 62, 63, 0, 0,132, 0, 0, 0, 0,128, 8, 0,255,255,111,127, 0, 0, 0, 2,128, 0, 0, 0, 64, 4, 0,128,127,127,107,127, 0, 32, 0, 0, 0, 66, 0, 0, 0,136, 55, 63, 61, 63, 0, 0, 0, 2, 0, 64, 0,136, 0, 0, 60, 44,189, 60, 63, 63, 63, 59, 60, 60,172, 60, 0, 64, 3, 2, 3,131, 60, 44, 60, 60, 60, 60,188, 60, 56, 44, 60, 60, 3, 3,131, 2, 0, 32, 2,
|
||||
};
|
||||
oled_write_raw_P(raw_logo, sizeof(raw_logo));
|
||||
}
|
||||
/* Shows the name of the current layer and locks for the host (CAPS etc.) */
|
||||
static void render_layer(void) {
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
// clang-format off
|
||||
static const char PROGMEM logo[][3][7] = {
|
||||
{{0x97, 0x98, 0x99, 0x9A, 0}, {0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0}, {0x9B, 0x9C, 0x9D, 0x9E, 0x9F, 0}}, /* l num CB */
|
||||
{{0xB7, 0xB8, 0xB9, 0xBA, 0}, {0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0}, {0xBB, 0xBC, 0xBD, 0xBE, 0xBF, 0}}, /* 1 num CB */
|
||||
{{0xD7, 0xD8, 0xD9, 0xDA, 0}, {0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0}, {0xDB, 0xDC, 0xDD, 0xDE, 0xDF, 0}}, /* 1 cap CB */
|
||||
{{0xF7, 0xF8, 0xF9, 0xFA, 0}, {0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0}, {0xFB, 0xFC, 0xFD, 0xFE, 0xFF, 0}}, /* l cap CB */
|
||||
{{0xB7, 0xC0, 0xC1, 0xBA, 0}, {0xB7, 0xC2, 0xC3, 0xBA, 0}, {0xB7, 0xC4, 0xC5, 0xBA, 0}}, /* 2 3 4 */
|
||||
{{0xD7, 0xE0, 0xE1, 0xDA, 0}, {0xD7, 0xE2, 0xE3, 0xDA, 0}, {0xD7, 0xE4, 0xE5, 0xDA, 0}}, /* 2 3 4 */
|
||||
};
|
||||
// clang-format on
|
||||
oled_set_cursor(0, 0);
|
||||
oled_write_P(logo[0][0], false);
|
||||
oled_set_cursor(0, 3);
|
||||
oled_write_P(logo[3][0], false);
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case _HOME:
|
||||
oled_set_cursor(0, 1);
|
||||
oled_write_P(logo[1][0], false);
|
||||
oled_set_cursor(0, 2);
|
||||
oled_write_P(logo[2][0], false);
|
||||
break;
|
||||
case _FN2:
|
||||
oled_set_cursor(0, 1);
|
||||
oled_write_P(logo[4][0], false);
|
||||
oled_set_cursor(0, 2);
|
||||
oled_write_P(logo[5][0], false);
|
||||
break;
|
||||
case _FN3:
|
||||
oled_set_cursor(0, 1);
|
||||
oled_write_P(logo[4][1], false);
|
||||
oled_set_cursor(0, 2);
|
||||
oled_write_P(logo[5][1], false);
|
||||
break;
|
||||
case _FN4:
|
||||
oled_set_cursor(0, 1);
|
||||
oled_write_P(logo[4][2], false);
|
||||
oled_set_cursor(0, 2);
|
||||
oled_write_P(logo[5][2], false);
|
||||
break;
|
||||
default:
|
||||
oled_set_cursor(0, 1);
|
||||
oled_write_P(PSTR(" "), false);
|
||||
oled_set_cursor(0, 2);
|
||||
oled_write_P(PSTR(" "), false);
|
||||
}
|
||||
oled_set_cursor(8, 0);
|
||||
oled_write_P(led_state.num_lock ? logo[0][1] : PSTR(" "), false);
|
||||
oled_set_cursor(8, 1);
|
||||
oled_write_P(led_state.num_lock ? logo[1][1] : PSTR(" "), false);
|
||||
oled_set_cursor(8, 2);
|
||||
oled_write_P(led_state.caps_lock ? logo[2][1] : PSTR(" "), false);
|
||||
oled_set_cursor(8, 3);
|
||||
oled_write_P(led_state.caps_lock ? logo[3][1] : PSTR(" "), false);
|
||||
|
||||
oled_set_cursor(16, 0);
|
||||
oled_write_P(logo[0][2], false);
|
||||
oled_set_cursor(16, 1);
|
||||
oled_write_P(logo[1][2], false);
|
||||
oled_set_cursor(16, 2);
|
||||
oled_write_P(logo[2][2], false);
|
||||
oled_set_cursor(16, 3);
|
||||
oled_write_P(logo[3][2], false);
|
||||
}
|
||||
|
||||
bool oled_task_user(void) {
|
||||
static bool finished_timer = false;
|
||||
if (!finished_timer && (timer_elapsed(startup_timer) < 3000)) {
|
||||
render_logo();
|
||||
} else {
|
||||
if (!finished_timer) {
|
||||
oled_clear();
|
||||
finished_timer = true;
|
||||
}
|
||||
render_layer();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# 0xCB Static
|
||||
|
||||
Macro keypad
|
||||
|
||||
* Keyboard Maintainer: [Conor Burns](https://github.com/conor-burns)
|
||||
* Hardware Supported: https://github.com/0xCB-dev/0xcb-static
|
||||
* Hardware Availability: On CandyKeys or order your own parts - the hardware in the repo is Open Source :D
|
||||
* PCB renders :)
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
More Pictures [here](https://0xcb.dev/static/)
|
||||
|
||||
To go to bootloader press ESC while plugging in or hold the RESET switch, then hold the BOOT switch, release RESET, release BOOT.
|
||||
The board should now appear in lsusb (or device manager).
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0xcb/static:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0xcb/static: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).
|
||||
|
|
@ -1,37 +0,0 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
|
||||
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 OLED_TIMEOUT 20000 // Turns off OLED after said amount of milliseconds
|
||||
#define OLED_BRIGHTNESS 128
|
||||
#define OLED_DISPLAY_128X64
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "TutelPad",
|
||||
"manufacturer": "ItsFiremanSam",
|
||||
"maintainer": "ItsFiremanSam",
|
||||
"usb": {
|
||||
"vid": "0xCB00",
|
||||
"pid": "0xF09F",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"bootmagic": {
|
||||
"matrix": [1, 0]
|
||||
},
|
||||
"rgblight": {
|
||||
"hue_steps": 10,
|
||||
"led_count": 4,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "D3"
|
||||
},
|
||||
"development_board": "promicro",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": false,
|
||||
"nkro": false,
|
||||
"oled": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["E6", "D7", "B1", "B3"],
|
||||
["B5", "B4", "B2", "B6"]
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"x": 0, "y": 0, "matrix": [0, 0]},
|
||||
{"x": 1, "y": 0, "matrix": [0, 1]},
|
||||
{"x": 2, "y": 0, "matrix": [0, 2]},
|
||||
{"x": 3, "y": 0, "matrix": [0, 3]},
|
||||
|
||||
{"x": 0, "y": 1, "matrix": [1, 0]},
|
||||
{"x": 1, "y": 1, "matrix": [1, 1]},
|
||||
{"x": 2, "y": 1, "matrix": [1, 2]},
|
||||
{"x": 3, "y": 1, "matrix": [1, 3]}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
*
|
||||
* 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
|
||||
|
||||
// Defines names for use in layer keycodes and the keymap
|
||||
enum layer_names {
|
||||
_BASE
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* Base */
|
||||
[_BASE] = LAYOUT(
|
||||
KC_1, KC_2, KC_3, KC_4,
|
||||
KC_5, KC_6, KC_7, KC_8
|
||||
)
|
||||
};
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
# TutelPad macropad
|
||||
|
||||
* Keyboard Maintainer: [ItsFiremanSam](https://github.com/ItsFiremanSam)
|
||||
* Hardware Supported: [TutelPad GitHub](https://github.com/0xCB-dev/0xCB-TutelPad)
|
||||
* Hardware Availability: [KeebSupply](https://keeb.supply/)
|
||||
|
||||
## Bootloader
|
||||
|
||||
You can enter the bootloader by pressing the reset switch on the side while the keyboard is plugged in. You can also short the GND and RST pads on the controller.
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0xcb/tutelpad:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0xcb/tutelpad: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).
|
||||
|
|
@ -1,106 +0,0 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
*
|
||||
* 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 "quantum.h"
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_180;
|
||||
}
|
||||
|
||||
static void render_logo(void) {
|
||||
static const char PROGMEM tutel[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
oled_write_raw_P(tutel, sizeof(tutel));
|
||||
}
|
||||
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
render_logo();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
/*
|
||||
Copyright 2020 haierwangwei2005
|
||||
|
||||
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 OLED_FONT_H "./lib/glcdfont.c"
|
||||
|
|
@ -1,72 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "10bleoledhub",
|
||||
"manufacturer": "haierwangwei2005",
|
||||
"url": "https://github.com/haierwangwei2005/10BLE-OLED-HUB",
|
||||
"maintainer": "haierwangwei2005",
|
||||
"usb": {
|
||||
"vid": "0x7C88",
|
||||
"pid": "0x7C99",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"features": {
|
||||
"bluetooth": true,
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true
|
||||
},
|
||||
"bluetooth": {
|
||||
"driver": "bluefruit_le"
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 4,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B7"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["D6", "D7", "B5"],
|
||||
"rows": ["F0", "F5", "F4", "F6"]
|
||||
},
|
||||
"diode_direction": "ROW2COL",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "C7", "pin_b": "F7"}
|
||||
]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "caterina",
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0, "w": 0.8, "h": 0.8},
|
||||
|
||||
{"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},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,76 +0,0 @@
|
|||
/*
|
||||
Copyright 2020 haierwangwei2005
|
||||
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/>.*/
|
||||
/* Keymap _0: (Base Layer) Default Layer
|
||||
|
||||
* .-----.
|
||||
* |PGUP |
|
||||
* |-----------------.
|
||||
* | 7 | 8 | 9 |
|
||||
* |-----|-----|-----|
|
||||
* | 4 | 5 | 6 |
|
||||
* |-----|-----|-----|
|
||||
* | 1 | 2 | 3 |
|
||||
* .-----------------.
|
||||
*/
|
||||
/* Keymap _1: (Second Layer) second Layer
|
||||
|
||||
* .-------.
|
||||
* |NUMLOCK|
|
||||
* |-----------------------.
|
||||
* |UG_TOGG|UG_NEXT|RGB_M_K|
|
||||
* |-------|-------|-------|
|
||||
* |UG_SATU|UG_SATD|UG_HUEU|
|
||||
* |-------|-------|-------|
|
||||
* |UG_VALU|UG_VALD|UG_SPDU|
|
||||
* .-----------------------.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_PGUP,
|
||||
KC_KP_7, KC_KP_8, MO(1),
|
||||
KC_P4, KC_P5, KC_P6,
|
||||
KC_P1, KC_P2, KC_P3),
|
||||
[1] = LAYOUT(
|
||||
KC_NUM,
|
||||
UG_TOGG, UG_NEXT, RGB_M_K,
|
||||
UG_SATU, UG_SATD, UG_HUEU,
|
||||
UG_VALU, UG_VALD, UG_SPDU),
|
||||
};
|
||||
|
||||
static void render_logo(void) {
|
||||
static const char PROGMEM qmk_logo[] = {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0};
|
||||
oled_write_P(qmk_logo, false);
|
||||
}
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
bool oled_task_user(void) {
|
||||
render_logo();
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (index == 0) { /* First encoder */
|
||||
if (clockwise) {
|
||||
tap_code(KC_PGDN);
|
||||
} else {
|
||||
tap_code(KC_PGUP);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void matrix_init_user(void) { render_logo(); }
|
||||
|
|
@ -1,241 +0,0 @@
|
|||
/*
|
||||
Copyright 2020 haierwangwei2005
|
||||
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 "progmem.h"
|
||||
// Standard ASCII 5x7 font
|
||||
const unsigned char font[] PROGMEM = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
|
||||
0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
|
||||
0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
|
||||
0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
|
||||
0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
|
||||
0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
|
||||
0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
|
||||
0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
|
||||
0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
|
||||
0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
|
||||
0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
|
||||
0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
|
||||
0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
|
||||
0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
|
||||
0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
|
||||
0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
|
||||
0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
|
||||
0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
|
||||
0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
|
||||
0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
|
||||
0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
|
||||
0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
|
||||
0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
|
||||
0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
|
||||
0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
|
||||
0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
|
||||
0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
|
||||
0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
|
||||
0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
|
||||
0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
|
||||
0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
|
||||
0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
|
||||
0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
|
||||
0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
|
||||
0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
|
||||
0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
|
||||
0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
|
||||
0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
|
||||
0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
|
||||
0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
|
||||
0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
|
||||
0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
|
||||
0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
|
||||
0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
|
||||
0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
|
||||
0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
|
||||
0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
|
||||
0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
|
||||
0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
|
||||
0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
|
||||
0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
|
||||
0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
|
||||
0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
|
||||
0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
|
||||
0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
|
||||
0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
|
||||
0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
|
||||
0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
|
||||
0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
|
||||
0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
|
||||
0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
|
||||
0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
|
||||
0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
|
||||
0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
|
||||
0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
|
||||
0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
|
||||
0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
|
||||
0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
|
||||
0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
|
||||
0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
|
||||
0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
|
||||
0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
|
||||
0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
|
||||
0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
|
||||
0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
|
||||
0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
|
||||
0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
|
||||
0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
|
||||
0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
|
||||
0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
|
||||
0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
|
||||
0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
|
||||
0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
|
||||
0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
|
||||
0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
|
||||
0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
|
||||
0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xF8, 0xF8, 0x58, 0x58, 0x5E,
|
||||
0xDA, 0x5A, 0x5B, 0x59, 0xDB, 0x5A,
|
||||
0x5B, 0x58, 0xD8, 0x58, 0x58, 0x58,
|
||||
0xD8, 0x58, 0x58, 0x58, 0xD8, 0x58,
|
||||
0x58, 0x58, 0xD8, 0x58, 0x58, 0x58,
|
||||
0xD8, 0x58, 0x58, 0x78, 0xF8, 0xF8,
|
||||
0xF8, 0x78, 0x78, 0x78, 0xF8, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x44, 0x28, 0xFF, 0x5A, 0x24,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xFF, 0xFF, 0x44, 0x55, 0x44,
|
||||
0xFF, 0x44, 0x55, 0x44, 0xFF, 0x44,
|
||||
0x55, 0x44, 0xFF, 0x44, 0x55, 0x44,
|
||||
0xFF, 0x44, 0x55, 0x44, 0xFF, 0x44,
|
||||
0x55, 0x44, 0xFF, 0x44, 0x55, 0x44,
|
||||
0xFF, 0x44, 0x55, 0x44, 0xFF, 0xFF,
|
||||
0xFF, 0xC4, 0xD5, 0xC4, 0xFF, 0x00,
|
||||
0x00, 0xFE, 0x21, 0x61, 0xA1, 0x1E,
|
||||
0x00, 0xFE, 0x01, 0x21, 0x21, 0xEF,
|
||||
0x00, 0xFF, 0x11, 0x11, 0x11, 0xFE,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0x11, 0x11, 0x11, 0xFE, 0x00,
|
||||
0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0x00, 0x00, 0x00, 0xFF, 0x00,
|
||||
0xFF, 0x11, 0x11, 0x11, 0x01, 0x00,
|
||||
0x01, 0x01, 0xFF, 0x01, 0x01, 0x00,
|
||||
0xFF, 0x01, 0x01, 0xFF, 0x00, 0xFF,
|
||||
0x01, 0x01, 0xFF, 0x00, 0x01, 0x01,
|
||||
0xFF, 0x01, 0x01, 0x00, 0xFF, 0x20,
|
||||
0x20, 0x20, 0xFF, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x7F, 0x7F, 0x44, 0x55, 0x44,
|
||||
0x7F, 0x44, 0x55, 0x54, 0x57, 0x54,
|
||||
0x55, 0x54, 0x57, 0x54, 0x55, 0x54,
|
||||
0x57, 0x54, 0x55, 0x54, 0x57, 0x54,
|
||||
0x45, 0x7C, 0x47, 0x54, 0x45, 0x7C,
|
||||
0x7F, 0x7C, 0x45, 0x54, 0x57, 0x50,
|
||||
0x5E, 0x50, 0x57, 0x47, 0x7F, 0x00,
|
||||
0x00, 0x03, 0x00, 0x00, 0x00, 0x03,
|
||||
0x00, 0x01, 0x02, 0x02, 0x02, 0x03,
|
||||
0x00, 0x03, 0x02, 0x02, 0x02, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x03, 0x02, 0x02, 0x02, 0x01, 0x00,
|
||||
0x03, 0x02, 0x02, 0x02, 0x02, 0x00,
|
||||
0x03, 0x02, 0x02, 0x02, 0x03, 0x00,
|
||||
0x03, 0x02, 0x02, 0x02, 0x02, 0x00,
|
||||
0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
|
||||
0x03, 0x02, 0x02, 0x03, 0x00, 0x03,
|
||||
0x02, 0x02, 0x03, 0x00, 0x00, 0x30,
|
||||
0x2B, 0x7C, 0x20, 0x40, 0x03, 0x7C,
|
||||
0x44, 0x7C, 0x03, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
# 10bleoledhub
|
||||
|
||||

|
||||
|
||||
10 BLE OLED HUB
|
||||
|
||||
* Keyboard Maintainer: [haierwangwei2005](https://github.com/haierwangwei2005)
|
||||
* Hardware Availability: https://github.com/haierwangwei2005/10bleoled-hub
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 10bleoledhub: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).
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
# Processor frequency
|
||||
F_CPU = 8000000
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
/* Copyright 2020 zvecr<git@zvecr.com>
|
||||
*
|
||||
* 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
|
||||
|
||||
// Save as much space as we can...
|
||||
#define LAYER_STATE_8BIT
|
||||
#define NO_ACTION_LAYER
|
||||
#define NO_ACTION_TAPPING
|
||||
#define NO_ACTION_ONESHOT
|
||||
#define NO_RESET
|
||||
|
||||
// usbconfig.h overrides
|
||||
#define USB_CFG_IOPORTNAME B
|
||||
#define USB_CFG_DMINUS_BIT 3
|
||||
#define USB_CFG_DPLUS_BIT 4
|
||||
#define USB_COUNT_SOF 0
|
||||
#define USB_INTR_CFG PCMSK
|
||||
#define USB_INTR_CFG_SET (1<<USB_CFG_DPLUS_BIT)
|
||||
#define USB_INTR_ENABLE_BIT PCIE
|
||||
#define USB_INTR_PENDING_BIT PCIF
|
||||
#define USB_INTR_VECTOR SIG_PIN_CHANGE
|
||||
|
||||
#define WS2812_LED_COUNT 1
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "1K",
|
||||
"manufacturer": "MakotoKurauchi",
|
||||
"maintainer": "MakotoKurauchi",
|
||||
"usb": {
|
||||
"vid": "0x0009",
|
||||
"pid": "0x0001",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"processor": "attiny85",
|
||||
"bootloader": "custom",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"features": {
|
||||
"grave_esc": false,
|
||||
"magic": false,
|
||||
"space_cadet": false
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 1
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B2"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["B0"]
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_1x1": {
|
||||
"layout": [
|
||||
{"x": 0, "y": 0, "matrix": [0, 0]}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "rgblite.h"
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_1x1(
|
||||
UG_HUEU
|
||||
)
|
||||
};
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
switch (keycode) {
|
||||
case QK_UNDERGLOW_HUE_UP:
|
||||
rgblite_increase_hue();
|
||||
break;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void keyboard_post_init_user(void) {
|
||||
rgblite_init();
|
||||
rgblite_increase_hue();
|
||||
}
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "ws2812.h"
|
||||
#include "color.h"
|
||||
|
||||
static inline void rgblite_init(void) {
|
||||
ws2812_init();
|
||||
}
|
||||
|
||||
static inline void rgblite_setrgb(rgb_t rgb) {
|
||||
ws2812_set_color_all(rgb.r, rgb.g, rgb.b);
|
||||
ws2812_flush();
|
||||
}
|
||||
|
||||
static void rgblite_increase_hue(void) {
|
||||
static uint8_t state = 0;
|
||||
|
||||
hsv_t hsv = { 255, 255, 255 };
|
||||
hsv.h = state;
|
||||
state = (state + 8) % 256;
|
||||
|
||||
rgblite_setrgb(hsv_to_rgb(hsv));
|
||||
|
||||
}
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
WS2812_DRIVER_REQUIRED = yes
|
||||
SRC += color.c
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
# 1k
|
||||
|
||||

|
||||
|
||||
1% Custom mechanical keyboard. ATtiny85 powered, with 1*WS2812 LED, and the micronucleus bootloader.
|
||||
|
||||
**Note**: Due to limited firmware space, a _**lot**_ of features have to be disabled to get a functioning QMK based keyboard.
|
||||
|
||||
* Keyboard Maintainer: [MakotoKurauchi](https://github.com/MakotoKurauchi)
|
||||
* Hardware Supported: 1k
|
||||
* Hardware Availability: [booth](https://ninep.booth.pm/items/3504781)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1k: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).
|
||||
|
||||
## Flashing
|
||||
### Prerequisites
|
||||
|
||||
```bash
|
||||
git clone https://github.com/micronucleus/micronucleus.git
|
||||
cd micronucleus/commandline/
|
||||
sudo make install
|
||||
```
|
||||
|
||||
On Linux, you’ll need proper privileges to access the MCU. You can either use sudo when flashing firmware, or place [these files](https://github.com/micronucleus/micronucleus/blob/master/commandline/49-micronucleus.rules) in /etc/udev/rules.d/. Once added run the following:
|
||||
|
||||
```bash
|
||||
sudo udevadm control --reload-rules
|
||||
sudo udevadm trigger
|
||||
```
|
||||
|
||||
### Instructions
|
||||
|
||||
```bash
|
||||
make 1k:default:flash
|
||||
|
||||
# or directly with...
|
||||
micronucleus --run <firmware.hex>
|
||||
```
|
||||
|
||||
### Recovery
|
||||
|
||||
* [Original Firmware](https://github.com/xiudi/Attiny85_vusb_pad_test)
|
||||
* [Bootloader Repair](https://digistump.com/wiki/digispark/tutorials/proisp)
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
BOOTLOADER_SIZE = 1862
|
||||
PROGRAM_CMD = micronucleus --run $(BUILD_DIR)/$(TARGET).hex
|
||||
|
|
@ -1,134 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "1up60hse",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"maintainer": "qmk",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x6873",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"features": {
|
||||
"backlight": true,
|
||||
"bootmagic": true,
|
||||
"command": true,
|
||||
"console": true,
|
||||
"extrakey": true,
|
||||
"mousekey": false,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["C7", "F7", "F6", "F5", "F4", "F1", "E6", "D1", "D0", "D2", "D3", "D5", "D6", "D7"],
|
||||
"rows": ["B3", "B2", "B1", "B0", "D4"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"backlight": {
|
||||
"pin": "B7",
|
||||
"levels": 5,
|
||||
"breathing": true
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"rgblight": {
|
||||
"saturation_steps": 8,
|
||||
"brightness_steps": 8,
|
||||
"led_count": 14,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "F0"
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "atmel-dfu",
|
||||
"community_layouts": ["60_ansi"],
|
||||
"layouts": {
|
||||
"LAYOUT_60_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 1], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 9], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 10], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,82 +0,0 @@
|
|||
/* Copyright 2018 MechMerlin
|
||||
* Copyright 2018 Logan Huskins
|
||||
*
|
||||
* 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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* Qwerty
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Backspace |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Caps | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Shift | Z | X | C | V | B | N | M | , | . | / | Shift |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | Ctrl | GUI | Alt | Space | Alt | GUI | L1 | Ctrl |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[0] = LAYOUT_60_ansi(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL
|
||||
),
|
||||
|
||||
/* Function
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Del |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | Up | | | | | | | |PrtSc|ScrLk|Pause| |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | |Left |Down |Right| | | | | | Ins |Home |PgUp | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | |VolUp|VolDn|VolMu| | | | | | End |PgDn | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | | | | L2 | | |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[1] = LAYOUT_60_ansi(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
|
||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
|
||||
KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
/* RGB
|
||||
* ,-----------------------------------------------------------------------------------------.
|
||||
* | | | | | | | | | | | | | | Reset |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | BL Tog |BLInc|BLDec|BLStp| | | | | | | | | | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | RGB Tog |Mode |Hue I|Sat I|Val I|Spd I|Plain|Breat|Rnbow|Swirl| | | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | |RMode|Hue D|Sat D|Val D|Spd D|Snake|Knigh|Xmas |Gradi| | |
|
||||
* |-----------------------------------------------------------------------------------------+
|
||||
* | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------------'
|
||||
*/
|
||||
[2] = LAYOUT_60_ansi(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
|
||||
BL_TOGG, BL_UP, BL_DOWN,BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
UG_TOGG, UG_NEXT, UG_HUEU, UG_SATU, UG_VALU, UG_SPDU, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, UG_PREV, UG_HUED, UG_SATD, UG_VALD, UG_SPDD, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
};
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
# 1up60hse (hot swap edition)
|
||||
|
||||

|
||||
|
||||
A 60% PCB with USB C, RGB underglow, backlighting, hotswappable switches, and a standard ANSI layout.
|
||||
|
||||
Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
|
||||
Hardware Supported: 1up60hse 60% PCB.
|
||||
Hardware Availability: [1upkeyboards.com](https://www.1upkeyboards.com/shop/controllers/1up-rgb-pcb-hse/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/1up60hse: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).
|
||||
|
|
@ -1,210 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "1up60hte",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"url": "https://www.1upkeyboards.com/shop/controllers/1up-rgb-60-pcb-hte/",
|
||||
"maintainer": "1upkeyboards",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x6874",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"features": {
|
||||
"backlight": true,
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F6", "F5", "F4", "F1", "E6", "D0", "D1", "D2", "D3", "D5", "D6", "D7", "B4", "B5"],
|
||||
"rows": ["B3", "B2", "B1", "B0", "D4"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"backlight": {
|
||||
"pin": "B7"
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "B6",
|
||||
"on_state": 0
|
||||
},
|
||||
"rgblight": {
|
||||
"saturation_steps": 8,
|
||||
"brightness_steps": 8,
|
||||
"led_count": 14,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "F0"
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "atmel-dfu",
|
||||
"layout_aliases": {
|
||||
"LAYOUT_tsangan": "LAYOUT_60_ansi_tsangan_split_bs_rshift",
|
||||
"LAYOUT_60_tsangan_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift"
|
||||
},
|
||||
"community_layouts": [
|
||||
"60_hhkb",
|
||||
"60_ansi_tsangan_split_bs_rshift"
|
||||
],
|
||||
"layouts": {
|
||||
"LAYOUT_60_ansi_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [4, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 1], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 12], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4},
|
||||
{"matrix": [4, 12], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_hhkb": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [4, 13], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 1], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 12], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"matrix": [4, 10], "x": 11, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 11], "x": 12.5, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
/*
|
||||
Copyright 2019 Bubnick
|
||||
|
||||
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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_60_ansi_tsangan_split_bs_rshift(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
||||
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL
|
||||
),
|
||||
|
||||
[1] = LAYOUT_60_ansi_tsangan_split_bs_rshift(
|
||||
QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
||||
KC_CAPS, BL_TOGG, BL_DOWN, BL_UP, BL_STEP, _______, _______, _______, _______, KC_SCRL, KC_PAUS, KC_UP, _______, KC_CLR,
|
||||
_______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, UG_VALD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
|
||||
_______, UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_VALU, KC_END, KC_PGDN, KC_DOWN, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
/*
|
||||
Copyright 2019 Bubnick
|
||||
|
||||
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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_60_hhkb(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
||||
KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT
|
||||
),
|
||||
|
||||
[1] = LAYOUT_60_hhkb(
|
||||
QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
||||
KC_CAPS, BL_TOGG, BL_DOWN, BL_UP, BL_STEP, _______, _______, _______, _______, KC_SCRL, KC_PAUS, KC_UP, _______, KC_CLR,
|
||||
_______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, UG_VALD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
|
||||
_______, UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_VALU, KC_END, KC_PGDN, KC_DOWN, _______, _______,
|
||||
_______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
# 1up60hte (Hot Swap Tsangan Edition)
|
||||
|
||||

|
||||
|
||||
A 60% PCB with USB C, RGB underglow, backlighting, hotswappable switches, and a Tsangan layout.
|
||||
|
||||
* Keyboard Maintainer: [Bubnick](https://github.com/bubnick)
|
||||
* Hardware Supported: 1up60hte 60% PCB
|
||||
* Hardware Availability: [1upkeyboards.com](https://www.1upkeyboards.com/shop/controllers/1up-rgb-60-pcb-hte/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/1up60hte:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/1up60hte: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).
|
||||
|
|
@ -1,548 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "1UP RGB Underglow PCB",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"maintainer": "qmk",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x7267",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"features": {
|
||||
"backlight": true,
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"],
|
||||
"rows": ["D0", "D1", "D2", "D3", "D5"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"backlight": {
|
||||
"pin": "B6",
|
||||
"levels": 5
|
||||
},
|
||||
"rgblight": {
|
||||
"saturation_steps": 8,
|
||||
"brightness_steps": 8,
|
||||
"led_count": 16,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "E2"
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"bootloader": "atmel-dfu",
|
||||
"community_layouts": ["60_ansi", "60_iso", "60_ansi_split_bs_rshift", "60_hhkb"],
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 14], "x": 13.75, "y": 2, "w": 1.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_iso": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 14], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 6},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 11], "x": 11.5, "y": 4},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_split_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_tsangan_split_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 14], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4},
|
||||
{"matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_hhkb": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 2], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 2], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"matrix": [4, 3], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"matrix": [4, 13], "x": 12.5, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT_all(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
||||
KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
||||
|
||||
LAYOUT_all(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
||||
|
||||
};
|
||||
|
||||
bool led_update_user(led_t led_state) {
|
||||
if (led_state.caps_lock) {
|
||||
gpio_set_pin_output(B2);
|
||||
gpio_write_pin_low(B2);
|
||||
} else {
|
||||
gpio_set_pin_input(B2);
|
||||
gpio_write_pin_low(B2);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT_all(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
|
||||
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
||||
|
||||
LAYOUT_all(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
||||
|
||||
};
|
||||
|
||||
bool led_update_user(led_t led_state) {
|
||||
if (led_state.caps_lock) {
|
||||
gpio_set_pin_output(B2);
|
||||
gpio_write_pin_low(B2);
|
||||
} else {
|
||||
gpio_set_pin_input(B2);
|
||||
gpio_write_pin_low(B2);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT_all(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
||||
KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_RALT, KC_RGUI, KC_RCTL),
|
||||
|
||||
LAYOUT_all(
|
||||
QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL,
|
||||
KC_TRNS, BL_TOGG, BL_DOWN,BL_UP, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, UG_TOGG, UG_NEXT, UG_HUEU, UG_HUED, UG_SATU, UG_SATD, UG_VALU, UG_VALD, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
||||
|
||||
};
|
||||
|
||||
bool led_update_user(led_t led_state) {
|
||||
if (led_state.caps_lock) {
|
||||
gpio_set_pin_output(B2);
|
||||
gpio_write_pin_low(B2);
|
||||
} else {
|
||||
gpio_set_pin_input(B2);
|
||||
gpio_write_pin_low(B2);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
# 1up60rgb 60% RGB
|
||||
|
||||
Firmware for custom keyboard PCB with 60% key layout.
|
||||
|
||||
Keyboard Maintainer: [rempired](https://github.com/rempired)
|
||||
Hardware Supported: 1upkeyboards 60% RGB
|
||||
Hardware Availability: [1upkeyboards](https://www.1upkeyboards.com/shop/controllers/1up-rgb-underglow-pcb/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/1up60rgb: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).
|
||||
|
|
@ -1,135 +0,0 @@
|
|||
{
|
||||
"manufacturer": "1upkeyboards",
|
||||
"keyboard_name": "1upocarina",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x5607",
|
||||
"vid": "0x6F75"
|
||||
},
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"encoder": {
|
||||
"enabled": true,
|
||||
"rotary": [
|
||||
{
|
||||
"pin_a": "GP25", "pin_b": "GP26"
|
||||
}
|
||||
]
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP28", "GP29", "GP27", "GP1", "GP2"]
|
||||
]
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP24"
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"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,
|
||||
"typing_heatmap": 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
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{ "flags": 4, "matrix": [0, 0], "x": 23, "y": 26 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 62, "y": 26 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 112, "y": 34 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 161, "y": 26 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 200, "y": 26 },
|
||||
|
||||
{ "flags": 2, "x": 133, "y": 3 },
|
||||
{ "flags": 2, "x": 154, "y": 3 },
|
||||
{ "flags": 2, "x": 174, "y": 3 },
|
||||
{ "flags": 2, "x": 194, "y": 3 },
|
||||
{ "flags": 2, "x": 218, "y": 5 },
|
||||
|
||||
{ "flags": 2, "x": 221, "y": 19 },
|
||||
{ "flags": 2, "x": 221, "y": 31 },
|
||||
{ "flags": 2, "x": 221, "y": 44 },
|
||||
{ "flags": 2, "x": 217, "y": 58 },
|
||||
{ "flags": 2, "x": 195, "y": 61 },
|
||||
|
||||
{ "flags": 2, "x": 174, "y": 61 },
|
||||
{ "flags": 2, "x": 154, "y": 61 },
|
||||
{ "flags": 2, "x": 133, "y": 61 },
|
||||
{ "flags": 2, "x": 112, "y": 61 },
|
||||
{ "flags": 2, "x": 91, "y": 61 },
|
||||
|
||||
{ "flags": 2, "x": 70, "y": 61 },
|
||||
{ "flags": 2, "x": 49, "y": 61 },
|
||||
{ "flags": 2, "x": 28, "y": 61 },
|
||||
{ "flags": 2, "x": 5, "y": 58 },
|
||||
{ "flags": 2, "x": 2, "y": 44 },
|
||||
|
||||
{ "flags": 2, "x": 2, "y": 31 },
|
||||
{ "flags": 2, "x": 2, "y": 19 },
|
||||
{ "flags": 2, "x": 5, "y": 5 },
|
||||
{ "flags": 2, "x": 28, "y": 3 },
|
||||
{ "flags": 2, "x": 49, "y": 3 },
|
||||
|
||||
{ "flags": 2, "x": 70, "y": 3 },
|
||||
{ "flags": 2, "x": 91, "y": 3 }
|
||||
],
|
||||
"sleep": true
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_1x5": {
|
||||
"layout": [
|
||||
{ "label": "z", "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "label": "x", "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "label": "esc", "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "label": "c", "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "label": "v", "matrix": [0, 4], "x": 4, "y": 0 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
/* Copyright 2023 ziptyze
|
||||
*
|
||||
* 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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_1x5(
|
||||
KC_Z, KC_X, LT(1, KC_ESC), KC_C, KC_V
|
||||
),
|
||||
|
||||
[1] = LAYOUT_1x5(
|
||||
RM_TOGG, RM_NEXT, KC_TRNS, RM_VALD, RM_VALU
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS)}
|
||||
};
|
||||
#endif
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
# 1upocarina
|
||||
|
||||
This keyboard is the Ocarina from 1upkeyboards. It is a five button keypad designed for osu. There is an option to add an encoder to the center position, and the keypad features in-switch per-key addressable RGB leds, as well as 27 right angle underglow RGB leds for very bright and smooth lighting effects.
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/1upocarina:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/1upocarina: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 2 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**: Hold the button on the back of the PCB and plug in the keyboard
|
||||
|
|
@ -1,399 +0,0 @@
|
|||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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 "analog.h"
|
||||
#include "qmk_midi.h"
|
||||
|
||||
#include "quantum.h"
|
||||
#include "quantum/midi/midi.h"
|
||||
#include "quantum/midi/midi_device.h"
|
||||
|
||||
uint8_t divisor = 0;
|
||||
void slider(void) {
|
||||
if (divisor++) { // only run the slider function 1/256 times it's called
|
||||
return;
|
||||
}
|
||||
midi_send_cc(&midi_device, 2, 0x3E, 0x7F - (analogReadPin(SLIDER_PIN) >> 3));
|
||||
uprintf("%d string", analogReadPin(SLIDER_PIN));
|
||||
}
|
||||
|
||||
void housekeeping_task_kb(void) {
|
||||
slider();
|
||||
}
|
||||
|
||||
static uint32_t oled_logo_timer = 0;
|
||||
static bool clear_logo = true;
|
||||
static const char PROGMEM my_logo[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
|
||||
0xE0, 0xF0, 0x70, 0x70, 0x70, 0x70,
|
||||
0xF0, 0xE0, 0xC0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x63, 0xE7, 0xE7, 0xCE, 0xCE,
|
||||
0xCE, 0xCE, 0xFC, 0xFC, 0x78, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xC0, 0xC0, 0xC1,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0xFF,
|
||||
0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x07, 0x07, 0x07, 0x07,
|
||||
0x07, 0x07, 0x07, 0x07, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x1F, 0x1F, 0x1F, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFC, 0xFC, 0xFC, 0x1C, 0x1C, 0x1C,
|
||||
0x1C, 0x3C, 0xF8, 0xF8, 0xE0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x70,
|
||||
0x70, 0x70, 0x70, 0x78, 0x3F, 0x3F,
|
||||
0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0xF0,
|
||||
0xF0, 0xF0, 0x70, 0x70, 0x70, 0x70,
|
||||
0x70, 0x70, 0x70, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xFF, 0xFF, 0xFF, 0xCE, 0xCE,
|
||||
0xCE, 0xCE, 0xCE, 0xCE, 0xCE, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0xC0, 0xC1, 0xC1, 0xC1,
|
||||
0xC1, 0xC1, 0xC1, 0xC1, 0xC1, 0x81,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF,
|
||||
0xFF, 0x39, 0x39, 0x79, 0xF9, 0xF9,
|
||||
0xDF, 0x9F, 0x0F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x07, 0x07, 0x07, 0x00, 0x00, 0x00,
|
||||
0x00, 0x03, 0x07, 0x07, 0x06, 0x04,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x1C, 0xBE,
|
||||
0xFF, 0x63, 0x63, 0xFF, 0xBE, 0x1C,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x07, 0x0F, 0x1F, 0x18, 0x18, 0x1F,
|
||||
0x0F, 0x07, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_270;
|
||||
}
|
||||
|
||||
|
||||
static const char PROGMEM ou_logo[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0xFC, 0xFC, 0xCF, 0xCF,
|
||||
0x03, 0x03, 0x03, 0x03, 0xFF, 0xFF,
|
||||
0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03,
|
||||
0x03, 0x03, 0xFF, 0xFF, 0x03, 0x03,
|
||||
0x03, 0x03, 0xF3, 0xF3, 0x03, 0x03,
|
||||
0x0C, 0x0C, 0xFC, 0xFC, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xC0, 0xC0, 0xC0, 0xC0,
|
||||
0xFF, 0xFF, 0xF0, 0xF0, 0xC3, 0xC3,
|
||||
0xC0, 0xC0, 0xF0, 0xF0, 0xFF, 0xFF,
|
||||
0xC0, 0xC0, 0xC0, 0xC0, 0xFC, 0xFC,
|
||||
0x0C, 0x0C, 0x0F, 0x0F, 0x03, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
|
||||
static char PROGMEM caps_on[] = {
|
||||
0x00, 0x00, 0x00, 0xF8, 0x04, 0x04,
|
||||
0x04, 0x88, 0x00, 0x00, 0xE0, 0x58,
|
||||
0x44, 0x58, 0xE0, 0x00, 0x00, 0xFC,
|
||||
0x24, 0x24, 0x24, 0x18, 0x00, 0x00,
|
||||
0x98, 0x24, 0x24, 0x24, 0xC8, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x01, 0x01, 0x00, 0x00, 0x81,
|
||||
0xC0, 0xE0, 0xF0, 0xF0, 0xF0, 0xF1,
|
||||
0xF0, 0xF1, 0xF0, 0xF0, 0xE0, 0xC0,
|
||||
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1F,
|
||||
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
|
||||
0x3F, 0x3F, 0x1F, 0x0F, 0x07, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
static char PROGMEM caps_off[] = {
|
||||
0x00, 0x00, 0x00, 0xF8, 0x04, 0x04,
|
||||
0x04, 0x88, 0x00, 0x00, 0xE0, 0x58,
|
||||
0x44, 0x58, 0xE0, 0x00, 0x00, 0xFC,
|
||||
0x24, 0x24, 0x24, 0x18, 0x00, 0x00,
|
||||
0x98, 0x24, 0x24, 0x24, 0xC8, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x01, 0x01, 0x00, 0x00, 0x81,
|
||||
0xC0, 0xE0, 0xF0, 0x70, 0x30, 0x31,
|
||||
0x30, 0x31, 0x70, 0xF0, 0xE0, 0xC0,
|
||||
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x03, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x03, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1E,
|
||||
0x3C, 0x38, 0x30, 0x30, 0x30, 0x30,
|
||||
0x38, 0x3C, 0x1E, 0x0F, 0x07, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
static const char PROGMEM num_on[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
|
||||
0x18, 0x20, 0xC0, 0xFC, 0x00, 0x00,
|
||||
0x00, 0xFC, 0x00, 0x00, 0x00, 0xFC,
|
||||
0x00, 0x00, 0xFC, 0x18, 0x60, 0x80,
|
||||
0x60, 0x18, 0xFC, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x00, 0x81,
|
||||
0xC0, 0xE0, 0xF0, 0xF0, 0xF1, 0xF1,
|
||||
0xF1, 0xF0, 0xF0, 0xF0, 0xE1, 0xC0,
|
||||
0x80, 0x01, 0x00, 0x00, 0x01, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1F,
|
||||
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
|
||||
0x3F, 0x3F, 0x1F, 0x0F, 0x07, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
static const char PROGMEM num_off[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0xFC,
|
||||
0x18, 0x20, 0xC0, 0xFC, 0x00, 0x00,
|
||||
0x00, 0xFC, 0x00, 0x00, 0x00, 0xFC,
|
||||
0x00, 0x00, 0xFC, 0x18, 0x60, 0x80,
|
||||
0x60, 0x18, 0xFC, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x00, 0x81,
|
||||
0xC0, 0xE0, 0xF0, 0x70, 0x31, 0x31,
|
||||
0x31, 0x30, 0x70, 0xF0, 0xE1, 0xC0,
|
||||
0x80, 0x01, 0x00, 0x00, 0x01, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x03, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x03, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1E,
|
||||
0x3C, 0x38, 0x30, 0x30, 0x30, 0x30,
|
||||
0x38, 0x3C, 0x1E, 0x0F, 0x07, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
static const char PROGMEM scrl_on[] = {
|
||||
0x00, 0x00, 0x00, 0x98, 0x24, 0x24,
|
||||
0x24, 0xC8, 0x00, 0x00, 0xF8, 0x04,
|
||||
0x04, 0x04, 0x88, 0x00, 0x00, 0xFC,
|
||||
0x24, 0x24, 0xE4, 0x18, 0x00, 0x00,
|
||||
0x00, 0xFC, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x01, 0x01, 0x00, 0x00, 0x80,
|
||||
0xC0, 0xE1, 0xF1, 0xF1, 0xF0, 0xF0,
|
||||
0xF0, 0xF1, 0xF0, 0xF0, 0xE0, 0xC1,
|
||||
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
|
||||
0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1F,
|
||||
0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F,
|
||||
0x3F, 0x3F, 0x1F, 0x0F, 0x07, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
static const char PROGMEM scrl_off[] = {
|
||||
0x00, 0x00, 0x00, 0x98, 0x24, 0x24,
|
||||
0x24, 0xC8, 0x00, 0x00, 0xF8, 0x04,
|
||||
0x04, 0x04, 0x88, 0x00, 0x00, 0xFC,
|
||||
0x24, 0x24, 0xE4, 0x18, 0x00, 0x00,
|
||||
0x00, 0xFC, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x01, 0x01, 0x00, 0x00, 0x80,
|
||||
0xC0, 0xE1, 0xF1, 0x71, 0x30, 0x30,
|
||||
0x30, 0x31, 0x70, 0xF0, 0xE0, 0xC1,
|
||||
0x80, 0x00, 0x00, 0x01, 0x01, 0x01,
|
||||
0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0xFF, 0x03, 0x01, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x01, 0x03, 0xFF, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x07, 0x0F, 0x1E,
|
||||
0x3C, 0x38, 0x30, 0x30, 0x30, 0x30,
|
||||
0x38, 0x3C, 0x1E, 0x0F, 0x07, 0x03,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00
|
||||
};
|
||||
|
||||
static void render_oled(void) {
|
||||
const int combined_size = sizeof(ou_logo) + sizeof(caps_off) + sizeof(num_off) + sizeof(scrl_off);
|
||||
char combined[combined_size];
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
|
||||
memcpy_P(combined, ou_logo, sizeof(ou_logo));
|
||||
|
||||
if (led_state.caps_lock) {
|
||||
memcpy_P(combined + sizeof(ou_logo), caps_on, sizeof(caps_off));
|
||||
}
|
||||
else {
|
||||
memcpy_P(combined + sizeof(ou_logo), caps_off, sizeof(caps_off));
|
||||
}
|
||||
|
||||
if (led_state.num_lock) {
|
||||
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off), num_on, sizeof(num_off));
|
||||
}
|
||||
else {
|
||||
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off), num_off, sizeof(num_off));
|
||||
}
|
||||
|
||||
if (led_state.scroll_lock) {
|
||||
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off) + sizeof(num_off), scrl_on, sizeof(scrl_off));
|
||||
}
|
||||
else {
|
||||
memcpy_P(combined + sizeof(ou_logo) + sizeof(caps_off) + sizeof(num_off), scrl_off, sizeof(scrl_off));
|
||||
}
|
||||
|
||||
oled_write_raw_P(combined, sizeof(combined));
|
||||
}
|
||||
|
||||
void render_logo(void) {
|
||||
oled_write_raw_P(my_logo, sizeof(my_logo));
|
||||
}
|
||||
|
||||
void clear_screen(void) {
|
||||
if (clear_logo){
|
||||
for (uint8_t i = 0; i < OLED_DISPLAY_HEIGHT; ++i) {
|
||||
for (uint8_t j = 0; j < OLED_DISPLAY_WIDTH; ++j) {
|
||||
oled_write_raw_byte(0x0, i*OLED_DISPLAY_WIDTH + j);
|
||||
}
|
||||
}
|
||||
clear_logo = false;
|
||||
}
|
||||
}
|
||||
|
||||
#define MIDI_CONTROL_CHANGE 0xB0
|
||||
|
||||
MidiDevice _midi_device;
|
||||
|
||||
void midi_callback(uint8_t cable, uint8_t *midi_data, uint16_t length) {
|
||||
// Check if this is a MIDI CC message on channel 2
|
||||
if ((midi_data[0] & 0xF0) == MIDI_CONTROL_CHANGE && midi_data[0] & (0x0F == 1)) {
|
||||
uprintf("%s string", midi_data );
|
||||
// ...
|
||||
}
|
||||
}
|
||||
|
||||
void slider8_cc_callback(struct _midi_device *dev, uint8_t cable, uint8_t code_index, uint8_t value) {
|
||||
midi_callback(MIDI_CONTROL_CHANGE, &value, 1);
|
||||
}
|
||||
|
||||
void init_timer(void){
|
||||
oled_logo_timer = timer_read32();
|
||||
};
|
||||
|
||||
void keyboard_post_init_kb(void) {
|
||||
init_timer();
|
||||
|
||||
keyboard_post_init_user();
|
||||
}
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
midi_register_cc_callback(&_midi_device, slider8_cc_callback);
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
#ifndef SHOW_LOGO
|
||||
# define SHOW_LOGO 5000
|
||||
#endif
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) { return false; }
|
||||
if ((timer_elapsed32(oled_logo_timer) < SHOW_LOGO)){
|
||||
render_logo();
|
||||
}else{
|
||||
clear_screen();
|
||||
render_oled();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
/* Copyright 2023 Ziptyze
|
||||
*
|
||||
* 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 I2C1_SCL_PIN GP11
|
||||
#define I2C1_SDA_PIN GP10
|
||||
#define OLED_BRIGHTNESS 128
|
||||
|
||||
#define SLIDER_PIN GP28
|
||||
#define MIDI_ADVANCED
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
// Copyright 2023 ziptyze
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later#pragma once
|
||||
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_I2C TRUE
|
||||
#define HAL_USE_ADC TRUE
|
||||
|
||||
#include_next <halconf.h>
|
||||
|
|
@ -1,114 +0,0 @@
|
|||
{
|
||||
"manufacturer": "1upkeyboards",
|
||||
"keyboard_name": "1upslider8",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x5611",
|
||||
"vid": "0x6F75"
|
||||
},
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true,
|
||||
"midi":true,
|
||||
"rgb_matrix": true,
|
||||
"encoder": true
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{
|
||||
"pin_a": "GP21",
|
||||
"pin_b": "GP22"
|
||||
}
|
||||
]
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP27", "GP17", "GP18", "GP19", "GP20", "GP15", "GP14", "GP13", "GP16"]
|
||||
]
|
||||
},
|
||||
"bootmagic": {
|
||||
"matrix": [0, 1]
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP26",
|
||||
"driver": "vendor"
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"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,
|
||||
"typing_heatmap": 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
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 28, "y": 16 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 84, "y": 16 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 140, "y": 16 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 196, "y": 16 },
|
||||
{ "flags": 4, "matrix": [0, 5], "x": 28, "y": 48 },
|
||||
{ "flags": 4, "matrix": [0, 6], "x": 84, "y": 48 },
|
||||
{ "flags": 4, "matrix": [0, 7], "x": 140, "y": 48 },
|
||||
{ "flags": 4, "matrix": [0, 8], "x": 196, "y": 48 }
|
||||
],
|
||||
"sleep": true
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "label": "enc", "matrix": [0, 0], "x": 3, "y": 0 },
|
||||
{ "label": "1", "matrix": [0, 1], "x": 0, "y": 1 },
|
||||
{ "label": "2", "matrix": [0, 2], "x": 1, "y": 1 },
|
||||
{ "label": "3", "matrix": [0, 3], "x": 2, "y": 1 },
|
||||
{ "label": "4", "matrix": [0, 4], "x": 3, "y": 1 },
|
||||
{ "label": "5", "matrix": [0, 5], "x": 0, "y": 2 },
|
||||
{ "label": "6", "matrix": [0, 6], "x": 1, "y": 2 },
|
||||
{ "label": "7", "matrix": [0, 7], "x": 2, "y": 2 },
|
||||
{ "label": "8", "matrix": [0, 8], "x": 3, "y": 2 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
RM_TOGG,
|
||||
KC_1, KC_2, KC_3, KC_4,
|
||||
KC_5, KC_6, KC_7, KC_8
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = { ENCODER_CCW_CW(RM_PREV, RM_NEXT)}
|
||||
};
|
||||
#endif
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
// Copyright 2023 ziptyze
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later#pragma once
|
||||
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef RP_I2C_USE_I2C1
|
||||
#undef RP_ADC_USE_ADC1
|
||||
#define RP_I2C_USE_I2C1 TRUE
|
||||
#define RP_ADC_USE_ADC1 TRUE
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
# slider8
|
||||
|
||||

|
||||
|
||||
|
||||
This keyboard is the slider8 from 1upkeyboards.com, a small macropad with an oled, slide potentiometer, rotary encoder, and 8 switches in a 2x4 ortholinear arrangement with per-key in-switch rgb leds.
|
||||
|
||||
The slide potentiometer presents to the computer as a midi device and will need a seperate program to map to device control.
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/1upslider8:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/1upslider8: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 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the top left key and plug in the keyboard
|
||||
* **Physical reset button**: Hold down the button on the pi pico and plug in the keyboard
|
||||
|
|
@ -1 +0,0 @@
|
|||
ANALOG_DRIVER_REQUIRED = yes
|
||||
|
|
@ -1,163 +0,0 @@
|
|||
{
|
||||
"manufacturer": "1upkeyboards",
|
||||
"keyboard_name": "1upsuper16v3",
|
||||
"maintainer": "ziptyze",
|
||||
"bootloader": "rp2040",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "GP20", "pin_b": "GP21"},
|
||||
{"pin_a": "GP25", "pin_b": "GP26"},
|
||||
{"pin_a": "GP2", "pin_b": "GP3"},
|
||||
{"pin_a": "GP6", "pin_b": "GP7"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP23", "GP24", "GP4", "GP5"],
|
||||
["GP19", "GP27", "GP1", "GP8"],
|
||||
["GP18", "GP28", "GP0", "GP9"],
|
||||
["GP17", "GP16", "GP15", "GP11"]
|
||||
]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"band_pinwheel_sat": true,
|
||||
"band_pinwheel_val": true,
|
||||
"band_sat": true,
|
||||
"band_spiral_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"band_val": true,
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_spiral": true,
|
||||
"cycle_up_down": true,
|
||||
"digital_rain": true,
|
||||
"dual_beacon": true,
|
||||
"gradient_left_right": true,
|
||||
"gradient_up_down": true,
|
||||
"hue_breathing": true,
|
||||
"hue_pendulum": true,
|
||||
"hue_wave": true,
|
||||
"jellybean_raindrops": true,
|
||||
"multisplash": true,
|
||||
"pixel_flow": true,
|
||||
"pixel_rain": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"solid_multisplash": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"typing_heatmap": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"x": 99, "y": 1, "flags": 2},
|
||||
{"x": 70, "y": 1, "flags": 2},
|
||||
{"x": 42, "y": 1, "flags": 2},
|
||||
{"x": 14, "y": 1, "flags": 2},
|
||||
{"x": 4, "y": 4, "flags": 2},
|
||||
{"x": 4, "y": 12, "flags": 2},
|
||||
{"matrix": [0, 0], "x": 28, "y": 8, "flags": 4},
|
||||
{"matrix": [0, 1], "x": 84, "y": 8, "flags": 4},
|
||||
{"x": 4, "y": 20, "flags": 2},
|
||||
{"x": 4, "y": 28, "flags": 2},
|
||||
{"matrix": [1, 0], "x": 28, "y": 24, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 84, "y": 24, "flags": 4},
|
||||
{"x": 4, "y": 36, "flags": 2},
|
||||
{"x": 4, "y": 44, "flags": 2},
|
||||
{"matrix": [2, 0], "x": 28, "y": 40, "flags": 4},
|
||||
{"matrix": [2, 1], "x": 84, "y": 40, "flags": 4},
|
||||
{"x": 4, "y": 52, "flags": 2},
|
||||
{"x": 4, "y": 60, "flags": 2},
|
||||
{"x": 14, "y": 63, "flags": 2},
|
||||
{"matrix": [3, 0], "x": 28, "y": 56, "flags": 4},
|
||||
{"x": 42, "y": 63, "flags": 2},
|
||||
{"x": 70, "y": 63, "flags": 2},
|
||||
{"matrix": [3, 1], "x": 84, "y": 56, "flags": 4},
|
||||
{"x": 99, "y": 63, "flags": 2},
|
||||
{"x": 126, "y": 63, "flags": 2},
|
||||
{"matrix": [3, 2], "x": 140, "y": 56, "flags": 4},
|
||||
{"x": 154, "y": 63, "flags": 2},
|
||||
{"x": 182, "y": 63, "flags": 2},
|
||||
{"matrix": [3, 3], "x": 196, "y": 56, "flags": 4},
|
||||
{"x": 210, "y": 63, "flags": 2},
|
||||
{"x": 220, "y": 60, "flags": 2},
|
||||
{"x": 220, "y": 52, "flags": 2},
|
||||
{"x": 220, "y": 44, "flags": 2},
|
||||
{"matrix": [2, 3], "x": 196, "y": 40, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 140, "y": 40, "flags": 4},
|
||||
{"x": 220, "y": 36, "flags": 2},
|
||||
{"x": 220, "y": 28, "flags": 2},
|
||||
{"matrix": [1, 3], "x": 196, "y": 24, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 140, "y": 24, "flags": 4},
|
||||
{"x": 220, "y": 20, "flags": 2},
|
||||
{"x": 220, "y": 12, "flags": 2},
|
||||
{"matrix": [0, 3], "x": 196, "y": 8, "flags": 4},
|
||||
{"matrix": [0, 2], "x": 140, "y": 8, "flags": 4},
|
||||
{"x": 220, "y": 4, "flags": 2},
|
||||
{"x": 210, "y": 1, "flags": 2},
|
||||
{"x": 182, "y": 1, "flags": 2},
|
||||
{"x": 154, "y": 1, "flags": 2},
|
||||
{"x": 126, "y": 1, "flags": 2}
|
||||
],
|
||||
"sleep": true
|
||||
},
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x5610",
|
||||
"vid": "0x6F75"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP29"
|
||||
},
|
||||
"community_layouts": ["ortho_4x4"],
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x4": {
|
||||
"layout": [
|
||||
{"label": "00", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "01", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "02", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "10", "matrix": [1, 0], "x": 0, "y": 1},
|
||||
{"label": "11", "matrix": [1, 1], "x": 1, "y": 1},
|
||||
{"label": "12", "matrix": [1, 2], "x": 2, "y": 1},
|
||||
{"label": "13", "matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"label": "20", "matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"label": "21", "matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"label": "22", "matrix": [2, 2], "x": 2, "y": 2},
|
||||
{"label": "23", "matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"label": "30", "matrix": [3, 0], "x": 0, "y": 3},
|
||||
{"label": "31", "matrix": [3, 1], "x": 1, "y": 3},
|
||||
{"label": "32", "matrix": [3, 2], "x": 2, "y": 3},
|
||||
{"label": "33", "matrix": [3, 3], "x": 3, "y": 3}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
/* Copyright 2023 ziptyze
|
||||
*
|
||||
* 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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_4x4(
|
||||
KC_P7, KC_P8, KC_P9, KC_PMNS,
|
||||
KC_P4, KC_P5, KC_P6, KC_PPLS,
|
||||
KC_P1, KC_P2, KC_P3, KC_PSLS,
|
||||
MO(1), KC_P0, KC_PDOT, KC_PENT
|
||||
),
|
||||
[1] = LAYOUT_ortho_4x4(
|
||||
RM_TOGG, RM_HUEU, RM_SATU, RM_VALU,
|
||||
RM_NEXT, RM_HUED, RM_SATD, RM_VALD,
|
||||
RM_SPDD, RM_SPDU, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(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_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }
|
||||
};
|
||||
#endif
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
# 1upSuper16v3
|
||||
|
||||
This keyboard is the Super16v3 from 1upkeyboards, a 4x4 macropad with the option for up to four encoders in the top row. Notable features include in-switch per-key addressable RGB LEDs and thirty two 1mm underglow RGB LEDs; for bright and smooth lighting effects. The Super16v3 utilises an rp2040 microcontroller, wired using direct pins.
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/1upsuper16v3:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/1upsuper16v3: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 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix. For this keyboard it is the top left button
|
||||
* **Physical reset button**: Hold the button on the back of the PCB and plug in the keyboard
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
// Copyright 2022 ziptyze (@ziptyze)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define OLED_DISPLAY_128X32
|
||||
#define I2C1_SCL_PIN GP17
|
||||
#define I2C1_SDA_PIN GP16
|
||||
#define I2C_DRIVER I2CD0
|
||||
#define OLED_BRIGHTNESS 128
|
||||
#define OLED_FONT_H "keyboards/1upkeyboards/pi40/lib/glcdfont.c"
|
||||
|
|
@ -1,146 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "pi40",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x5600",
|
||||
"device_version": "1.1.0"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP0",
|
||||
"driver": "vendor"
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"rows": ["GP21", "GP20", "GP19", "GP18"],
|
||||
"cols": ["GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP10", "GP11", "GP12", "GP22"]
|
||||
},
|
||||
"encoder": {
|
||||
"enabled": true,
|
||||
"rotary": [
|
||||
{"pin_a": "GP14", "pin_b": "GP13"}
|
||||
]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"flags": 1, "matrix": [0, 0], "x": 9, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 1], "x": 28, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 2], "x": 46, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 3], "x": 65, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 4], "x": 84, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 5], "x": 102, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 6], "x": 121, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 7], "x": 140, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 8], "x": 159, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 9], "x": 177, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 10], "x": 196, "y": 8},
|
||||
{"flags": 1, "matrix": [0, 11], "x": 215, "y": 8},
|
||||
{"flags": 1, "matrix": [1, 11], "x": 215, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 10], "x": 196, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 9], "x": 177, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 8], "x": 159, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 7], "x": 140, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 6], "x": 121, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 5], "x": 102, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 4], "x": 84, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 3], "x": 65, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 2], "x": 46, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 1], "x": 28, "y": 24},
|
||||
{"flags": 1, "matrix": [1, 0], "x": 9, "y": 24},
|
||||
{"flags": 1, "matrix": [2, 0], "x": 9, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 1], "x": 28, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 2], "x": 46, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 3], "x": 65, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 4], "x": 84, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 5], "x": 102, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 6], "x": 121, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 7], "x": 140, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 8], "x": 159, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 9], "x": 177, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 10], "x": 196, "y": 40},
|
||||
{"flags": 1, "matrix": [2, 11], "x": 215, "y": 40},
|
||||
{"flags": 1, "matrix": [3, 11], "x": 215, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 10], "x": 196, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 9], "x": 177, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 8], "x": 159, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 7], "x": 140, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 6], "x": 121, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 4], "x": 84, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 3], "x": 65, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 2], "x": 46, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 1], "x": 28, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 0], "x": 9, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 5], "x": 102, "y": 56}
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{"matrix": [0, 12], "x": 11, "y": 0},
|
||||
{"matrix": [0, 0], "x": 0, "y": 1},
|
||||
{"matrix": [0, 1], "x": 1, "y": 1},
|
||||
{"matrix": [0, 2], "x": 2, "y": 1},
|
||||
{"matrix": [0, 3], "x": 3, "y": 1},
|
||||
{"matrix": [0, 4], "x": 4, "y": 1},
|
||||
{"matrix": [0, 5], "x": 5, "y": 1},
|
||||
{"matrix": [0, 6], "x": 6, "y": 1},
|
||||
{"matrix": [0, 7], "x": 7, "y": 1},
|
||||
{"matrix": [0, 8], "x": 8, "y": 1},
|
||||
{"matrix": [0, 9], "x": 9, "y": 1},
|
||||
{"matrix": [0, 10], "x": 10, "y": 1},
|
||||
{"matrix": [0, 11], "x": 11, "y": 1},
|
||||
{"matrix": [1, 0], "x": 0, "y": 2},
|
||||
{"matrix": [1, 1], "x": 1, "y": 2},
|
||||
{"matrix": [1, 2], "x": 2, "y": 2},
|
||||
{"matrix": [1, 3], "x": 3, "y": 2},
|
||||
{"matrix": [1, 4], "x": 4, "y": 2},
|
||||
{"matrix": [1, 5], "x": 5, "y": 2},
|
||||
{"matrix": [1, 6], "x": 6, "y": 2},
|
||||
{"matrix": [1, 7], "x": 7, "y": 2},
|
||||
{"matrix": [1, 8], "x": 8, "y": 2},
|
||||
{"matrix": [1, 9], "x": 9, "y": 2},
|
||||
{"matrix": [1, 10], "x": 10, "y": 2},
|
||||
{"matrix": [1, 11], "x": 11, "y": 2},
|
||||
{"matrix": [2, 0], "x": 0, "y": 3},
|
||||
{"matrix": [2, 1], "x": 1, "y": 3},
|
||||
{"matrix": [2, 2], "x": 2, "y": 3},
|
||||
{"matrix": [2, 3], "x": 3, "y": 3},
|
||||
{"matrix": [2, 4], "x": 4, "y": 3},
|
||||
{"matrix": [2, 5], "x": 5, "y": 3},
|
||||
{"matrix": [2, 6], "x": 6, "y": 3},
|
||||
{"matrix": [2, 7], "x": 7, "y": 3},
|
||||
{"matrix": [2, 8], "x": 8, "y": 3},
|
||||
{"matrix": [2, 9], "x": 9, "y": 3},
|
||||
{"matrix": [2, 10], "x": 10, "y": 3},
|
||||
{"matrix": [2, 11], "x": 11, "y": 3},
|
||||
{"matrix": [3, 0], "x": 0, "y": 4},
|
||||
{"matrix": [3, 1], "x": 1, "y": 4},
|
||||
{"matrix": [3, 2], "x": 2, "y": 4},
|
||||
{"matrix": [3, 3], "x": 3, "y": 4},
|
||||
{"matrix": [3, 4], "x": 4, "y": 4},
|
||||
{"matrix": [3, 5], "x": 5, "y": 4},
|
||||
{"matrix": [3, 6], "x": 6, "y": 4},
|
||||
{"matrix": [3, 7], "x": 7, "y": 4},
|
||||
{"matrix": [3, 8], "x": 8, "y": 4},
|
||||
{"matrix": [3, 9], "x": 9, "y": 4},
|
||||
{"matrix": [3, 10], "x": 10, "y": 4},
|
||||
{"matrix": [3, 11], "x": 11, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
// Copyright 2022 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_I2C TRUE
|
||||
|
||||
#include_next <halconf.h>
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
{
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"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_rain": true,
|
||||
"pixel_flow": true,
|
||||
"pixel_fractal": 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
|
||||
},
|
||||
"max_brightness": 150,
|
||||
"sleep": true
|
||||
}
|
||||
}
|
||||
|
|
@ -1,124 +0,0 @@
|
|||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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 {
|
||||
_ONE = 0,
|
||||
_TWO,
|
||||
_THREE,
|
||||
_FOUR
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Qwerty
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* |RGBTOG|
|
||||
* ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Esc | A | S | D | F | G | H | J | K | L | ; | ' |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_ONE] = LAYOUT_ortho_4x12 (
|
||||
RM_TOGG,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
|
||||
MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
/* Lower
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* | MUTE |
|
||||
* ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_TWO] = LAYOUT_ortho_4x12 (
|
||||
KC_MUTE,
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
/* Raise
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* | MUTE |
|
||||
* ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | Mute | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_THREE] = LAYOUT_ortho_4x12 (
|
||||
KC_MUTE,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* | MUTE |
|
||||
* v-----------------------RGB CONTROL------------------v ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | Mute | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_FOUR] = LAYOUT_ortho_4x12 (
|
||||
KC_MUTE,
|
||||
_______, QK_BOOT, _______, RM_TOGG, RM_NEXT, RM_HUEU, RM_HUED, RM_SATU, RM_SATD, RM_VALU, RM_VALD, KC_DEL ,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_ONE] = { ENCODER_CCW_CW(RM_PREV, RM_NEXT) },
|
||||
[_TWO] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_THREE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_FOUR] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
|
||||
};
|
||||
#endif
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,231 +0,0 @@
|
|||
// Copyright 2022 @filterpaper
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
|
||||
#include "progmem.h"
|
||||
|
||||
static const unsigned char PROGMEM font[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
|
||||
0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
|
||||
0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
|
||||
0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
|
||||
0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
|
||||
0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
|
||||
0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
|
||||
0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
|
||||
0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
|
||||
0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
|
||||
0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
|
||||
0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
|
||||
0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
|
||||
0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
|
||||
0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
|
||||
0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
|
||||
0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
|
||||
0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
|
||||
0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
|
||||
0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
|
||||
0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
|
||||
0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
|
||||
0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
|
||||
0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
|
||||
0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
|
||||
0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
|
||||
0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
|
||||
0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
|
||||
0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
|
||||
0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
|
||||
0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
|
||||
0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
|
||||
0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
|
||||
0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
|
||||
0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
|
||||
0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
|
||||
0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
|
||||
0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
|
||||
0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
|
||||
0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
|
||||
0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
|
||||
0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
|
||||
0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
|
||||
0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
|
||||
0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
|
||||
0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
|
||||
0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
|
||||
0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
|
||||
0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
|
||||
0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
|
||||
0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
|
||||
0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
|
||||
0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
|
||||
0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
|
||||
0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
|
||||
0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
|
||||
0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
|
||||
0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
|
||||
0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
|
||||
0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
|
||||
0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
|
||||
0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
|
||||
0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
|
||||
0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
|
||||
0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
|
||||
0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
|
||||
0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
|
||||
0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
|
||||
0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
|
||||
0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
|
||||
0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
|
||||
0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
|
||||
0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
|
||||
0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
|
||||
0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
|
||||
0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
|
||||
0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
|
||||
0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
|
||||
0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
|
||||
0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
|
||||
0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
|
||||
0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
|
||||
0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
|
||||
0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
|
||||
0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
|
||||
0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
|
||||
0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xE0, 0x18, 0x02,
|
||||
0x00, 0x3C, 0x1E, 0x06, 0x0E, 0x0A,
|
||||
0x1A, 0x0E, 0x26, 0xFF, 0xBF, 0x0D,
|
||||
0x00, 0x80, 0x80, 0x81, 0xFF, 0xFE,
|
||||
0xF8, 0x01, 0x01, 0x03, 0x03, 0x03,
|
||||
0x03, 0x05, 0x05, 0x02, 0x02, 0x0A,
|
||||
0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A,
|
||||
0x0C, 0x04, 0x10, 0x18, 0x20, 0xC0,
|
||||
0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xD0, 0x58, 0x78,
|
||||
0x68, 0x2C, 0x24, 0x34, 0xF4, 0xF4,
|
||||
0x3C, 0x3C, 0xFC, 0xF8, 0xF8, 0x70,
|
||||
0xF0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xC0, 0x7C, 0x07, 0x80, 0xE0,
|
||||
0x60, 0x64, 0xE2, 0x60, 0x10, 0x10,
|
||||
0x20, 0x22, 0x12, 0x17, 0x3F, 0x0B,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
|
||||
0x6F, 0xFC, 0xE0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
|
||||
0x60, 0x60, 0x70, 0x70, 0xF0, 0xF0,
|
||||
0xD0, 0xD0, 0xD0, 0xD0, 0x50, 0x50,
|
||||
0x50, 0x70, 0x78, 0x78, 0x78, 0x7C,
|
||||
0x7F, 0x7D, 0x7C, 0x5E, 0x4F, 0x44,
|
||||
0x40, 0x40, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x38, 0x30, 0x30, 0x30, 0x30,
|
||||
0x30, 0x30, 0x58, 0x46, 0x47, 0x41,
|
||||
0x41, 0x01, 0x01, 0x03, 0x03, 0x42,
|
||||
0x42, 0x42, 0x46, 0x46, 0x46, 0x46,
|
||||
0x42, 0x43, 0x43, 0x73, 0x77, 0x72,
|
||||
0x70, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x61, 0x67, 0x6F, 0x7E, 0x78,
|
||||
0x78, 0x70, 0x70, 0x70, 0x70, 0x70,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x40, 0x40, 0x40, 0x48, 0x58, 0x58,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
// Copyright 2022 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef RP_I2C_USE_I2C0
|
||||
#undef RP_I2C_USE_I2C1
|
||||
#define RP_I2C_USE_I2C0 TRUE
|
||||
#define RP_I2C_USE_I2C1 FALSE
|
||||
|
|
@ -1,145 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "pi40",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x5600",
|
||||
"device_version": "1.0.0"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP0",
|
||||
"driver": "vendor"
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"rows": ["GP21", "GP20", "GP19", "GP18"],
|
||||
"cols": ["GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP10", "GP11", "GP12", "GP22"]
|
||||
},
|
||||
"encoder": {
|
||||
"enabled": true,
|
||||
"rotary": [
|
||||
{"pin_a": "GP14", "pin_b": "GP13"}
|
||||
]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"flags": 1, "matrix": [0, 0], "x": 9, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 1], "x": 28, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 2], "x": 46, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 3], "x": 65, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 4], "x": 84, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 5], "x": 102, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 6], "x": 121, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 7], "x": 140, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 8], "x": 159, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 9], "x": 177, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 10], "x": 196, "y": 8},
|
||||
{"flags": 1, "matrix": [0, 11], "x": 215, "y": 8},
|
||||
{"flags": 1, "matrix": [1, 11], "x": 215, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 10], "x": 196, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 9], "x": 177, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 8], "x": 159, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 7], "x": 140, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 6], "x": 121, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 5], "x": 102, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 4], "x": 84, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 3], "x": 65, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 2], "x": 46, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 1], "x": 28, "y": 24},
|
||||
{"flags": 1, "matrix": [1, 0], "x": 9, "y": 24},
|
||||
{"flags": 1, "matrix": [2, 0], "x": 9, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 1], "x": 28, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 2], "x": 46, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 3], "x": 65, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 4], "x": 84, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 5], "x": 102, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 6], "x": 121, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 7], "x": 140, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 8], "x": 159, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 9], "x": 177, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 10], "x": 196, "y": 40},
|
||||
{"flags": 1, "matrix": [2, 11], "x": 215, "y": 40},
|
||||
{"flags": 1, "matrix": [3, 11], "x": 215, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 10], "x": 196, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 9], "x": 177, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 8], "x": 159, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 7], "x": 140, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 5], "x": 112, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 4], "x": 84, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 3], "x": 65, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 2], "x": 46, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 1], "x": 28, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 0], "x": 9, "y": 56}
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{"matrix": [3, 6], "x": 11, "y": 0},
|
||||
{"matrix": [0, 0], "x": 0, "y": 1},
|
||||
{"matrix": [0, 1], "x": 1, "y": 1},
|
||||
{"matrix": [0, 2], "x": 2, "y": 1},
|
||||
{"matrix": [0, 3], "x": 3, "y": 1},
|
||||
{"matrix": [0, 4], "x": 4, "y": 1},
|
||||
{"matrix": [0, 5], "x": 5, "y": 1},
|
||||
{"matrix": [0, 6], "x": 6, "y": 1},
|
||||
{"matrix": [0, 7], "x": 7, "y": 1},
|
||||
{"matrix": [0, 8], "x": 8, "y": 1},
|
||||
{"matrix": [0, 9], "x": 9, "y": 1},
|
||||
{"matrix": [0, 10], "x": 10, "y": 1},
|
||||
{"matrix": [0, 11], "x": 11, "y": 1},
|
||||
{"matrix": [1, 0], "x": 0, "y": 2},
|
||||
{"matrix": [1, 1], "x": 1, "y": 2},
|
||||
{"matrix": [1, 2], "x": 2, "y": 2},
|
||||
{"matrix": [1, 3], "x": 3, "y": 2},
|
||||
{"matrix": [1, 4], "x": 4, "y": 2},
|
||||
{"matrix": [1, 5], "x": 5, "y": 2},
|
||||
{"matrix": [1, 6], "x": 6, "y": 2},
|
||||
{"matrix": [1, 7], "x": 7, "y": 2},
|
||||
{"matrix": [1, 8], "x": 8, "y": 2},
|
||||
{"matrix": [1, 9], "x": 9, "y": 2},
|
||||
{"matrix": [1, 10], "x": 10, "y": 2},
|
||||
{"matrix": [1, 11], "x": 11, "y": 2},
|
||||
{"matrix": [2, 0], "x": 0, "y": 3},
|
||||
{"matrix": [2, 1], "x": 1, "y": 3},
|
||||
{"matrix": [2, 2], "x": 2, "y": 3},
|
||||
{"matrix": [2, 3], "x": 3, "y": 3},
|
||||
{"matrix": [2, 4], "x": 4, "y": 3},
|
||||
{"matrix": [2, 5], "x": 5, "y": 3},
|
||||
{"matrix": [2, 6], "x": 6, "y": 3},
|
||||
{"matrix": [2, 7], "x": 7, "y": 3},
|
||||
{"matrix": [2, 8], "x": 8, "y": 3},
|
||||
{"matrix": [2, 9], "x": 9, "y": 3},
|
||||
{"matrix": [2, 10], "x": 10, "y": 3},
|
||||
{"matrix": [2, 11], "x": 11, "y": 3},
|
||||
{"matrix": [3, 0], "x": 0, "y": 4},
|
||||
{"matrix": [3, 1], "x": 1, "y": 4},
|
||||
{"matrix": [3, 2], "x": 2, "y": 4},
|
||||
{"matrix": [3, 3], "x": 3, "y": 4},
|
||||
{"matrix": [3, 4], "x": 4, "y": 4},
|
||||
{"matrix": [3, 5], "x": 5, "y": 4},
|
||||
{"matrix": [0, 12], "x": 6, "y": 4},
|
||||
{"matrix": [3, 7], "x": 7, "y": 4},
|
||||
{"matrix": [3, 8], "x": 8, "y": 4},
|
||||
{"matrix": [3, 9], "x": 9, "y": 4},
|
||||
{"matrix": [3, 10], "x": 10, "y": 4},
|
||||
{"matrix": [3, 11], "x": 11, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,145 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "pi40",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x5600",
|
||||
"device_version": "1.1.0"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP0",
|
||||
"driver": "vendor"
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"oled": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"rows": ["GP21", "GP20", "GP19", "GP18"],
|
||||
"cols": ["GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9", "GP10", "GP11", "GP12", "GP22"]
|
||||
},
|
||||
"encoder": {
|
||||
"enabled": true,
|
||||
"rotary": [
|
||||
{"pin_a": "GP14", "pin_b": "GP13"}
|
||||
]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"flags": 1, "matrix": [0, 0], "x": 9, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 1], "x": 28, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 2], "x": 46, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 3], "x": 65, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 4], "x": 84, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 5], "x": 102, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 6], "x": 121, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 7], "x": 140, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 8], "x": 159, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 9], "x": 177, "y": 8},
|
||||
{"flags": 4, "matrix": [0, 10], "x": 196, "y": 8},
|
||||
{"flags": 1, "matrix": [0, 11], "x": 215, "y": 8},
|
||||
{"flags": 1, "matrix": [1, 11], "x": 215, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 10], "x": 196, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 9], "x": 177, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 8], "x": 159, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 7], "x": 140, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 6], "x": 121, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 5], "x": 102, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 4], "x": 84, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 3], "x": 65, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 2], "x": 46, "y": 24},
|
||||
{"flags": 4, "matrix": [1, 1], "x": 28, "y": 24},
|
||||
{"flags": 1, "matrix": [1, 0], "x": 9, "y": 24},
|
||||
{"flags": 1, "matrix": [2, 0], "x": 9, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 1], "x": 28, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 2], "x": 46, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 3], "x": 65, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 4], "x": 84, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 5], "x": 102, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 6], "x": 121, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 7], "x": 140, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 8], "x": 159, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 9], "x": 177, "y": 40},
|
||||
{"flags": 4, "matrix": [2, 10], "x": 196, "y": 40},
|
||||
{"flags": 1, "matrix": [2, 11], "x": 215, "y": 40},
|
||||
{"flags": 1, "matrix": [3, 11], "x": 215, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 10], "x": 196, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 9], "x": 177, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 8], "x": 159, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 7], "x": 140, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 5], "x": 112, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 4], "x": 84, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 3], "x": 65, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 2], "x": 46, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 1], "x": 28, "y": 56},
|
||||
{"flags": 1, "matrix": [3, 0], "x": 9, "y": 56}
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{"matrix": [0, 12], "x": 11, "y": 0},
|
||||
{"matrix": [0, 0], "x": 0, "y": 1},
|
||||
{"matrix": [0, 1], "x": 1, "y": 1},
|
||||
{"matrix": [0, 2], "x": 2, "y": 1},
|
||||
{"matrix": [0, 3], "x": 3, "y": 1},
|
||||
{"matrix": [0, 4], "x": 4, "y": 1},
|
||||
{"matrix": [0, 5], "x": 5, "y": 1},
|
||||
{"matrix": [0, 6], "x": 6, "y": 1},
|
||||
{"matrix": [0, 7], "x": 7, "y": 1},
|
||||
{"matrix": [0, 8], "x": 8, "y": 1},
|
||||
{"matrix": [0, 9], "x": 9, "y": 1},
|
||||
{"matrix": [0, 10], "x": 10, "y": 1},
|
||||
{"matrix": [0, 11], "x": 11, "y": 1},
|
||||
{"matrix": [1, 0], "x": 0, "y": 2},
|
||||
{"matrix": [1, 1], "x": 1, "y": 2},
|
||||
{"matrix": [1, 2], "x": 2, "y": 2},
|
||||
{"matrix": [1, 3], "x": 3, "y": 2},
|
||||
{"matrix": [1, 4], "x": 4, "y": 2},
|
||||
{"matrix": [1, 5], "x": 5, "y": 2},
|
||||
{"matrix": [1, 6], "x": 6, "y": 2},
|
||||
{"matrix": [1, 7], "x": 7, "y": 2},
|
||||
{"matrix": [1, 8], "x": 8, "y": 2},
|
||||
{"matrix": [1, 9], "x": 9, "y": 2},
|
||||
{"matrix": [1, 10], "x": 10, "y": 2},
|
||||
{"matrix": [1, 11], "x": 11, "y": 2},
|
||||
{"matrix": [2, 0], "x": 0, "y": 3},
|
||||
{"matrix": [2, 1], "x": 1, "y": 3},
|
||||
{"matrix": [2, 2], "x": 2, "y": 3},
|
||||
{"matrix": [2, 3], "x": 3, "y": 3},
|
||||
{"matrix": [2, 4], "x": 4, "y": 3},
|
||||
{"matrix": [2, 5], "x": 5, "y": 3},
|
||||
{"matrix": [2, 6], "x": 6, "y": 3},
|
||||
{"matrix": [2, 7], "x": 7, "y": 3},
|
||||
{"matrix": [2, 8], "x": 8, "y": 3},
|
||||
{"matrix": [2, 9], "x": 9, "y": 3},
|
||||
{"matrix": [2, 10], "x": 10, "y": 3},
|
||||
{"matrix": [2, 11], "x": 11, "y": 3},
|
||||
{"matrix": [3, 0], "x": 0, "y": 4},
|
||||
{"matrix": [3, 1], "x": 1, "y": 4},
|
||||
{"matrix": [3, 2], "x": 2, "y": 4},
|
||||
{"matrix": [3, 3], "x": 3, "y": 4},
|
||||
{"matrix": [3, 4], "x": 4, "y": 4},
|
||||
{"matrix": [3, 5], "x": 5, "y": 4},
|
||||
{"matrix": [3, 6], "x": 6, "y": 4},
|
||||
{"matrix": [3, 7], "x": 7, "y": 4},
|
||||
{"matrix": [3, 8], "x": 8, "y": 4},
|
||||
{"matrix": [3, 9], "x": 9, "y": 4},
|
||||
{"matrix": [3, 10], "x": 10, "y": 4},
|
||||
{"matrix": [3, 11], "x": 11, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,290 +0,0 @@
|
|||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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 "quantum.h"
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
static uint32_t oled_logo_timer = 0;
|
||||
static bool clear_logo = true;
|
||||
static const char PROGMEM my_logo[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
|
||||
0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfb,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff,
|
||||
0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
void init_timer(void){
|
||||
oled_logo_timer = timer_read32();
|
||||
};
|
||||
|
||||
void user_oled_magic(void) {
|
||||
// Host Keyboard Layer Status
|
||||
oled_write_P(PSTR("Layer: "), false);
|
||||
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case 0:
|
||||
oled_write_P(PSTR("One\n"), false);
|
||||
break;
|
||||
case 1:
|
||||
oled_write_P(PSTR("Two\n"), false);
|
||||
break;
|
||||
case 2:
|
||||
oled_write_P(PSTR("Three\n"), false);
|
||||
break;
|
||||
case 3:
|
||||
oled_write_P(PSTR("Four\n"), false);
|
||||
break;
|
||||
case 4:
|
||||
oled_write_P(PSTR("Five\n"), false);
|
||||
break;
|
||||
case 5:
|
||||
oled_write_P(PSTR("Six\n"), false);
|
||||
break;
|
||||
case 6:
|
||||
oled_write_P(PSTR("Seven\n"), false);
|
||||
break;
|
||||
case 7:
|
||||
oled_write_P(PSTR("Eight\n"), false);
|
||||
break;
|
||||
case 8:
|
||||
oled_write_P(PSTR("Nine\n"), false);
|
||||
break;
|
||||
case 9:
|
||||
oled_write_P(PSTR("Ten\n"), false);
|
||||
break;
|
||||
default:
|
||||
// Or use the write_ln shortcut over adding '\n' to the end of your string
|
||||
oled_write_ln_P(PSTR("Undefined"), false);
|
||||
}
|
||||
|
||||
// Host Keyboard LED Status
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
oled_write_P(led_state.caps_lock ? PSTR("Cap(x) ") : PSTR("Cap( ) "), false);
|
||||
oled_write_P(led_state.num_lock ? PSTR("Num(x) ") : PSTR("Num( ) "), false);
|
||||
oled_write_P(led_state.scroll_lock ? PSTR("Scrl(x)") : PSTR("Scrl( )"), false);
|
||||
|
||||
|
||||
switch (rgb_matrix_get_mode()) {
|
||||
case 1:
|
||||
oled_write_P(PSTR("Solid Color\n "), false);
|
||||
break;
|
||||
case 2:
|
||||
oled_write_P(PSTR("Alphas Mods\n "), false);
|
||||
break;
|
||||
case 3:
|
||||
oled_write_P(PSTR("Gradient Up Down\n "), false);
|
||||
break;
|
||||
case 4:
|
||||
oled_write_P(PSTR("Gradient Left Right\n "), false);
|
||||
break;
|
||||
case 5:
|
||||
oled_write_P(PSTR("Breathing\n "), false);
|
||||
break;
|
||||
case 6:
|
||||
oled_write_P(PSTR("Band Sat\n "), false);
|
||||
break;
|
||||
case 7:
|
||||
oled_write_P(PSTR("Band Val\n "), false);
|
||||
break;
|
||||
case 8:
|
||||
oled_write_P(PSTR("Band Pinwheel Sat\n "), false);
|
||||
break;
|
||||
case 9:
|
||||
oled_write_P(PSTR("Band Pinwheel Val\n "), false);
|
||||
break;
|
||||
case 10:
|
||||
oled_write_P(PSTR("Band Spiral Sat\n "), false);
|
||||
break;
|
||||
case 11:
|
||||
oled_write_P(PSTR("Band Spiral Val\n "), false);
|
||||
break;
|
||||
case 12:
|
||||
oled_write_P(PSTR("Cycle All\n "), false);
|
||||
break;
|
||||
case 13:
|
||||
oled_write_P(PSTR("Cycle Left Right\n "), false);
|
||||
break;
|
||||
case 14:
|
||||
oled_write_P(PSTR("Cycle Up Down\n "), false);
|
||||
break;
|
||||
case 15:
|
||||
oled_write_P(PSTR("Rainbow\nMoving Chevron "), false);
|
||||
break;
|
||||
case 16:
|
||||
oled_write_P(PSTR("Cycle Out In\n "), false);
|
||||
break;
|
||||
case 17:
|
||||
oled_write_P(PSTR("Cycle Out In Dual\n "), false);
|
||||
break;
|
||||
case 18:
|
||||
oled_write_P(PSTR("Cycle Pinwheel\n "), false);
|
||||
break;
|
||||
case 19:
|
||||
oled_write_P(PSTR("Cycle Spiral\n "), false);
|
||||
break;
|
||||
case 20:
|
||||
oled_write_P(PSTR("Dual Beacon\n "), false);
|
||||
break;
|
||||
case 21:
|
||||
oled_write_P(PSTR("Rainbow Beacon\n "), false);
|
||||
break;
|
||||
case 22:
|
||||
oled_write_P(PSTR("Rainbow Pinwheels\n "), false);
|
||||
break;
|
||||
case 23:
|
||||
oled_write_P(PSTR("Raindrops\n "), false);
|
||||
break;
|
||||
case 24:
|
||||
oled_write_P(PSTR("Jellybean Raindrops\n "), false);
|
||||
break;
|
||||
case 25:
|
||||
oled_write_P(PSTR("Hue Breathing\n "), false);
|
||||
break;
|
||||
case 26:
|
||||
oled_write_P(PSTR("Hue Pendulum\n "), false);
|
||||
break;
|
||||
case 27:
|
||||
oled_write_P(PSTR("Hue Wave\n "), false);
|
||||
break;
|
||||
case 28:
|
||||
oled_write_P(PSTR("Pixel Rain\n "), false);
|
||||
break;
|
||||
case 29:
|
||||
oled_write_P(PSTR("Pixel Flow\n "), false);
|
||||
break;
|
||||
case 30:
|
||||
oled_write_P(PSTR("Pixel Fractal\n "), false);
|
||||
break;
|
||||
case 31:
|
||||
oled_write_P(PSTR("Typing Heatmap\n "), false);
|
||||
break;
|
||||
case 32:
|
||||
oled_write_P(PSTR("Digital Rain\n "), false);
|
||||
break;
|
||||
case 33:
|
||||
oled_write_P(PSTR("Solid Reactive\nSimple "), false);
|
||||
break;
|
||||
case 34:
|
||||
oled_write_P(PSTR("Solid Reactive\n "), false);
|
||||
break;
|
||||
case 35:
|
||||
oled_write_P(PSTR("Solid Reactive\nWide "), false);
|
||||
break;
|
||||
case 36:
|
||||
oled_write_P(PSTR("Solid Reactive\nMultiwide "), false);
|
||||
break;
|
||||
case 37:
|
||||
oled_write_P(PSTR("Solid Reactive\nCross "), false);
|
||||
break;
|
||||
case 38:
|
||||
oled_write_P(PSTR("Solid Reactive\nMulticross "), false);
|
||||
break;
|
||||
case 39:
|
||||
oled_write_P(PSTR("Solid Reactive\nNexus "), false);
|
||||
break;
|
||||
case 40:
|
||||
oled_write_P(PSTR("Solid Reactive\nMultinexus "), false);
|
||||
break;
|
||||
case 41:
|
||||
oled_write_P(PSTR("Splash\n "), false);
|
||||
break;
|
||||
case 42:
|
||||
oled_write_P(PSTR("Multisplash\n "), false);
|
||||
break;
|
||||
case 43:
|
||||
oled_write_P(PSTR("Solid Splash\n "), false);
|
||||
break;
|
||||
case 44:
|
||||
oled_write_P(PSTR("Solid Multisplash\n "), false);
|
||||
break;
|
||||
default:
|
||||
// Or use the write_ln shortcut over adding '\n' to the end of your string
|
||||
oled_write_ln_P(PSTR("Undefined\n "), false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void render_logo(void) {
|
||||
oled_write_raw_P(my_logo, sizeof(my_logo));
|
||||
}
|
||||
|
||||
void clear_screen(void) {
|
||||
if (clear_logo){
|
||||
for (uint8_t i = 0; i < OLED_DISPLAY_HEIGHT; ++i) {
|
||||
for (uint8_t j = 0; j < OLED_DISPLAY_WIDTH; ++j) {
|
||||
oled_write_raw_byte(0x0, i*OLED_DISPLAY_WIDTH + j);
|
||||
}
|
||||
}
|
||||
clear_logo = false;
|
||||
}
|
||||
}
|
||||
|
||||
oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_180;
|
||||
}
|
||||
|
||||
void keyboard_post_init_kb(void) {
|
||||
init_timer();
|
||||
|
||||
keyboard_post_init_user();
|
||||
}
|
||||
|
||||
# define SHOW_LOGO 5000
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) { return false; }
|
||||
if ((timer_elapsed32(oled_logo_timer) < SHOW_LOGO)){
|
||||
render_logo();
|
||||
}else{
|
||||
clear_screen();
|
||||
user_oled_magic();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
# pi40
|
||||
|
||||

|
||||
|
||||
The pi40 is a 4x12 ortholinear keyboard with a fixed 2u spacebar using a Raspberry Pi Pico for the controller.
|
||||
|
||||
It includes options for a rotary encoder, SSD1306 oled, and per-key in-switch RGB LEDs.
|
||||
|
||||
All unused GPIO pins are broken out on the main pcb, as well as the available voltage pins.
|
||||
|
||||
This firmware also includes the option for VIA which includes configuration options for the rotary encoder, matrix lighting, and up to 10 layers.
|
||||
|
||||
Default oled configuration displays:
|
||||
- current layer
|
||||
- caps lock status
|
||||
- num lock status
|
||||
- scroll lock status
|
||||
- current RGB lighting mode
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
* Hardware Availability: (https://1upkeyboards.com/shop/keyboard-kits/diy-40-kits/pi40-keyboard-kit/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/pi40:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/pi40: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 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix, the top left key, and plug in the keyboard
|
||||
* **BOOTSEL button**: Hold down the BOOTSEL button on the pico, and plug in the keyboard
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
// Copyright 2023 ziptyze
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define I2C1_SCL_PIN GP11
|
||||
#define I2C1_SDA_PIN GP10
|
||||
#define I2C_DRIVER I2CD1
|
||||
#define OLED_BRIGHTNESS 128
|
||||
#define OLED_FONT_H "keyboards/1upkeyboards/pi50/lib/glcdfont.c"
|
||||
|
|
@ -1,142 +0,0 @@
|
|||
{
|
||||
"rgb_matrix": {
|
||||
"layout": [
|
||||
{ "flags": 1, "matrix": [0, 0], "x": 10, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 0], "x": 28, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 46, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 1], "x": 65, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 84, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 2], "x": 102, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 121, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 3], "x": 140, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 159, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 4], "x": 177, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 5], "x": 196, "y": 7 },
|
||||
{ "flags": 1, "matrix": [1, 5], "x": 215, "y": 7 },
|
||||
|
||||
{ "flags": 1, "matrix": [3, 5], "x": 215, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 5], "x": 196, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 4], "x": 177, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 4], "x": 159, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 3], "x": 140, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 3], "x": 121, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 2], "x": 102, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 2], "x": 84, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 1], "x": 65, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 1], "x": 46, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 0], "x": 28, "y": 19 },
|
||||
{ "flags": 1, "matrix": [2, 0], "x": 9, "y": 19 },
|
||||
|
||||
{ "flags": 1, "matrix": [4, 0], "x": 9, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 0], "x": 28, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 1], "x": 46, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 1], "x": 65, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 2], "x": 84, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 2], "x": 102, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 3], "x": 121, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 3], "x": 140, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 4], "x": 159, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 4], "x": 177, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 5], "x": 196, "y": 32 },
|
||||
{ "flags": 1, "matrix": [5, 5], "x": 215, "y": 32 },
|
||||
|
||||
{ "flags": 1, "matrix": [7, 5], "x": 215, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 5], "x": 196, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 4], "x": 177, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 4], "x": 159, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 3], "x": 140, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 3], "x": 121, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 2], "x": 102, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 2], "x": 84, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 1], "x": 65, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 1], "x": 46, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 0], "x": 28, "y": 45 },
|
||||
{ "flags": 1, "matrix": [6, 0], "x": 9, "y": 45 },
|
||||
|
||||
{ "flags": 1, "matrix": [8, 0], "x": 9, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 0], "x": 28, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 1], "x": 46, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 1], "x": 65, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 2], "x": 84, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 2], "x": 102, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 3], "x": 140, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 4], "x": 159, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 4], "x": 177, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 5], "x": 196, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 5], "x": 215, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 3], "x": 121, "y": 57 }
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_5x12": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 6], "x": 11, "y": 0 },
|
||||
|
||||
{ "matrix": [0, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 0], "x": 1, "y": 1 },
|
||||
{ "matrix": [0, 1], "x": 2, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 3, "y": 1 },
|
||||
{ "matrix": [0, 2], "x": 4, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 5, "y": 1 },
|
||||
{ "matrix": [0, 3], "x": 6, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 7, "y": 1 },
|
||||
{ "matrix": [0, 4], "x": 8, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 9, "y": 1 },
|
||||
{ "matrix": [0, 5], "x": 10, "y": 1 },
|
||||
{ "matrix": [1, 5], "x": 11, "y": 1 },
|
||||
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 2, "y": 2 },
|
||||
{ "matrix": [3, 1], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 4, "y": 2 },
|
||||
{ "matrix": [3, 2], "x": 5, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 6, "y": 2 },
|
||||
{ "matrix": [3, 3], "x": 7, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 8, "y": 2 },
|
||||
{ "matrix": [3, 4], "x": 9, "y": 2 },
|
||||
{ "matrix": [2, 5], "x": 10, "y": 2 },
|
||||
{ "matrix": [3, 5], "x": 11, "y": 2 },
|
||||
|
||||
{ "matrix": [4, 0], "x": 0, "y": 3 },
|
||||
{ "matrix": [5, 0], "x": 1, "y": 3 },
|
||||
{ "matrix": [4, 1], "x": 2, "y": 3 },
|
||||
{ "matrix": [5, 1], "x": 3, "y": 3 },
|
||||
{ "matrix": [4, 2], "x": 4, "y": 3 },
|
||||
{ "matrix": [5, 2], "x": 5, "y": 3 },
|
||||
{ "matrix": [4, 3], "x": 6, "y": 3 },
|
||||
{ "matrix": [5, 3], "x": 7, "y": 3 },
|
||||
{ "matrix": [4, 4], "x": 8, "y": 3 },
|
||||
{ "matrix": [5, 4], "x": 9, "y": 3 },
|
||||
{ "matrix": [4, 5], "x": 10, "y": 3 },
|
||||
{ "matrix": [5, 5], "x": 11, "y": 3 },
|
||||
|
||||
{ "matrix": [6, 0], "x": 0, "y": 4 },
|
||||
{ "matrix": [7, 0], "x": 1, "y": 4 },
|
||||
{ "matrix": [6, 1], "x": 2, "y": 4 },
|
||||
{ "matrix": [7, 1], "x": 3, "y": 4 },
|
||||
{ "matrix": [6, 2], "x": 4, "y": 4 },
|
||||
{ "matrix": [7, 2], "x": 5, "y": 4 },
|
||||
{ "matrix": [6, 3], "x": 6, "y": 4 },
|
||||
{ "matrix": [7, 3], "x": 7, "y": 4 },
|
||||
{ "matrix": [6, 4], "x": 8, "y": 4 },
|
||||
{ "matrix": [7, 4], "x": 9, "y": 4 },
|
||||
{ "matrix": [6, 5], "x": 10, "y": 4 },
|
||||
{ "matrix": [7, 5], "x": 11, "y": 4 },
|
||||
|
||||
{ "matrix": [8, 0], "x": 0, "y": 5 },
|
||||
{ "matrix": [9, 0], "x": 1, "y": 5 },
|
||||
{ "matrix": [8, 1], "x": 2, "y": 5 },
|
||||
{ "matrix": [9, 1], "x": 3, "y": 5 },
|
||||
{ "matrix": [8, 2], "x": 4, "y": 5 },
|
||||
{ "matrix": [9, 2], "x": 5, "y": 5 },
|
||||
{ "matrix": [8, 3], "x": 6, "y": 5 },
|
||||
{ "matrix": [9, 3], "x": 7, "y": 5 },
|
||||
{ "matrix": [8, 4], "x": 8, "y": 5 },
|
||||
{ "matrix": [9, 4], "x": 9, "y": 5 },
|
||||
{ "matrix": [8, 5], "x": 10, "y": 5 },
|
||||
{ "matrix": [9, 5], "x": 11, "y": 5 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
// Copyright 2023 ziptyze
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_I2C TRUE
|
||||
|
||||
#include_next <halconf.h>
|
||||
|
|
@ -1,95 +0,0 @@
|
|||
{
|
||||
"keyboard_name": "pi50",
|
||||
"manufacturer": "1upkeyboards",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"usb": {
|
||||
"vid": "0x6F75",
|
||||
"pid": "0x5606",
|
||||
"device_version": "1.0.0"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"rgb_matrix": true,
|
||||
"oled": true
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"matrix_pins": {
|
||||
"rows": ["GP20", "GP15", "GP19", "GP14", "GP18", "GP13", "GP17", "GP12", "GP16", "GP21"],
|
||||
"cols": ["GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP9"]
|
||||
},
|
||||
"encoder": {
|
||||
"enabled": true,
|
||||
"rotary": [
|
||||
{"pin_a": "GP8", "pin_b": "GP7"}
|
||||
]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"max_brightness": 150,
|
||||
"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,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"rainbow_moving_chevron": 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
|
||||
},
|
||||
"sleep": true
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP0",
|
||||
"driver": "vendor"
|
||||
}
|
||||
}
|
||||
|
|
@ -1,136 +0,0 @@
|
|||
/* Copyright 2023 ziptyze
|
||||
*
|
||||
* 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 {
|
||||
_ONE = 0,
|
||||
_TWO,
|
||||
_THREE,
|
||||
_FOUR
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* Qwerty
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* |RGBTOG|
|
||||
* ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Esc | A | S | D | F | G | H | J | K | L | ; | " |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* |Adjust| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_ONE] = LAYOUT_ortho_5x12 (
|
||||
RM_TOGG,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
|
||||
MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
/* Lower
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* | MUTE |
|
||||
* ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_TWO] = LAYOUT_ortho_5x12 (
|
||||
KC_MUTE,
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
/* Raise
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* | MUTE |
|
||||
* ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | Pg Up| Pg Dn| |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_THREE] = LAYOUT_ortho_5x12 (
|
||||
KC_MUTE,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
/* Adjust (Lower + Raise)
|
||||
* ╱⎺⎺⎺⎺╲
|
||||
* | MUTE |
|
||||
* v-----------------------RGB CONTROL------------------v ╲⎽⎽⎽⎽╱
|
||||
* ,-----------------------------------------------------------------------------------.
|
||||
* | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | Reset| Debug| | | | | | | | | Del |
|
||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
* | | |Aud cy|Aud on|AudOff|AGnorm|AGswap|Qwerty|Colemk|Dvorak| | |
|
||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
* | |Voice-|Voice+|Mus on|MusOff|MidiOn|MidOff| | | | | |
|
||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
* | | | | | | | | | | | |
|
||||
* `-----------------------------------------------------------------------------------'
|
||||
*/
|
||||
[_FOUR] = LAYOUT_ortho_5x12 (
|
||||
KC_MUTE,
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
|
||||
_______, QK_BOOT, DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL,
|
||||
_______, _______, MU_NEXT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______,
|
||||
_______, AU_PREV, AU_NEXT, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_ONE] = { ENCODER_CCW_CW(RM_PREV, RM_NEXT) },
|
||||
[_TWO] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_THREE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_FOUR] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
|
||||
};
|
||||
#endif
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,231 +0,0 @@
|
|||
// Copyright 2022 @filterpaper
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
|
||||
#include "progmem.h"
|
||||
|
||||
static const unsigned char PROGMEM font[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
|
||||
0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
|
||||
0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
|
||||
0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
|
||||
0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
|
||||
0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
|
||||
0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
|
||||
0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
|
||||
0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
|
||||
0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
|
||||
0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
|
||||
0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
|
||||
0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
|
||||
0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
|
||||
0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
|
||||
0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
|
||||
0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
|
||||
0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
|
||||
0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
|
||||
0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
|
||||
0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
|
||||
0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
|
||||
0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
|
||||
0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
|
||||
0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
|
||||
0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
|
||||
0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
|
||||
0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
|
||||
0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
|
||||
0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
|
||||
0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
|
||||
0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
|
||||
0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
|
||||
0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
|
||||
0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
|
||||
0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
|
||||
0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
|
||||
0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
|
||||
0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
|
||||
0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
|
||||
0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
|
||||
0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
|
||||
0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
|
||||
0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
|
||||
0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
|
||||
0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
|
||||
0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
|
||||
0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
|
||||
0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
|
||||
0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
|
||||
0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
|
||||
0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
|
||||
0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
|
||||
0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
|
||||
0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
|
||||
0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
|
||||
0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
|
||||
0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
|
||||
0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
|
||||
0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
|
||||
0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
|
||||
0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
|
||||
0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
|
||||
0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
|
||||
0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
|
||||
0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
|
||||
0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
|
||||
0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
|
||||
0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
|
||||
0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
|
||||
0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
|
||||
0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
|
||||
0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
|
||||
0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
|
||||
0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
|
||||
0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
|
||||
0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
|
||||
0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
|
||||
0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
|
||||
0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
|
||||
0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
|
||||
0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
|
||||
0x7C, 0x18, 0x24, 0x24, 0x18, 0x00,
|
||||
0x18, 0x24, 0x24, 0x18, 0x7C, 0x00,
|
||||
0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
|
||||
0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
|
||||
0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
|
||||
0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
|
||||
0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
|
||||
0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
|
||||
0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
|
||||
0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
|
||||
0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
|
||||
0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
|
||||
0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
|
||||
0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
|
||||
0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
|
||||
0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xE0, 0x18, 0x02,
|
||||
0x00, 0x3C, 0x1E, 0x06, 0x0E, 0x0A,
|
||||
0x1A, 0x0E, 0x26, 0xFF, 0xBF, 0x0D,
|
||||
0x00, 0x80, 0x80, 0x81, 0xFF, 0xFE,
|
||||
0xF8, 0x01, 0x01, 0x03, 0x03, 0x03,
|
||||
0x03, 0x05, 0x05, 0x02, 0x02, 0x0A,
|
||||
0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A,
|
||||
0x0C, 0x04, 0x10, 0x18, 0x20, 0xC0,
|
||||
0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xD0, 0x58, 0x78,
|
||||
0x68, 0x2C, 0x24, 0x34, 0xF4, 0xF4,
|
||||
0x3C, 0x3C, 0xFC, 0xF8, 0xF8, 0x70,
|
||||
0xF0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xC0, 0x7C, 0x07, 0x80, 0xE0,
|
||||
0x60, 0x64, 0xE2, 0x60, 0x10, 0x10,
|
||||
0x20, 0x22, 0x12, 0x17, 0x3F, 0x0B,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
|
||||
0x6F, 0xFC, 0xE0, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
|
||||
0x60, 0x60, 0x70, 0x70, 0xF0, 0xF0,
|
||||
0xD0, 0xD0, 0xD0, 0xD0, 0x50, 0x50,
|
||||
0x50, 0x70, 0x78, 0x78, 0x78, 0x7C,
|
||||
0x7F, 0x7D, 0x7C, 0x5E, 0x4F, 0x44,
|
||||
0x40, 0x40, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x38, 0x30, 0x30, 0x30, 0x30,
|
||||
0x30, 0x30, 0x58, 0x46, 0x47, 0x41,
|
||||
0x41, 0x01, 0x01, 0x03, 0x03, 0x42,
|
||||
0x42, 0x42, 0x46, 0x46, 0x46, 0x46,
|
||||
0x42, 0x43, 0x43, 0x73, 0x77, 0x72,
|
||||
0x70, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x61, 0x67, 0x6F, 0x7E, 0x78,
|
||||
0x78, 0x70, 0x70, 0x70, 0x70, 0x70,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x40, 0x40, 0x40, 0x48, 0x58, 0x58,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
// Copyright 2023 ziptyze
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef RP_I2C_USE_I2C0
|
||||
#undef RP_I2C_USE_I2C1
|
||||
#define RP_I2C_USE_I2C0 FALSE
|
||||
#define RP_I2C_USE_I2C1 TRUE
|
||||
|
|
@ -1,141 +0,0 @@
|
|||
{
|
||||
"rgb_matrix": {
|
||||
"layout": [
|
||||
{ "flags": 1, "matrix": [0, 0], "x": 10, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 0], "x": 28, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 46, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 1], "x": 65, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 84, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 2], "x": 102, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 121, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 3], "x": 140, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 159, "y": 7 },
|
||||
{ "flags": 4, "matrix": [1, 4], "x": 177, "y": 7 },
|
||||
{ "flags": 4, "matrix": [0, 5], "x": 196, "y": 7 },
|
||||
{ "flags": 1, "matrix": [1, 5], "x": 215, "y": 7 },
|
||||
|
||||
{ "flags": 1, "matrix": [3, 5], "x": 215, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 5], "x": 196, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 4], "x": 177, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 4], "x": 159, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 3], "x": 140, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 3], "x": 121, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 2], "x": 102, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 2], "x": 84, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 1], "x": 65, "y": 19 },
|
||||
{ "flags": 4, "matrix": [2, 1], "x": 46, "y": 19 },
|
||||
{ "flags": 4, "matrix": [3, 0], "x": 28, "y": 19 },
|
||||
{ "flags": 1, "matrix": [2, 0], "x": 9, "y": 19 },
|
||||
|
||||
{ "flags": 1, "matrix": [4, 0], "x": 9, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 0], "x": 28, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 1], "x": 46, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 1], "x": 65, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 2], "x": 84, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 2], "x": 102, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 3], "x": 121, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 3], "x": 140, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 4], "x": 159, "y": 32 },
|
||||
{ "flags": 4, "matrix": [5, 4], "x": 177, "y": 32 },
|
||||
{ "flags": 4, "matrix": [4, 5], "x": 196, "y": 32 },
|
||||
{ "flags": 1, "matrix": [5, 5], "x": 215, "y": 32 },
|
||||
|
||||
{ "flags": 1, "matrix": [7, 5], "x": 215, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 5], "x": 196, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 4], "x": 177, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 4], "x": 159, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 3], "x": 140, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 3], "x": 121, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 2], "x": 102, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 2], "x": 84, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 1], "x": 65, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 1], "x": 46, "y": 45 },
|
||||
{ "flags": 4, "matrix": [7, 0], "x": 28, "y": 45 },
|
||||
{ "flags": 4, "matrix": [6, 0], "x": 9, "y": 45 },
|
||||
|
||||
{ "flags": 1, "matrix": [8, 0], "x": 9, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 0], "x": 28, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 1], "x": 46, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 1], "x": 65, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 2], "x": 84, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 2], "x": 112, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 3], "x": 140, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 4], "x": 159, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 4], "x": 177, "y": 57 },
|
||||
{ "flags": 1, "matrix": [8, 5], "x": 196, "y": 57 },
|
||||
{ "flags": 1, "matrix": [9, 5], "x": 215, "y": 57 }
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_5x12": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 6], "x": 11, "y": 0 },
|
||||
|
||||
{ "matrix": [0, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 0], "x": 1, "y": 1 },
|
||||
{ "matrix": [0, 1], "x": 2, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 3, "y": 1 },
|
||||
{ "matrix": [0, 2], "x": 4, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 5, "y": 1 },
|
||||
{ "matrix": [0, 3], "x": 6, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 7, "y": 1 },
|
||||
{ "matrix": [0, 4], "x": 8, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 9, "y": 1 },
|
||||
{ "matrix": [0, 5], "x": 10, "y": 1 },
|
||||
{ "matrix": [1, 5], "x": 11, "y": 1 },
|
||||
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 2, "y": 2 },
|
||||
{ "matrix": [3, 1], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 4, "y": 2 },
|
||||
{ "matrix": [3, 2], "x": 5, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 6, "y": 2 },
|
||||
{ "matrix": [3, 3], "x": 7, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 8, "y": 2 },
|
||||
{ "matrix": [3, 4], "x": 9, "y": 2 },
|
||||
{ "matrix": [2, 5], "x": 10, "y": 2 },
|
||||
{ "matrix": [3, 5], "x": 11, "y": 2 },
|
||||
|
||||
{ "matrix": [4, 0], "x": 0, "y": 3 },
|
||||
{ "matrix": [5, 0], "x": 1, "y": 3 },
|
||||
{ "matrix": [4, 1], "x": 2, "y": 3 },
|
||||
{ "matrix": [5, 1], "x": 3, "y": 3 },
|
||||
{ "matrix": [4, 2], "x": 4, "y": 3 },
|
||||
{ "matrix": [5, 2], "x": 5, "y": 3 },
|
||||
{ "matrix": [4, 3], "x": 6, "y": 3 },
|
||||
{ "matrix": [5, 3], "x": 7, "y": 3 },
|
||||
{ "matrix": [4, 4], "x": 8, "y": 3 },
|
||||
{ "matrix": [5, 4], "x": 9, "y": 3 },
|
||||
{ "matrix": [4, 5], "x": 10, "y": 3 },
|
||||
{ "matrix": [5, 5], "x": 11, "y": 3 },
|
||||
|
||||
{ "matrix": [6, 0], "x": 0, "y": 4 },
|
||||
{ "matrix": [7, 0], "x": 1, "y": 4 },
|
||||
{ "matrix": [6, 1], "x": 2, "y": 4 },
|
||||
{ "matrix": [7, 1], "x": 3, "y": 4 },
|
||||
{ "matrix": [6, 2], "x": 4, "y": 4 },
|
||||
{ "matrix": [7, 2], "x": 5, "y": 4 },
|
||||
{ "matrix": [6, 3], "x": 6, "y": 4 },
|
||||
{ "matrix": [7, 3], "x": 7, "y": 4 },
|
||||
{ "matrix": [6, 4], "x": 8, "y": 4 },
|
||||
{ "matrix": [7, 4], "x": 9, "y": 4 },
|
||||
{ "matrix": [6, 5], "x": 10, "y": 4 },
|
||||
{ "matrix": [7, 5], "x": 11, "y": 4 },
|
||||
|
||||
{ "matrix": [8, 0], "x": 0, "y": 5 },
|
||||
{ "matrix": [9, 0], "x": 1, "y": 5 },
|
||||
{ "matrix": [8, 1], "x": 2, "y": 5 },
|
||||
{ "matrix": [9, 1], "x": 3, "y": 5 },
|
||||
{ "matrix": [8, 2], "x": 4, "y": 5 },
|
||||
{ "matrix": [9, 2], "x": 5, "y": 5 },
|
||||
{ "matrix": [8, 3], "x": 6, "y": 5 },
|
||||
{ "matrix": [9, 3], "x": 7, "y": 5 },
|
||||
{ "matrix": [8, 4], "x": 8, "y": 5 },
|
||||
{ "matrix": [9, 4], "x": 9, "y": 5 },
|
||||
{ "matrix": [8, 5], "x": 10, "y": 5 },
|
||||
{ "matrix": [9, 5], "x": 11, "y": 5 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,248 +0,0 @@
|
|||
/* Copyright 2023 ziptyze
|
||||
*
|
||||
* 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 "quantum.h"
|
||||
#include <ctype.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#if defined(RGB_MATRIX_EFFECT)
|
||||
# undef RGB_MATRIX_EFFECT
|
||||
#endif // defined(RGB_MATRIX_EFFECT)
|
||||
|
||||
#define RGB_MATRIX_EFFECT(x) RGB_MATRIX_EFFECT_##x,
|
||||
enum {
|
||||
RGB_MATRIX_EFFECT_NONE,
|
||||
#include "rgb_matrix_effects.inc"
|
||||
#undef RGB_MATRIX_EFFECT
|
||||
#ifdef RGB_MATRIX_CUSTOM_KB
|
||||
# include "rgb_matrix_kb.inc"
|
||||
#endif
|
||||
#ifdef RGB_MATRIX_CUSTOM_USER
|
||||
# include "rgb_matrix_user.inc"
|
||||
#endif
|
||||
#if defined(COMMUNITY_MODULES_ENABLE) && __has_include("rgb_matrix_community_modules.inc")
|
||||
# include "rgb_matrix_community_modules.inc"
|
||||
#endif
|
||||
};
|
||||
|
||||
#define RGB_MATRIX_EFFECT(x) \
|
||||
case RGB_MATRIX_EFFECT_##x: \
|
||||
return #x;
|
||||
const char* rgb_matrix_name(uint8_t effect) {
|
||||
switch (effect) {
|
||||
case RGB_MATRIX_EFFECT_NONE:
|
||||
return "NONE";
|
||||
#include "rgb_matrix_effects.inc"
|
||||
#undef RGB_MATRIX_EFFECT
|
||||
#ifdef RGB_MATRIX_CUSTOM_KB
|
||||
# include "rgb_matrix_kb.inc"
|
||||
#endif
|
||||
#ifdef RGB_MATRIX_CUSTOM_USER
|
||||
# include "rgb_matrix_user.inc"
|
||||
#endif
|
||||
#if defined(COMMUNITY_MODULES_ENABLE) && __has_include("rgb_matrix_community_modules.inc")
|
||||
# include "rgb_matrix_community_modules.inc"
|
||||
#endif
|
||||
default:
|
||||
return "UNKNOWN";
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
static uint32_t oled_logo_timer = 0;
|
||||
static bool clear_logo = true;
|
||||
static const char PROGMEM my_logo[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,
|
||||
0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfb,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff,
|
||||
0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
void init_timer(void){
|
||||
oled_logo_timer = timer_read32();
|
||||
};
|
||||
|
||||
void user_oled_magic(void) {
|
||||
// Host Keyboard Layer Status
|
||||
oled_write_P(PSTR("Layer: "), false);
|
||||
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case 0:
|
||||
oled_write_P(PSTR("One\n"), false);
|
||||
break;
|
||||
case 1:
|
||||
oled_write_P(PSTR("Two\n"), false);
|
||||
break;
|
||||
case 2:
|
||||
oled_write_P(PSTR("Three\n"), false);
|
||||
break;
|
||||
case 3:
|
||||
oled_write_P(PSTR("Four\n"), false);
|
||||
break;
|
||||
case 4:
|
||||
oled_write_P(PSTR("Five\n"), false);
|
||||
break;
|
||||
case 5:
|
||||
oled_write_P(PSTR("Six\n"), false);
|
||||
break;
|
||||
case 6:
|
||||
oled_write_P(PSTR("Seven\n"), false);
|
||||
break;
|
||||
case 7:
|
||||
oled_write_P(PSTR("Eight\n"), false);
|
||||
break;
|
||||
case 8:
|
||||
oled_write_P(PSTR("Nine\n"), false);
|
||||
break;
|
||||
case 9:
|
||||
oled_write_P(PSTR("Ten\n"), false);
|
||||
break;
|
||||
default:
|
||||
// Or use the write_ln shortcut over adding '\n' to the end of your string
|
||||
oled_write_ln_P(PSTR("Undefined"), false);
|
||||
}
|
||||
|
||||
// Host Keyboard LED Status
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
oled_write_P(led_state.caps_lock ? PSTR("Cap(x) ") : PSTR("Cap( ) "), false);
|
||||
oled_write_P(led_state.num_lock ? PSTR("Num(x) ") : PSTR("Num( ) "), false);
|
||||
oled_write_P(led_state.scroll_lock ? PSTR("Scrl(x)") : PSTR("Scrl( )"), false);
|
||||
|
||||
char *mode_name = strdup(rgb_matrix_name(rgb_matrix_get_mode()));
|
||||
if (mode_name != NULL) {
|
||||
int len = strlen(mode_name);
|
||||
bool capitalize_next = true;
|
||||
for (int i = 0; i < len; i++) {
|
||||
if (i == 21 && mode_name[i] == '_') {
|
||||
continue; // Skip the underscore if it's the 22nd character
|
||||
}
|
||||
if (mode_name[i] == '_') {
|
||||
mode_name[i] = ' ';
|
||||
capitalize_next = true;
|
||||
} else if (capitalize_next) {
|
||||
mode_name[i] = mode_name[i] >= 'a' && mode_name[i] <= 'z' ? mode_name[i] - 'a' + 'A' : mode_name[i];
|
||||
capitalize_next = false;
|
||||
} else {
|
||||
mode_name[i] = mode_name[i] >= 'A' && mode_name[i] <= 'Z' ? mode_name[i] - 'A' + 'a' : mode_name[i];
|
||||
}
|
||||
}
|
||||
|
||||
// Add line break and spaces if necessary
|
||||
if (len < 19) {
|
||||
strcat(mode_name, "\n");
|
||||
for (int i = 0; i < 21; i++) {
|
||||
strcat(mode_name, " ");
|
||||
}
|
||||
} else {
|
||||
// Find the most recent ' ' before the 21st character and replace it with a line break
|
||||
int break_pos = -1;
|
||||
for (int i = 18; i >= 0; i--) {
|
||||
if (mode_name[i] == ' ') {
|
||||
break_pos = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (break_pos >= 0) {
|
||||
mode_name[break_pos] = '\n';
|
||||
for (int i = 0; i < (21 - (len - break_pos - 1)); i++) {
|
||||
strcat(mode_name, " ");
|
||||
}
|
||||
} else {
|
||||
// No '_' found, just add spaces
|
||||
for (int i = 0; i < (21 - len); i++) {
|
||||
strcat(mode_name, " ");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
oled_write_P(PSTR(mode_name), false);
|
||||
free(mode_name);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
void render_logo(void) {
|
||||
oled_write_raw_P(my_logo, sizeof(my_logo));
|
||||
}
|
||||
|
||||
void clear_screen(void) {
|
||||
if (clear_logo){
|
||||
for (uint8_t i = 0; i < OLED_DISPLAY_HEIGHT; ++i) {
|
||||
for (uint8_t j = 0; j < OLED_DISPLAY_WIDTH; ++j) {
|
||||
oled_write_raw_byte(0x0, i*OLED_DISPLAY_WIDTH + j);
|
||||
}
|
||||
}
|
||||
clear_logo = false;
|
||||
}
|
||||
}
|
||||
|
||||
oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_180;
|
||||
}
|
||||
|
||||
void keyboard_post_init_kb(void) {
|
||||
init_timer();
|
||||
|
||||
keyboard_post_init_user();
|
||||
}
|
||||
|
||||
# define SHOW_LOGO 5000
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) { return false; }
|
||||
if ((timer_elapsed32(oled_logo_timer) < SHOW_LOGO)){
|
||||
render_logo();
|
||||
}else{
|
||||
clear_screen();
|
||||
user_oled_magic();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
# pi50
|
||||
|
||||
The pi40 is a 5x12 ortholinear keyboard with options for a 1u or 2u spacebar using a Raspberry Pi Pico for the controller.
|
||||
|
||||
It includes options for a rotary encoder, SSD1306 oled, and per-key in-switch RGB LEDs.
|
||||
|
||||
All unused GPIO pins are broken out on the main pcb, as well as the available voltage pins.
|
||||
|
||||
This firmware also includes the option for VIA which includes configuration options for the rotary encoder, matrix lighting, and up to 10 layers.
|
||||
|
||||
Default oled configuration displays:
|
||||
- current layer
|
||||
- caps lock status
|
||||
- num lock status
|
||||
- scroll lock status
|
||||
- current RGB lighting mode
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
* Hardware Availability: (https://1upkeyboards.com/shop/keyboard-kits/diy-40-kits/pi50-keyboard-kit/#pcb-color)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/pi50:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/pi50: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 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix, the top left key, and plug in the keyboard
|
||||
* **BOOTSEL button**: Hold down the BOOTSEL button on the pico, and plug in the keyboard
|
||||
|
|
@ -1,964 +0,0 @@
|
|||
{
|
||||
"manufacturer": "1upkeyboards",
|
||||
"keyboard_name": "pi60",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x5604",
|
||||
"vid": "0x6F75"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP17",
|
||||
"driver": "vendor"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP5", "GP8", "GP11", "GP6", "GP7", "GP0", "GP26", "GP10", "GP9", "GP1", "GP18", "GP20", "GP21", "GP27", "GP28", "GP19"],
|
||||
"rows": ["GP12", "GP13", "GP16", "GP25", "GP29"]
|
||||
},
|
||||
"encoder": {
|
||||
"enabled": true,
|
||||
"rotary": [
|
||||
{"pin_a": "GP4", "pin_b": "GP3"},
|
||||
{"pin_a": "GP22", "pin_b": "GP2"},
|
||||
{"pin_a": "GP23", "pin_b": "GP24"}
|
||||
]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"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_rain": true,
|
||||
"pixel_flow": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"flags": 2, "x": 17, "y": 50},
|
||||
{"flags": 2, "x": 37, "y": 50},
|
||||
{"flags": 2, "x": 56, "y": 50},
|
||||
{"flags": 2, "x": 77, "y": 50},
|
||||
{"flags": 2, "x": 94, "y": 50},
|
||||
{"flags": 2, "x": 114, "y": 50},
|
||||
{"flags": 2, "x": 131, "y": 50},
|
||||
{"flags": 2, "x": 148, "y": 50},
|
||||
{"flags": 2, "x": 168, "y": 50},
|
||||
{"flags": 2, "x": 188, "y": 50},
|
||||
{"flags": 2, "x": 209, "y": 50},
|
||||
{"flags": 2, "x": 209, "y": 13},
|
||||
{"flags": 2, "x": 187, "y": 13},
|
||||
{"flags": 2, "x": 166, "y": 13},
|
||||
{"flags": 2, "x": 145, "y": 13},
|
||||
{"flags": 2, "x": 126, "y": 13},
|
||||
{"flags": 2, "x": 109, "y": 13},
|
||||
{"flags": 2, "x": 90, "y": 13},
|
||||
{"flags": 2, "x": 71, "y": 13},
|
||||
{"flags": 2, "x": 54, "y": 13},
|
||||
{"flags": 2, "x": 20, "y": 13}
|
||||
],
|
||||
"sleep": true
|
||||
},
|
||||
"community_layouts": [
|
||||
"60_ansi",
|
||||
"60_ansi_arrow",
|
||||
"60_ansi_split_bs_rshift",
|
||||
"60_ansi_tsangan",
|
||||
"60_ansi_tsangan_split_bs_rshift",
|
||||
"60_hhkb",
|
||||
"60_iso",
|
||||
"60_iso_arrow",
|
||||
"60_iso_split_bs_rshift",
|
||||
"60_iso_tsangan",
|
||||
"60_iso_tsangan_split_bs_rshift"
|
||||
],
|
||||
"layout_aliases": {
|
||||
"LAYOUT_60_tsangan_hhkb": "LAYOUT_60_ansi_tsangan_split_bs_rshift"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
{"label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "w": 1.5, "x": 13.5, "y": 1},
|
||||
{"label": "Caps", "matrix": [2, 15], "w": 1.75, "x": 0, "y": 2},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "w": 1.25, "x": 13.75, "y": 2},
|
||||
{"label": "LShift", "matrix": [3, 15], "w": 1.25, "x": 0, "y": 3},
|
||||
{"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "w": 1.75, "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 13, "y": 3},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
{"label": "LCtrl", "matrix": [4, 15], "w": 1.25, "x": 0, "y": 4},
|
||||
{"label": "LGui", "matrix": [4, 1], "w": 1.25, "x": 1.25, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "w": 1.25, "x": 2.5, "y": 4},
|
||||
{"label": "LSpace", "matrix": [4, 4], "w": 2.75, "x": 3.75, "y": 4},
|
||||
{"label": "CSpace", "matrix": [4, 6], "w": 1.25, "x": 6.5, "y": 4},
|
||||
{"label": "RSpace", "matrix": [4, 8], "w": 2.25, "x": 7.75, "y": 4},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4},
|
||||
{"label": "Mid1U", "matrix": [4, 12], "x": 12, "y": 4},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 14, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_tsangan": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_hhkb": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_ansi_arrow": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "w": 1.5, "x": 13.5, "y": 1},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "w": 1.75, "x": 0, "y": 2},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 2.25},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3, "w": 1.75},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 13, "y": 3},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4},
|
||||
{"label": "Mid1U", "matrix": [4, 12], "x": 12, "y": 4},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 14, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_iso": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_iso_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4, "w": 1.25},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.75, "y": 4, "w": 1.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_iso_tsangan": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 2.75},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_iso_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"label": "~", "matrix": [0, 14], "x": 14, "y": 0},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "x": 0, "y": 2, "w": 1.75},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.5},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.5, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 12.5, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 13.5, "y": 4, "w": 1.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_60_iso_arrow": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "Backspace", "matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
|
||||
{"label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
|
||||
{"label": "Caps", "matrix": [2, 15], "w": 1.75, "x": 0, "y": 2},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "ISO'", "matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"label": "LShift", "matrix": [3, 15], "x": 0, "y": 3, "w": 1.25},
|
||||
{"label": "ISO<>", "matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 11], "x": 11.25, "y": 3, "w": 1.75},
|
||||
{"label": "RShift", "matrix": [3, 12], "x": 13, "y": 3},
|
||||
{"label": "FN", "matrix": [3, 14], "x": 14, "y": 3},
|
||||
|
||||
{"label": "LCtrl", "matrix": [4, 15], "x": 0, "y": 4, "w": 1.25},
|
||||
{"label": "LGui", "matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"label": "LAlt", "matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"label": "Space", "matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"label": "RAlt", "matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"label": "FN", "matrix": [4, 11], "x": 11, "y": 4},
|
||||
{"label": "Mid1U", "matrix": [4, 12], "x": 12, "y": 4},
|
||||
{"label": "Menu", "matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 14], "x": 14, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,61 +0,0 @@
|
|||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_all(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_GRV,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_TRNS, KC_ENT,
|
||||
KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_TRNS, KC_APP, KC_RCTL
|
||||
),
|
||||
|
||||
[1] = LAYOUT_all(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
[2] = LAYOUT_all(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
RM_TOGG, RM_NEXT, RM_HUEU, RM_SATU, RM_VALU, RM_SPDU, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, RM_PREV, RM_HUED, RM_SATD, RM_VALD, RM_SPDD, RGB_M_SN,RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
[3] = LAYOUT_all(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(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_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }
|
||||
};
|
||||
#endif
|
||||
|
|
@ -1 +0,0 @@
|
|||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#pragma once
|
||||
|
||||
#define VIAL_KEYBOARD_UID {0x09, 0xB9, 0xBD, 0xB8, 0xB8, 0x6A, 0x2A, 0xA7}
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 0, 13 }
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue