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]
This commit is contained in:
James Young 2024-03-15 17:30:16 -07:00 committed by GitHub
parent 1f8f0f70a2
commit bbe0c515f8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 427 additions and 135 deletions

View File

@ -1518,5 +1518,9 @@
// Moved during 2023 Q4 cycle // Moved during 2023 Q4 cycle
"ymdk/melody96": { "ymdk/melody96": {
"target": "ymdk/melody96/soldered" "target": "ymdk/melody96/soldered"
},
// Moved during 2024 Q2 cycle
"kprepublic/jj50": {
"target": "kprepublic/jj50/rev1"
} }
} }

View File

@ -1,118 +0,0 @@
{
"keyboard_name": "JJ50",
"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",
"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}
]
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -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
└───────┴───────┘
```

View File

@ -1,20 +1,20 @@
# JJ50 # JJ50 rev1
![JJ50 + SA Vilebloom (w/ Sakurios) by u/rendleshift](https://i.imgur.com/SwYZ4wol.jpg) ![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. A compact 50% (5x12) ortholinear keyboard made and sold by KPrepublic.
* Keyboard Maintainer: [QMK Community](https://github.com/qmk) * Keyboard Maintainer: [QMK Community](https://github.com/qmk)
* Hardware Supported: Atmega32A * 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) * 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 example for this keyboard (after setting up your build environment):
make kprepublic/jj50:default make kprepublic/jj50/rev1:default
Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid))
make kprepublic/jj50:default:flash make kprepublic/jj50/rev1:default:flash
**Reset Key**: Hold down the key `Backspace` (`Key below the top right key`) while plugging in the keyboard. **Reset Key**: Hold down the key `Backspace` (`Key below the top right key`) while plugging in the keyboard.

View File

@ -1,12 +1 @@
# Build Options DEFAULT_FOLDER = kprepublic/jj50/rev1
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no # 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 = yes # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
LTO_ENABLE = yes # Enable link time optimization