mirror of
https://github.com/qmk/qmk_firmware.git
synced 2024-11-25 12:46:41 +00:00
Merge branch 'master' into nuphy-air75
This commit is contained in:
commit
a3ba423adc
@ -349,6 +349,322 @@
|
||||
{"matrix": [4, 6], "x": 4, "y": 4, "w": 7},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
|
||||
|
||||
{"matrix": [4, 12], "x": 13, "y": 4},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_625u_space": {
|
||||
"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": [0, 14], "x": 15.25, "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, 14], "x": 15.25, "y": 1},
|
||||
|
||||
{"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": [1, 13], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 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, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "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, 12], "x": 13, "y": 4},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_625u_space_split_bs": {
|
||||
"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, 15], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "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, 14], "x": 15.25, "y": 1},
|
||||
|
||||
{"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": [1, 13], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 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, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "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, 12], "x": 13, "y": 4},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_7u_space": {
|
||||
"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": [0, 14], "x": 15.25, "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, 14], "x": 15.25, "y": 1},
|
||||
|
||||
{"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": [1, 13], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 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, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "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, 12], "x": 13, "y": 4},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"matrix": [4, 14], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_7u_space_split_bs": {
|
||||
"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, 15], "x": 14, "y": 0},
|
||||
|
||||
{"matrix": [0, 14], "x": 15.25, "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, 14], "x": 15.25, "y": 1},
|
||||
|
||||
{"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": [1, 13], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 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, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 13], "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, 12], "x": 13, "y": 4},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4},
|
||||
{"matrix": [4, 14], "x": 15, "y": 4}
|
||||
|
25
keyboards/artifact/lvl/rev_hs01/config.h
Executable file
25
keyboards/artifact/lvl/rev_hs01/config.h
Executable file
@ -0,0 +1,25 @@
|
||||
/*
|
||||
Copyright 2024 Yiancar-Designs
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published byß
|
||||
the Free Software Foundation, either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/* RGB Light */
|
||||
#define WS2812_PWM_DRIVER PWMD1
|
||||
#define WS2812_DMA_STREAM STM32_DMA1_STREAM5
|
||||
#define WS2812_DMA_CHANNEL 5
|
||||
|
||||
#define WS2812_BYTE_ORDER WS2812_BYTE_ORDER_RGB
|
21
keyboards/artifact/lvl/rev_hs01/halconf.h
Normal file
21
keyboards/artifact/lvl/rev_hs01/halconf.h
Normal file
@ -0,0 +1,21 @@
|
||||
/* Copyright 2024 Yiancar-Designs
|
||||
*
|
||||
* 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 HAL_USE_PWM TRUE
|
||||
|
||||
#include_next <halconf.h>
|
232
keyboards/artifact/lvl/rev_hs01/info.json
Executable file
232
keyboards/artifact/lvl/rev_hs01/info.json
Executable file
@ -0,0 +1,232 @@
|
||||
{
|
||||
"manufacturer": "Yiancar-Designs",
|
||||
"keyboard_name": "LvL Type-01/80",
|
||||
"maintainer": "Yiancar-Designs",
|
||||
"bootloader": "stm32-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "B6",
|
||||
"on_state": 0
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["A1", "B9", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B2", "B10", "B11", "B12", "B13", "B14", "B15", "A8"],
|
||||
"rows": ["A2", "A14", "A15", "B3", "B4", "B5"]
|
||||
},
|
||||
"processor": "STM32F072",
|
||||
"rgblight": {
|
||||
"animations": {
|
||||
"alternating": true,
|
||||
"breathing": true,
|
||||
"christmas": true,
|
||||
"knight": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"rgb_test": true,
|
||||
"snake": true,
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"default": {
|
||||
"sat": 0
|
||||
},
|
||||
"led_count": 1
|
||||
},
|
||||
"url": "https://yiancar-designs.com",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x4C56",
|
||||
"vid": "0x8968"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "pwm",
|
||||
"pin": "A9"
|
||||
},
|
||||
"community_layouts": ["tkl_ansi_tsangan"],
|
||||
"layouts": {
|
||||
"LAYOUT_tkl_ansi_tsangan": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [3, 12], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 2.75},
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.25},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_ansi_wkl": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.25},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.25},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.25},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.25},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.25},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.25},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.25},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.25},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.25},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.25, "w": 2},
|
||||
{"matrix": [1, 14], "x": 15.25, "y": 1.25},
|
||||
{"matrix": [1, 15], "x": 16.25, "y": 1.25},
|
||||
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.25},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.25},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.25},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.25},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.25},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.25},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.25},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.25},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.25},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.25},
|
||||
{"matrix": [3, 12], "x": 13.5, "y": 2.25, "w": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.25},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
|
||||
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.25},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.25},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.25},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.25},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.25},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.25},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.25},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.25},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.25},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.25, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.25},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.25},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.25},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.25},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.25},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.25},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.25},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.25},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.25},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.25, "w": 2.75},
|
||||
{"matrix": [4, 15], "x": 16.25, "y": 4.25},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 6], "x": 4, "y": 5.25, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 13.5, "y": 5.25, "w": 1.5},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.25},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.25},
|
||||
{"matrix": [5, 16], "x": 17.25, "y": 5.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
27
keyboards/artifact/lvl/rev_hs01/keymaps/default/keymap.c
Normal file
27
keyboards/artifact/lvl/rev_hs01/keymaps/default/keymap.c
Normal file
@ -0,0 +1,27 @@
|
||||
/* Copyright 2024 Yiancar-Designs
|
||||
*
|
||||
* 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_tkl_ansi_tsangan( /* Base */
|
||||
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_PSCR, KC_SCRL, KC_PAUS,
|
||||
|
||||
KC_GRV, 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_INS, KC_HOME, KC_PGUP,
|
||||
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_DEL, KC_END, KC_PGDN,
|
||||
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_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT)
|
||||
};
|
27
keyboards/artifact/lvl/rev_hs01/keymaps/via/keymap.c
Normal file
27
keyboards/artifact/lvl/rev_hs01/keymaps/via/keymap.c
Normal file
@ -0,0 +1,27 @@
|
||||
/* Copyright 2024 Yiancar-Designs
|
||||
*
|
||||
* 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_tkl_ansi_tsangan( /* Base */
|
||||
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_PSCR, KC_SCRL, KC_PAUS,
|
||||
|
||||
KC_GRV, 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_INS, KC_HOME, KC_PGUP,
|
||||
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_DEL, KC_END, KC_PGDN,
|
||||
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_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT)
|
||||
};
|
1
keyboards/artifact/lvl/rev_hs01/keymaps/via/rules.mk
Executable file
1
keyboards/artifact/lvl/rev_hs01/keymaps/via/rules.mk
Executable file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
22
keyboards/artifact/lvl/rev_hs01/mcuconf.h
Normal file
22
keyboards/artifact/lvl/rev_hs01/mcuconf.h
Normal file
@ -0,0 +1,22 @@
|
||||
/* Copyright 2024 Yiancar-Designs
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef STM32_PWM_USE_TIM1
|
||||
#define STM32_PWM_USE_TIM1 TRUE
|
32
keyboards/artifact/lvl/rev_hs01/readme.md
Executable file
32
keyboards/artifact/lvl/rev_hs01/readme.md
Executable file
@ -0,0 +1,32 @@
|
||||
# LvL Type-01/80
|
||||
|
||||
This is a standard TKL layout PCB. It supports VIA.
|
||||
|
||||
* Keyboard Maintainer: [Yiancar](http://yiancar-designs.com/) and on [GitHub](https://github.com/yiancar)
|
||||
* Hardware Supported: A TKL keyboard with STM32F072CB
|
||||
* Hardware Availability: https://artifact-industries.com
|
||||
|
||||
## Instructions
|
||||
|
||||
### Build
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make artifact/lvl/rev_hs01: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).
|
||||
|
||||
### Reset
|
||||
|
||||
- Unplug
|
||||
- Hold Escape
|
||||
- Plug In
|
||||
- Unplug
|
||||
- Release Escape
|
||||
|
||||
### Flash
|
||||
|
||||
- Unplug
|
||||
- Hold Escape
|
||||
- Plug In
|
||||
- Flash using QMK Toolbox or CLI (`make artifact/lvl/rev_hs01:<keymap>:flash`)
|
21
keyboards/artifact/lvl/rev_hs01/rev_hs01.c
Executable file
21
keyboards/artifact/lvl/rev_hs01/rev_hs01.c
Executable file
@ -0,0 +1,21 @@
|
||||
/* Copyright 2024 Yiancar-Designs
|
||||
*
|
||||
* 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"
|
||||
|
||||
void led_init_ports(void) {
|
||||
// Set our LED pins as open drain outputs
|
||||
setPinOutputOpenDrain(LED_CAPS_LOCK_PIN);
|
||||
}
|
2
keyboards/artifact/lvl/rev_hs01/rules.mk
Executable file
2
keyboards/artifact/lvl/rev_hs01/rules.mk
Executable file
@ -0,0 +1,2 @@
|
||||
# Wildcard to allow APM32 MCU
|
||||
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
|
12
keyboards/binepad/bnk9/config.h
Normal file
12
keyboards/binepad/bnk9/config.h
Normal file
@ -0,0 +1,12 @@
|
||||
// Copyright 2023 binepad (@binepad)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define ENCODER_DEFAULT_POS 0x3 // enable 1:1 resolution
|
||||
|
||||
// Default PIO0 cases flickering in this board. Setting to PIO1 resolves this issue.
|
||||
#define WS2812_PIO_USE_PIO1
|
||||
|
||||
// Timing for SK6812
|
||||
#define WS2812_T1H 650
|
86
keyboards/binepad/bnk9/info.json
Normal file
86
keyboards/binepad/bnk9/info.json
Normal file
@ -0,0 +1,86 @@
|
||||
{
|
||||
"manufacturer": "binepad",
|
||||
"keyboard_name": "BNK9",
|
||||
"maintainer": "binepad",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"bootloader_instructions": "Hold down the key at (0x0) in the matrix (the 'knob' / rotary encoder) and plug in the keyboard.",
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "GP13", "pin_b": "GP14"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP1", "GP2", "GP3"],
|
||||
"rows": ["GP12", "GP4", "GP5", "GP6"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_up_down": true,
|
||||
"jellybean_raindrops": true,
|
||||
"riverflow": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"starlight": true,
|
||||
"starlight_dual_hue": true,
|
||||
"starlight_dual_sat": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"matrix": [1, 0], "x": 80, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 112, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 144, "y": 0, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 144, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 1], "x": 112, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 0], "x": 80, "y": 32, "flags": 4},
|
||||
{"matrix": [3, 0], "x": 80, "y": 64, "flags": 4},
|
||||
{"matrix": [3, 1], "x": 112, "y": 64, "flags": 4},
|
||||
{"matrix": [3, 2], "x": 144, "y": 64, "flags": 4}
|
||||
],
|
||||
"led_process_limit": 9,
|
||||
"max_brightness": 180,
|
||||
"sleep": true
|
||||
},
|
||||
"url": "https://www.binepad.com/product-page/bnk9",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x4E39",
|
||||
"vid": "0x4249"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP11"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "Knob", "matrix": [0, 0], "x": 0, "y": 0, "w": 3, "h": 3, "encoder": 0},
|
||||
{"label": "1", "matrix": [1, 0], "x": 3.25, "y": 0},
|
||||
{"label": "2", "matrix": [1, 1], "x": 4.25, "y": 0},
|
||||
{"label": "3", "matrix": [1, 2], "x": 5.25, "y": 0},
|
||||
{"label": "4", "matrix": [2, 0], "x": 3.25, "y": 1},
|
||||
{"label": "5", "matrix": [2, 1], "x": 4.25, "y": 1},
|
||||
{"label": "6", "matrix": [2, 2], "x": 5.25, "y": 1},
|
||||
{"label": "7", "matrix": [3, 0], "x": 3.25, "y": 2},
|
||||
{"label": "8", "matrix": [3, 1], "x": 4.25, "y": 2},
|
||||
{"label": "9", "matrix": [3, 2], "x": 5.25, "y": 2}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
28
keyboards/binepad/bnk9/keymaps/default/keymap.c
Normal file
28
keyboards/binepad/bnk9/keymaps/default/keymap.c
Normal file
@ -0,0 +1,28 @@
|
||||
// Copyright 2023 Binepad (@binpad)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE,
|
||||
KC_P1, KC_P2, KC_P3,
|
||||
KC_P4, KC_P5, KC_P6,
|
||||
KC_P7, KC_P8, LT(1, KC_P9)
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
RGB_TOG,
|
||||
RGB_HUI, RGB_SAI, RGB_SPI,
|
||||
RGB_HUD, RGB_SAD, RGB_SPD,
|
||||
RGB_RMOD, RGB_MOD, _______
|
||||
)
|
||||
};
|
||||
|
||||
#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(RGB_VAD, RGB_VAI) }
|
||||
};
|
||||
|
||||
#endif
|
1
keyboards/binepad/bnk9/keymaps/default/rules.mk
Normal file
1
keyboards/binepad/bnk9/keymaps/default/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
28
keyboards/binepad/bnk9/keymaps/via/keymap.c
Normal file
28
keyboards/binepad/bnk9/keymaps/via/keymap.c
Normal file
@ -0,0 +1,28 @@
|
||||
// Copyright 2023 Binepad (@binpad)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE,
|
||||
KC_P1, KC_P2, KC_P3,
|
||||
KC_P4, KC_P5, KC_P6,
|
||||
KC_P7, KC_P8, LT(1, KC_P9)
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
RGB_TOG,
|
||||
RGB_HUI, RGB_SAI, RGB_SPI,
|
||||
RGB_HUD, RGB_SAD, RGB_SPD,
|
||||
RGB_RMOD, RGB_MOD, _______
|
||||
)
|
||||
};
|
||||
|
||||
#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(RGB_VAD, RGB_VAI) }
|
||||
};
|
||||
|
||||
#endif
|
2
keyboards/binepad/bnk9/keymaps/via/rules.mk
Normal file
2
keyboards/binepad/bnk9/keymaps/via/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
27
keyboards/binepad/bnk9/readme.md
Normal file
27
keyboards/binepad/bnk9/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# BINEPAD BNK9
|
||||
|
||||
![BINEPAD BNK9](https://i.imgur.com/FrkVRhhh.jpg)
|
||||
|
||||
A 3x3 macropad with a large rotary encoder.
|
||||
|
||||
* Keyboard Maintainer: [binepad](https://github.com/binepad)
|
||||
* Hardware Supported: BINPAD BNK9
|
||||
* Hardware Availability: [binepad.com](https://www.binepad.com/product-page/bnk9)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make binepad/bnk9:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make binepad/bnk9: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 (0x0) in the matrix (the 'knob' / rotary encoder) and plug in the keyboard.
|
||||
* **Physical reset button**: Briefly press the PCB button located on the back of the PCB.
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` *(or* `RESET` *in VIA)* if it is available.
|
1
keyboards/binepad/bnk9/rules.mk
Normal file
1
keyboards/binepad/bnk9/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
20
keyboards/dnworks/numpad/config.h
Normal file
20
keyboards/dnworks/numpad/config.h
Normal file
@ -0,0 +1,20 @@
|
||||
/*
|
||||
Copyright 2023 zeix (@itsme-zeix)
|
||||
|
||||
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 RP2040_BOOTLOADER_DOUBLE_TAP_RESET
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U
|
73
keyboards/dnworks/numpad/info.json
Normal file
73
keyboards/dnworks/numpad/info.json
Normal file
@ -0,0 +1,73 @@
|
||||
{
|
||||
"manufacturer": "dnworks",
|
||||
"keyboard_name": "DN Numpad Rev1",
|
||||
"maintainer": "itsme-zeix",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"matrix_pins": {
|
||||
"cols": ["GP5", "GP6", "GP7", "GP25"],
|
||||
"rows": ["GP11", "GP4", "GP3", "GP2", "GP1", "GP0", "GP24"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x2937",
|
||||
"vid": "0x4C23"
|
||||
},
|
||||
"community_layouts": ["numpad_6x4", "ortho_6x4"],
|
||||
"layouts": {
|
||||
"LAYOUT_numpad_6x4": {
|
||||
"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": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [6, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2.25},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3, "y": 2.25, "h": 2},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4.25},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4.25},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25, "w": 2},
|
||||
{"matrix": [5, 2], "x": 2, "y": 5.25},
|
||||
{"matrix": [5, 3], "x": 3, "y": 4.25, "h": 2}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ortho_6x4": {
|
||||
"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": [1, 0], "x": 0, "y": 1.25},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.25},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.25},
|
||||
{"matrix": [6, 3], "x": 3, "y": 1.25},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.25},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.25},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2.25},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2.25},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.25},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3.25},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3.25},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.25},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4.25},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4.25},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4.25},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.25},
|
||||
{"matrix": [5, 1], "x": 1, "y": 5.25},
|
||||
{"matrix": [5, 2], "x": 2, "y": 5.25},
|
||||
{"matrix": [5, 3], "x": 3, "y": 5.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
29
keyboards/dnworks/numpad/keymaps/default/keymap.c
Normal file
29
keyboards/dnworks/numpad/keymaps/default/keymap.c
Normal file
@ -0,0 +1,29 @@
|
||||
/*
|
||||
Copyright 2023 zeix (@itsme-zeix)
|
||||
|
||||
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_6x4(
|
||||
KC_ESC, KC_APP, KC_TAB, KC_BSPC,
|
||||
|
||||
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
|
||||
KC_P7, KC_P8, KC_P9, KC_PPLS,
|
||||
KC_P4, KC_P5, KC_P6, KC_PPLS,
|
||||
KC_P1, KC_P2, KC_P3, KC_PENT,
|
||||
KC_P0, KC_P0, KC_PDOT, KC_PENT
|
||||
),
|
||||
};
|
29
keyboards/dnworks/numpad/keymaps/via/keymap.c
Normal file
29
keyboards/dnworks/numpad/keymaps/via/keymap.c
Normal file
@ -0,0 +1,29 @@
|
||||
/*
|
||||
Copyright 2023 zeix (@itsme-zeix)
|
||||
|
||||
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_6x4(
|
||||
KC_ESC, KC_APP, KC_TAB, KC_BSPC,
|
||||
|
||||
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
|
||||
KC_P7, KC_P8, KC_P9, KC_PPLS,
|
||||
KC_P4, KC_P5, KC_P6, KC_PPLS,
|
||||
KC_P1, KC_P2, KC_P3, KC_PENT,
|
||||
KC_P0, KC_P0, KC_PDOT, KC_PENT
|
||||
),
|
||||
};
|
1
keyboards/dnworks/numpad/keymaps/via/rules.mk
Normal file
1
keyboards/dnworks/numpad/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
25
keyboards/dnworks/numpad/matrix_diagram.md
Normal file
25
keyboards/dnworks/numpad/matrix_diagram.md
Normal file
@ -0,0 +1,25 @@
|
||||
# Matrix Diagram for dnworks numpad rev1
|
||||
|
||||
```
|
||||
Top Left 2u
|
||||
┌───────┐┌───────┐
|
||||
│00 ││02 │ Top Right 2u
|
||||
└───────┘└───────┘
|
||||
┌───┬───┬───┬───┐
|
||||
│00 │01 │02 │03 │
|
||||
└───┴───┴───┴───┘
|
||||
┌───┬───┬───┬───┐
|
||||
│10 │11 │12 │63 │
|
||||
├───┼───┼───┼───┤ ┌───┐
|
||||
│20 │21 │22 │ │ │23 │
|
||||
├───┼───┼───┤33 │ ├───┤ Split Plus
|
||||
│30 │31 │32 │ │ │33 │
|
||||
├───┼───┼───┼───┤ └───┘ ┌───┐
|
||||
│40 │41 │42 │ │ │43 │
|
||||
├───┴───┼───┤53 │ ├───┤ Split Enter
|
||||
│50 │52 │ │ │53 │
|
||||
└───────┴───┴───┘ └───┘
|
||||
┌───┬───┐
|
||||
│50 │51 │ Split Zero
|
||||
└───┴───┘
|
||||
```
|
27
keyboards/dnworks/numpad/readme.md
Normal file
27
keyboards/dnworks/numpad/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# DN Numpad Rev1
|
||||
|
||||
![DN Numpad Rev1](https://i.imgur.com/OpklWTih.png)
|
||||
|
||||
PCB that supports the numpad designed by dnworks.
|
||||
|
||||
* Keyboard Maintainer: [Zeix](https://github.com/itsme-zeix)
|
||||
* Hardware Supported: DN Numpad Rev1
|
||||
* Hardware Availability: dnworks.co
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make dnworks/numpad:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make dnworks/numpad: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 top left key and plug in the keyboard
|
||||
* **Physical reset button**: Briefly press the `RESET` button twice or short the `USB_BOOT` and `GND` pads and plug in the keyboard
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
1
keyboards/dnworks/numpad/rules.mk
Normal file
1
keyboards/dnworks/numpad/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
111
keyboards/doio/kb04/info.json
Normal file
111
keyboards/doio/kb04/info.json
Normal file
@ -0,0 +1,111 @@
|
||||
{
|
||||
"manufacturer": "DOIO",
|
||||
"keyboard_name": "KB04-01",
|
||||
"maintainer": "filmstarr",
|
||||
"bootloader": "stm32duino",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "B5", "pin_b": "B6"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": false,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B14", "B13", "B12", "B0", "A7"],
|
||||
"rows": ["B3"]
|
||||
},
|
||||
"processor": "STM32F103",
|
||||
"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,
|
||||
"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
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 1], "x": 75, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 2], "x": 149, "y": 0, "flags": 1},
|
||||
{"matrix": [0, 3], "x": 224, "y": 0, "flags": 1},
|
||||
|
||||
{"x": 112, "y": 64, "flags": 1},
|
||||
{"x": 112, "y": 64, "flags": 1},
|
||||
{"x": 112, "y": 64, "flags": 1},
|
||||
{"x": 112, "y": 64, "flags": 1}
|
||||
],
|
||||
"max_brightness": 200,
|
||||
"sleep": true
|
||||
},
|
||||
"url": "https://www.keebmonkey.com/products/megalodon-macro-pad-with-a-knob",
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x0401",
|
||||
"vid": "0xD010"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "A10"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "1!", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "2@", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "3#", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "4$", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "Encoder", "matrix": [0, 4], "x": 1.5, "y": 1}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
48
keyboards/doio/kb04/keymaps/default/keymap.c
Normal file
48
keyboards/doio/kb04/keymaps/default/keymap.c
Normal file
@ -0,0 +1,48 @@
|
||||
/* Copyright 2022 filmstarr <https://github.com/filmstarr>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layer_names {
|
||||
_LAY0,
|
||||
_LAY1
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/*
|
||||
L0:
|
||||
┌───┬───┬───┬───┐ ┌───┐
|
||||
│MO1│Prv│Ply│Nxt│ │Mut│
|
||||
└───┴───┴───┴───┘ └───┘
|
||||
L1:
|
||||
┌───┬───┬───┬───┐ ┌───┐
|
||||
│ │Hud│Tog│Mod│ │ │
|
||||
└───┴───┴───┴───┘ └───┘
|
||||
*/
|
||||
[_LAY0] = LAYOUT(
|
||||
MO(_LAY1), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE
|
||||
),
|
||||
[_LAY1] = LAYOUT(
|
||||
KC_TRNS, RGB_HUD, RGB_TOG, RGB_MOD, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
#ifdef ENCODER_MAP_ENABLE
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAY0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }
|
||||
};
|
||||
#endif
|
1
keyboards/doio/kb04/keymaps/default/rules.mk
Normal file
1
keyboards/doio/kb04/keymaps/default/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
48
keyboards/doio/kb04/keymaps/via/keymap.c
Normal file
48
keyboards/doio/kb04/keymaps/via/keymap.c
Normal file
@ -0,0 +1,48 @@
|
||||
/* Copyright 2022 filmstarr <https://github.com/filmstarr>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layer_names {
|
||||
_LAY0,
|
||||
_LAY1
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/*
|
||||
L0:
|
||||
┌───┬───┬───┬───┐ ┌───┐
|
||||
│MO1│Prv│Ply│Nxt│ │Mut│
|
||||
└───┴───┴───┴───┘ └───┘
|
||||
L1:
|
||||
┌───┬───┬───┬───┐ ┌───┐
|
||||
│ │Hud│Tog│Mod│ │ │
|
||||
└───┴───┴───┴───┘ └───┘
|
||||
*/
|
||||
[_LAY0] = LAYOUT(
|
||||
MO(_LAY1), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE
|
||||
),
|
||||
[_LAY1] = LAYOUT(
|
||||
KC_TRNS, RGB_HUD, RGB_TOG, RGB_MOD, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
#ifdef ENCODER_MAP_ENABLE
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAY0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }
|
||||
};
|
||||
#endif
|
2
keyboards/doio/kb04/keymaps/via/rules.mk
Normal file
2
keyboards/doio/kb04/keymaps/via/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
27
keyboards/doio/kb04/readme.md
Normal file
27
keyboards/doio/kb04/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# doio/kb04
|
||||
|
||||
![doio/kb04](https://i.imgur.com/lqABZw4h.png)
|
||||
|
||||
A macropad that have 4-key keyboard made by DOIO, which controlled by an APM32F103CBT6 chipset. The keyboard features per-key RGB and 1 encoder.
|
||||
|
||||
* Keyboard Maintainer: [filmstarr](https://github.com/filmstarr)
|
||||
* Hardware Supported: DOIO Knob Board - KB04
|
||||
* Hardware Availability: [keebmonkey.com](https://www.keebmonkey.com/products/megalodon-macro-pad-with-a-knob)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
qmk compile -kb doio/kb04 -km default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
qmk flash -kb doio/kb04 -km default
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 3 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (1! key) and plug in the keyboard
|
||||
* **Physical reset button**: Briefly press the button on the back of the PCB
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
1
keyboards/doio/kb04/rules.mk
Normal file
1
keyboards/doio/kb04/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
@ -20,7 +20,7 @@
|
||||
["B1", "B10", "A8", "B15", "B14", "B13"],
|
||||
["B9", "B8", "B5", "B4", "B3", "A15"],
|
||||
["A3", "A4", "A5", "A6", "A7", "B0"],
|
||||
["B12","A2", "A1", "A0", null, null]
|
||||
["A2", "A1", "A0", "B12", null, null]
|
||||
]
|
||||
},
|
||||
"split": {
|
||||
@ -34,7 +34,7 @@
|
||||
["B13", "B14", "B15", "A8", "B10", "B1"],
|
||||
["A15", "B3", "B4", "B5", "B8", "B9"],
|
||||
["B0", "A7", "A6", "A5", "A4", "A3"],
|
||||
["A0", "A1", "A2", "B12", null, null]
|
||||
["B12", "A0", "A1", "A2", null, null]
|
||||
]
|
||||
}
|
||||
}
|
||||
|
11
keyboards/gkeyboard/greatpad/config.h
Normal file
11
keyboards/gkeyboard/greatpad/config.h
Normal file
@ -0,0 +1,11 @@
|
||||
// Copyright 2023 gkeyboard (@gkeyboard)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define OLED_DISPLAY_128X64
|
||||
#define I2C1_SCL_PIN GP21
|
||||
#define I2C1_SDA_PIN GP20
|
||||
#define I2C_DRIVER I2CD0
|
||||
#define OLED_BRIGHTNESS 128
|
||||
#define OLED_FONT_H "lib/glcdfont.c"
|
577
keyboards/gkeyboard/greatpad/greatpad.c
Normal file
577
keyboards/gkeyboard/greatpad/greatpad.c
Normal file
@ -0,0 +1,577 @@
|
||||
/* Copyright 2023 gkeyboard (@gkeyboard)
|
||||
*
|
||||
* 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
|
||||
uint16_t startup_timer;
|
||||
|
||||
oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_180;
|
||||
}
|
||||
|
||||
static void render_logo(void) {
|
||||
static const char PROGMEM raw_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,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x02, 0x02, 0x82, 0xc2,
|
||||
0xe2, 0xe2, 0xe2, 0xc2, 0x82, 0x02, 0x02, 0x02, 0x02, 0x02, 0xe2, 0xe2, 0xe2, 0xe2, 0xe2, 0xe2,
|
||||
0xe2, 0xe2, 0xe2, 0xe2, 0xe2, 0x02, 0x02, 0x02, 0x02, 0x02, 0x82, 0xc2, 0xe2, 0xe2, 0xe2, 0xc2,
|
||||
0x82, 0x02, 0x02, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0x07,
|
||||
0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x07,
|
||||
0x03, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x3e,
|
||||
0x3e, 0x3e, 0x3e, 0x3e, 0x00, 0x00, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x00, 0x00, 0x3e, 0x3e, 0x3e,
|
||||
0x3e, 0x3e, 0x00, 0x00, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x00, 0x00, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e,
|
||||
0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x9f,
|
||||
0x9f, 0x9f, 0x9f, 0x9f, 0x00, 0x00, 0x9f, 0x9f, 0x9f, 0x9f, 0x9f, 0x00, 0x00, 0x9f, 0x9f, 0x9f,
|
||||
0x9f, 0x9f, 0x00, 0x00, 0x9f, 0x9f, 0x9f, 0x9f, 0x9f, 0x00, 0x00, 0x9f, 0x9f, 0x9f, 0x9f, 0x9f,
|
||||
0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0xcf,
|
||||
0xcf, 0xcf, 0xcf, 0xcf, 0x00, 0x00, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0x00, 0x00, 0xcf, 0xcf, 0xcf,
|
||||
0xcf, 0xcf, 0x00, 0x00, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0x00, 0x00, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
||||
0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x40, 0x40, 0x40, 0x47,
|
||||
0x47, 0x47, 0x47, 0x47, 0x40, 0x40, 0x47, 0x47, 0x47, 0x47, 0x47, 0x40, 0x40, 0x47, 0x47, 0x47,
|
||||
0x47, 0x47, 0x40, 0x40, 0x47, 0x47, 0x47, 0x47, 0x47, 0x40, 0x40, 0x47, 0x47, 0x47, 0x47, 0x47,
|
||||
0x40, 0x40, 0x40, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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(raw_logo, sizeof(raw_logo));
|
||||
}
|
||||
|
||||
static void render_LAYER_0(void) {
|
||||
static const char PROGMEM raw_LAYER_0[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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, 0xff, 0xff, 0xff, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_0, sizeof(raw_LAYER_0));
|
||||
}
|
||||
|
||||
static void render_LAYER_1(void) {
|
||||
static const char PROGMEM raw_LAYER_1[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0xe0,
|
||||
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, 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, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
|
||||
0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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(raw_LAYER_1, sizeof(raw_LAYER_1));
|
||||
}
|
||||
|
||||
static void render_LAYER_2(void) {
|
||||
static const char PROGMEM raw_LAYER_2[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xfe, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 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,
|
||||
0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8, 0xd8,
|
||||
0xd8, 0xd8, 0xd8, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_2, sizeof(raw_LAYER_2));
|
||||
}
|
||||
|
||||
static void render_LAYER_3(void) {
|
||||
static const char PROGMEM raw_LAYER_3[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 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,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_3, sizeof(raw_LAYER_3));
|
||||
}
|
||||
|
||||
static void render_LAYER_4(void) {
|
||||
static const char PROGMEM raw_LAYER_4[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 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, 0xff, 0xff, 0xff, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
|
||||
0x60, 0x60, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0x0f, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 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,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 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(raw_LAYER_4, sizeof(raw_LAYER_4));
|
||||
}
|
||||
|
||||
static void render_LAYER_5(void) {
|
||||
static const char PROGMEM raw_LAYER_5[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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, 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,
|
||||
0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c, 0x6c,
|
||||
0x6c, 0x6c, 0x6c, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0x0f, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 0xfe, 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,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_5, sizeof(raw_LAYER_5));
|
||||
}
|
||||
|
||||
static void render_LAYER_6(void) {
|
||||
static const char PROGMEM raw_LAYER_6[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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,
|
||||
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
|
||||
0x80, 0x80, 0x80, 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, 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,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 0xfe, 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,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_6, sizeof(raw_LAYER_6));
|
||||
}
|
||||
|
||||
static void render_LAYER_7(void) {
|
||||
static const char PROGMEM raw_LAYER_7[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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,
|
||||
0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0, 0xb0,
|
||||
0xb0, 0xb0, 0xb0, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 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(raw_LAYER_7, sizeof(raw_LAYER_7));
|
||||
}
|
||||
|
||||
static void render_LAYER_8(void) {
|
||||
static const char PROGMEM raw_LAYER_8[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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,
|
||||
0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6,
|
||||
0xb6, 0xb6, 0xb6, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 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,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 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,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_8, sizeof(raw_LAYER_8));
|
||||
}
|
||||
|
||||
static void render_LAYER_9(void) {
|
||||
static const char PROGMEM raw_LAYER_9[] = {
|
||||
0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0,
|
||||
0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 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,
|
||||
0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6, 0xb6,
|
||||
0xb6, 0xb6, 0xb6, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 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,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d, 0x6d,
|
||||
0x6d, 0x6d, 0x6d, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0x0f, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e,
|
||||
0x0e, 0x0e, 0x0e, 0x0e, 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,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb, 0xdb,
|
||||
0xdb, 0xdb, 0xdb, 0xdb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_9, sizeof(raw_LAYER_9));
|
||||
}
|
||||
|
||||
static void render_LAYER_UNDEF(void) {
|
||||
static const char PROGMEM raw_LAYER_UNDEF[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 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, 0xff, 0xff, 0xff, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
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, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0,
|
||||
0xe0, 0xe0, 0xe0, 0xe0, 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
|
||||
};
|
||||
oled_write_raw_P(raw_LAYER_UNDEF, sizeof(raw_LAYER_UNDEF));
|
||||
}
|
||||
|
||||
/* Shows the name of the current layer and locks for the host (Cap etc.) */
|
||||
static void render_info(void) {
|
||||
oled_write_P(PSTR(" GreatPad\n"), false);
|
||||
oled_write_P(PSTR("\n"), false);
|
||||
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);
|
||||
oled_write_P(PSTR("\n"), false);
|
||||
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case 0:
|
||||
render_LAYER_0();
|
||||
break;
|
||||
case 1:
|
||||
render_LAYER_1();
|
||||
break;
|
||||
case 2:
|
||||
render_LAYER_2();
|
||||
break;
|
||||
case 3:
|
||||
render_LAYER_3();
|
||||
break;
|
||||
case 4:
|
||||
render_LAYER_4();
|
||||
break;
|
||||
case 5:
|
||||
render_LAYER_5();
|
||||
break;
|
||||
case 6:
|
||||
render_LAYER_6();
|
||||
break;
|
||||
case 7:
|
||||
render_LAYER_7();
|
||||
break;
|
||||
case 8:
|
||||
render_LAYER_8();
|
||||
break;
|
||||
case 9:
|
||||
render_LAYER_9();
|
||||
break;
|
||||
default:
|
||||
render_LAYER_UNDEF();
|
||||
}
|
||||
}
|
||||
|
||||
#define SHOW_LOGO 5000
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) {
|
||||
return false;
|
||||
}
|
||||
static bool finished_timer = false;
|
||||
if (!finished_timer && (timer_elapsed(startup_timer) < SHOW_LOGO)) {
|
||||
render_logo();
|
||||
} else {
|
||||
if (!finished_timer) {
|
||||
oled_clear();
|
||||
finished_timer = true;
|
||||
}
|
||||
render_info();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif
|
7
keyboards/gkeyboard/greatpad/halconf.h
Normal file
7
keyboards/gkeyboard/greatpad/halconf.h
Normal file
@ -0,0 +1,7 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_I2C TRUE
|
||||
|
||||
#include_next <halconf.h>
|
151
keyboards/gkeyboard/greatpad/info.json
Normal file
151
keyboards/gkeyboard/greatpad/info.json
Normal file
@ -0,0 +1,151 @@
|
||||
{
|
||||
"manufacturer": "gkeyboard",
|
||||
"keyboard_name": "GreatPad",
|
||||
"maintainer": "gkeyboard",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "GP25", "pin_b": "GP26"},
|
||||
{"pin_a": "GP0", "pin_b": "GP1"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"oled": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP24", "GP23", "GP16", "GP11", "GP10"],
|
||||
"rows": ["GP6", "GP5", "GP4", "GP3", "GP2"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"rgb_matrix": {
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"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_fractal": true,
|
||||
"pixel_rain": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"solid_color": 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": [
|
||||
{"matrix": [1, 0], "x": 0, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 56, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 112, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 3], "x": 168, "y": 0, "flags": 4},
|
||||
{"matrix": [1, 4], "x": 224, "y": 0, "flags": 4},
|
||||
{"matrix": [2, 0], "x": 0, "y": 21, "flags": 4},
|
||||
{"matrix": [2, 1], "x": 56, "y": 21, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 112, "y": 21, "flags": 4},
|
||||
{"matrix": [2, 3], "x": 168, "y": 21, "flags": 4},
|
||||
{"matrix": [2, 4], "x": 224, "y": 21, "flags": 4},
|
||||
{"matrix": [3, 0], "x": 0, "y": 43, "flags": 4},
|
||||
{"matrix": [3, 1], "x": 56, "y": 43, "flags": 4},
|
||||
{"matrix": [3, 2], "x": 112, "y": 43, "flags": 4},
|
||||
{"matrix": [3, 3], "x": 168, "y": 43, "flags": 4},
|
||||
{"matrix": [3, 4], "x": 224, "y": 43, "flags": 4},
|
||||
{"matrix": [4, 0], "x": 0, "y": 64, "flags": 4},
|
||||
{"matrix": [4, 1], "x": 56, "y": 64, "flags": 4},
|
||||
{"matrix": [4, 2], "x": 112, "y": 64, "flags": 4},
|
||||
{"matrix": [4, 3], "x": 168, "y": 64, "flags": 4},
|
||||
{"matrix": [4, 4], "x": 224, "y": 64, "flags": 4},
|
||||
{"x": 196, "y": 53, "flags": 2},
|
||||
{"x": 196, "y": 10, "flags": 2},
|
||||
{"x": 140, "y": 10, "flags": 2},
|
||||
{"x": 84, "y": 10, "flags": 2},
|
||||
{"x": 28, "y": 10, "flags": 2},
|
||||
{"x": 28, "y": 53, "flags": 2},
|
||||
{"x": 84, "y": 53, "flags": 2},
|
||||
{"x": 140, "y": 53, "flags": 2}
|
||||
],
|
||||
"max_brightness": 170,
|
||||
"sleep": true
|
||||
},
|
||||
"url": "https://github.com/gkeyboard/GreatPad",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x4203",
|
||||
"vid": "0x474B"
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP22"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4, "y": 2.5},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5},
|
||||
{"matrix": [3, 1], "x": 1, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4, "y": 3.5},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5},
|
||||
{"matrix": [4, 1], "x": 1, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4, "y": 4.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
21
keyboards/gkeyboard/greatpad/keymaps/default/keymap.c
Normal file
21
keyboards/gkeyboard/greatpad/keymaps/default/keymap.c
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE, RGB_TOG,
|
||||
KC_P7, KC_P8, KC_P9, KC_PSLS, KC_NUM,
|
||||
KC_P4, KC_P5, KC_P6, KC_PAST, KC_PGUP,
|
||||
KC_P1, KC_P2, KC_P3, KC_PMNS, KC_PGDN,
|
||||
KC_P0, KC_PDOT, KC_PENT, KC_PPLS, _______
|
||||
)
|
||||
};
|
||||
|
||||
#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(RGB_RMOD, RGB_MOD) },
|
||||
};
|
||||
#endif
|
1
keyboards/gkeyboard/greatpad/keymaps/default/rules.mk
Normal file
1
keyboards/gkeyboard/greatpad/keymaps/default/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
21
keyboards/gkeyboard/greatpad/keymaps/via/keymap.c
Normal file
21
keyboards/gkeyboard/greatpad/keymaps/via/keymap.c
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE, RGB_TOG,
|
||||
KC_P7, KC_P8, KC_P9, KC_PSLS, KC_NUM,
|
||||
KC_P4, KC_P5, KC_P6, KC_PAST, KC_PGUP,
|
||||
KC_P1, KC_P2, KC_P3, KC_PMNS, KC_PGDN,
|
||||
KC_P0, KC_PDOT, KC_PENT, KC_PPLS, _______
|
||||
)
|
||||
};
|
||||
|
||||
#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(RGB_RMOD, RGB_MOD) },
|
||||
};
|
||||
#endif
|
2
keyboards/gkeyboard/greatpad/keymaps/via/rules.mk
Normal file
2
keyboards/gkeyboard/greatpad/keymaps/via/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
236
keyboards/gkeyboard/greatpad/lib/glcdfont.c
Normal file
236
keyboards/gkeyboard/greatpad/lib/glcdfont.c
Normal file
@ -0,0 +1,236 @@
|
||||
// Copyright 2023 gkeyboard (@gkeyboard)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0.
|
||||
// See gfxfont.h for newer custom bitmap font info.
|
||||
|
||||
#pragma once
|
||||
|
||||
#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, 0xB6, 0xFF, 0xB6, 0x94, 0x00,
|
||||
0x08, 0x0C, 0x7E, 0x0C, 0x08, 0x00,
|
||||
0x10, 0x30, 0x7E, 0x30, 0x10, 0x00,
|
||||
0x08, 0x08, 0x3E, 0x1C, 0x08, 0x00,
|
||||
0x08, 0x1C, 0x3E, 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, 0x3E, 0x14, 0x3E, 0x14, 0x00,
|
||||
0x2E, 0x2A, 0x7F, 0x2A, 0x3A, 0x00,
|
||||
0x20, 0x12, 0x08, 0x24, 0x02, 0x00,
|
||||
0x37, 0x49, 0x49, 0x37, 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,
|
||||
0x7F, 0x51, 0x49, 0x45, 0x7F, 0x00,
|
||||
0x08, 0x04, 0x02, 0x7F, 0x00, 0x00,
|
||||
0x71, 0x49, 0x49, 0x49, 0x4F, 0x00,
|
||||
0x41, 0x41, 0x49, 0x49, 0x77, 0x00,
|
||||
0x0F, 0x10, 0x10, 0x10, 0x7F, 0x00,
|
||||
0x4F, 0x49, 0x49, 0x49, 0x71, 0x00,
|
||||
0x7E, 0x49, 0x49, 0x49, 0x70, 0x00,
|
||||
0x01, 0x01, 0x71, 0x09, 0x07, 0x00,
|
||||
0x77, 0x49, 0x49, 0x49, 0x77, 0x00,
|
||||
0x07, 0x49, 0x49, 0x49, 0x3F, 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,
|
||||
0x01, 0x01, 0x59, 0x09, 0x0F, 0x00,
|
||||
0x7F, 0x41, 0x5D, 0x59, 0x4F, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x7F, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x76, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x41, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x7E, 0x00,
|
||||
0x7F, 0x49, 0x49, 0x49, 0x49, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x09, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x49, 0x7B, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
|
||||
0x00, 0x00, 0x7F, 0x00, 0x00, 0x00,
|
||||
0x70, 0x40, 0x40, 0x40, 0x7F, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x77, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x7F, 0x01, 0x1F, 0x01, 0x7F, 0x00,
|
||||
0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
|
||||
0x7F, 0x41, 0x41, 0x41, 0x7F, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x09, 0x0F, 0x00,
|
||||
0x7F, 0x41, 0x71, 0x41, 0x7F, 0x00,
|
||||
0x7F, 0x09, 0x09, 0x19, 0x6F, 0x00,
|
||||
0x47, 0x49, 0x49, 0x49, 0x79, 0x00,
|
||||
0x01, 0x01, 0x7F, 0x01, 0x01, 0x00,
|
||||
0x7F, 0x40, 0x40, 0x40, 0x7F, 0x00,
|
||||
0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
|
||||
0x7F, 0x40, 0x7F, 0x40, 0x7F, 0x00,
|
||||
0x77, 0x08, 0x08, 0x08, 0x77, 0x00,
|
||||
0x4F, 0x48, 0x48, 0x48, 0x7F, 0x00,
|
||||
0x61, 0x51, 0x49, 0x45, 0x43, 0x00,
|
||||
0x00, 0x7F, 0x41, 0x41, 0x00, 0x00,
|
||||
0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
|
||||
0x00, 0x41, 0x41, 0x7F, 0x00, 0x00,
|
||||
0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
|
||||
0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
|
||||
0x00, 0x00, 0x07, 0x08, 0x00, 0x00,
|
||||
0x60, 0x54, 0x54, 0x54, 0x7C, 0x00,
|
||||
0x7F, 0x44, 0x44, 0x44, 0x78, 0x00,
|
||||
0x7C, 0x44, 0x44, 0x44, 0x44, 0x00,
|
||||
0x78, 0x44, 0x44, 0x44, 0x7F, 0x00,
|
||||
0x7C, 0x54, 0x54, 0x54, 0x5C, 0x00,
|
||||
0x08, 0x7F, 0x09, 0x09, 0x09, 0x00,
|
||||
0x38, 0xA4, 0xA4, 0xA4, 0xFC, 0x00,
|
||||
0x7F, 0x04, 0x04, 0x04, 0x78, 0x00,
|
||||
0x00, 0x00, 0x7D, 0x00, 0x00, 0x00,
|
||||
0x70, 0x40, 0x40, 0x7D, 0x00, 0x00,
|
||||
0x7F, 0x08, 0x08, 0x08, 0x76, 0x00,
|
||||
0x00, 0x00, 0x7F, 0x40, 0x00, 0x00,
|
||||
0x7C, 0x04, 0x7C, 0x04, 0x7C, 0x00,
|
||||
0x7C, 0x04, 0x04, 0x04, 0x78, 0x00,
|
||||
0x7C, 0x44, 0x44, 0x44, 0x7C, 0x00,
|
||||
0xFC, 0x24, 0x24, 0x24, 0x38, 0x00,
|
||||
0x38, 0x24, 0x24, 0x24, 0xFC, 0x00,
|
||||
0x7C, 0x04, 0x04, 0x04, 0x04, 0x00,
|
||||
0x5C, 0x54, 0x54, 0x54, 0x74, 0x00,
|
||||
0x04, 0x04, 0x7F, 0x04, 0x04, 0x00,
|
||||
0x7C, 0x40, 0x40, 0x40, 0x7C, 0x00,
|
||||
0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
|
||||
0x7C, 0x40, 0x7C, 0x40, 0x7C, 0x00,
|
||||
0x6C, 0x10, 0x10, 0x10, 0x6C, 0x00,
|
||||
0xBC, 0xA0, 0xA0, 0xA0, 0xFC, 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, 0xE0, 0xF0, 0xF0, 0xF0,
|
||||
0xF0, 0xFE, 0xFF, 0x9F, 0x0F, 0x0F,
|
||||
0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F,
|
||||
0x0F, 0x0F, 0x9F, 0xFF, 0xFE, 0xF0,
|
||||
0xF0, 0xF0, 0xF0, 0xE0, 0x00, 0x00,
|
||||
0xFF, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00,
|
||||
0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xE0, 0x10, 0x08, 0x04, 0x02, 0x02,
|
||||
0x02, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||
0x01, 0x02, 0x02, 0x02, 0x04, 0x08,
|
||||
0x10, 0xE0, 0x00, 0x00, 0x00, 0x00,
|
||||
0xFF, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0xFF,
|
||||
0x7F, 0x51, 0x55, 0x55, 0x45, 0x7F,
|
||||
0x41, 0x5F, 0x5F, 0x5F, 0x7F, 0x00,
|
||||
0x7F, 0x41, 0x7B, 0x77, 0x41, 0x7F,
|
||||
0x41, 0x5F, 0x5F, 0x5F, 0x7F, 0x00,
|
||||
0x7F, 0x41, 0x5D, 0x5D, 0x5D, 0x7F,
|
||||
0x41, 0x5F, 0x5F, 0x5F, 0x7F, 0x00,
|
||||
0xC0, 0xE0, 0xF0, 0xF0, 0xF0, 0xE0,
|
||||
0xE6, 0xF7, 0xF3, 0xF0, 0x60, 0x00,
|
||||
0x7C, 0x7C, 0x7C, 0x7C, 0x7C, 0x00,
|
||||
0x7C, 0x7C, 0x7C, 0x7C, 0x7C, 0x00,
|
||||
0xF8, 0x1C, 0xDE, 0x1F, 0xFF, 0xFF,
|
||||
0xFF, 0x1F, 0xDE, 0x1C, 0xF8, 0x00,
|
||||
0xC0, 0xE2, 0xB4, 0xF8, 0xF8, 0xF8,
|
||||
0xF8, 0xF8, 0xB4, 0xE2, 0xC0, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x07, 0x0F, 0x0F, 0x0F,
|
||||
0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x9F,
|
||||
0x87, 0xE1, 0xF9, 0xF9, 0xE1, 0x87,
|
||||
0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F,
|
||||
0x0F, 0x0F, 0x0F, 0x07, 0x00, 0x00,
|
||||
0xFF, 0x00, 0x00, 0xC0, 0x30, 0x0C,
|
||||
0x33, 0xC0, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0xFF, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x3F,
|
||||
0xC0, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0xC0, 0x3F, 0x00, 0x00, 0x00,
|
||||
0xFF, 0x08, 0x08, 0x08, 0x08, 0x08,
|
||||
0x08, 0x38, 0xC8, 0x08, 0x08, 0x0F,
|
||||
0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00,
|
||||
0x78, 0x00, 0x00, 0x7E, 0x00, 0x00,
|
||||
0x24, 0x24, 0x12, 0x12, 0x24, 0x24,
|
||||
0x48, 0x48, 0x24, 0x24, 0x12, 0x12,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0x3F,
|
||||
0x3F, 0x7F, 0x7F, 0x38, 0x10, 0x00,
|
||||
0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00,
|
||||
0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x00,
|
||||
0x0F, 0x14, 0x21, 0x40, 0x45, 0x41,
|
||||
0x45, 0x40, 0x21, 0x14, 0x0F, 0x00,
|
||||
0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x7D,
|
||||
0x7D, 0x7D, 0x7D, 0x7D, 0x7D, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
|
||||
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, 0x0C, 0x03, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x03, 0x0C, 0x30, 0x00,
|
||||
0x00, 0x00, 0x00, 0x3F, 0x20, 0x20,
|
||||
0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
|
||||
0x01, 0x02, 0x04, 0x08, 0x10, 0x10,
|
||||
0x10, 0x20, 0x20, 0x20, 0x20, 0x20,
|
||||
0x20, 0x10, 0x10, 0x10, 0x08, 0x04,
|
||||
0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
|
||||
0x3F, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x03, 0x0C, 0x30,
|
||||
0x40, 0x00, 0x00, 0x40, 0x00, 0x00,
|
||||
0x40, 0x00, 0x00, 0x40, 0x00, 0x00,
|
||||
0x1C, 0x3E, 0x3E, 0x3E, 0x1C, 0x00,
|
||||
0x3E, 0x1C, 0x1C, 0x08, 0x08, 0x00,
|
||||
0x3E, 0x3E, 0x3E, 0x3E, 0x3E, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
8
keyboards/gkeyboard/greatpad/mcuconf.h
Normal file
8
keyboards/gkeyboard/greatpad/mcuconf.h
Normal file
@ -0,0 +1,8 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef RP_I2C_USE_I2C0
|
||||
#define RP_I2C_USE_I2C0 TRUE
|
25
keyboards/gkeyboard/greatpad/readme.md
Normal file
25
keyboards/gkeyboard/greatpad/readme.md
Normal file
@ -0,0 +1,25 @@
|
||||
# GreatPad
|
||||
|
||||
20 Keys Custom Macro Pad, 2 Encoders, OLED 128x64, with USB Type-C, RGB underglow, RGB Per Key Lighting.
|
||||
|
||||
* Keyboard Maintainer: [gkeyboard](https://github.com/gkeyboard)
|
||||
* Hardware Supported: GreatPad PCB
|
||||
* Hardware Availability: http://www.mltelectronic.com
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make gkeyboard/greatpad:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make gkeyboard/greatpad: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 boot button**: Hold down the boot button on RP2040 and plug in the keyboard
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
1
keyboards/gkeyboard/greatpad/rules.mk
Normal file
1
keyboards/gkeyboard/greatpad/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
52
keyboards/handwired/scottokeebs/scottodeck/info.json
Normal file
52
keyboards/handwired/scottokeebs/scottodeck/info.json
Normal file
@ -0,0 +1,52 @@
|
||||
{
|
||||
"manufacturer": "ScottoKeebs",
|
||||
"keyboard_name": "ScottoDeck",
|
||||
"maintainer": "joe-scotto",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "GP2", "pin_b": "GP3"},
|
||||
{"pin_a": "GP27", "pin_b": "GP28"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"encoder": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP9", null, null, "GP21"],
|
||||
["GP7", "GP8", "GP20", "GP23"],
|
||||
["GP5", "GP6", "GP26", "GP22"]
|
||||
]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"url": "https://scottokeebs.com",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0024",
|
||||
"vid": "0xFEED"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3, "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": [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}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
/*
|
||||
Copyright 2024 Joe Scotto
|
||||
|
||||
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
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = { ENCODER_CCW_CW(HYPR(KC_RIGHT), HYPR(KC_LEFT)), ENCODER_CCW_CW(HYPR(KC_UP), HYPR(KC_DOWN)) }
|
||||
// Encoder 1 Encoder 2
|
||||
};
|
||||
#endif
|
||||
|
||||
// Keymap
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
HYPR(KC_9), HYPR(KC_0),
|
||||
HYPR(KC_5), HYPR(KC_6), HYPR(KC_7), HYPR(KC_8),
|
||||
HYPR(KC_1), HYPR(KC_2), HYPR(KC_3), HYPR(KC_4)
|
||||
)
|
||||
};
|
27
keyboards/handwired/scottokeebs/scottodeck/readme.md
Normal file
27
keyboards/handwired/scottokeebs/scottodeck/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# ScottoDeck
|
||||
|
||||
![ScottoDeck](https://i.imgur.com/xUl70qqh.jpeg)
|
||||
|
||||
An 8-key macropad with two EC11 encoders designed for live streaming. Case files available [here](https://github.com/joe-scotto/scottokeebs).
|
||||
|
||||
* Keyboard Maintainer: [Joe Scotto](https://github.com/joe-scotto)
|
||||
* Hardware Supported: ATmega32U4
|
||||
* Hardware Availability: [Amazon](https://amazon.com)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/scottokeebs/scottodeck:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/scottokeebs/scottodeck: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
keyboards/handwired/scottokeebs/scottodeck/rules.mk
Normal file
1
keyboards/handwired/scottokeebs/scottodeck/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
40
keyboards/handwired/wwa/mercury/info.json
Normal file
40
keyboards/handwired/wwa/mercury/info.json
Normal file
@ -0,0 +1,40 @@
|
||||
{
|
||||
"manufacturer": "spacehangover",
|
||||
"keyboard_name": "Mercury",
|
||||
"maintainer": "spacehangover",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP0", "GP1", "GP2", "GP3"],
|
||||
"rows": ["GP4", "GP5"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0003",
|
||||
"vid": "0x5757"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"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": [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}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
11
keyboards/handwired/wwa/mercury/keymaps/default/keymap.c
Normal file
11
keyboards/handwired/wwa/mercury/keymaps/default/keymap.c
Normal file
@ -0,0 +1,11 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_F13, KC_F14, KC_F15, KC_F16,
|
||||
KC_F17, KC_F18, KC_F19, KC_F20
|
||||
)
|
||||
};
|
11
keyboards/handwired/wwa/mercury/keymaps/via/keymap.c
Normal file
11
keyboards/handwired/wwa/mercury/keymaps/via/keymap.c
Normal file
@ -0,0 +1,11 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_F13, KC_F14, KC_F15, KC_F16,
|
||||
KC_F17, KC_F18, KC_F19, KC_F20
|
||||
)
|
||||
};
|
1
keyboards/handwired/wwa/mercury/keymaps/via/rules.mk
Normal file
1
keyboards/handwired/wwa/mercury/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
27
keyboards/handwired/wwa/mercury/readme.md
Normal file
27
keyboards/handwired/wwa/mercury/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# mercury
|
||||
|
||||
![mercury](https://i.imgur.com/flE9SPwh.jpeg)
|
||||
|
||||
8 Key VIA Compatible Macropad
|
||||
|
||||
* Keyboard Maintainer: [spacehangover](https://github.com/spacehangover)
|
||||
* Hardware Supported: RP2040 Handwired
|
||||
* Hardware Availability: RP2040
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/wwa/mercury:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/wwa/mercury: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
keyboards/handwired/wwa/mercury/rules.mk
Normal file
1
keyboards/handwired/wwa/mercury/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
55
keyboards/handwired/wwa/soyuz/info.json
Normal file
55
keyboards/handwired/wwa/soyuz/info.json
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
"manufacturer": "spacehangover",
|
||||
"keyboard_name": "Soyuz",
|
||||
"maintainer": "spacehangover",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP0", "GP1", "GP2", "GP3", "GP4", "GP5", "GP6"],
|
||||
"rows": ["GP7", "GP8", "GP9"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0004",
|
||||
"vid": "0x5757"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"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": [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": [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}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
13
keyboards/handwired/wwa/soyuz/keymaps/default/keymap.c
Normal file
13
keyboards/handwired/wwa/soyuz/keymaps/default/keymap.c
Normal file
@ -0,0 +1,13 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
||||
KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17,
|
||||
KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24
|
||||
)
|
||||
};
|
12
keyboards/handwired/wwa/soyuz/keymaps/via/keymap.c
Normal file
12
keyboards/handwired/wwa/soyuz/keymaps/via/keymap.c
Normal file
@ -0,0 +1,12 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
||||
KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17,
|
||||
KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24
|
||||
)
|
||||
};
|
1
keyboards/handwired/wwa/soyuz/keymaps/via/rules.mk
Normal file
1
keyboards/handwired/wwa/soyuz/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
27
keyboards/handwired/wwa/soyuz/readme.md
Normal file
27
keyboards/handwired/wwa/soyuz/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# soyuz
|
||||
|
||||
![soyuz](https://i.imgur.com/KwwORGSh.jpeg)
|
||||
|
||||
21 Key and 3 MIDI Potentiometers Macro Keyboard
|
||||
|
||||
* Keyboard Maintainer: [spacehangover](https://github.com/spacehangover)
|
||||
* Hardware Supported: RP2040 Handwired
|
||||
* Hardware Availability: RP2040 Pico
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/wwa/soyuz:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/wwa/soyuz: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
|
0
keyboards/handwired/wwa/soyuz/rules.mk
Normal file
0
keyboards/handwired/wwa/soyuz/rules.mk
Normal file
55
keyboards/handwired/wwa/soyuzxl/info.json
Normal file
55
keyboards/handwired/wwa/soyuzxl/info.json
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
"manufacturer": "spacehangover",
|
||||
"keyboard_name": "SoyuzXL",
|
||||
"maintainer": "spacehangover",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["D1", "D0", "D4", "C6", "D7", "E6", "B4"],
|
||||
"rows": ["B5", "B2", "B3"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0005",
|
||||
"vid": "0x5757"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"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": [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": [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}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
13
keyboards/handwired/wwa/soyuzxl/keymaps/default/keymap.c
Normal file
13
keyboards/handwired/wwa/soyuzxl/keymaps/default/keymap.c
Normal file
@ -0,0 +1,13 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
||||
KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17,
|
||||
KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24
|
||||
)
|
||||
};
|
13
keyboards/handwired/wwa/soyuzxl/keymaps/via/keymap.c
Normal file
13
keyboards/handwired/wwa/soyuzxl/keymaps/via/keymap.c
Normal file
@ -0,0 +1,13 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT(
|
||||
KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10,
|
||||
KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17,
|
||||
KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24
|
||||
)
|
||||
};
|
1
keyboards/handwired/wwa/soyuzxl/keymaps/via/rules.mk
Normal file
1
keyboards/handwired/wwa/soyuzxl/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
27
keyboards/handwired/wwa/soyuzxl/readme.md
Normal file
27
keyboards/handwired/wwa/soyuzxl/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# soyuzxl
|
||||
|
||||
![soyuzxl](https://i.imgur.com/njUq2s3h.jpeg)
|
||||
|
||||
21 Keys, 4 Potentiometers and 1 Fader MIDI Macro Keyboard
|
||||
|
||||
* Keyboard Maintainer: [spacehangover](https://github.com/spacehangover)
|
||||
* Hardware Supported: Arduino Pro Micro, B103K Slide Pot, 10k Pots Handwired
|
||||
* Hardware Availability: Arduino Pro Micro
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/wwa/soyuzxl:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make handwired/wwa/soyuzxl: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
|
0
keyboards/handwired/wwa/soyuzxl/rules.mk
Normal file
0
keyboards/handwired/wwa/soyuzxl/rules.mk
Normal file
24
keyboards/hineybush/h101/matrix_diagram.md
Normal file
24
keyboards/hineybush/h101/matrix_diagram.md
Normal file
@ -0,0 +1,24 @@
|
||||
# Matrix Diagram for Hineybush H101
|
||||
|
||||
```
|
||||
┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
|
||||
│00 ││01 │02 │03 │04 ││05 │06 │07 │08 ││09 │0B │0C │0D ││0E │ │0F │0G │0H │ │0I │0J │0K │0L │
|
||||
└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘ └───┴───┴───┘ └───┴───┴───┴───┘
|
||||
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───────┐
|
||||
│10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │ │1F │1G │1H │ │1I │1J │1K │1L │ │1E │ 2u Backspace
|
||||
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┤ ├───┼───┼───┼───┤ └───────┘ ┌───┐
|
||||
│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │ │2F │2G │2H │ │2I │2J │2K │2L │ │ │
|
||||
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┼───┤ │2L │ Numpad "+"
|
||||
│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │ │3I │3J │3K │3L │ │ │
|
||||
├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ ├───┼───┼───┼───┤ ├───┤
|
||||
│40 │42 │43 │44 │45 │46 │47 │48 │49 │3A │3B │4C │4D │ │4G │ │4I │4J │4K │4L │ │ │
|
||||
├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ ┌───┼───┼───┐ ├───┼───┼───┼───┤ ┌───────┐ │4L │ Numpad Enter
|
||||
│50 │51 │52 │57 │5A │5B │5C │5D │ │5F │5G │5H │ │5I │5J │5K │5L │ Numpad 0 │5J │ │ │
|
||||
└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───┴───┴───┴───┘ └───────┘ └───┘
|
||||
┌──────────┐
|
||||
2.75u RShift │4C │
|
||||
└──────────┘
|
||||
┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
|
||||
│50 │51 │52 │57 │5B │5C │5D │ Tsangan/WKL
|
||||
└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
|
||||
```
|
9
keyboards/keycapsss/kimiko/info.json
Normal file
9
keyboards/keycapsss/kimiko/info.json
Normal file
@ -0,0 +1,9 @@
|
||||
{
|
||||
"features": {
|
||||
"mousekey": true,
|
||||
"extrakey": true
|
||||
},
|
||||
"split": {
|
||||
"enabled": true
|
||||
}
|
||||
}
|
@ -1,74 +0,0 @@
|
||||
/* Copyright 2019 MechMerlin
|
||||
* Copyright 2020 @ben_roe (keycapsss.com)
|
||||
* Copyright 2022 @oriaj3
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Select hand configuration */
|
||||
#define MASTER_LEFT
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
||||
|
||||
#define OLED_FONT_H "keyboards/keycapsss/kimiko/keymaps/rgb_matrix/glcdfont.c"
|
||||
// #define OLED_FONT_WIDTH 5
|
||||
// #define OLED_FONT_HEIGHT 7
|
||||
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
|
||||
// The pin connected to the data pin of the LEDs
|
||||
#define WS2812_DI_PIN D3
|
||||
// The number of LEDs connected
|
||||
#define RGB_MATRIX_LED_COUNT 60
|
||||
#define RGBLED_NUM 60
|
||||
#define RGB_MATRIX_SPLIT {30,30}
|
||||
#define SPLIT_LAYER_STATE_ENABLE
|
||||
#define SPLIT_TRANSPORT_MIRROR
|
||||
|
||||
|
||||
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
||||
// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses)
|
||||
# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
||||
# define RGB_MATRIX_FRAMEBUFFER_EFFECTS
|
||||
// # define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)
|
||||
// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)
|
||||
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 80 // limits maximum brightness of LEDs to 80 out of 255. Higher may cause the controller to crash.
|
||||
# define RGB_MATRIX_HUE_STEP 8
|
||||
# define RGB_MATRIX_SAT_STEP 8
|
||||
# define RGB_MATRIX_VAL_STEP 8
|
||||
# define RGB_MATRIX_SPD_STEP 10
|
||||
|
||||
|
||||
|
||||
// ENABLES EFFECTS. See alls the effects -> https://github.com/samhocevar-forks/qmk-firmware/blob/master/docs/feature_rgb_matrix.md#rgb-matrix-effects
|
||||
# define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 50
|
||||
# define ENABLE_RGB_MATRIX_BAND_SPLIT
|
||||
# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||
# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||
# define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||
//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||
//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||
//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||
//# define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||
//# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
||||
# define ENABLE_RGB_MATRIX_SPLASH
|
||||
#endif
|
||||
|
||||
// If you are using an Elite C rev3 on the slave side, uncomment the lines below:
|
||||
// #define SPLIT_USB_DETECT
|
||||
// #define NO_USB_STARTUP_CHECK
|
@ -1,413 +0,0 @@
|
||||
/* Copyright 2019 Leo Batyuk
|
||||
* Copyright 2020 Drashna Jaelre <@drashna>
|
||||
* Copyright 2020 @ben_roe (keycapsss.com)
|
||||
* Copyright 2022 @oriaj3
|
||||
*
|
||||
* 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 layers {
|
||||
_QWERTY,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_ADJUST,
|
||||
};
|
||||
|
||||
#define RAISE MO(_RAISE)
|
||||
#define LOWER MO(_LOWER)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/* QWERTY
|
||||
* ,--------------------------------------------. ,----------------------------------------------.
|
||||
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | - |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | LShift | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' |
|
||||
* |---------+------+------+------+------+------| [ | | ] |------+------+------+------+------+-----------|
|
||||
* | LCTRL | Z | X | C | V | B |-------| |-------| N | M | , | . | / |RShift/Enter|
|
||||
* `-------------------------------------------| / \ \-----------------------------------------------'
|
||||
* | LCTRL| LGUI | LALT |LOWER| Space / \Enter \ |RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '------------------------------------'
|
||||
*/
|
||||
|
||||
[_QWERTY] = LAYOUT(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 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_MINS,
|
||||
KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, KC_RBRC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, LOWER, KC_SPC, KC_ENT, RAISE, KC_BSPC, KC_RGUI, KC_RALT
|
||||
),
|
||||
/* LOWER
|
||||
* ,-------------------------------------------. ,-----------------------------------------.
|
||||
* | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
|
||||
* |--------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | F12 |
|
||||
* |--------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | ` | ! | @ | # | $ | % |-------. ,-------| ^ | & | * | ( | ) | ~ |
|
||||
* |--------+------+------+------+------+------| | | |------+------+------+------+------+------|
|
||||
* | | | | | | |-------| |-------| | _ | + | { | } | \ |
|
||||
* `-------------------------------------------| / \ \-----------------------------------------------'
|
||||
* | LCTRL| LGUI | LALT |LOWER| Space / \Enter \ |RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '------------------------------------'
|
||||
*/
|
||||
|
||||
[_LOWER] = LAYOUT(
|
||||
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F12,
|
||||
KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TILD,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
/* RAISE
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* | | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | F1 | F2 | F3 | F4 | F5 | F6 |-------. ,-------| | Left | Down | Up |Right | |
|
||||
* |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------|
|
||||
* | F7 | F8 | F9 | F10 | F11 | F12 |-------| |-------| + | - | = | [ | ] | \ |
|
||||
* `-----------------------------------------/ / \ \-----------------------------------------'
|
||||
* | LCTRL| LGUI | LALT |LOWER| Space / \Enter \ |RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '------------------------------------'
|
||||
*/
|
||||
|
||||
[_RAISE] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX,
|
||||
KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, KC_PLUS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
/* ADJUST (Press LOWER and RAISE together)
|
||||
* ,-----------------------------------------. ,-----------------------------------------.
|
||||
* |QK_BOOT | | | | | | | | | | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* |RGB ON| HUE+ | SAT+ | VAL+ | | | | PREV | PLAY | NEXT | | | |
|
||||
* |------+------+------+------+------+------| |------+------+------+------+------+------|
|
||||
* | MODE | HUE- | SAT- | VAL- | | |-------. ,-------| VOL+ | MUTE | VOL- | | | |
|
||||
* |------+------+------+------+------+------| | | |------+------+------+------+------+------|
|
||||
* | | | | | | |-------| |-------| | | | | | |
|
||||
* `-----------------------------------------/ / \ \-----------------------------------------'
|
||||
* |LCTRL| LGUI | LALT |LOWER| Space / \Enter \ |RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '------------------------------------'
|
||||
*/
|
||||
|
||||
[_ADJUST] = LAYOUT(
|
||||
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, KC_VOLU, KC_MUTE, KC_VOLD, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
|
||||
layer_state_t layer_state_set_user(layer_state_t state) {
|
||||
state = update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST);
|
||||
return state;
|
||||
}
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||
if (is_keyboard_master()) {
|
||||
return OLED_ROTATION_270;
|
||||
} else {
|
||||
return OLED_ROTATION_270;
|
||||
}
|
||||
}
|
||||
|
||||
void render_space(void) {
|
||||
oled_write_P(PSTR(" "), false);
|
||||
}
|
||||
|
||||
void render_mod_status_gui_alt(uint8_t modifiers) {
|
||||
static const char PROGMEM gui_off_1[] = {0x85, 0x86, 0};
|
||||
static const char PROGMEM gui_off_2[] = {0xa5, 0xa6, 0};
|
||||
static const char PROGMEM gui_on_1[] = {0x8d, 0x8e, 0};
|
||||
static const char PROGMEM gui_on_2[] = {0xad, 0xae, 0};
|
||||
|
||||
static const char PROGMEM alt_off_1[] = {0x87, 0x88, 0};
|
||||
static const char PROGMEM alt_off_2[] = {0xa7, 0xa8, 0};
|
||||
static const char PROGMEM alt_on_1[] = {0x8f, 0x90, 0};
|
||||
static const char PROGMEM alt_on_2[] = {0xaf, 0xb0, 0};
|
||||
|
||||
// fillers between the modifier icons bleed into the icon frames
|
||||
static const char PROGMEM off_off_1[] = {0xc5, 0};
|
||||
static const char PROGMEM off_off_2[] = {0xc6, 0};
|
||||
static const char PROGMEM on_off_1[] = {0xc7, 0};
|
||||
static const char PROGMEM on_off_2[] = {0xc8, 0};
|
||||
static const char PROGMEM off_on_1[] = {0xc9, 0};
|
||||
static const char PROGMEM off_on_2[] = {0xca, 0};
|
||||
static const char PROGMEM on_on_1[] = {0xcb, 0};
|
||||
static const char PROGMEM on_on_2[] = {0xcc, 0};
|
||||
|
||||
if(modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(gui_on_1, false);
|
||||
} else {
|
||||
oled_write_P(gui_off_1, false);
|
||||
}
|
||||
|
||||
if ((modifiers & MOD_MASK_GUI) && (modifiers & MOD_MASK_ALT)) {
|
||||
oled_write_P(on_on_1, false);
|
||||
} else if(modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(on_off_1, false);
|
||||
} else if(modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(off_on_1, false);
|
||||
} else {
|
||||
oled_write_P(off_off_1, false);
|
||||
}
|
||||
|
||||
if(modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(alt_on_1, false);
|
||||
} else {
|
||||
oled_write_P(alt_off_1, false);
|
||||
}
|
||||
|
||||
if(modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(gui_on_2, false);
|
||||
} else {
|
||||
oled_write_P(gui_off_2, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_GUI & MOD_MASK_ALT) {
|
||||
oled_write_P(on_on_2, false);
|
||||
} else if(modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(on_off_2, false);
|
||||
} else if(modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(off_on_2, false);
|
||||
} else {
|
||||
oled_write_P(off_off_2, false);
|
||||
}
|
||||
|
||||
if(modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(alt_on_2, false);
|
||||
} else {
|
||||
oled_write_P(alt_off_2, false);
|
||||
}
|
||||
}
|
||||
|
||||
void render_mod_status_ctrl_shift(uint8_t modifiers) {
|
||||
static const char PROGMEM ctrl_off_1[] = {0x89, 0x8a, 0};
|
||||
static const char PROGMEM ctrl_off_2[] = {0xa9, 0xaa, 0};
|
||||
static const char PROGMEM ctrl_on_1[] = {0x91, 0x92, 0};
|
||||
static const char PROGMEM ctrl_on_2[] = {0xb1, 0xb2, 0};
|
||||
|
||||
static const char PROGMEM shift_off_1[] = {0x8b, 0x8c, 0};
|
||||
static const char PROGMEM shift_off_2[] = {0xab, 0xac, 0};
|
||||
static const char PROGMEM shift_on_1[] = {0xcd, 0xce, 0};
|
||||
static const char PROGMEM shift_on_2[] = {0xcf, 0xd0, 0};
|
||||
|
||||
// fillers between the modifier icons bleed into the icon frames
|
||||
static const char PROGMEM off_off_1[] = {0xc5, 0};
|
||||
static const char PROGMEM off_off_2[] = {0xc6, 0};
|
||||
static const char PROGMEM on_off_1[] = {0xc7, 0};
|
||||
static const char PROGMEM on_off_2[] = {0xc8, 0};
|
||||
static const char PROGMEM off_on_1[] = {0xc9, 0};
|
||||
static const char PROGMEM off_on_2[] = {0xca, 0};
|
||||
static const char PROGMEM on_on_1[] = {0xcb, 0};
|
||||
static const char PROGMEM on_on_2[] = {0xcc, 0};
|
||||
|
||||
if(modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(ctrl_on_1, false);
|
||||
} else {
|
||||
oled_write_P(ctrl_off_1, false);
|
||||
}
|
||||
|
||||
if ((modifiers & MOD_MASK_CTRL) && (modifiers & MOD_MASK_SHIFT)) {
|
||||
oled_write_P(on_on_1, false);
|
||||
} else if(modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(on_off_1, false);
|
||||
} else if(modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(off_on_1, false);
|
||||
} else {
|
||||
oled_write_P(off_off_1, false);
|
||||
}
|
||||
|
||||
if(modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(shift_on_1, false);
|
||||
} else {
|
||||
oled_write_P(shift_off_1, false);
|
||||
}
|
||||
|
||||
if(modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(ctrl_on_2, false);
|
||||
} else {
|
||||
oled_write_P(ctrl_off_2, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_CTRL & MOD_MASK_SHIFT) {
|
||||
oled_write_P(on_on_2, false);
|
||||
} else if(modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(on_off_2, false);
|
||||
} else if(modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(off_on_2, false);
|
||||
} else {
|
||||
oled_write_P(off_off_2, false);
|
||||
}
|
||||
|
||||
if(modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(shift_on_2, false);
|
||||
} else {
|
||||
oled_write_P(shift_off_2, false);
|
||||
}
|
||||
}
|
||||
|
||||
void render_logo(void) {
|
||||
static const char PROGMEM corne_logo[] = {
|
||||
0xA0, 0xA1, 0xA2, 0xA3, 0xA4,
|
||||
0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0};
|
||||
oled_write_P(corne_logo, false);
|
||||
// oled_write_P(PSTR("Kimiko"), false);
|
||||
}
|
||||
|
||||
void render_layer_state(void) {
|
||||
static const char PROGMEM default_layer[] = {
|
||||
0x20, 0x94, 0x95, 0x96, 0x20,
|
||||
0x20, 0xb4, 0xb5, 0xb6, 0x20,
|
||||
0x20, 0xd4, 0xd5, 0xd6, 0x20, 0};
|
||||
static const char PROGMEM raise_layer[] = {
|
||||
0x20, 0x97, 0x98, 0x99, 0x20,
|
||||
0x20, 0xb7, 0xb8, 0xb9, 0x20,
|
||||
0x20, 0xd7, 0xd8, 0xd9, 0x20, 0};
|
||||
static const char PROGMEM lower_layer[] = {
|
||||
0x20, 0x9a, 0x9b, 0x9c, 0x20,
|
||||
0x20, 0xba, 0xbb, 0xbc, 0x20,
|
||||
0x20, 0xda, 0xdb, 0xdc, 0x20, 0};
|
||||
static const char PROGMEM adjust_layer[] = {
|
||||
0x20, 0x9d, 0x9e, 0x9f, 0x20,
|
||||
0x20, 0xbd, 0xbe, 0xbf, 0x20,
|
||||
0x20, 0xdd, 0xde, 0xdf, 0x20, 0};
|
||||
if(layer_state_is(_ADJUST)) {
|
||||
oled_write_P(adjust_layer, false);
|
||||
} else if(layer_state_is(_LOWER)) {
|
||||
oled_write_P(lower_layer, false);
|
||||
} else if(layer_state_is(_RAISE)) {
|
||||
oled_write_P(raise_layer, false);
|
||||
} else {
|
||||
oled_write_P(default_layer, false);
|
||||
}
|
||||
}
|
||||
|
||||
void render_status_main(void) {
|
||||
render_space();
|
||||
render_space();
|
||||
render_logo();
|
||||
render_space();
|
||||
render_layer_state();
|
||||
render_space();
|
||||
render_mod_status_gui_alt(get_mods()|get_oneshot_mods());
|
||||
render_mod_status_ctrl_shift(get_mods()|get_oneshot_mods());
|
||||
}
|
||||
|
||||
void render_status_secondary(void) {
|
||||
render_space();
|
||||
render_space();
|
||||
render_logo();
|
||||
render_space();
|
||||
}
|
||||
|
||||
bool oled_task_user(void) {
|
||||
if (is_keyboard_master()) {
|
||||
render_status_main(); // Renders the current keyboard state (layer, lock, caps, scroll, etc)
|
||||
} else {
|
||||
render_status_secondary();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef ENCODER_ENABLE
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
// Encoder on master side
|
||||
if (index == 0) {
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
// If the Default (QWERTY) layer is active
|
||||
case _QWERTY:
|
||||
// Arrow Up/Down
|
||||
if (clockwise) {
|
||||
tap_code(KC_DOWN);
|
||||
} else {
|
||||
tap_code(KC_UP);
|
||||
}
|
||||
break;
|
||||
|
||||
// If the RAISE layer is active
|
||||
case _RAISE:
|
||||
// Switch browser tabs
|
||||
if (clockwise) {
|
||||
tap_code16(LCTL(KC_TAB));
|
||||
} else {
|
||||
tap_code16(RCS(KC_TAB));
|
||||
}
|
||||
break;
|
||||
// If the ADJUST layer is active
|
||||
case _ADJUST:
|
||||
// RGB brightness up/down
|
||||
if (clockwise) {
|
||||
rgblight_decrease_val(); // tap_code(RGB_VAD);
|
||||
} else {
|
||||
rgblight_increase_val(); // tap_code(RGB_VAI);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Encoder on slave side
|
||||
else if (index == 1) {
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
// If the Default (QWERTY) layer is active
|
||||
case _QWERTY:
|
||||
// Scroll by Word
|
||||
if (clockwise) {
|
||||
tap_code16(LCTL(KC_RGHT));
|
||||
} else {
|
||||
tap_code16(LCTL(KC_LEFT));
|
||||
}
|
||||
break;
|
||||
|
||||
// If the LOWER layer is active
|
||||
case _LOWER:
|
||||
// Volume up/down
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
break;
|
||||
|
||||
// If the ADJUST layer is active
|
||||
case _ADJUST:
|
||||
// RGB hue up/down
|
||||
if (clockwise) {
|
||||
// tap_code(RGB_HUI);
|
||||
rgblight_increase_hue();
|
||||
} else {
|
||||
// tap_code(RGB_HUD);
|
||||
rgblight_decrease_hue();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif // ENCODER_ENABLE
|
||||
|
||||
|
||||
|
@ -1,19 +0,0 @@
|
||||
OLED_ENABLE = yes
|
||||
ENCODER_ENABLE = yes # ENables the use of one or more encoders
|
||||
RGBLIGHT_ENABLE = no # Disable keyboard RGB underglow
|
||||
|
||||
# LTO: Link Time Optimizations.
|
||||
# Reduce compiled size, but will automatically disable the legacy TMK Macros and Functions features.
|
||||
# This does not affect QMK Macros and Layers
|
||||
LTO_ENABLE = yes
|
||||
|
||||
#ENABLE RGB MATRIX WITH DRIVER WS2812
|
||||
RGB_MATRIX_ENABLE = yes
|
||||
RGB_MATRIX_DRIVER = ws2812
|
||||
|
||||
#DEFINE SPLIT KEYBOARD AND SPLIT TRANSPORT MIRROR
|
||||
SPLIT_KEYBOARD = yes
|
||||
|
||||
#DEACTIVATED FOR MEMORY SAVING
|
||||
MOUSEKEY_ENABLE = no
|
||||
CONSOLE_ENABLE = no
|
@ -1,4 +1,4 @@
|
||||
/* Copyright 2020 @ben_roe (keycapsss.com)
|
||||
/* Copyright 2023 @BenRoe (keycapsss.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
|
||||
@ -13,8 +13,10 @@
|
||||
* 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 "quantum.h"
|
||||
|
||||
#ifdef KEYBOARD_keycapsss_kimiko_rev1
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
|
||||
//Thanks to Ben (keycapsss) for helpipng me to create g_led_config
|
||||
@ -75,4 +77,7 @@ led_config_t g_led_config = { {
|
||||
4, 4, 1, 1, 1, 1
|
||||
} };
|
||||
|
||||
#endif // RGB_MATRIX_ENABLE
|
||||
#endif // RGB_MATRIX_ENABLE
|
||||
#endif // KEYBOARD_keycapsss_kimiko_rev1
|
||||
|
||||
|
||||
|
25
keyboards/keycapsss/kimiko/post_config.h
Normal file
25
keyboards/keycapsss/kimiko/post_config.h
Normal file
@ -0,0 +1,25 @@
|
||||
/* Copyright 2019 MechMerlin
|
||||
* Copyright 2023 @Ex3c4Def
|
||||
* Copyright 2023 @BenRoe (keycapsss.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
|
||||
|
||||
// OLED definitions
|
||||
#ifndef OLED_FONT_H
|
||||
# define OLED_FONT_H "keyboards/keycapsss/kimiko/glcdfont.c"
|
||||
#endif
|
||||
|
@ -1,23 +1,59 @@
|
||||
# Kimiko
|
||||
|
||||
<img src="https://keycapsss.com/media/image/7f/88/2b/kimiko-split-keyboard-1.jpg" width="800" />
|
||||
## Rev2
|
||||
|
||||
A split keyboard with 4x6 vertically staggered keys and a Kyria style thumb thumb cluster.
|
||||
|
||||
![Kimiko Rev2](https://i.imgur.com/TBP8Bcrh.jpg)
|
||||
|
||||
- Keyboard Maintainer: [BenRoe](https://github.com/BenRoe/) [@keycapsss](https://twitter.com/keycapsss)
|
||||
- Hardware Supported: Pro Micro 5V/16Mhz and compatible
|
||||
- Hardware Availability: [Keycapsss.com](https://keycapsss.com)
|
||||
|
||||
### Features (Rev2)
|
||||
|
||||
- 62 Per key RGB led's (SK6812 Mini-E)
|
||||
- RGB Matrix is enabled as default in rules.mk
|
||||
- The effects can be configured in config.h
|
||||
- Support for 1 rotary encoder per side (two possible positions)
|
||||
- Support for 1 OLED display per side
|
||||
- 128x32 (SSD1306) or Nice!View are supported
|
||||
- With 1 OLED on each side, they have to be the same
|
||||
- Default configuration for 128x32 OLED
|
||||
|
||||
|
||||
Make firmware .hex for this keyboard (after setting up your build environment):
|
||||
|
||||
```bash
|
||||
qmk compile -kb keycapsss/kimiko/rev2 -km default
|
||||
```
|
||||
|
||||
Use [QMK Toolbox](https://github.com/qmk/qmk_toolbox) to flash the firmware hex file to the keyboard controller.
|
||||
|
||||
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).
|
||||
|
||||
## Rev1
|
||||
|
||||
A split keyboard with 4x6 vertically staggered keys and thumb keys.
|
||||
|
||||
![Kimiko Rev1](https://i.imgur.com/md6V6Eoh.jpg)
|
||||
|
||||
- Keyboard Maintainer: [BenRoe](https://github.com/BenRoe/) [@keycapsss](https://twitter.com/keycapsss)
|
||||
- Hardware Supported: Pro Micro 5V/16Mhz and compatible
|
||||
- Hardware Availability: [Keycapsss.com](https://keycapsss.com)
|
||||
|
||||
### Features (Rev1)
|
||||
|
||||
- Per key RGB led's (SK6812 Mini-E)
|
||||
- 6 underglow RGB led's per side (SK6812 Mini)
|
||||
- Support for 1 rotary encoder per side (two possible positions)
|
||||
|
||||
* Keyboard Maintainer: [BenRoe](https://github.com/BenRoe/) [@keycapsss](https://twitter.com/keycapsss)
|
||||
* Hardware Supported: Pro Micro 5V/16Mhz and compatible
|
||||
* Hardware Availability: [keycapsss.com](https://keycapsss.com)
|
||||
|
||||
Make firmware .hex for this keyboard (after setting up your build environment):
|
||||
|
||||
make keycapsss/kimiko:default
|
||||
```bash
|
||||
qmk compile -kb keycapsss/kimiko/rev1 -km default
|
||||
```
|
||||
|
||||
Example of flashing this keyboard (or use [QMK Toolbox](https://github.com/qmk/qmk_toolbox)):
|
||||
|
||||
make keycapsss/kimiko:default:flash
|
||||
Use [QMK Toolbox](https://github.com/qmk/qmk_toolbox) to flash the firmware hex file to the keyboard controller.
|
||||
|
||||
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).
|
||||
|
199
keyboards/keycapsss/kimiko/rev2/info.json
Normal file
199
keyboards/keycapsss/kimiko/rev2/info.json
Normal file
@ -0,0 +1,199 @@
|
||||
{
|
||||
"manufacturer": "Keycapsss",
|
||||
"keyboard_name": "Kimiko Rev2",
|
||||
"maintainer": "BenRoe",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"development_board": "promicro",
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "F5", "pin_b": "F4"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"encoder": true,
|
||||
"nkro": true,
|
||||
"oled": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
|
||||
"rows": ["D4", "C6", "D7", "E6", "B4", "B5"]
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{ "matrix": [0, 5], "x": 66, "y": 5, "flags": 4 },
|
||||
{ "matrix": [0, 4], "x": 53, "y": 4, "flags": 4 },
|
||||
{ "matrix": [0, 3], "x": 40, "y": 0, "flags": 4 },
|
||||
{ "matrix": [0, 2], "x": 26, "y": 4, "flags": 4 },
|
||||
{ "matrix": [0, 1], "x": 13, "y": 11, "flags": 4 },
|
||||
{ "matrix": [0, 0], "x": 0, "y": 11, "flags": 4 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 23, "flags": 4 },
|
||||
{ "matrix": [1, 1], "x": 13, "y": 23, "flags": 4 },
|
||||
{ "matrix": [1, 2], "x": 26, "y": 15, "flags": 4 },
|
||||
{ "matrix": [1, 3], "x": 40, "y": 12, "flags": 4 },
|
||||
{ "matrix": [1, 4], "x": 53, "y": 15, "flags": 4 },
|
||||
{ "matrix": [1, 5], "x": 66, "y": 17, "flags": 4 },
|
||||
{ "matrix": [2, 5], "x": 66, "y": 29, "flags": 4 },
|
||||
{ "matrix": [2, 4], "x": 53, "y": 27, "flags": 4 },
|
||||
{ "matrix": [2, 3], "x": 40, "y": 24, "flags": 4 },
|
||||
{ "matrix": [2, 2], "x": 26, "y": 27, "flags": 4 },
|
||||
{ "matrix": [2, 1], "x": 13, "y": 35, "flags": 4 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 35, "flags": 1 },
|
||||
{ "matrix": [3, 0], "x": 0, "y": 47, "flags": 1 },
|
||||
{ "matrix": [3, 1], "x": 13, "y": 47, "flags": 4 },
|
||||
{ "matrix": [3, 2], "x": 26, "y": 39, "flags": 4 },
|
||||
{ "matrix": [3, 3], "x": 40, "y": 36, "flags": 4 },
|
||||
{ "matrix": [3, 4], "x": 53, "y": 39, "flags": 4 },
|
||||
{ "matrix": [3, 5], "x": 66, "y": 41, "flags": 4 },
|
||||
{ "matrix": [5, 5], "x": 80, "y": 48, "flags": 4 },
|
||||
{ "matrix": [4, 5], "x": 94, "y": 52, "flags": 4 },
|
||||
{ "matrix": [4, 4], "x": 87, "y": 64, "flags": 4 },
|
||||
{ "matrix": [4, 3], "x": 73, "y": 60, "flags": 1 },
|
||||
{ "matrix": [4, 2], "x": 53, "y": 51, "flags": 1 },
|
||||
{ "matrix": [4, 1], "x": 40, "y": 47, "flags": 1 },
|
||||
{ "matrix": [4, 0], "x": 26, "y": 51, "flags": 1 },
|
||||
{ "matrix": [6, 5], "x": 158, "y": 5, "flags": 4 },
|
||||
{ "matrix": [6, 4], "x": 171, "y": 4, "flags": 4 },
|
||||
{ "matrix": [6, 3], "x": 184, "y": 0, "flags": 4 },
|
||||
{ "matrix": [6, 2], "x": 198, "y": 4, "flags": 4 },
|
||||
{ "matrix": [6, 1], "x": 211, "y": 11, "flags": 4 },
|
||||
{ "matrix": [6, 0], "x": 224, "y": 11, "flags": 4 },
|
||||
{ "matrix": [7, 0], "x": 224, "y": 23, "flags": 4 },
|
||||
{ "matrix": [7, 1], "x": 211, "y": 23, "flags": 4 },
|
||||
{ "matrix": [7, 2], "x": 198, "y": 15, "flags": 4 },
|
||||
{ "matrix": [7, 3], "x": 184, "y": 12, "flags": 4 },
|
||||
{ "matrix": [7, 4], "x": 171, "y": 15, "flags": 4 },
|
||||
{ "matrix": [7, 5], "x": 158, "y": 17, "flags": 4 },
|
||||
{ "matrix": [8, 5], "x": 158, "y": 29, "flags": 4 },
|
||||
{ "matrix": [8, 4], "x": 171, "y": 27, "flags": 4 },
|
||||
{ "matrix": [8, 3], "x": 184, "y": 24, "flags": 4 },
|
||||
{ "matrix": [8, 2], "x": 198, "y": 27, "flags": 4 },
|
||||
{ "matrix": [8, 1], "x": 211, "y": 35, "flags": 4 },
|
||||
{ "matrix": [8, 0], "x": 224, "y": 35, "flags": 4 },
|
||||
{ "matrix": [9, 0], "x": 224, "y": 47, "flags": 1 },
|
||||
{ "matrix": [9, 1], "x": 211, "y": 47, "flags": 4 },
|
||||
{ "matrix": [9, 2], "x": 198, "y": 39, "flags": 4 },
|
||||
{ "matrix": [9, 3], "x": 184, "y": 36, "flags": 4 },
|
||||
{ "matrix": [9, 4], "x": 171, "y": 39, "flags": 4 },
|
||||
{ "matrix": [9, 5], "x": 158, "y": 41, "flags": 4 },
|
||||
{ "matrix": [11, 5], "x": 144, "y": 48, "flags": 4 },
|
||||
{ "matrix": [10, 5], "x": 130, "y": 52, "flags": 4 },
|
||||
{ "matrix": [10, 4], "x": 137, "y": 64, "flags": 4 },
|
||||
{ "matrix": [10, 3], "x": 151, "y": 60, "flags": 1 },
|
||||
{ "matrix": [10, 2], "x": 171, "y": 51, "flags": 4 },
|
||||
{ "matrix": [10, 1], "x": 184, "y": 47, "flags": 1 },
|
||||
{ "matrix": [10, 0], "x": 198, "y": 51, "flags": 1 }
|
||||
],
|
||||
"led_count": 62,
|
||||
"max_brightness": 80,
|
||||
"split_count": [31, 31]
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 62,
|
||||
"max_brightness": 80,
|
||||
"split": true,
|
||||
"split_count": [31, 31]
|
||||
},
|
||||
"split": {
|
||||
"encoder": {
|
||||
"right": {
|
||||
"rotary": [
|
||||
{"pin_a": "F5", "pin_b": "F4"}
|
||||
]
|
||||
}
|
||||
},
|
||||
"matrix_pins": {
|
||||
"right": {
|
||||
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
|
||||
"rows": ["D4", "C6", "D7", "E6", "B4", "B5"]
|
||||
}
|
||||
},
|
||||
"soft_serial_pin": "D2"
|
||||
},
|
||||
"url": "https://keycapsss.com",
|
||||
"usb": {
|
||||
"device_version": "2.0.0",
|
||||
"pid": "0x4B69",
|
||||
"vid": "0x7983"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "D3"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "L00", "matrix": [0, 0], "x": 0, "y": 0.96},
|
||||
{"label": "L01", "matrix": [0, 1], "x": 1, "y": 0.96},
|
||||
{"label": "L02", "matrix": [0, 2], "x": 2, "y": 0.31},
|
||||
{"label": "L03", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "L04", "matrix": [0, 4], "x": 4, "y": 0.31},
|
||||
{"label": "L05", "matrix": [0, 5], "x": 5, "y": 0.46},
|
||||
{"label": "R00", "matrix": [6, 5], "x": 12, "y": 0.45},
|
||||
{"label": "R01", "matrix": [6, 4], "x": 13, "y": 0.31},
|
||||
{"label": "R02", "matrix": [6, 3], "x": 14, "y": 0},
|
||||
{"label": "R03", "matrix": [6, 2], "x": 15, "y": 0.31},
|
||||
{"label": "R04", "matrix": [6, 1], "x": 16, "y": 0.96},
|
||||
{"label": "R05", "matrix": [6, 0], "x": 17, "y": 0.96},
|
||||
{"label": "L10", "matrix": [1, 0], "x": 0, "y": 1.96},
|
||||
{"label": "L11", "matrix": [1, 1], "x": 1, "y": 1.96},
|
||||
{"label": "L12", "matrix": [1, 2], "x": 2, "y": 1.31},
|
||||
{"label": "L13", "matrix": [1, 3], "x": 3, "y": 1},
|
||||
{"label": "L14", "matrix": [1, 4], "x": 4, "y": 1.31},
|
||||
{"label": "L15", "matrix": [1, 5], "x": 5, "y": 1.46},
|
||||
{"label": "R10", "matrix": [7, 5], "x": 12, "y": 1.46},
|
||||
{"label": "R11", "matrix": [7, 4], "x": 13, "y": 1.31},
|
||||
{"label": "R12", "matrix": [7, 3], "x": 14, "y": 1},
|
||||
{"label": "R13", "matrix": [7, 2], "x": 15, "y": 1.31},
|
||||
{"label": "R14", "matrix": [7, 1], "x": 16, "y": 1.96},
|
||||
{"label": "R15", "matrix": [7, 0], "x": 17, "y": 1.96},
|
||||
{"label": "L20", "matrix": [2, 0], "x": 0, "y": 2.96},
|
||||
{"label": "L21", "matrix": [2, 1], "x": 1, "y": 2.96},
|
||||
{"label": "L22", "matrix": [2, 2], "x": 2, "y": 2.31},
|
||||
{"label": "L23", "matrix": [2, 3], "x": 3, "y": 2},
|
||||
{"label": "L24", "matrix": [2, 4], "x": 4, "y": 2.31},
|
||||
{"label": "L25", "matrix": [2, 5], "x": 5, "y": 2.46},
|
||||
{"label": "R20", "matrix": [8, 5], "x": 12, "y": 2.46},
|
||||
{"label": "R21", "matrix": [8, 4], "x": 13, "y": 2.31},
|
||||
{"label": "R22", "matrix": [8, 3], "x": 14, "y": 2},
|
||||
{"label": "R23", "matrix": [8, 2], "x": 15, "y": 2.31},
|
||||
{"label": "R24", "matrix": [8, 1], "x": 16, "y": 2.96},
|
||||
{"label": "R25", "matrix": [8, 0], "x": 17, "y": 2.96},
|
||||
{"label": "L30", "matrix": [3, 0], "x": 0, "y": 3.96},
|
||||
{"label": "L31", "matrix": [3, 1], "x": 1, "y": 4},
|
||||
{"label": "L32", "matrix": [3, 2], "x": 2, "y": 3.31},
|
||||
{"label": "L33", "matrix": [3, 3], "x": 3, "y": 3},
|
||||
{"label": "L34", "matrix": [3, 4], "x": 4, "y": 3.31},
|
||||
{"label": "L35", "matrix": [3, 5], "x": 5, "y": 3.46},
|
||||
{"label": "L50", "matrix": [5, 5], "x": 5.75, "y": 4.51},
|
||||
{"label": "L40", "matrix": [4, 5], "x": 6.75, "y": 5},
|
||||
{"label": "R40", "matrix": [10, 5], "x": 10.25, "y": 5},
|
||||
{"label": "R50", "matrix": [11, 5], "x": 11.25, "y": 4.5},
|
||||
{"label": "R30", "matrix": [9, 5], "x": 12, "y": 3.46},
|
||||
{"label": "R31", "matrix": [9, 4], "x": 13, "y": 3.31},
|
||||
{"label": "R32", "matrix": [9, 3], "x": 14, "y": 3},
|
||||
{"label": "R33", "matrix": [9, 2], "x": 15, "y": 3.31},
|
||||
{"label": "R34", "matrix": [9, 1], "x": 16, "y": 3.96},
|
||||
{"label": "R35", "matrix": [9, 0], "x": 17, "y": 3.96},
|
||||
{"label": "L41", "matrix": [4, 0], "x": 2.5, "y": 4.5},
|
||||
{"label": "L42", "matrix": [4, 1], "x": 3.5, "y": 4.5},
|
||||
{"label": "L43", "matrix": [4, 2], "x": 4.5, "y": 4.95},
|
||||
{"label": "L44", "matrix": [4, 3], "x": 5.5, "y": 5.5},
|
||||
{"label": "L45", "matrix": [4, 4], "x": 6.5, "y": 6},
|
||||
{"label": "R41", "matrix": [10, 4], "x": 10.5, "y": 6},
|
||||
{"label": "R42", "matrix": [10, 3], "x": 11.5, "y": 5.5},
|
||||
{"label": "R43", "matrix": [10, 2], "x": 12.5, "y": 4.75},
|
||||
{"label": "R44", "matrix": [10, 1], "x": 13.5, "y": 4.5},
|
||||
{"label": "R45", "matrix": [10, 0], "x": 14.5, "y": 4.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
37
keyboards/keycapsss/kimiko/rev2/keymaps/default/config.h
Normal file
37
keyboards/keycapsss/kimiko/rev2/keymaps/default/config.h
Normal file
@ -0,0 +1,37 @@
|
||||
/* Copyright 2019 MechMerlin
|
||||
* Copyright 2020 @ben_roe (keycapsss.com)
|
||||
* Copyright 2023 @Ex3c4Def
|
||||
*
|
||||
* 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 MASTER_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue, speed is hue for secondary hue
|
||||
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON // Full tighter gradient spinning around center of keyboard
|
||||
|
||||
// These modes also require the RGB_MATRIX_FRAMEBUFFER_EFFECTS define to be available.
|
||||
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP // How hot is your WPM!
|
||||
|
||||
#define RGB_MATRIX_VAL_STEP 4
|
||||
#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
|
||||
#define RGB_MATRIX_DEFAULT_HUE 0 // Sets the default hue value, if none has been set
|
||||
#define RGB_MATRIX_DEFAULT_SAT 255 // Sets the default saturation value, if none has been set
|
||||
#define RGB_MATRIX_DEFAULT_VAL 60 // RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set
|
||||
#define RGB_MATRIX_DEFAULT_SPD 60 // Sets the default animation speed, if none has been set
|
||||
|
||||
#if defined(POINTING_DEVICE_DRIVER_pimoroni_trackball)
|
||||
# define POINTING_DEVICE_ROTATION_180 // may be used for trackball in 2nd position
|
||||
#endif
|
122
keyboards/keycapsss/kimiko/rev2/keymaps/default/keymap.c
Normal file
122
keyboards/keycapsss/kimiko/rev2/keymaps/default/keymap.c
Normal file
@ -0,0 +1,122 @@
|
||||
/* Copyright 2019 Leo Batyuk
|
||||
* Copyright 2020 Drashna Jaelre <@drashna>
|
||||
* Copyright 2020 @ben_roe (keycapsss.com)
|
||||
* Copyright 2023 @Ex3c4Def
|
||||
*
|
||||
* 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 layers {
|
||||
_QWERTY,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_ADJUST,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* QWERTY
|
||||
* ,--------------------------------------------. ,----------------------------------------------.
|
||||
* | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | Tab | Q | W | E | R | T | | Y | U | I | O | P | - |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | LShift | A | S | D | F | G |---------------. ,---------------| H | J | K | L | ; | ' |
|
||||
* |---------+------+------+------+------+------| ( | [ | | ] | ) |------+------+------+------+------+-----------|
|
||||
* | LCTRL | Z | X | C | V | B |------|--------| |-------|-------| N | M | , | . | / |RShift/Enter|
|
||||
* `--------------------------------------------| / \ |----------------------------------------------'
|
||||
* | LCTRL| LGUI |LALT |LOWER | Space / \Enter| RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '---------------------------------'
|
||||
*/
|
||||
[_QWERTY] = LAYOUT(
|
||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 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_MINS,
|
||||
KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LPRN, KC_LBRC, KC_RBRC, KC_RPRN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, RSFT_T(KC_ENT),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, TL_LOWR, KC_SPC, KC_ENT, TL_UPPR, KC_BSPC, KC_RGUI, KC_RALT
|
||||
),
|
||||
/* LOWER
|
||||
* QWERTY
|
||||
* ,--------------------------------------------. ,----------------------------------------------.
|
||||
* | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | F12 |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | ` | ! | @ | # | $ | % |---------------. ,---------------| ^ | & | * | ( | ) | ~ |
|
||||
* |---------+------+------+------+------+------| | | | | |------+------+------+------+------+-----------|
|
||||
* | | | | | | |------|--------| |-------|-------| | _ | + | { | } | \ |
|
||||
* `--------------------------------------------| / \ |----------------------------------------------'
|
||||
* | LCTRL| LGUI |LALT |LOWER | Space / \Enter| RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '---------------------------------'
|
||||
*/
|
||||
[_LOWER] = LAYOUT(
|
||||
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F12,
|
||||
KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TILD,
|
||||
_______, _______, _______, _______, _______, _______, _______,_______, _______, _______, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
|
||||
_______, _______, _______, _______,_______, _______, _______, _______, _______, _______
|
||||
),
|
||||
/* RAISE
|
||||
* ,--------------------------------------------. ,----------------------------------------------.
|
||||
* | | | | | | | | | | | | | |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | F1 | F2 | F3 | F4 | F5 | F6 |---------------. ,---------------| Left | Down | Up |Right | ; | |
|
||||
* |---------+------+------+------+------+------| [ | [ | | [ | [ |------+------+------+------+------+-----------|
|
||||
* | F7 | F8 | F9 | F10 | F11 | F12 |------|--------| |-------|-------| + | - | = | [ | ] | \ |
|
||||
* `--------------------------------------------| / \ |----------------------------------------------'
|
||||
* | LCTRL| LGUI |LALT |LOWER | Space / \Enter| RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '---------------------------------'
|
||||
*/
|
||||
[_RAISE] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
|
||||
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX,
|
||||
KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, KC_PLUS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
/* ADJUST (Press LOWER and RAISE together)
|
||||
* ,--------------------------------------------. ,----------------------------------------------.
|
||||
* | QK_BOOT | | | | | | | | | | | | |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | RGB ON | HUE+ | SAT+ | VAL+ | | | | PREV | PLAY | NEXT | | | |
|
||||
* |---------+------+------+------+------+------| |------+------+------+------+------+-----------|
|
||||
* | MODE | HUE- | SAT- | VAL- | | |---------------. ,---------------| VOL+ | MUTE | VOL- | | | |
|
||||
* |---------+------+------+------+------+------| | | | | |------+------+------+------+------+-----------|
|
||||
* | | | | | | |------|--------| |-------|-------| | | | | | |
|
||||
* `--------------------------------------------| / \ |----------------------------------------------'
|
||||
* | LCTRL| LGUI |LALT |LOWER | Space / \Enter| RAISE |BackSP| RGUI | RALT |
|
||||
* `----------------------------------' '---------------------------------'
|
||||
*/
|
||||
[_ADJUST] = LAYOUT(
|
||||
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, KC_VOLU, KC_MUTE, KC_VOLD, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_QWERTY] = { ENCODER_CCW_CW(KC_DOWN, KC_UP), ENCODER_CCW_CW(KC_LEFT, KC_RGHT) },
|
||||
[_LOWER] = { ENCODER_CCW_CW(RGB_HUI, KC_TAB), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[_RAISE] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) },
|
||||
[_ADJUST] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) },
|
||||
};
|
||||
#endif // ENCODER_MAP_ENABLE
|
8
keyboards/keycapsss/kimiko/rev2/keymaps/default/rules.mk
Normal file
8
keyboards/keycapsss/kimiko/rev2/keymaps/default/rules.mk
Normal file
@ -0,0 +1,8 @@
|
||||
TRI_LAYER_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard 'old' RGB lightning
|
||||
RGB_MATRIX_ENABLE = yes # Enable keyboard RGB Matrix lightning
|
||||
|
||||
# POINTING_DEVICE_ENABLE = yes
|
||||
# POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c
|
209
keyboards/keycapsss/kimiko/rev2/rev2.c
Normal file
209
keyboards/keycapsss/kimiko/rev2/rev2.c
Normal file
@ -0,0 +1,209 @@
|
||||
/* Copyright 2023 @BenRoe (keycapsss.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/>.
|
||||
*/
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
enum layers { _QWERTY, _LOWER, _RAISE, _ADJUST };
|
||||
|
||||
# ifdef OLED_ENABLE
|
||||
|
||||
oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_270;
|
||||
}
|
||||
|
||||
// NOTE: Most of the OLED code was originally written by Soundmonster for the Corne,
|
||||
// and has been copied directly from `crkbd/soundmonster/keymap.c`
|
||||
|
||||
void render_mod_status_gui_alt(uint8_t modifiers) {
|
||||
static const char PROGMEM gui_off_1[] = {0x85, 0x86, 0};
|
||||
static const char PROGMEM gui_off_2[] = {0xa5, 0xa6, 0};
|
||||
static const char PROGMEM gui_on_1[] = {0x8d, 0x8e, 0};
|
||||
static const char PROGMEM gui_on_2[] = {0xad, 0xae, 0};
|
||||
|
||||
static const char PROGMEM alt_off_1[] = {0x87, 0x88, 0};
|
||||
static const char PROGMEM alt_off_2[] = {0xa7, 0xa8, 0};
|
||||
static const char PROGMEM alt_on_1[] = {0x8f, 0x90, 0};
|
||||
static const char PROGMEM alt_on_2[] = {0xaf, 0xb0, 0};
|
||||
|
||||
// fillers between the modifier icons bleed into the icon frames
|
||||
static const char PROGMEM off_off_1[] = {0xc5, 0};
|
||||
static const char PROGMEM off_off_2[] = {0xc6, 0};
|
||||
static const char PROGMEM on_off_1[] = {0xc7, 0};
|
||||
static const char PROGMEM on_off_2[] = {0xc8, 0};
|
||||
static const char PROGMEM off_on_1[] = {0xc9, 0};
|
||||
static const char PROGMEM off_on_2[] = {0xca, 0};
|
||||
static const char PROGMEM on_on_1[] = {0xcb, 0};
|
||||
static const char PROGMEM on_on_2[] = {0xcc, 0};
|
||||
|
||||
if (modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(gui_on_1, false);
|
||||
} else {
|
||||
oled_write_P(gui_off_1, false);
|
||||
}
|
||||
|
||||
if ((modifiers & MOD_MASK_GUI) && (modifiers & MOD_MASK_ALT)) {
|
||||
oled_write_P(on_on_1, false);
|
||||
} else if (modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(on_off_1, false);
|
||||
} else if (modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(off_on_1, false);
|
||||
} else {
|
||||
oled_write_P(off_off_1, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(alt_on_1, false);
|
||||
} else {
|
||||
oled_write_P(alt_off_1, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(gui_on_2, false);
|
||||
} else {
|
||||
oled_write_P(gui_off_2, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_GUI & MOD_MASK_ALT) {
|
||||
oled_write_P(on_on_2, false);
|
||||
} else if (modifiers & MOD_MASK_GUI) {
|
||||
oled_write_P(on_off_2, false);
|
||||
} else if (modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(off_on_2, false);
|
||||
} else {
|
||||
oled_write_P(off_off_2, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_ALT) {
|
||||
oled_write_P(alt_on_2, false);
|
||||
} else {
|
||||
oled_write_P(alt_off_2, false);
|
||||
}
|
||||
}
|
||||
|
||||
void render_mod_status_ctrl_shift(uint8_t modifiers) {
|
||||
static const char PROGMEM ctrl_off_1[] = {0x89, 0x8a, 0};
|
||||
static const char PROGMEM ctrl_off_2[] = {0xa9, 0xaa, 0};
|
||||
static const char PROGMEM ctrl_on_1[] = {0x91, 0x92, 0};
|
||||
static const char PROGMEM ctrl_on_2[] = {0xb1, 0xb2, 0};
|
||||
|
||||
static const char PROGMEM shift_off_1[] = {0x8b, 0x8c, 0};
|
||||
static const char PROGMEM shift_off_2[] = {0xab, 0xac, 0};
|
||||
static const char PROGMEM shift_on_1[] = {0xcd, 0xce, 0};
|
||||
static const char PROGMEM shift_on_2[] = {0xcf, 0xd0, 0};
|
||||
|
||||
// fillers between the modifier icons bleed into the icon frames
|
||||
static const char PROGMEM off_off_1[] = {0xc5, 0};
|
||||
static const char PROGMEM off_off_2[] = {0xc6, 0};
|
||||
static const char PROGMEM on_off_1[] = {0xc7, 0};
|
||||
static const char PROGMEM on_off_2[] = {0xc8, 0};
|
||||
static const char PROGMEM off_on_1[] = {0xc9, 0};
|
||||
static const char PROGMEM off_on_2[] = {0xca, 0};
|
||||
static const char PROGMEM on_on_1[] = {0xcb, 0};
|
||||
static const char PROGMEM on_on_2[] = {0xcc, 0};
|
||||
|
||||
if (modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(ctrl_on_1, false);
|
||||
} else {
|
||||
oled_write_P(ctrl_off_1, false);
|
||||
}
|
||||
|
||||
if ((modifiers & MOD_MASK_CTRL) && (modifiers & MOD_MASK_SHIFT)) {
|
||||
oled_write_P(on_on_1, false);
|
||||
} else if (modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(on_off_1, false);
|
||||
} else if (modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(off_on_1, false);
|
||||
} else {
|
||||
oled_write_P(off_off_1, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(shift_on_1, false);
|
||||
} else {
|
||||
oled_write_P(shift_off_1, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(ctrl_on_2, false);
|
||||
} else {
|
||||
oled_write_P(ctrl_off_2, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_CTRL & MOD_MASK_SHIFT) {
|
||||
oled_write_P(on_on_2, false);
|
||||
} else if (modifiers & MOD_MASK_CTRL) {
|
||||
oled_write_P(on_off_2, false);
|
||||
} else if (modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(off_on_2, false);
|
||||
} else {
|
||||
oled_write_P(off_off_2, false);
|
||||
}
|
||||
|
||||
if (modifiers & MOD_MASK_SHIFT) {
|
||||
oled_write_P(shift_on_2, false);
|
||||
} else {
|
||||
oled_write_P(shift_off_2, false);
|
||||
}
|
||||
}
|
||||
|
||||
void render_logo(void) {
|
||||
static const char PROGMEM kimiko_logo[] = {0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0};
|
||||
oled_advance_page(false);
|
||||
oled_advance_page(false);
|
||||
oled_write_P(kimiko_logo, false);
|
||||
// oled_write_P(PSTR("Kimiko"), false);
|
||||
}
|
||||
|
||||
void render_layer_state(void) {
|
||||
static const char PROGMEM default_layer[] = {0x20, 0x94, 0x95, 0x96, 0x20, 0x20, 0xb4, 0xb5, 0xb6, 0x20, 0x20, 0xd4, 0xd5, 0xd6, 0x20, 0};
|
||||
static const char PROGMEM raise_layer[] = {0x20, 0x97, 0x98, 0x99, 0x20, 0x20, 0xb7, 0xb8, 0xb9, 0x20, 0x20, 0xd7, 0xd8, 0xd9, 0x20, 0};
|
||||
static const char PROGMEM lower_layer[] = {0x20, 0x9a, 0x9b, 0x9c, 0x20, 0x20, 0xba, 0xbb, 0xbc, 0x20, 0x20, 0xda, 0xdb, 0xdc, 0x20, 0};
|
||||
static const char PROGMEM adjust_layer[] = {0x20, 0x9d, 0x9e, 0x9f, 0x20, 0x20, 0xbd, 0xbe, 0xbf, 0x20, 0x20, 0xdd, 0xde, 0xdf, 0x20, 0};
|
||||
|
||||
if (layer_state_is(_ADJUST)) {
|
||||
oled_write_P(adjust_layer, false);
|
||||
} else if (layer_state_is(_LOWER)) {
|
||||
oled_write_P(lower_layer, false);
|
||||
} else if (layer_state_is(_RAISE)) {
|
||||
oled_write_P(raise_layer, false);
|
||||
} else {
|
||||
oled_write_P(default_layer, false);
|
||||
}
|
||||
}
|
||||
|
||||
void render_status_main(void) {
|
||||
render_logo();
|
||||
oled_advance_page(false);
|
||||
render_layer_state();
|
||||
oled_advance_page(false);
|
||||
render_mod_status_gui_alt(get_mods() | get_oneshot_mods());
|
||||
render_mod_status_ctrl_shift(get_mods() | get_oneshot_mods());
|
||||
}
|
||||
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (is_keyboard_master()) {
|
||||
render_status_main(); // Renders the current keyboard state (layer, lock, caps, scroll, etc)
|
||||
} else {
|
||||
render_logo();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
# endif // OLED_ENABLE
|
1
keyboards/keycapsss/kimiko/rev2/rules.mk
Normal file
1
keyboards/keycapsss/kimiko/rev2/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# File is left intentionally blank
|
@ -1,15 +1 @@
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
SPLIT_KEYBOARD = yes
|
||||
|
||||
DEFAULT_FOLDER = keycapsss/kimiko/rev1
|
||||
DEFAULT_FOLDER = keycapsss/kimiko/rev2
|
||||
|
@ -27,7 +27,7 @@
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0001",
|
||||
"vid": "0x4B4B"
|
||||
"vid": "0x6B6B"
|
||||
},
|
||||
"community_layouts": ["65_ansi"],
|
||||
"layouts": {
|
||||
|
21
keyboards/mechlovin/zed1800/config.h
Normal file
21
keyboards/mechlovin/zed1800/config.h
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
Copyright 2022 Mechlovin'
|
||||
|
||||
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 WEAR_LEVELING_BACKING_SIZE 4096
|
||||
#define WEAR_LEVELING_LOGICAL_SIZE 2048
|
39
keyboards/mechlovin/zed1800/info.json
Normal file
39
keyboards/mechlovin/zed1800/info.json
Normal file
@ -0,0 +1,39 @@
|
||||
{
|
||||
"manufacturer": "Mechlovin Studio",
|
||||
"url": "",
|
||||
"maintainer": "Mechlovin' Studio",
|
||||
"usb": {
|
||||
"vid": "0x4D4C",
|
||||
"device_version": "0.0.1"
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "C14",
|
||||
"num_lock": "C15"
|
||||
},
|
||||
"processor": "STM32F103",
|
||||
"bootloader": "stm32duino",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": true,
|
||||
"console": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"rgblight": true,
|
||||
"audio": false
|
||||
},
|
||||
"rgblight": {
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"alternating": true,
|
||||
"breathing": true,
|
||||
"christmas": true,
|
||||
"knight": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"rgb_test": true,
|
||||
"snake": true,
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
}
|
||||
}
|
||||
}
|
20
keyboards/mechlovin/zed1800/oreum/config.h
Normal file
20
keyboards/mechlovin/zed1800/oreum/config.h
Normal file
@ -0,0 +1,20 @@
|
||||
/*
|
||||
Copyright 2022 Mechlovin'
|
||||
|
||||
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 RGBLIGHT_LAYERS
|
368
keyboards/mechlovin/zed1800/oreum/info.json
Normal file
368
keyboards/mechlovin/zed1800/oreum/info.json
Normal file
@ -0,0 +1,368 @@
|
||||
{
|
||||
"keyboard_name": "ZED1800-Oreum",
|
||||
"usb": {
|
||||
"pid": "0x1802"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C13"],
|
||||
"rows": ["B8", "B7", "B6", "B5", "B4", "B3"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"rgblight": {
|
||||
"led_count": 6
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "A15"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.5, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.5, "y": 0},
|
||||
{"matrix": [0, 17], "x": 18.5, "y": 0},
|
||||
{"matrix": [0, 18], "x": 19.5, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5},
|
||||
{"matrix": [1, 14], "x": 14, "y": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 16.5, "y": 1.5},
|
||||
{"matrix": [1, 16], "x": 17.5, "y": 1.5},
|
||||
{"matrix": [1, 17], "x": 18.5, "y": 1.5},
|
||||
{"matrix": [1, 18], "x": 19.5, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [3, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.5, "y": 2.5},
|
||||
{"matrix": [2, 16], "x": 17.5, "y": 2.5},
|
||||
{"matrix": [2, 17], "x": 18.5, "y": 2.5},
|
||||
{"matrix": [2, 18], "x": 19.5, "y": 2.5},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5},
|
||||
{"matrix": [3, 13], "x": 13.75, "y": 3.5, "w": 1.25},
|
||||
{"matrix": [4, 14], "x": 15.25, "y": 3.5},
|
||||
{"matrix": [3, 15], "x": 16.5, "y": 3.5},
|
||||
{"matrix": [3, 16], "x": 17.5, "y": 3.5},
|
||||
{"matrix": [3, 17], "x": 18.5, "y": 3.5},
|
||||
{"matrix": [3, 18], "x": 19.5, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 15], "x": 16.5, "y": 4.5},
|
||||
{"matrix": [4, 16], "x": 17.5, "y": 4.5},
|
||||
{"matrix": [4, 17], "x": 18.5, "y": 4.5},
|
||||
{"matrix": [4, 18], "x": 19.5, "y": 4.5},
|
||||
|
||||
{"matrix": [4, 13], "x": 14.25, "y": 4.75},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5},
|
||||
{"matrix": [5, 10], "x": 11, "y": 5.5},
|
||||
{"matrix": [5, 11], "x": 12, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 16.5, "y": 5.5},
|
||||
{"matrix": [5, 16], "x": 17.5, "y": 5.5},
|
||||
{"matrix": [5, 17], "x": 18.5, "y": 5.5},
|
||||
{"matrix": [5, 18], "x": 19.5, "y": 5.5},
|
||||
|
||||
{"matrix": [5, 12], "x": 13.25, "y": 5.75},
|
||||
{"matrix": [5, 13], "x": 14.25, "y": 5.75},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.75}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.5, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.5, "y": 0},
|
||||
{"matrix": [0, 17], "x": 18.5, "y": 0},
|
||||
{"matrix": [0, 18], "x": 19.5, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5, "w": 2},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 16.5, "y": 1.5},
|
||||
{"matrix": [1, 16], "x": 17.5, "y": 1.5},
|
||||
{"matrix": [1, 17], "x": 18.5, "y": 1.5},
|
||||
{"matrix": [1, 18], "x": 19.5, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [3, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.5, "y": 2.5},
|
||||
{"matrix": [2, 16], "x": 17.5, "y": 2.5},
|
||||
{"matrix": [2, 17], "x": 18.5, "y": 2.5},
|
||||
{"matrix": [3, 18], "x": 19.5, "y": 2.5, "h": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.5, "w": 2.25},
|
||||
{"matrix": [4, 14], "x": 15.25, "y": 3.5},
|
||||
{"matrix": [3, 15], "x": 16.5, "y": 3.5},
|
||||
{"matrix": [3, 16], "x": 17.5, "y": 3.5},
|
||||
{"matrix": [3, 17], "x": 18.5, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 15], "x": 16.5, "y": 4.5},
|
||||
{"matrix": [4, 16], "x": 17.5, "y": 4.5},
|
||||
{"matrix": [4, 17], "x": 18.5, "y": 4.5},
|
||||
{"matrix": [5, 18], "x": 19.5, "y": 4.5, "h": 2},
|
||||
|
||||
{"matrix": [4, 13], "x": 14.25, "y": 4.75},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5},
|
||||
{"matrix": [5, 10], "x": 11, "y": 5.5},
|
||||
{"matrix": [5, 11], "x": 12, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 16.5, "y": 5.5, "w": 2},
|
||||
{"matrix": [5, 17], "x": 18.5, "y": 5.5},
|
||||
|
||||
{"matrix": [5, 12], "x": 13.25, "y": 5.75},
|
||||
{"matrix": [5, 13], "x": 14.25, "y": 5.75},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.75}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 1.25, "y": 0},
|
||||
{"matrix": [0, 2], "x": 2.25, "y": 0},
|
||||
{"matrix": [0, 3], "x": 3.25, "y": 0},
|
||||
{"matrix": [0, 4], "x": 4.25, "y": 0},
|
||||
{"matrix": [0, 5], "x": 5.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.75, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10.75, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11.75, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12.75, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.5, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.5, "y": 0},
|
||||
{"matrix": [0, 17], "x": 18.5, "y": 0},
|
||||
{"matrix": [0, 18], "x": 19.5, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5, "w": 2},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 16.5, "y": 1.5},
|
||||
{"matrix": [1, 16], "x": 17.5, "y": 1.5},
|
||||
{"matrix": [1, 17], "x": 18.5, "y": 1.5},
|
||||
{"matrix": [1, 18], "x": 19.5, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [3, 13], "x": 13.75, "y": 2.5, "w": 1.25, "h": 2},
|
||||
{"matrix": [3, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.5, "y": 2.5},
|
||||
{"matrix": [2, 16], "x": 17.5, "y": 2.5},
|
||||
{"matrix": [2, 17], "x": 18.5, "y": 2.5},
|
||||
{"matrix": [3, 18], "x": 19.5, "y": 2.5, "h": 2},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5},
|
||||
{"matrix": [4, 14], "x": 15.25, "y": 3.5},
|
||||
{"matrix": [3, 15], "x": 16.5, "y": 3.5},
|
||||
{"matrix": [3, 16], "x": 17.5, "y": 3.5},
|
||||
{"matrix": [3, 17], "x": 18.5, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 15], "x": 16.5, "y": 4.5},
|
||||
{"matrix": [4, 16], "x": 17.5, "y": 4.5},
|
||||
{"matrix": [4, 17], "x": 18.5, "y": 4.5},
|
||||
{"matrix": [5, 18], "x": 19.5, "y": 4.5, "h": 2},
|
||||
|
||||
{"matrix": [4, 13], "x": 14.25, "y": 4.75},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5},
|
||||
{"matrix": [5, 10], "x": 11, "y": 5.5},
|
||||
{"matrix": [5, 11], "x": 12, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 16.5, "y": 5.5, "w": 2},
|
||||
{"matrix": [5, 17], "x": 18.5, "y": 5.5},
|
||||
|
||||
{"matrix": [5, 12], "x": 13.25, "y": 5.75},
|
||||
{"matrix": [5, 13], "x": 14.25, "y": 5.75},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.75}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
33
keyboards/mechlovin/zed1800/oreum/keymaps/default/keymap.c
Normal file
33
keyboards/mechlovin/zed1800/oreum/keymaps/default/keymap.c
Normal file
@ -0,0 +1,33 @@
|
||||
/*
|
||||
Copyright 2022 Mechlovin'
|
||||
|
||||
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
|
||||
|
||||
#define LT1_CAP LT(1, KC_CAPS)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_all(
|
||||
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_F13, KC_PSCR, KC_F9, KC_F10, KC_F11, KC_F12,
|
||||
KC_GRV, 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_DEL, KC_INS, KC_NUM, KC_SLSH, KC_ASTR, KC_MINS,
|
||||
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_DEL, KC_P7, KC_P8, KC_P9, KC_PPLS,
|
||||
LT1_CAP, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_SPC, KC_ENT, KC_END, KC_P4, KC_P5, KC_P6, KC_PPLS,
|
||||
KC_SPC, KC_SPC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
};
|
29
keyboards/mechlovin/zed1800/oreum/keymaps/via/keymap.c
Normal file
29
keyboards/mechlovin/zed1800/oreum/keymaps/via/keymap.c
Normal file
@ -0,0 +1,29 @@
|
||||
/* Copyright 2022 Mechlovin'
|
||||
*
|
||||
* 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
|
||||
|
||||
#define LT1_CAP LT(1, KC_CAPS)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_all(
|
||||
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_F13, KC_PSCR, KC_F9, KC_F10, KC_F11, KC_F12, //19
|
||||
KC_GRV, 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_DEL, KC_INS, KC_NUM, KC_SLSH, KC_ASTR, KC_MINS, //20
|
||||
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_DEL, KC_P7, KC_P8, KC_P9, KC_PPLS, //19
|
||||
LT1_CAP, 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_END, KC_P4, KC_P5, KC_P6, KC_PPLS, //19
|
||||
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_UP, KC_P1, KC_P2, KC_P3, KC_PEQL, //18
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_P0, KC_PDOT, KC_PENT //14
|
||||
),
|
||||
};
|
1
keyboards/mechlovin/zed1800/oreum/keymaps/via/rules.mk
Normal file
1
keyboards/mechlovin/zed1800/oreum/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
27
keyboards/mechlovin/zed1800/oreum/readme.md
Normal file
27
keyboards/mechlovin/zed1800/oreum/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# Oreum
|
||||
|
||||
![Oreum](https://i.imgur.com/Dxc1y0Ol.png)
|
||||
|
||||
A PCB for Oreum Keyboard, base on ZED1800 PCB
|
||||
|
||||
* Keyboard Maintainer: [mechlovin](https://github.com/mechlovin)
|
||||
* Hardware Supported: The Oreum Keyboard, APM32F103
|
||||
* Hardware Availability: [Reddit GB](https://www.reddit.com/r/MechanicalKeyboards/comments/xjqddx/gb_oreum_cp_gb_has_started/)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make mechlovin/zed1800/oreum:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make mechlovin/zed1800/oreum: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 `RESET` if it is available
|
0
keyboards/mechlovin/zed1800/oreum/rules.mk
Normal file
0
keyboards/mechlovin/zed1800/oreum/rules.mk
Normal file
26
keyboards/mechlovin/zed1800/readme.md
Normal file
26
keyboards/mechlovin/zed1800/readme.md
Normal file
@ -0,0 +1,26 @@
|
||||
# ZED1800
|
||||
|
||||
|
||||
A platform design for Mechlovin' 1800-layout PCBs.
|
||||
|
||||
* Keyboard Maintainer: [mechlovin](https://github.com/mechlovin)
|
||||
* Hardware Supported: APM32F103
|
||||
* Hardware Availability: [Mechlovin' Studio](https://mechlovin.studio)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make mechlovin/zed1800:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make mechlovin/zed1800: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 `RESET` if it is available
|
1
keyboards/mechlovin/zed1800/rules.mk
Normal file
1
keyboards/mechlovin/zed1800/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
DEFAULT_FOLDER = mechlovin/zed1800/saber
|
20
keyboards/mechlovin/zed1800/saber/config.h
Normal file
20
keyboards/mechlovin/zed1800/saber/config.h
Normal file
@ -0,0 +1,20 @@
|
||||
/*
|
||||
Copyright 2022 Mechlovin'
|
||||
|
||||
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 RGBLIGHT_LAYERS
|
358
keyboards/mechlovin/zed1800/saber/info.json
Normal file
358
keyboards/mechlovin/zed1800/saber/info.json
Normal file
@ -0,0 +1,358 @@
|
||||
{
|
||||
"keyboard_name": "ZED1800-Saber1800",
|
||||
"usb": {
|
||||
"pid": "0x1803"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["A8", "A15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "C13"],
|
||||
"rows": ["B8", "B7", "B6", "B5", "B4", "B3"]
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 6
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B15"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"layouts": {
|
||||
"LAYOUT_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "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.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.5, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.5, "y": 0},
|
||||
{"matrix": [0, 17], "x": 18.5, "y": 0},
|
||||
{"matrix": [0, 18], "x": 19.5, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5, "w": 2},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 16.5, "y": 1.5},
|
||||
{"matrix": [1, 16], "x": 17.5, "y": 1.5},
|
||||
{"matrix": [1, 17], "x": 18.5, "y": 1.5},
|
||||
{"matrix": [1, 18], "x": 19.5, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [3, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.5, "y": 2.5},
|
||||
{"matrix": [2, 16], "x": 17.5, "y": 2.5},
|
||||
{"matrix": [2, 17], "x": 18.5, "y": 2.5},
|
||||
{"matrix": [2, 18], "x": 19.5, "y": 2.5},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 13], "x": 12.75, "y": 3.5, "w": 2.25},
|
||||
{"matrix": [3, 15], "x": 16.5, "y": 3.5},
|
||||
{"matrix": [3, 16], "x": 17.5, "y": 3.5},
|
||||
{"matrix": [3, 17], "x": 18.5, "y": 3.5},
|
||||
{"matrix": [3, 18], "x": 19.5, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 2.75},
|
||||
{"matrix": [4, 14], "x": 15.25, "y": 4.75},
|
||||
{"matrix": [4, 15], "x": 16.5, "y": 4.5},
|
||||
{"matrix": [4, 16], "x": 17.5, "y": 4.5},
|
||||
{"matrix": [4, 17], "x": 18.5, "y": 4.5},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.5},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 7], "x": 4, "y": 5.5, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 14.25, "y": 5.75},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.75},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.75},
|
||||
{"matrix": [5, 16], "x": 17.5, "y": 5.5},
|
||||
{"matrix": [5, 17], "x": 18.5, "y": 5.5},
|
||||
{"matrix": [5, 18], "x": 19.5, "y": 4.5, "h": 2}
|
||||
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "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.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.5, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.5, "y": 0},
|
||||
{"matrix": [0, 17], "x": 18.5, "y": 0},
|
||||
{"matrix": [0, 18], "x": 19.5, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5, "w": 2},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 16.5, "y": 1.5},
|
||||
{"matrix": [1, 16], "x": 17.5, "y": 1.5},
|
||||
{"matrix": [1, 17], "x": 18.5, "y": 1.5},
|
||||
{"matrix": [1, 18], "x": 19.5, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [3, 13], "x": 13.75, "y": 2.5, "w": 1.25, "h": 2},
|
||||
{"matrix": [3, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.5, "y": 2.5},
|
||||
{"matrix": [2, 16], "x": 17.5, "y": 2.5},
|
||||
{"matrix": [2, 17], "x": 18.5, "y": 2.5},
|
||||
{"matrix": [2, 18], "x": 19.5, "y": 2.5},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5},
|
||||
{"matrix": [3, 15], "x": 16.5, "y": 3.5},
|
||||
{"matrix": [3, 16], "x": 17.5, "y": 3.5},
|
||||
{"matrix": [3, 17], "x": 18.5, "y": 3.5},
|
||||
{"matrix": [3, 18], "x": 19.5, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 2.75},
|
||||
{"matrix": [4, 14], "x": 15.25, "y": 4.75},
|
||||
{"matrix": [4, 15], "x": 16.5, "y": 4.5},
|
||||
{"matrix": [4, 16], "x": 17.5, "y": 4.5},
|
||||
{"matrix": [4, 17], "x": 18.5, "y": 4.5},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.5},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 7], "x": 4, "y": 5.5, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 13], "x": 14.25, "y": 5.75},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.75},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.75},
|
||||
{"matrix": [5, 16], "x": 17.5, "y": 5.5},
|
||||
{"matrix": [5, 17], "x": 18.5, "y": 5.5},
|
||||
{"matrix": [5, 18], "x": 19.5, "y": 4.5, "h": 2}
|
||||
]
|
||||
},
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "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.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 10], "x": 11, "y": 0},
|
||||
{"matrix": [0, 11], "x": 12, "y": 0},
|
||||
{"matrix": [0, 12], "x": 13, "y": 0},
|
||||
{"matrix": [0, 13], "x": 14, "y": 0},
|
||||
{"matrix": [0, 14], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 16.5, "y": 0},
|
||||
{"matrix": [0, 16], "x": 17.5, "y": 0},
|
||||
{"matrix": [0, 17], "x": 18.5, "y": 0},
|
||||
{"matrix": [0, 18], "x": 19.5, "y": 0},
|
||||
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5},
|
||||
{"matrix": [1, 14], "x": 14, "y": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 16.5, "y": 1.5},
|
||||
{"matrix": [1, 16], "x": 17.5, "y": 1.5},
|
||||
{"matrix": [1, 17], "x": 18.5, "y": 1.5},
|
||||
{"matrix": [1, 18], "x": 19.5, "y": 1.5},
|
||||
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [3, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.5, "y": 2.5},
|
||||
{"matrix": [2, 16], "x": 17.5, "y": 2.5},
|
||||
{"matrix": [2, 17], "x": 18.5, "y": 2.5},
|
||||
{"matrix": [2, 18], "x": 19.5, "y": 2.5},
|
||||
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5},
|
||||
{"matrix": [3, 13], "x": 13.75, "y": 3.5, "w": 1.25},
|
||||
{"matrix": [3, 15], "x": 16.5, "y": 3.5},
|
||||
{"matrix": [3, 16], "x": 17.5, "y": 3.5},
|
||||
{"matrix": [3, 17], "x": 18.5, "y": 3.5},
|
||||
{"matrix": [3, 18], "x": 19.5, "y": 3.5},
|
||||
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.5},
|
||||
{"matrix": [4, 15], "x": 16.5, "y": 4.5},
|
||||
{"matrix": [4, 16], "x": 17.5, "y": 4.5},
|
||||
{"matrix": [4, 17], "x": 18.5, "y": 4.5},
|
||||
{"matrix": [4, 18], "x": 19.5, "y": 4.5},
|
||||
|
||||
{"matrix": [4, 14], "x": 15.25, "y": 4.75},
|
||||
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 1], "x": 1.5, "y": 5.5},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 7], "x": 4, "y": 5.5, "w": 7},
|
||||
{"matrix": [5, 11], "x": 11, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 12], "x": 12.5, "y": 5.5, "w": 1.5},
|
||||
{"matrix": [5, 16], "x": 17.5, "y": 5.5},
|
||||
{"matrix": [5, 17], "x": 18.5, "y": 5.5},
|
||||
{"matrix": [5, 18], "x": 19.5, "y": 5.5},
|
||||
|
||||
{"matrix": [5, 13], "x": 14.25, "y": 5.75},
|
||||
{"matrix": [5, 14], "x": 15.25, "y": 5.75},
|
||||
{"matrix": [5, 15], "x": 16.25, "y": 5.75}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
32
keyboards/mechlovin/zed1800/saber/keymaps/default/keymap.c
Normal file
32
keyboards/mechlovin/zed1800/saber/keymaps/default/keymap.c
Normal file
@ -0,0 +1,32 @@
|
||||
/*
|
||||
Copyright 2022 Mechlovin'
|
||||
|
||||
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
|
||||
|
||||
#define LT1_CAP LT(1, KC_CAPS)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_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_PSCR, KC_HOME, KC_END, KC_PGUP, KC_PGDN, //18
|
||||
KC_GRV, 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_PGUP, KC_NUM, KC_SLSH, KC_ASTR, KC_MINS, //19
|
||||
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_DEL, KC_P7, KC_P8, KC_P9, KC_PPLS, //19
|
||||
LT1_CAP, 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_P4, KC_P5, KC_P6, KC_PPLS, //17
|
||||
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_UP, KC_P1, KC_P2, KC_P3, //16
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT //12
|
||||
),
|
||||
|
||||
};
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user