diff options
author | James Young <[email protected]> | 2024-03-15 17:30:16 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2024-03-16 00:30:16 +0000 |
commit | bbe0c515f883af463f50acaad79bd62a82e68922 (patch) | |
tree | c84f6d12801739b781b91d483f47c18c399d616a /keyboards/kprepublic/jj50/rev1 | |
parent | 1f8f0f70a2beacdc6d085d2541fe498300b1eaab (diff) | |
download | qmk_firmware-bbe0c515f883af463f50acaad79bd62a82e68922.tar.gz qmk_firmware-bbe0c515f883af463f50acaad79bd62a82e68922.zip |
KPRepublic JJ50 rev1 Refactor (#23294)
* Move `kprepublic/jj50` to `kprepublic/jj50/rev1`
[chore]
* Add layout/matrix diagram
[docs]
* Add `LAYOUT_ortho_5x12_1x2u_c`
[enhancement]
* Add `LAYOUT_ortho_5x12_1x2u_l`
[enhancement]
* Add `LAYOUT_ortho_5x12_1x2u_r`
[enhancement]
* Add `LAYOUT_ortho_5x12_2x2u`
[enhancement]
* Convert `rules.mk` to data driven
[chore]
* Remove `console` and `command` from keyboard level
[chore]
* Rename `info.json` to `keyboard.json`
Also deletes `rules.mk` as it's no longer needed.
[chore]
[enhancement]
Diffstat (limited to 'keyboards/kprepublic/jj50/rev1')
-rw-r--r-- | keyboards/kprepublic/jj50/rev1/keyboard.json | 396 | ||||
-rw-r--r-- | keyboards/kprepublic/jj50/rev1/matrix_diagram.md | 21 | ||||
-rw-r--r-- | keyboards/kprepublic/jj50/rev1/readme.md | 21 |
3 files changed, 438 insertions, 0 deletions
diff --git a/keyboards/kprepublic/jj50/rev1/keyboard.json b/keyboards/kprepublic/jj50/rev1/keyboard.json new file mode 100644 index 0000000000..c9f191ef9c --- /dev/null +++ b/keyboards/kprepublic/jj50/rev1/keyboard.json @@ -0,0 +1,396 @@ +{ + "keyboard_name": "JJ50 rev1", + "manufacturer": "KPrepublic", + "url": "", + "maintainer": "qmk", + "usb": { + "vid": "0x4B50", + "pid": "0x0050", + "device_version": "2.0.0" + }, + "matrix_pins": { + "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4"], + "rows": ["B0", "B1", "B2", "B3", "B4"] + }, + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "mousekey": false, + "extrakey": true, + "nkro": false, + "backlight": true, + "rgblight": true + }, + "build": { + "lto": true + }, + "backlight": { + "pin": "D4", + "levels": 12, + "breathing": true + }, + "rgblight": { + "hue_steps": 12, + "saturation_steps": 15, + "brightness_steps": 18, + "led_count": 12, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "snake": true, + "knight": true, + "christmas": true, + "static_gradient": true, + "rgb_test": true, + "alternating": true, + "twinkle": true + } + }, + "ws2812": { + "driver": "i2c" + }, + "processor": "atmega32a", + "bootloader": "bootloadhid", + "layout_aliases": { + "LAYOUT": "LAYOUT_ortho_5x12" + }, + "community_layouts": ["ortho_5x12"], + "layouts": { + "LAYOUT_ortho_5x12": { + "layout": [ + {"matrix": [2, 11], "x": 0, "y": 0}, + {"matrix": [2, 10], "x": 1, "y": 0}, + {"matrix": [2, 9], "x": 2, "y": 0}, + {"matrix": [2, 8], "x": 3, "y": 0}, + {"matrix": [2, 4], "x": 4, "y": 0}, + {"matrix": [2, 5], "x": 5, "y": 0}, + {"matrix": [2, 6], "x": 6, "y": 0}, + {"matrix": [2, 7], "x": 7, "y": 0}, + {"matrix": [2, 3], "x": 8, "y": 0}, + {"matrix": [2, 2], "x": 9, "y": 0}, + {"matrix": [2, 1], "x": 10, "y": 0}, + {"matrix": [2, 0], "x": 11, "y": 0}, + + {"matrix": [0, 11], "x": 0, "y": 1}, + {"matrix": [0, 10], "x": 1, "y": 1}, + {"matrix": [0, 9], "x": 2, "y": 1}, + {"matrix": [0, 8], "x": 3, "y": 1}, + {"matrix": [0, 4], "x": 4, "y": 1}, + {"matrix": [0, 5], "x": 5, "y": 1}, + {"matrix": [0, 6], "x": 6, "y": 1}, + {"matrix": [0, 7], "x": 7, "y": 1}, + {"matrix": [0, 3], "x": 8, "y": 1}, + {"matrix": [0, 2], "x": 9, "y": 1}, + {"matrix": [0, 1], "x": 10, "y": 1}, + {"matrix": [0, 0], "x": 11, "y": 1}, + + {"matrix": [1, 11], "x": 0, "y": 2}, + {"matrix": [1, 10], "x": 1, "y": 2}, + {"matrix": [1, 9], "x": 2, "y": 2}, + {"matrix": [1, 8], "x": 3, "y": 2}, + {"matrix": [1, 4], "x": 4, "y": 2}, + {"matrix": [1, 5], "x": 5, "y": 2}, + {"matrix": [1, 6], "x": 6, "y": 2}, + {"matrix": [1, 7], "x": 7, "y": 2}, + {"matrix": [1, 3], "x": 8, "y": 2}, + {"matrix": [1, 2], "x": 9, "y": 2}, + {"matrix": [1, 1], "x": 10, "y": 2}, + {"matrix": [1, 0], "x": 11, "y": 2}, + + {"matrix": [3, 11], "x": 0, "y": 3}, + {"matrix": [3, 10], "x": 1, "y": 3}, + {"matrix": [3, 9], "x": 2, "y": 3}, + {"matrix": [3, 8], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 3], "x": 8, "y": 3}, + {"matrix": [3, 2], "x": 9, "y": 3}, + {"matrix": [3, 1], "x": 10, "y": 3}, + {"matrix": [3, 0], "x": 11, "y": 3}, + + {"matrix": [4, 11], "x": 0, "y": 4}, + {"matrix": [4, 10], "x": 1, "y": 4}, + {"matrix": [4, 9], "x": 2, "y": 4}, + {"matrix": [4, 8], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + {"matrix": [4, 6], "x": 6, "y": 4}, + {"matrix": [4, 7], "x": 7, "y": 4}, + {"matrix": [4, 3], "x": 8, "y": 4}, + {"matrix": [4, 2], "x": 9, "y": 4}, + {"matrix": [4, 1], "x": 10, "y": 4}, + {"matrix": [4, 0], "x": 11, "y": 4} + ] + }, + "LAYOUT_ortho_5x12_1x2u_c": { + "layout": [ + {"matrix": [2, 11], "x": 0, "y": 0}, + {"matrix": [2, 10], "x": 1, "y": 0}, + {"matrix": [2, 9], "x": 2, "y": 0}, + {"matrix": [2, 8], "x": 3, "y": 0}, + {"matrix": [2, 4], "x": 4, "y": 0}, + {"matrix": [2, 5], "x": 5, "y": 0}, + {"matrix": [2, 6], "x": 6, "y": 0}, + {"matrix": [2, 7], "x": 7, "y": 0}, + {"matrix": [2, 3], "x": 8, "y": 0}, + {"matrix": [2, 2], "x": 9, "y": 0}, + {"matrix": [2, 1], "x": 10, "y": 0}, + {"matrix": [2, 0], "x": 11, "y": 0}, + + {"matrix": [0, 11], "x": 0, "y": 1}, + {"matrix": [0, 10], "x": 1, "y": 1}, + {"matrix": [0, 9], "x": 2, "y": 1}, + {"matrix": [0, 8], "x": 3, "y": 1}, + {"matrix": [0, 4], "x": 4, "y": 1}, + {"matrix": [0, 5], "x": 5, "y": 1}, + {"matrix": [0, 6], "x": 6, "y": 1}, + {"matrix": [0, 7], "x": 7, "y": 1}, + {"matrix": [0, 3], "x": 8, "y": 1}, + {"matrix": [0, 2], "x": 9, "y": 1}, + {"matrix": [0, 1], "x": 10, "y": 1}, + {"matrix": [0, 0], "x": 11, "y": 1}, + + {"matrix": [1, 11], "x": 0, "y": 2}, + {"matrix": [1, 10], "x": 1, "y": 2}, + {"matrix": [1, 9], "x": 2, "y": 2}, + {"matrix": [1, 8], "x": 3, "y": 2}, + {"matrix": [1, 4], "x": 4, "y": 2}, + {"matrix": [1, 5], "x": 5, "y": 2}, + {"matrix": [1, 6], "x": 6, "y": 2}, + {"matrix": [1, 7], "x": 7, "y": 2}, + {"matrix": [1, 3], "x": 8, "y": 2}, + {"matrix": [1, 2], "x": 9, "y": 2}, + {"matrix": [1, 1], "x": 10, "y": 2}, + {"matrix": [1, 0], "x": 11, "y": 2}, + + {"matrix": [3, 11], "x": 0, "y": 3}, + {"matrix": [3, 10], "x": 1, "y": 3}, + {"matrix": [3, 9], "x": 2, "y": 3}, + {"matrix": [3, 8], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 3], "x": 8, "y": 3}, + {"matrix": [3, 2], "x": 9, "y": 3}, + {"matrix": [3, 1], "x": 10, "y": 3}, + {"matrix": [3, 0], "x": 11, "y": 3}, + + {"matrix": [4, 11], "x": 0, "y": 4}, + {"matrix": [4, 10], "x": 1, "y": 4}, + {"matrix": [4, 9], "x": 2, "y": 4}, + {"matrix": [4, 8], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4, "w": 2}, + {"matrix": [4, 7], "x": 7, "y": 4}, + {"matrix": [4, 3], "x": 8, "y": 4}, + {"matrix": [4, 2], "x": 9, "y": 4}, + {"matrix": [4, 1], "x": 10, "y": 4}, + {"matrix": [4, 0], "x": 11, "y": 4} + ] + }, + "LAYOUT_ortho_5x12_1x2u_l": { + "layout": [ + {"matrix": [2, 11], "x": 0, "y": 0}, + {"matrix": [2, 10], "x": 1, "y": 0}, + {"matrix": [2, 9], "x": 2, "y": 0}, + {"matrix": [2, 8], "x": 3, "y": 0}, + {"matrix": [2, 4], "x": 4, "y": 0}, + {"matrix": [2, 5], "x": 5, "y": 0}, + {"matrix": [2, 6], "x": 6, "y": 0}, + {"matrix": [2, 7], "x": 7, "y": 0}, + {"matrix": [2, 3], "x": 8, "y": 0}, + {"matrix": [2, 2], "x": 9, "y": 0}, + {"matrix": [2, 1], "x": 10, "y": 0}, + {"matrix": [2, 0], "x": 11, "y": 0}, + + {"matrix": [0, 11], "x": 0, "y": 1}, + {"matrix": [0, 10], "x": 1, "y": 1}, + {"matrix": [0, 9], "x": 2, "y": 1}, + {"matrix": [0, 8], "x": 3, "y": 1}, + {"matrix": [0, 4], "x": 4, "y": 1}, + {"matrix": [0, 5], "x": 5, "y": 1}, + {"matrix": [0, 6], "x": 6, "y": 1}, + {"matrix": [0, 7], "x": 7, "y": 1}, + {"matrix": [0, 3], "x": 8, "y": 1}, + {"matrix": [0, 2], "x": 9, "y": 1}, + {"matrix": [0, 1], "x": 10, "y": 1}, + {"matrix": [0, 0], "x": 11, "y": 1}, + + {"matrix": [1, 11], "x": 0, "y": 2}, + {"matrix": [1, 10], "x": 1, "y": 2}, + {"matrix": [1, 9], "x": 2, "y": 2}, + {"matrix": [1, 8], "x": 3, "y": 2}, + {"matrix": [1, 4], "x": 4, "y": 2}, + {"matrix": [1, 5], "x": 5, "y": 2}, + {"matrix": [1, 6], "x": 6, "y": 2}, + {"matrix": [1, 7], "x": 7, "y": 2}, + {"matrix": [1, 3], "x": 8, "y": 2}, + {"matrix": [1, 2], "x": 9, "y": 2}, + {"matrix": [1, 1], "x": 10, "y": 2}, + {"matrix": [1, 0], "x": 11, "y": 2}, + + {"matrix": [3, 11], "x": 0, "y": 3}, + {"matrix": [3, 10], "x": 1, "y": 3}, + {"matrix": [3, 9], "x": 2, "y": 3}, + {"matrix": [3, 8], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 3], "x": 8, "y": 3}, + {"matrix": [3, 2], "x": 9, "y": 3}, + {"matrix": [3, 1], "x": 10, "y": 3}, + {"matrix": [3, 0], "x": 11, "y": 3}, + + {"matrix": [4, 11], "x": 0, "y": 4}, + {"matrix": [4, 10], "x": 1, "y": 4}, + {"matrix": [4, 9], "x": 2, "y": 4}, + {"matrix": [4, 8], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4, "w": 2}, + {"matrix": [4, 6], "x": 6, "y": 4}, + {"matrix": [4, 7], "x": 7, "y": 4}, + {"matrix": [4, 3], "x": 8, "y": 4}, + {"matrix": [4, 2], "x": 9, "y": 4}, + {"matrix": [4, 1], "x": 10, "y": 4}, + {"matrix": [4, 0], "x": 11, "y": 4} + ] + }, + "LAYOUT_ortho_5x12_1x2u_r": { + "layout": [ + {"matrix": [2, 11], "x": 0, "y": 0}, + {"matrix": [2, 10], "x": 1, "y": 0}, + {"matrix": [2, 9], "x": 2, "y": 0}, + {"matrix": [2, 8], "x": 3, "y": 0}, + {"matrix": [2, 4], "x": 4, "y": 0}, + {"matrix": [2, 5], "x": 5, "y": 0}, + {"matrix": [2, 6], "x": 6, "y": 0}, + {"matrix": [2, 7], "x": 7, "y": 0}, + {"matrix": [2, 3], "x": 8, "y": 0}, + {"matrix": [2, 2], "x": 9, "y": 0}, + {"matrix": [2, 1], "x": 10, "y": 0}, + {"matrix": [2, 0], "x": 11, "y": 0}, + + {"matrix": [0, 11], "x": 0, "y": 1}, + {"matrix": [0, 10], "x": 1, "y": 1}, + {"matrix": [0, 9], "x": 2, "y": 1}, + {"matrix": [0, 8], "x": 3, "y": 1}, + {"matrix": [0, 4], "x": 4, "y": 1}, + {"matrix": [0, 5], "x": 5, "y": 1}, + {"matrix": [0, 6], "x": 6, "y": 1}, + {"matrix": [0, 7], "x": 7, "y": 1}, + {"matrix": [0, 3], "x": 8, "y": 1}, + {"matrix": [0, 2], "x": 9, "y": 1}, + {"matrix": [0, 1], "x": 10, "y": 1}, + {"matrix": [0, 0], "x": 11, "y": 1}, + + {"matrix": [1, 11], "x": 0, "y": 2}, + {"matrix": [1, 10], "x": 1, "y": 2}, + {"matrix": [1, 9], "x": 2, "y": 2}, + {"matrix": [1, 8], "x": 3, "y": 2}, + {"matrix": [1, 4], "x": 4, "y": 2}, + {"matrix": [1, 5], "x": 5, "y": 2}, + {"matrix": [1, 6], "x": 6, "y": 2}, + {"matrix": [1, 7], "x": 7, "y": 2}, + {"matrix": [1, 3], "x": 8, "y": 2}, + {"matrix": [1, 2], "x": 9, "y": 2}, + {"matrix": [1, 1], "x": 10, "y": 2}, + {"matrix": [1, 0], "x": 11, "y": 2}, + + {"matrix": [3, 11], "x": 0, "y": 3}, + {"matrix": [3, 10], "x": 1, "y": 3}, + {"matrix": [3, 9], "x": 2, "y": 3}, + {"matrix": [3, 8], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 3], "x": 8, "y": 3}, + {"matrix": [3, 2], "x": 9, "y": 3}, + {"matrix": [3, 1], "x": 10, "y": 3}, + {"matrix": [3, 0], "x": 11, "y": 3}, + + {"matrix": [4, 11], "x": 0, "y": 4}, + {"matrix": [4, 10], "x": 1, "y": 4}, + {"matrix": [4, 9], "x": 2, "y": 4}, + {"matrix": [4, 8], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + {"matrix": [4, 6], "x": 6, "y": 4, "w": 2}, + {"matrix": [4, 3], "x": 8, "y": 4}, + {"matrix": [4, 2], "x": 9, "y": 4}, + {"matrix": [4, 1], "x": 10, "y": 4}, + {"matrix": [4, 0], "x": 11, "y": 4} + ] + }, + "LAYOUT_ortho_5x12_2x2u": { + "layout": [ + {"matrix": [2, 11], "x": 0, "y": 0}, + {"matrix": [2, 10], "x": 1, "y": 0}, + {"matrix": [2, 9], "x": 2, "y": 0}, + {"matrix": [2, 8], "x": 3, "y": 0}, + {"matrix": [2, 4], "x": 4, "y": 0}, + {"matrix": [2, 5], "x": 5, "y": 0}, + {"matrix": [2, 6], "x": 6, "y": 0}, + {"matrix": [2, 7], "x": 7, "y": 0}, + {"matrix": [2, 3], "x": 8, "y": 0}, + {"matrix": [2, 2], "x": 9, "y": 0}, + {"matrix": [2, 1], "x": 10, "y": 0}, + {"matrix": [2, 0], "x": 11, "y": 0}, + + {"matrix": [0, 11], "x": 0, "y": 1}, + {"matrix": [0, 10], "x": 1, "y": 1}, + {"matrix": [0, 9], "x": 2, "y": 1}, + {"matrix": [0, 8], "x": 3, "y": 1}, + {"matrix": [0, 4], "x": 4, "y": 1}, + {"matrix": [0, 5], "x": 5, "y": 1}, + {"matrix": [0, 6], "x": 6, "y": 1}, + {"matrix": [0, 7], "x": 7, "y": 1}, + {"matrix": [0, 3], "x": 8, "y": 1}, + {"matrix": [0, 2], "x": 9, "y": 1}, + {"matrix": [0, 1], "x": 10, "y": 1}, + {"matrix": [0, 0], "x": 11, "y": 1}, + + {"matrix": [1, 11], "x": 0, "y": 2}, + {"matrix": [1, 10], "x": 1, "y": 2}, + {"matrix": [1, 9], "x": 2, "y": 2}, + {"matrix": [1, 8], "x": 3, "y": 2}, + {"matrix": [1, 4], "x": 4, "y": 2}, + {"matrix": [1, 5], "x": 5, "y": 2}, + {"matrix": [1, 6], "x": 6, "y": 2}, + {"matrix": [1, 7], "x": 7, "y": 2}, + {"matrix": [1, 3], "x": 8, "y": 2}, + {"matrix": [1, 2], "x": 9, "y": 2}, + {"matrix": [1, 1], "x": 10, "y": 2}, + {"matrix": [1, 0], "x": 11, "y": 2}, + + {"matrix": [3, 11], "x": 0, "y": 3}, + {"matrix": [3, 10], "x": 1, "y": 3}, + {"matrix": [3, 9], "x": 2, "y": 3}, + {"matrix": [3, 8], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [3, 6], "x": 6, "y": 3}, + {"matrix": [3, 7], "x": 7, "y": 3}, + {"matrix": [3, 3], "x": 8, "y": 3}, + {"matrix": [3, 2], "x": 9, "y": 3}, + {"matrix": [3, 1], "x": 10, "y": 3}, + {"matrix": [3, 0], "x": 11, "y": 3}, + + {"matrix": [4, 11], "x": 0, "y": 4}, + {"matrix": [4, 10], "x": 1, "y": 4}, + {"matrix": [4, 9], "x": 2, "y": 4}, + {"matrix": [4, 8], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4, "w": 2}, + {"matrix": [4, 6], "x": 6, "y": 4, "w": 2}, + {"matrix": [4, 3], "x": 8, "y": 4}, + {"matrix": [4, 2], "x": 9, "y": 4}, + {"matrix": [4, 1], "x": 10, "y": 4}, + {"matrix": [4, 0], "x": 11, "y": 4} + ] + } + } +} diff --git a/keyboards/kprepublic/jj50/rev1/matrix_diagram.md b/keyboards/kprepublic/jj50/rev1/matrix_diagram.md new file mode 100644 index 0000000000..c13292d336 --- /dev/null +++ b/keyboards/kprepublic/jj50/rev1/matrix_diagram.md @@ -0,0 +1,21 @@ +# Matrix Diagram for KPrepublic JJ50 rev1 + +``` +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ +│2B │2A │29 │28 │24 │25 │26 │27 │23 │22 │21 │20 │ +├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ +│0B │0A │09 │08 │04 │05 │06 │07 │03 │02 │01 │00 │ +├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ +│1B │1A │19 │18 │14 │15 │16 │17 │13 │12 │11 │10 │ +├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ +│3B │3A │39 │38 │34 │35 │36 │37 │33 │32 │31 │30 │ +├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ +│4B │4A │49 │48 │44 │45 │46 │47 │43 │42 │41 │40 │ +└───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘ + ┌───────┐ + │45 │ 1x2u_c (MIT) + └───────┘ + ┌───────┬───────┐ + │44 │46 │ 2x2u_c + └───────┴───────┘ +``` diff --git a/keyboards/kprepublic/jj50/rev1/readme.md b/keyboards/kprepublic/jj50/rev1/readme.md new file mode 100644 index 0000000000..643dfc54da --- /dev/null +++ b/keyboards/kprepublic/jj50/rev1/readme.md @@ -0,0 +1,21 @@ +# JJ50 rev1 + +![JJ50 rev1 + SA Vilebloom (w/ Sakurios) by u/rendleshift](https://i.imgur.com/SwYZ4wol.jpg) + +A compact 50% (5x12) ortholinear keyboard made and sold by KPrepublic. + +* Keyboard Maintainer: [QMK Community](https://github.com/qmk) +* Hardware Supported: JJ50 rev1 (ATmega32A) +* Hardware Availability: [AliExpress](https://www.aliexpress.com/item/jj50-v1-0-Custom-Mechanical-Keyboard-50-PCB-programmed-50-preonic-layouts-bface-firmware-with-rgb/32848915277.html); [KPrepublic](https://kprepublic.com/collections/jj50-50/products/jj50-50-custom-keyboard-pcb-similar-with-preonic) + +Make example for this keyboard (after setting up your build environment): + + make kprepublic/jj50/rev1:default + +Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) + + make kprepublic/jj50/rev1:default:flash + +**Reset Key**: Hold down the key `Backspace` (`Key below the top right key`) while plugging in the keyboard. + +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). |