forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Keyboard] Add redragon k617 port (qmk#22410)
Co-authored-by: Less/Rikki <[email protected]> Co-authored-by: jack <[email protected]> Co-authored-by: Drashna Jaelre <[email protected]>
- Loading branch information
1 parent
5031e0e
commit b5b886e
Showing
5 changed files
with
223 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
// Copyright 2023 abhiakl (@abhijithabhiakl) | ||
// SPDX-License-Identifier: GPL-2.0-or-later | ||
#pragma once | ||
|
||
/* QK_MAKE support*/ | ||
#define ENABLE_COMPILE_KEYCODE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
{ | ||
"manufacturer": "abhiakl", | ||
"keyboard_name": "rd_61_qmk", | ||
"maintainer": "abhijithabhiakl", | ||
"backlight": { | ||
"driver": "pwm", | ||
"levels": 5, | ||
"pin": "B7" | ||
}, | ||
"usb": { | ||
"device_version": "1.0.0", | ||
"pid": "0x7421", | ||
"vid": "0xFEED" | ||
}, | ||
"development_board": "promicro", | ||
"diode_direction": "ROW2COL", | ||
"features": { | ||
"backlight": true, | ||
"bootmagic": true, | ||
"extrakey": true, | ||
"mousekey": true, | ||
"nkro": true, | ||
"rgblight": true | ||
}, | ||
"qmk": { | ||
"locking": { | ||
"enabled": true, | ||
"resync": true | ||
} | ||
}, | ||
"indicators": { | ||
"caps_lock": "F0" | ||
}, | ||
"matrix_pins": { | ||
"cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4", "D4", "D0", "D1", "D2", "D3", "D5"], | ||
"rows": ["B5", "B4", "E6", "D7", "C6"] | ||
}, | ||
"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 | ||
}, | ||
"brightness_steps": 8, | ||
"led_count": 1, | ||
"saturation_steps": 8 | ||
}, | ||
"url": "", | ||
"ws2812": { | ||
"pin": "C7" | ||
}, | ||
"layouts": { | ||
"LAYOUT_60_ansi": { | ||
"layout": [ | ||
{"matrix": [0, 0], "x": 0, "y": 0}, | ||
{"matrix": [0, 1], "x": 1, "y": 0}, | ||
{"matrix": [0, 2], "x": 2, "y": 0}, | ||
{"matrix": [0, 3], "x": 3, "y": 0}, | ||
{"matrix": [0, 4], "x": 4, "y": 0}, | ||
{"matrix": [0, 5], "x": 5, "y": 0}, | ||
{"matrix": [0, 6], "x": 6, "y": 0}, | ||
{"matrix": [0, 7], "x": 7, "y": 0}, | ||
{"matrix": [0, 8], "x": 8, "y": 0}, | ||
{"matrix": [0, 9], "x": 9, "y": 0}, | ||
{"matrix": [0, 10], "x": 10, "y": 0}, | ||
{"matrix": [0, 11], "x": 11, "y": 0}, | ||
{"matrix": [0, 12], "x": 12, "y": 0}, | ||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, | ||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, | ||
{"matrix": [1, 1], "x": 1.5, "y": 1}, | ||
{"matrix": [1, 2], "x": 2.5, "y": 1}, | ||
{"matrix": [1, 3], "x": 3.5, "y": 1}, | ||
{"matrix": [1, 4], "x": 4.5, "y": 1}, | ||
{"matrix": [1, 5], "x": 5.5, "y": 1}, | ||
{"matrix": [1, 6], "x": 6.5, "y": 1}, | ||
{"matrix": [1, 7], "x": 7.5, "y": 1}, | ||
{"matrix": [1, 8], "x": 8.5, "y": 1}, | ||
{"matrix": [1, 9], "x": 9.5, "y": 1}, | ||
{"matrix": [1, 10], "x": 10.5, "y": 1}, | ||
{"matrix": [1, 11], "x": 11.5, "y": 1}, | ||
{"matrix": [1, 12], "x": 12.5, "y": 1}, | ||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, | ||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, | ||
{"matrix": [2, 1], "x": 1.75, "y": 2}, | ||
{"matrix": [2, 2], "x": 2.75, "y": 2}, | ||
{"matrix": [2, 3], "x": 3.75, "y": 2}, | ||
{"matrix": [2, 4], "x": 4.75, "y": 2}, | ||
{"matrix": [2, 5], "x": 5.75, "y": 2}, | ||
{"matrix": [2, 6], "x": 6.75, "y": 2}, | ||
{"matrix": [2, 7], "x": 7.75, "y": 2}, | ||
{"matrix": [2, 8], "x": 8.75, "y": 2}, | ||
{"matrix": [2, 9], "x": 9.75, "y": 2}, | ||
{"matrix": [2, 10], "x": 10.75, "y": 2}, | ||
{"matrix": [2, 11], "x": 11.75, "y": 2}, | ||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, | ||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, | ||
{"matrix": [3, 1], "x": 2.25, "y": 3}, | ||
{"matrix": [3, 2], "x": 3.25, "y": 3}, | ||
{"matrix": [3, 3], "x": 4.25, "y": 3}, | ||
{"matrix": [3, 4], "x": 5.25, "y": 3}, | ||
{"matrix": [3, 5], "x": 6.25, "y": 3}, | ||
{"matrix": [3, 6], "x": 7.25, "y": 3}, | ||
{"matrix": [3, 7], "x": 8.25, "y": 3}, | ||
{"matrix": [3, 8], "x": 9.25, "y": 3}, | ||
{"matrix": [3, 9], "x": 10.25, "y": 3}, | ||
{"matrix": [3, 10], "x": 11.25, "y": 3}, | ||
{"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75}, | ||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, | ||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, | ||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, | ||
{"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25}, | ||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25}, | ||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25}, | ||
{"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, | ||
{"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} | ||
] | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
// 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_60_ansi( | ||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, | ||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, | ||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, | ||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | ||
KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_RALT, MO(3), KC_RCTL, KC_PENT | ||
), | ||
|
||
[1] = LAYOUT_60_ansi( | ||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, | ||
KC_PSCR, DF(0), KC_UP, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_BRID, KC_BRIU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_LSFT, C(S(KC_TAB)), C(KC_TAB), KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RSFT, | ||
KC_RGUI, KC_TRNS, MO(2), KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS | ||
), | ||
|
||
[2] = LAYOUT_60_ansi( | ||
QK_RBT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_BSPC, | ||
KC_PSCR, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_PAST, KC_LEFT, KC_TRNS, KC_TRNS, KC_7, KC_8, KC_9, KC_TRNS, KC_PSCR, | ||
KC_DEL, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PPLS, KC_RGHT, KC_TRNS, KC_TRNS, KC_4, KC_5, KC_6, KC_TRNS, | ||
KC_LSFT, KC_P1, KC_P2, KC_P3, KC_PDOT, KC_P0, KC_ENT, KC_TRNS, KC_1, KC_2, KC_3, KC_RSFT, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS | ||
), | ||
|
||
[3] = LAYOUT_60_ansi( | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, DB_TOGG, QK_RBT, QK_BOOT, QK_MAKE, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_HUI, RGB_SAI | ||
) | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
# Redragon K617 (QMK ported) | ||
|
||
![Keyboard image](https://imagizer.imageshack.com/img922/3464/qUpU8k.png) | ||
|
||
*Firmware,layout and schematics for porting Redragon K617 keyboard to qmk* | ||
|
||
* Keyboard Maintainer: *[abhijithabhiakl](https://github.com/abhijithabhiakl)* | ||
* Hardware Supported: *Redragon K617, Pro micro(caterina)* | ||
* Hardware Availability: *[Redragon K617](https://redragon.in/products/fizz-k617-60-wired-mechanical-keyboard-white-and-grey-red-switches)* | ||
|
||
Make example for this keyboard (after setting up your build environment): | ||
|
||
make handwired/rd_61_qmk:default | ||
|
||
Flashing example for this keyboard: | ||
|
||
make handwired/rd_61_qmk:default:flash | ||
|
||
Also can be flashed with QMK *[QMK toolbox](https://github.com/qmk/qmk_toolbox)* or *[avrdudess](https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/)* | ||
|
||
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). | ||
|
||
See [QMK repo cloning](https://docs.qmk.fm/#/getting_started_github) for information about cloning the repo | ||
|
||
## Hardware details: | ||
|
||
Note : Before doing any modifications in the PCB make sure that the stock microcontroller is removed. | ||
|
||
#### Matrix layout: | ||
![Keyboard image](https://imagizer.imageshack.com/img924/8415/hX5gAb.jpg) | ||
|
||
#### Schematic: | ||
![Keyboard image](https://imagizer.imageshack.com/img922/5585/vXorPx.png) | ||
|
||
* *The header `J0` in not present in the normal pro mirco, for my purpose i directly soldered the `D5`, `C7` and `F0` pins to the pad of the microcontroller with micro soldering tools. | ||
|
||
* **To connect the promicro to PCB - Micro USB to the USB C, i made use of an old micro usb cable lying around, cut the cable to approprite length and exposed the wires, connected the male connector to female port of pro micro, Connected the Vcc and Gnd wires to Vcc and Gnd in the PCB, In PCB there's a differential pair (D+, D-) running from USB C port in the PCB to microcontroller in the PCB, in between the connection there's a resistor and filter capacitors, after removing both (bypassing the connection) i connected the D+ and D- wires to the bypassed point respectively (make sure the cable wires are also impedance matched) | ||
|
||
#### RGB Lighting: | ||
|
||
The stock RGB Lighting used on the keyboard is [this](https://www.luckylight.cn/en/products/smd-led/multi-color-smd-led/?series_code=sr187-rgb-series) `SR187RGBC` `Multi-color PLCC SMD LEDs`, to use this kind of LED with qmk I either have to write a custom led matrix code ( I don't know for sure if qmk already have any support this neither currently have the knowledge or time to do so ) or need to make a led matrix with qmk supported led matrix drivers, due to above mentioned reasons I haven't did any RGB lightings in the keyboard except a single ws2812 led | ||
|
||
I'm trying to make a custom PCB for this keyboard (will work for all redragon 60% keyboard (ig) ), I'll update here | ||
|
||
## Bootloader | ||
|
||
Entering the bootloader: | ||
|
||
* **Physical reset button**: Briefly press the button soldered to promicro (In my case i soldered the reset button to the promicro with wires and glued in outside in front of the case) | ||
* **Bootmagic key at [0,0]**: Hold this key down when plugging the keyboard in. Just the single key | ||
* **Keycode in layout**: Press the key mapped to `QK_BOOT`. Also in `layer #3` keys `DB_TOGG` `QK_RBT` `QK_BOOT` `QK_MAKE` are present at the top right corner for debug mode, keyboard reboot, bootloader mode and qmk make (`qmk flash` if shift is held ) in the respective order to make the flasing easier. | ||
`QK_MAKE` will type `qmk compile -kb handwired/rd_61_qmk -km default` in the terminal and `qmk flash` will type `qmk flash -kb handwired/rd_61_qmk -km default` | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# This file intentionally left blank |