[Keyboard] Subatomic refactor (#3194)
* Refactor: matrix * New readme file * Configurator support * change info.json to debug linting * use an enum to manage the layers * readme cleanup file header, docs links * use #pragma once in keyboard header file * use new-style OLKB layout macro naming scheme * fix layout macro references in keymap.c * correct Keyboard Maintainerbetter_chibios_wait
parent
475f832b0f
commit
dccafb64e6
@ -0,0 +1,233 @@ |
||||
{ |
||||
"keyboard_name": "Subatomic", |
||||
"url": "", |
||||
"maintainer": "qmk", |
||||
"width": 14, |
||||
"height": 5, |
||||
"layouts": { |
||||
"LAYOUT_ortho_5x14": { |
||||
"key_count": 70, |
||||
"layout": [ |
||||
{"label":"k00", "x":0, "y":0}, |
||||
{"label":"k01", "x":1, "y":0}, |
||||
{"label":"k02", "x":2, "y":0}, |
||||
{"label":"k03", "x":3, "y":0}, |
||||
{"label":"k04", "x":4, "y":0}, |
||||
{"label":"k05", "x":5, "y":0}, |
||||
{"label":"k06", "x":6, "y":0}, |
||||
{"label":"k07", "x":7, "y":0}, |
||||
{"label":"k08", "x":8, "y":0}, |
||||
{"label":"k09", "x":9, "y":0}, |
||||
{"label":"k0a", "x":10, "y":0}, |
||||
{"label":"k0b", "x":11, "y":0}, |
||||
{"label":"k0c", "x":12, "y":0}, |
||||
{"label":"k0d", "x":13, "y":0}, |
||||
{"label":"k10", "x":0, "y":1}, |
||||
{"label":"k11", "x":1, "y":1}, |
||||
{"label":"k12", "x":2, "y":1}, |
||||
{"label":"k13", "x":3, "y":1}, |
||||
{"label":"k14", "x":4, "y":1}, |
||||
{"label":"k15", "x":5, "y":1}, |
||||
{"label":"k16", "x":6, "y":1}, |
||||
{"label":"k17", "x":7, "y":1}, |
||||
{"label":"k18", "x":8, "y":1}, |
||||
{"label":"k19", "x":9, "y":1}, |
||||
{"label":"k1a", "x":10, "y":1}, |
||||
{"label":"k1b", "x":11, "y":1}, |
||||
{"label":"k1c", "x":12, "y":1}, |
||||
{"label":"k1d", "x":13, "y":1}, |
||||
{"label":"k20", "x":0, "y":2}, |
||||
{"label":"k21", "x":1, "y":2}, |
||||
{"label":"k22", "x":2, "y":2}, |
||||
{"label":"k23", "x":3, "y":2}, |
||||
{"label":"k24", "x":4, "y":2}, |
||||
{"label":"k25", "x":5, "y":2}, |
||||
{"label":"k26", "x":6, "y":2}, |
||||
{"label":"k27", "x":7, "y":2}, |
||||
{"label":"k28", "x":8, "y":2}, |
||||
{"label":"k29", "x":9, "y":2}, |
||||
{"label":"k2a", "x":10, "y":2}, |
||||
{"label":"k2b", "x":11, "y":2}, |
||||
{"label":"k2c", "x":12, "y":2}, |
||||
{"label":"k2d", "x":13, "y":2}, |
||||
{"label":"k30", "x":0, "y":3}, |
||||
{"label":"k31", "x":1, "y":3}, |
||||
{"label":"k32", "x":2, "y":3}, |
||||
{"label":"k33", "x":3, "y":3}, |
||||
{"label":"k34", "x":4, "y":3}, |
||||
{"label":"k35", "x":5, "y":3}, |
||||
{"label":"k36", "x":6, "y":3}, |
||||
{"label":"k37", "x":7, "y":3}, |
||||
{"label":"k38", "x":8, "y":3}, |
||||
{"label":"k39", "x":9, "y":3}, |
||||
{"label":"k3a", "x":10, "y":3}, |
||||
{"label":"k3b", "x":11, "y":3}, |
||||
{"label":"k3c", "x":12, "y":3}, |
||||
{"label":"k3d", "x":13, "y":3}, |
||||
{"label":"k40", "x":0, "y":4}, |
||||
{"label":"k41", "x":1, "y":4}, |
||||
{"label":"k42", "x":2, "y":4}, |
||||
{"label":"k43", "x":3, "y":4}, |
||||
{"label":"k44", "x":4, "y":4}, |
||||
{"label":"k45", "x":5, "y":4}, |
||||
{"label":"k46", "x":6, "y":4}, |
||||
{"label":"k47", "x":7, "y":4}, |
||||
{"label":"k48", "x":8, "y":4}, |
||||
{"label":"k49", "x":9, "y":4}, |
||||
{"label":"k4a", "x":10, "y":4}, |
||||
{"label":"k4b", "x":11, "y":4}, |
||||
{"label":"k4c", "x":12, "y":4}, |
||||
{"label":"k4d", "x":13, "y":4} |
||||
] |
||||
}, |
||||
|
||||
"LAYOUT_ortho_5x14_1x2uC": { |
||||
"key_count": 69, |
||||
"layout": [ |
||||
{"label":"k00", "x":0, "y":0}, |
||||
{"label":"k01", "x":1, "y":0}, |
||||
{"label":"k02", "x":2, "y":0}, |
||||
{"label":"k03", "x":3, "y":0}, |
||||
{"label":"k04", "x":4, "y":0}, |
||||
{"label":"k05", "x":5, "y":0}, |
||||
{"label":"k06", "x":6, "y":0}, |
||||
{"label":"k07", "x":7, "y":0}, |
||||
{"label":"k08", "x":8, "y":0}, |
||||
{"label":"k09", "x":9, "y":0}, |
||||
{"label":"k0a", "x":10, "y":0}, |
||||
{"label":"k0b", "x":11, "y":0}, |
||||
{"label":"k0c", "x":12, "y":0}, |
||||
{"label":"k0d", "x":13, "y":0}, |
||||
{"label":"k10", "x":0, "y":1}, |
||||
{"label":"k11", "x":1, "y":1}, |
||||
{"label":"k12", "x":2, "y":1}, |
||||
{"label":"k13", "x":3, "y":1}, |
||||
{"label":"k14", "x":4, "y":1}, |
||||
{"label":"k15", "x":5, "y":1}, |
||||
{"label":"k16", "x":6, "y":1}, |
||||
{"label":"k17", "x":7, "y":1}, |
||||
{"label":"k18", "x":8, "y":1}, |
||||
{"label":"k19", "x":9, "y":1}, |
||||
{"label":"k1a", "x":10, "y":1}, |
||||
{"label":"k1b", "x":11, "y":1}, |
||||
{"label":"k1c", "x":12, "y":1}, |
||||
{"label":"k1d", "x":13, "y":1}, |
||||
{"label":"k20", "x":0, "y":2}, |
||||
{"label":"k21", "x":1, "y":2}, |
||||
{"label":"k22", "x":2, "y":2}, |
||||
{"label":"k23", "x":3, "y":2}, |
||||
{"label":"k24", "x":4, "y":2}, |
||||
{"label":"k25", "x":5, "y":2}, |
||||
{"label":"k26", "x":6, "y":2}, |
||||
{"label":"k27", "x":7, "y":2}, |
||||
{"label":"k28", "x":8, "y":2}, |
||||
{"label":"k29", "x":9, "y":2}, |
||||
{"label":"k2a", "x":10, "y":2}, |
||||
{"label":"k2b", "x":11, "y":2}, |
||||
{"label":"k2c", "x":12, "y":2}, |
||||
{"label":"k2d", "x":13, "y":2}, |
||||
{"label":"k30", "x":0, "y":3}, |
||||
{"label":"k31", "x":1, "y":3}, |
||||
{"label":"k32", "x":2, "y":3}, |
||||
{"label":"k33", "x":3, "y":3}, |
||||
{"label":"k34", "x":4, "y":3}, |
||||
{"label":"k35", "x":5, "y":3}, |
||||
{"label":"k36", "x":6, "y":3}, |
||||
{"label":"k37", "x":7, "y":3}, |
||||
{"label":"k38", "x":8, "y":3}, |
||||
{"label":"k39", "x":9, "y":3}, |
||||
{"label":"k3a", "x":10, "y":3}, |
||||
{"label":"k3b", "x":11, "y":3}, |
||||
{"label":"k3c", "x":12, "y":3}, |
||||
{"label":"k3d", "x":13, "y":3}, |
||||
{"label":"k40", "x":0, "y":4}, |
||||
{"label":"k41", "x":1, "y":4}, |
||||
{"label":"k42", "x":2, "y":4}, |
||||
{"label":"k43", "x":3, "y":4}, |
||||
{"label":"k44", "x":4, "y":4}, |
||||
{"label":"k45", "x":5, "y":4}, |
||||
{"label":"k46", "x":6, "y":4, "w":2}, |
||||
{"label":"k48", "x":8, "y":4}, |
||||
{"label":"k49", "x":9, "y":4}, |
||||
{"label":"k4a", "x":10, "y":4}, |
||||
{"label":"k4b", "x":11, "y":4}, |
||||
{"label":"k4c", "x":12, "y":4}, |
||||
{"label":"k4d", "x":13, "y":4} |
||||
] |
||||
}, |
||||
|
||||
"LAYOUT_ortho_5x14_2x2u": { |
||||
"key_count": 68, |
||||
"layout": [ |
||||
{"label":"k00", "x":0, "y":0}, |
||||
{"label":"k01", "x":1, "y":0}, |
||||
{"label":"k02", "x":2, "y":0}, |
||||
{"label":"k03", "x":3, "y":0}, |
||||
{"label":"k04", "x":4, "y":0}, |
||||
{"label":"k05", "x":5, "y":0}, |
||||
{"label":"k06", "x":6, "y":0}, |
||||
{"label":"k07", "x":7, "y":0}, |
||||
{"label":"k08", "x":8, "y":0}, |
||||
{"label":"k09", "x":9, "y":0}, |
||||
{"label":"k0a", "x":10, "y":0}, |
||||
{"label":"k0b", "x":11, "y":0}, |
||||
{"label":"k0c", "x":12, "y":0}, |
||||
{"label":"k0d", "x":13, "y":0}, |
||||
{"label":"k10", "x":0, "y":1}, |
||||
{"label":"k11", "x":1, "y":1}, |
||||
{"label":"k12", "x":2, "y":1}, |
||||
{"label":"k13", "x":3, "y":1}, |
||||
{"label":"k14", "x":4, "y":1}, |
||||
{"label":"k15", "x":5, "y":1}, |
||||
{"label":"k16", "x":6, "y":1}, |
||||
{"label":"k17", "x":7, "y":1}, |
||||
{"label":"k18", "x":8, "y":1}, |
||||
{"label":"k19", "x":9, "y":1}, |
||||
{"label":"k1a", "x":10, "y":1}, |
||||
{"label":"k1b", "x":11, "y":1}, |
||||
{"label":"k1c", "x":12, "y":1}, |
||||
{"label":"k1d", "x":13, "y":1}, |
||||
{"label":"k20", "x":0, "y":2}, |
||||
{"label":"k21", "x":1, "y":2}, |
||||
{"label":"k22", "x":2, "y":2}, |
||||
{"label":"k23", "x":3, "y":2}, |
||||
{"label":"k24", "x":4, "y":2}, |
||||
{"label":"k25", "x":5, "y":2}, |
||||
{"label":"k26", "x":6, "y":2}, |
||||
{"label":"k27", "x":7, "y":2}, |
||||
{"label":"k28", "x":8, "y":2}, |
||||
{"label":"k29", "x":9, "y":2}, |
||||
{"label":"k2a", "x":10, "y":2}, |
||||
{"label":"k2b", "x":11, "y":2}, |
||||
{"label":"k2c", "x":12, "y":2}, |
||||
{"label":"k2d", "x":13, "y":2}, |
||||
{"label":"k30", "x":0, "y":3}, |
||||
{"label":"k31", "x":1, "y":3}, |
||||
{"label":"k32", "x":2, "y":3}, |
||||
{"label":"k33", "x":3, "y":3}, |
||||
{"label":"k34", "x":4, "y":3}, |
||||
{"label":"k35", "x":5, "y":3}, |
||||
{"label":"k36", "x":6, "y":3}, |
||||
{"label":"k37", "x":7, "y":3}, |
||||
{"label":"k38", "x":8, "y":3}, |
||||
{"label":"k39", "x":9, "y":3}, |
||||
{"label":"k3a", "x":10, "y":3}, |
||||
{"label":"k3b", "x":11, "y":3}, |
||||
{"label":"k3c", "x":12, "y":3}, |
||||
{"label":"k3d", "x":13, "y":3}, |
||||
{"label":"k40", "x":0, "y":4}, |
||||
{"label":"k41", "x":1, "y":4}, |
||||
{"label":"k42", "x":2, "y":4}, |
||||
{"label":"k43", "x":3, "y":4}, |
||||
{"label":"k44", "x":4, "y":4}, |
||||
{"label":"k45", "x":5, "y":4, "w":2}, |
||||
{"label":"k47", "x":7, "y":4, "w":2}, |
||||
{"label":"k49", "x":9, "y":4}, |
||||
{"label":"k4a", "x":10, "y":4}, |
||||
{"label":"k4b", "x":11, "y":4}, |
||||
{"label":"k4c", "x":12, "y":4}, |
||||
{"label":"k4d", "x":13, "y":4} |
||||
] |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,15 @@ |
||||
# Subatomic |
||||
|
||||
 |
||||
|
||||
A compact 70% (15x4) ortholinear keyboard kit made and sold by OLKB. [More info on qmk.fm](http://qmk.fm/subatomic/) |
||||
|
||||
Keyboard Maintainer: [Jack Humbert](https://github.com/jackhumbert) |
||||
Hardware Supported: Subatomic PCB |
||||
Hardware Availability: TBD |
||||
|
||||
Make example for this keyboard (after setting up your build environment): |
||||
|
||||
make subatomic:default |
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). |
@ -1,6 +1,89 @@ |
||||
#ifndef SUBATOMIC_H |
||||
#define SUBATOMIC_H |
||||
#pragma once |
||||
|
||||
#include "quantum.h" |
||||
|
||||
#endif |
||||
#define XXX KC_NO |
||||
|
||||
|
||||
/* Subatomic Grid layout
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ • │ │ │ • │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│ │ │▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│ |
||||
* └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘ |
||||
*/ |
||||
#define LAYOUT_ortho_5x14( \ |
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, \
|
||||
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \
|
||||
) { \
|
||||
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d }, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d }, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d } \
|
||||
} |
||||
|
||||
|
||||
/*
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ • │ │ │ • │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┴───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│ │▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│ |
||||
* └───┴───┴───┴───┴───┴───┴───────┴───┴───┴───┴───┴───┴───┘ |
||||
*/ |
||||
#define LAYOUT_ortho_5x14_1x2uC( \ |
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, \
|
||||
k40, k41, k42, k43, k44, k45, k46, k48, k49, k4a, k4b, k4c, k4d \
|
||||
) { \
|
||||
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d }, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d }, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, XXX, k48, k49, k4a, k4b, k4c, k4d } \
|
||||
} |
||||
|
||||
|
||||
/*
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ • │ │ │ • │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│ │ │ │ │ │ │ │ │ │ │▓▓▓│▓▓▓│ |
||||
* ├───┼───┼───┼───┼───┼───┴───┼───┴───┼───┼───┼───┼───┼───┤ |
||||
* │▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│ │ │▓▓▓│▓▓▓│▓▓▓│▓▓▓│▓▓▓│ |
||||
* └───┴───┴───┴───┴───┴───────┴───────┴───┴───┴───┴───┴───┘ |
||||
*/ |
||||
#define LAYOUT_ortho_5x14_2x2u( \ |
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, \
|
||||
k40, k41, k42, k43, k44, k45, k47, k49, k4a, k4b, k4c, k4d \
|
||||
) { \
|
||||
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d }, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d }, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d }, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d }, \
|
||||
{ k40, k41, k42, k43, k44, k45, XXX, k47, XXX, k49, k4a, k4b, k4c, k4d } \
|
||||
} |
||||
|
Loading…
Reference in new issue