Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding my keymap (redragon k617 port) #22410

Merged
merged 33 commits into from
Dec 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
ed69349
Adding my keymap (redragon k617 port)
abhijithabhiakl Nov 6, 2023
6598c30
Update keyboards/handwired/rd_61_qmk/config.h
abhijithabhiakl Nov 6, 2023
22d4db6
Update keyboards/handwired/rd_61_qmk/config.h
abhijithabhiakl Nov 6, 2023
6ad84f1
Update keyboards/handwired/rd_61_qmk/config.h
abhijithabhiakl Nov 6, 2023
37ab427
Update keyboards/handwired/rd_61_qmk/info.json
abhijithabhiakl Nov 6, 2023
a10941e
Update info.json
abhijithabhiakl Nov 6, 2023
873309d
Update keyboards/handwired/rd_61_qmk/keymaps/default/keymap.c
abhijithabhiakl Nov 6, 2023
f75a330
Update keyboards/handwired/rd_61_qmk/keymaps/via/keymap.c
abhijithabhiakl Nov 6, 2023
ad8bca6
Update keyboards/handwired/rd_61_qmk/readme.md
abhijithabhiakl Nov 6, 2023
74a47d4
Update readme.md
abhijithabhiakl Nov 6, 2023
7ead364
Update config.h
abhijithabhiakl Nov 6, 2023
7313ba2
Update keyboards/handwired/rd_61_qmk/info.json
abhijithabhiakl Nov 6, 2023
68382cb
Update keyboards/handwired/rd_61_qmk/info.json
abhijithabhiakl Nov 6, 2023
ad541a4
Update keyboards/handwired/rd_61_qmk/keymaps/default/keymap.c
abhijithabhiakl Nov 6, 2023
88189d9
Update keyboards/handwired/rd_61_qmk/readme.md
abhijithabhiakl Nov 6, 2023
91b88c6
Update keyboards/handwired/rd_61_qmk/keymaps/via/rules.mk
abhijithabhiakl Nov 6, 2023
eb48e9e
Update info.json
abhijithabhiakl Nov 7, 2023
387b8b2
Update readme.md
abhijithabhiakl Nov 7, 2023
f30f584
Merge branch 'qmk:master' into dev
abhijithabhiakl Nov 7, 2023
fee0baa
Merge branch 'qmk:master' into dev
abhijithabhiakl Nov 9, 2023
ddaaaed
info.json format, via support remove (not working for me)
abhijithabhiakl Nov 9, 2023
0f61f07
readme.md update
abhijithabhiakl Nov 10, 2023
c3982e1
Merge branch 'qmk:master' into dev
abhijithabhiakl Nov 11, 2023
10235ef
Merge branch 'qmk:master' into dev
abhijithabhiakl Nov 12, 2023
2996504
Merge branch 'qmk:master' into dev
abhijithabhiakl Nov 14, 2023
fd1b490
Merge branch 'qmk:master' into dev
abhijithabhiakl Nov 23, 2023
0cf4a14
Update keyboards/handwired/rd_61_qmk/info.json
abhijithabhiakl Dec 13, 2023
65f9ece
Merge branch 'master' into dev
abhijithabhiakl Dec 18, 2023
c141bfc
Update keymap.c
abhijithabhiakl Dec 19, 2023
b6713b9
Update keyboards/handwired/rd_61_qmk/config.h
abhijithabhiakl Dec 19, 2023
73f7a68
Update keyboards/handwired/rd_61_qmk/info.json
abhijithabhiakl Dec 19, 2023
a9efb9c
Merge branch 'master' into dev
abhijithabhiakl Dec 19, 2023
5815019
Merge branch 'master' into dev
abhijithabhiakl Dec 20, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions keyboards/handwired/rd_61_qmk/config.h
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
126 changes: 126 additions & 0 deletions keyboards/handwired/rd_61_qmk/info.json
abhijithabhiakl marked this conversation as resolved.
Show resolved Hide resolved
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
},
abhijithabhiakl marked this conversation as resolved.
Show resolved Hide resolved
"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}
]
}
}
}
37 changes: 37 additions & 0 deletions keyboards/handwired/rd_61_qmk/keymaps/default/keymap.c
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
)
};
53 changes: 53 additions & 0 deletions keyboards/handwired/rd_61_qmk/readme.md
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
abhijithabhiakl marked this conversation as resolved.
Show resolved Hide resolved

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`

1 change: 1 addition & 0 deletions keyboards/handwired/rd_61_qmk/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# This file intentionally left blank