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

New keyboard: RM Fullsize #20925

Merged
merged 25 commits into from
Jul 4, 2023
Merged
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
f4a092c
rm_fullsize initial commit
jrucker2004 Mar 24, 2023
58fea98
Add files via upload
Snipeye Mar 24, 2023
d239c93
update bootloader optoins
jrucker2004 Mar 24, 2023
8d28d75
Merge branch 'rm-fullsize' of https://github.com/RuckerMachine/qmk_fi…
jrucker2004 Mar 24, 2023
fa2fcf9
update readme
jrucker2004 Mar 24, 2023
ee33663
add image and url
RuckerMachine May 13, 2023
822ae4b
update name
RuckerMachine May 13, 2023
79eb923
update names
RuckerMachine May 13, 2023
9a88fce
Adding license info
RuckerMachine May 13, 2023
6b2801d
Whoops, wrong branch. Deleting file
RuckerMachine May 13, 2023
2d95403
Deleting per zvecr's suggestion
RuckerMachine May 13, 2023
def2af9
Deleting per zvecr's suggestion
RuckerMachine May 13, 2023
65c0e91
Update keyboards/rmkeebs/rm_fullsize/info.json
RuckerMachine May 13, 2023
86bb288
Update readme.md
RuckerMachine May 13, 2023
01c0c6e
Update keyboards/rmkeebs/rm_fullsize/info.json
RuckerMachine May 14, 2023
523cbc2
create rules.mk
jrucker2004 May 14, 2023
9589fcf
Update keyboards/rmkeebs/rm_fullsize/readme.md
RuckerMachine May 14, 2023
d353354
using imgur
RuckerMachine May 14, 2023
8751886
change to default ctrl+z keymap
jrucker2004 May 14, 2023
a34537e
change suggested by drashna
jrucker2004 May 14, 2023
45ec4cf
Update keyboards/rmkeebs/rm_fullsize/keymaps/default/keymap.c
RuckerMachine Jul 4, 2023
8068431
Update keyboards/rmkeebs/rm_fullsize/keymaps/default/keymap.c
RuckerMachine Jul 4, 2023
d6dcca8
Update info.json - remove default values
RuckerMachine Jul 4, 2023
b96ebe1
Update keyboards/rmkeebs/rm_fullsize/info.json
waffle87 Jul 4, 2023
137b85b
Update keyboards/rmkeebs/rm_fullsize/keymaps/default/keymap.c
waffle87 Jul 4, 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
155 changes: 155 additions & 0 deletions keyboards/rmkeebs/rm_fullsize/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
{
"manufacturer": "RuckerMachine",
"keyboard_name": "rm_fullsize",
"maintainer": "RuckerMachine",
"bootloader": "rp2040",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true,
"encoder": true
},
"matrix_pins": {
"cols": ["GP22", "GP23", "GP24", "GP25", "GP26", "GP27", "GP28", "GP29", "GP0", "GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP12", "GP13", "GP14", "GP16", "GP17"],
"rows": ["GP8", "GP7", "GP9", "GP20", "GP18", "GP19"]
},
"processor": "RP2040",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"encoder": {
"rotary": [
{ "pin_a": "GP11", "pin_b": "GP10" }
]
},
"layouts": {
"LAYOUT_all_split": {
waffle87 marked this conversation as resolved.
Show resolved Hide resolved
"layout": [
{ "matrix": [0, 0], "x": 0, "y": 0.25 },
{ "matrix": [0, 2], "x": 2, "y": 0.25 },
{ "matrix": [0, 3], "x": 3, "y": 0.25 },
{ "matrix": [0, 4], "x": 4, "y": 0.25 },
{ "matrix": [0, 5], "x": 5, "y": 0.25 },
{ "matrix": [0, 6], "x": 6.5, "y": 0.25 },
{ "matrix": [0, 7], "x": 7.5, "y": 0.25 },
{ "matrix": [0, 8], "x": 8.5, "y": 0.25 },
{ "matrix": [0, 9], "x": 9.5, "y": 0.25 },
{ "matrix": [0, 10], "x": 11, "y": 0.25 },
{ "matrix": [0, 11], "x": 12, "y": 0.25 },
{ "matrix": [0, 12], "x": 13, "y": 0.25 },
{ "matrix": [0, 13], "x": 14, "y": 0.25 },
{ "matrix": [0, 14], "x": 15.25, "y": 0.25 },
{ "matrix": [0, 15], "x": 16.25, "y": 0.25 },
{ "matrix": [3, 15], "x": 17.25, "y": 0.25 },
{ "matrix": [0, 16], "x": 18.5, "y": 0.25 },
{ "matrix": [0, 17], "x": 19.5, "y": 0.25 },
{ "matrix": [0, 18], "x": 20.5, "y": 0.25 },
{ "matrix": [0, 19], "x": 21.75, "y": 0 },

{ "matrix": [1, 0], "x": 0, "y": 1.5 },
{ "matrix": [1, 1], "x": 1, "y": 1.5 },
{ "matrix": [1, 2], "x": 2, "y": 1.5 },
{ "matrix": [1, 3], "x": 3, "y": 1.5 },
{ "matrix": [1, 4], "x": 4, "y": 1.5 },
{ "matrix": [1, 5], "x": 5, "y": 1.5 },
{ "matrix": [1, 6], "x": 6, "y": 1.5 },
{ "matrix": [1, 7], "x": 7, "y": 1.5 },
{ "matrix": [1, 8], "x": 8, "y": 1.5 },
{ "matrix": [1, 9], "x": 9, "y": 1.5 },
{ "matrix": [1, 10], "x": 10, "y": 1.5 },
{ "matrix": [1, 11], "x": 11, "y": 1.5 },
{ "matrix": [1, 12], "x": 12, "y": 1.5 },
{ "matrix": [1, 13], "w": 1, "x": 13, "y": 1.5 },
RuckerMachine marked this conversation as resolved.
Show resolved Hide resolved
{ "matrix": [2, 13], "w": 1, "x": 14, "y": 1.5 },
{ "matrix": [1, 14], "x": 15.25, "y": 1.5 },
{ "matrix": [1, 15], "x": 16.25, "y": 1.5 },
{ "matrix": [4, 15], "x": 17.25, "y": 1.5 },
{ "matrix": [1, 16], "x": 18.5, "y": 1.5 },
{ "matrix": [1, 17], "x": 19.5, "y": 1.5 },
{ "matrix": [1, 18], "x": 20.5, "y": 1.5 },
{ "matrix": [1, 19], "x": 21.5, "y": 1.5 },

{ "matrix": [2, 0], "w": 1.5, "x": 0, "y": 2.5 },
{ "matrix": [2, 1], "x": 1.5, "y": 2.5 },
{ "matrix": [2, 2], "x": 2.5, "y": 2.5 },
{ "matrix": [2, 3], "x": 3.5, "y": 2.5 },
{ "matrix": [2, 4], "x": 4.5, "y": 2.5 },
{ "matrix": [2, 5], "x": 5.5, "y": 2.5 },
{ "matrix": [2, 6], "x": 6.5, "y": 2.5 },
{ "matrix": [2, 7], "x": 7.5, "y": 2.5 },
{ "matrix": [2, 8], "x": 8.5, "y": 2.5 },
{ "matrix": [2, 9], "x": 9.5, "y": 2.5 },
{ "matrix": [2, 10], "x": 10.5, "y": 2.5 },
{ "matrix": [2, 11], "x": 11.5, "y": 2.5 },
{ "matrix": [2, 12], "x": 12.5, "y": 2.5 },
{ "matrix": [3, 13], "w": 1.5, "x": 13.5, "y": 2.5 },
{ "matrix": [2, 14], "x": 15.25, "y": 2.5 },
{ "matrix": [2, 15], "x": 16.25, "y": 2.5 },
{ "matrix": [5, 15], "x": 17.25, "y": 2.5 },
{ "matrix": [2, 16], "x": 18.5, "y": 2.5 },
{ "matrix": [2, 17], "x": 19.5, "y": 2.5 },
{ "matrix": [2, 18], "x": 20.5, "y": 2.5 },
{ "matrix": [2, 19], "h": 1, "x": 21.5, "y": 2.5 },

{ "matrix": [3, 0], "w": 1.75, "x": 0, "y": 3.5 },
{ "matrix": [3, 1], "x": 1.75, "y": 3.5 },
{ "matrix": [3, 2], "x": 2.75, "y": 3.5 },
{ "matrix": [3, 3], "x": 3.75, "y": 3.5 },
{ "matrix": [3, 4], "x": 4.75, "y": 3.5 },
{ "matrix": [3, 5], "x": 5.75, "y": 3.5 },
{ "matrix": [3, 6], "x": 6.75, "y": 3.5 },
{ "matrix": [3, 7], "x": 7.75, "y": 3.5 },
{ "matrix": [3, 8], "x": 8.75, "y": 3.5 },
{ "matrix": [3, 9], "x": 9.75, "y": 3.5 },
{ "matrix": [3, 10], "x": 10.75, "y": 3.5 },
{ "matrix": [3, 11], "x": 11.75, "y": 3.5 },
{ "matrix": [3, 12], "w": 2.25, "x": 12.75, "y": 3.5 },
{ "matrix": [3, 16], "x": 18.5, "y": 3.5 },
{ "matrix": [3, 17], "x": 19.5, "y": 3.5 },
{ "matrix": [3, 18], "x": 20.5, "y": 3.5 },
{ "matrix": [3, 19], "h": 1, "x": 21.5, "y": 3.5 },

{ "matrix": [4, 0], "w": 2.25, "x": 0, "y": 4.5 },
{ "matrix": [4, 1], "x": 2.25, "y": 4.5 },
{ "matrix": [4, 2], "x": 3.25, "y": 4.5 },
{ "matrix": [4, 3], "x": 4.25, "y": 4.5 },
{ "matrix": [4, 4], "x": 5.25, "y": 4.5 },
{ "matrix": [4, 5], "x": 6.25, "y": 4.5 },
{ "matrix": [4, 6], "x": 7.25, "y": 4.5 },
{ "matrix": [4, 7], "x": 8.25, "y": 4.5 },
{ "matrix": [4, 8], "x": 9.25, "y": 4.5 },
{ "matrix": [4, 9], "x": 10.25, "y": 4.5 },
{ "matrix": [4, 10], "x": 11.25, "y": 4.5 },
{ "matrix": [4, 11], "w": 2.75, "x": 12.25, "y": 4.5 },
{ "matrix": [3, 14], "x": 16.25, "y": 4.5 },
{ "matrix": [4, 16], "x": 18.5, "y": 4.5 },
{ "matrix": [4, 17], "x": 19.5, "y": 4.5 },
{ "matrix": [4, 18], "x": 20.5, "y": 4.5 },
{ "matrix": [4, 19], "h": 1, "x": 21.5, "y": 4.5 },

{ "matrix": [5, 0], "w": 1.25, "x": 0, "y": 5.5 },
{ "matrix": [5, 1], "w": 1.25, "x": 1.25, "y": 5.5 },
{ "matrix": [5, 2], "w": 1.25, "x": 2.5, "y": 5.5 },
{ "matrix": [5, 6], "w": 6.25, "x": 3.75, "y": 5.5 },
{ "matrix": [5, 9], "w": 1.25, "x": 10, "y": 5.5 },
{ "matrix": [5, 10], "w": 1.25, "x": 11.25, "y": 5.5 },
{ "matrix": [5, 11], "w": 1.25, "x": 12.5, "y": 5.5 },
{ "matrix": [5, 12], "w": 1.25, "x": 13.75, "y": 5.5 },
{ "matrix": [5, 13], "x": 15.25, "y": 5.5 },
{ "matrix": [4, 14], "x": 16.25, "y": 5.5 },
{ "matrix": [5, 14], "x": 17.25, "y": 5.5 },
{ "matrix": [5, 16], "w": 1, "x": 18.5, "y": 5.5 },
{ "matrix": [5, 17], "w": 1, "x": 19.5, "y": 5.5 },
{ "matrix": [5, 18], "x": 20.5, "y": 5.5 },
{ "matrix": [5, 19], "h": 1, "x": 21.5, "y": 5.5 }
]
}
}
}
56 changes: 56 additions & 0 deletions keyboards/rmkeebs/rm_fullsize/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
// Copyright 2022 JRucker (@JRucker)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

enum custom_keycodes {
KC_00 = QK_USER
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* ┌───┐
* ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ │ENC│
* │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│ │PSc│Scr│Pse│ │PLA│PRV│NXT│ └───┘
* └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
* │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Und│Bsp│ │Ins│Hom│PgU│ │Num│ / │ * │ - │
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┤ ├───┼───┼───┼───┤
* │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ │Del│End│PgD│ │ 7 │ 8 │ 9 │ = │
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┼───┤
* │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ │ 4 │ 5 │ 6 │ + │
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐ ├───┼───┼───┼───┤
* │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift │ │ ↑ │ │ 1 │ 2 │ 3 │Ent│
* ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┼───┼───┼───┤
* │Ctrl│GUI │Alt │ │ Alt│ GUI│Menu│Ctrl│ │ ← │ ↓ │ → │ │ 0 │ 00│ . │Del│
* └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───┴───┴───┴───┘
*/
[0] = LAYOUT_all_split(
waffle87 marked this conversation as resolved.
Show resolved Hide resolved
KC_ESC, 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_PSCR, KC_SCRL, KC_PAUS, KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE,

KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, C(KC_Z), KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PEQL,
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_P4, KC_P5, KC_P6, KC_PPLS,
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_UP, KC_P1, KC_P2, KC_P3, KC_PENT,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_00, KC_PDOT, KC_DEL
)
};

#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
RuckerMachine marked this conversation as resolved.
Show resolved Hide resolved
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }
};
#endif

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_00:
if (record->event.pressed) {
// when keycode KC_00 is pressed
SEND_STRING("00");
} else {
// when keycode KC_00 is released
}
break;
RuckerMachine marked this conversation as resolved.
Show resolved Hide resolved
}
return true;
};
1 change: 1 addition & 0 deletions keyboards/rmkeebs/rm_fullsize/keymaps/default/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ENCODER_MAP_ENABLE = yes
26 changes: 26 additions & 0 deletions keyboards/rmkeebs/rm_fullsize/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# rm_fullsize

![rm_full](https://i.imgur.com/k61zEtah.jpg)

A fullsized keyboard with multiple layout options and a big knob. The case is manchined out of 6061 Aluminum by Rucker Machine in the USA.

* Keyboard Maintainer: [Rucker Machine](https://github.com/RuckerMachine)
* Hardware Supported: RM Fullsized PCB, RP2040 controller
* Hardware Availability: [RM Fullsized](https://www.rmkeebs.com/product/rm-fullsized/)

Make example for this keyboard (after setting up your build environment):

make rmkeebs/rm_fullsize:default

Flashing example for this keyboard:

make rmkeebs/rm_fullsize:default:flash

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).

## Bootloader

Enter the bootloader in 2 ways:

* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (Escape key) and plug in the keyboard
* **Physical reset button**: Hold down the button on the back of the PCB labeled BOOTLOADER, then press and hold the button labeled RESET for 3 seconds, then release both buttons.
1 change: 1 addition & 0 deletions keyboards/rmkeebs/rm_fullsize/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# This file intentionally left blank