From 997e66a3ab1bb3d07d878de44c83cc3e65388fc3 Mon Sep 17 00:00:00 2001 From: azzamsa Date: Mon, 13 Nov 2023 18:30:34 +0700 Subject: [PATCH 1/3] [Keyboard]: initial firmware for dweeeeep --- keyboards/fingerpunch/dweeeeep/config.h | 3 + keyboards/fingerpunch/dweeeeep/info.json | 70 +++++++++++++++++++ .../dweeeeep/keymaps/default/keymap.c | 24 +++++++ keyboards/fingerpunch/dweeeeep/readme.md | 27 +++++++ keyboards/fingerpunch/dweeeeep/rules.mk | 1 + 5 files changed, 125 insertions(+) create mode 100644 keyboards/fingerpunch/dweeeeep/config.h create mode 100644 keyboards/fingerpunch/dweeeeep/info.json create mode 100644 keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c create mode 100644 keyboards/fingerpunch/dweeeeep/readme.md create mode 100644 keyboards/fingerpunch/dweeeeep/rules.mk diff --git a/keyboards/fingerpunch/dweeeeep/config.h b/keyboards/fingerpunch/dweeeeep/config.h new file mode 100644 index 0000000000..10887bdf18 --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/config.h @@ -0,0 +1,3 @@ +#pragma once + +#define MASTER_LEFT diff --git a/keyboards/fingerpunch/dweeeeep/info.json b/keyboards/fingerpunch/dweeeeep/info.json new file mode 100644 index 0000000000..86847c06d5 --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/info.json @@ -0,0 +1,70 @@ +{ + "manufacturer": "sadekbaroudi", + "keyboard_name": "dweeeeep", + "url": "https://github.com/sadekbaroudi/sweep36/", + "maintainer": "Sadek Baroudi ", + "development_board": "promicro", + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["C6", "D7", "E6", "B4", "B5"], + "rows": ["D4", "F4", "F5", "F6"] + }, + "usb": { + "device_version": "1.0.0", + "vid": "0xFEFE", + "pid": "0x5111", + }, + "split": { + "enabled": true, + "soft_serial_pin": "D2" + }, + "layouts": { + "LAYOUT_split_3x5_3": { + "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": [4, 4], "x": 10, "y": 0}, + {"matrix": [4, 3], "x": 11, "y": 0}, + {"matrix": [4, 2], "x": 12, "y": 0}, + {"matrix": [4, 1], "x": 13, "y": 0}, + {"matrix": [4, 0], "x": 14, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + + {"matrix": [5, 4], "x": 10, "y": 1}, + {"matrix": [5, 3], "x": 11, "y": 1}, + {"matrix": [5, 2], "x": 12, "y": 1}, + {"matrix": [5, 1], "x": 13, "y": 1}, + {"matrix": [5, 0], "x": 14, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + + {"matrix": [6, 4], "x": 10, "y": 2}, + {"matrix": [6, 3], "x": 11, "y": 2}, + {"matrix": [6, 2], "x": 12, "y": 2}, + {"matrix": [6, 1], "x": 13, "y": 2}, + {"matrix": [6, 0], "x": 14, "y": 2}, + + {"matrix": [3, 2], "x": 4, "y": 3}, + {"matrix": [3, 4], "x": 3, "y": 3}, + {"matrix": [3, 3], "x": 2, "y": 3}, + + {"matrix": [7, 3], "x": 10, "y": 3}, + {"matrix": [7, 4], "x": 11, "y": 3}, + {"matrix": [7, 2], "x": 12, "y": 3} + ] + } + } +} diff --git a/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c b/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c new file mode 100644 index 0000000000..f4c3e308fe --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c @@ -0,0 +1,24 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┐ + * │ Q │ W │ E │ R │ T │ │ Y │ U │ I │ O │ P │ + * ├───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┤ + * │ A │ S │ D │ F │ G │ │ H │ J │ K │ L │ ; │ + * ├───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┤ + * │ Z │ X │ C │ V │ B │ │ N │ M │ , │ . │ / │ + * └───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┘ + * ┌───┐ ┌───┐ + * │GUI├───┐ ┌───┤Alt│ + * └───┤Bsp├───┐ ┌───┤Ent├───┘ + * └───┤ │ │ ├───┘ + * └───┘ └───┘ + */ + [0] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LGUI, KC_BSPC, KC_SPC, KC_SPC, KC_ENT, KC_RALT + ) +}; diff --git a/keyboards/fingerpunch/dweeeeep/readme.md b/keyboards/fingerpunch/dweeeeep/readme.md new file mode 100644 index 0000000000..ca85e3d24a --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/readme.md @@ -0,0 +1,27 @@ +# dweeeeep + +An ergonomic 30% keyboard + +* Keyboard Maintainer: [sadekbaroudi](https://github.com/sadekbaroudi) + +# Descripiton + +This was created after both of the other variations. It was created as an alternative to the sweeeeep. It's a sweeeeep with diodes. I know the principle of the original sweep was to have no diodes. I apologize, this was a special request to allow people to use a pro micro compatible controller, as they're much cheaper. + +# Firmware + +To build the firmware for this keyboard (after setting up your build environment): +``` + make fingerpunch/dweeeeep:default + # or + qmk compile --clean --keyboard fingerpunch/dweeeeep --keymap default +``` + +Example of flashing this keyboard: + +``` + make fingerpunch/dweeeeep/no-features:default:flash + qmk flash --clean --keyboard fingerpunch/dweeeeep --keymap default +``` + +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). diff --git a/keyboards/fingerpunch/dweeeeep/rules.mk b/keyboards/fingerpunch/dweeeeep/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From d5b0f4d71126286bb380e73f1d99c09686b85554 Mon Sep 17 00:00:00 2001 From: azzamsa Date: Mon, 13 Nov 2023 19:37:04 +0700 Subject: [PATCH 2/3] [Keyboard]: add miryoku layout for dweeeeep --- .../dweeeeep/keymaps/default/keymap.c | 145 +++++++++++++++--- .../keymaps/manna-harbour_miryoku/config.h | 14 ++ .../keymaps/manna-harbour_miryoku/keymap.c | 0 .../dweeeeep/keymaps/test/keymap.c | 24 +++ 4 files changed, 162 insertions(+), 21 deletions(-) create mode 100644 keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/config.h create mode 100644 keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/keymap.c create mode 100644 keyboards/fingerpunch/dweeeeep/keymaps/test/keymap.c diff --git a/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c b/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c index f4c3e308fe..0a94e60552 100644 --- a/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c +++ b/keyboards/fingerpunch/dweeeeep/keymaps/default/keymap.c @@ -1,24 +1,127 @@ #include QMK_KEYBOARD_H -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* - * ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┐ - * │ Q │ W │ E │ R │ T │ │ Y │ U │ I │ O │ P │ - * ├───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┤ - * │ A │ S │ D │ F │ G │ │ H │ J │ K │ L │ ; │ - * ├───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┤ - * │ Z │ X │ C │ V │ B │ │ N │ M │ , │ . │ / │ - * └───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┘ - * ┌───┐ ┌───┐ - * │GUI├───┐ ┌───┤Alt│ - * └───┤Bsp├───┐ ┌───┤Ent├───┘ - * └───┤ │ │ ├───┘ - * └───┘ └───┘ - */ - [0] = LAYOUT_split_3x5_3( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - KC_LGUI, KC_BSPC, KC_SPC, KC_SPC, KC_ENT, KC_RALT - ) + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST }; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * + * ,----------------------------------. ,----------------------------------. + * | Q | W | E | R | T | | Y | U | I | O | P | + * |------+------+------+------+------| |------+------+------+------+------| + * | A | S | D | F | G | | H | J | K | L | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | Z | X | C | V | B | | N | M | , | . | / | + * `----------------------------------' `----------------------------------' + * ,--------------------. ,--------------------. + * | LOWER| Enter| ' | |BckSpc| Space| RAISE| + * `--------------------' `--------------------. + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_QWERTY] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + LCTL_T(KC_A), LGUI_T(KC_S), LALT_T(KC_D), LSFT_T(KC_F), KC_G, KC_H, RSFT_T(KC_J), RALT_T(KC_K), RGUI_T(KC_L), RCTL_T(KC_SCLN), + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + LOWER, KC_ENT, KC_QUOT, KC_BSPC, KC_SPC, RAISE +), + +/* Colemak + * + * ,----------------------------------. ,----------------------------------. + * | Q | W | F | P | B | | J | L | U | Y | ; | + * |------+------+------+------+------| |------+------+------+------+------| + * | A | R | S | T | G | | M | N | E | I | O | + * |------+------+------+------+------| |------+------+------+------+------| + * | Z | X | C | D | V | | K | H | , | . | / | + * `-------------+--------------------' `----------------------------------' + * ,--------------------. ,--------------------. + * | LOWER| Enter| ' | |BckSpc| Space| RAISE| + * `--------------------' `--------------------. + */ + +// Default config uses home row mods. So hold each of the keys on the home row to use ctrl, gui, alt, or shift +[_COLEMAK] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, + LCTL_T(KC_A), LGUI_T(KC_R), LALT_T(KC_S), LSFT_T(KC_T), KC_G, KC_M, RSFT_T(KC_N), RALT_T(KC_E), RGUI_T(KC_I), RCTL_T(KC_O), + KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, + LOWER, KC_ENT, KC_QUOT, KC_BSPC, KC_SPC, RAISE +), + +/* Raise + * + * ,----------------------------------. ,----------------------------------. + * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | + * |------+------+------+------+------| |------+------+------+------+------| + * | Left | Down | Up | Right| Tab | | | - | = | [ | ] | + * |------+------+------+------+------| |------+------+------+------+------| + * | Ctrl| ` | GUI | Alt | | | | | | \ | ' | + * `----------------------------------' `----------------------------------' + * ,--------------------. ,--------------------. + * | LOWER| | | | | | RAISE| + * `--------------------' `--------------------. + */ +[_RAISE] = LAYOUT_split_3x5_3( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TAB, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, + KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, _______, _______, _______, _______, KC_BSLS, KC_QUOT, + _______, _______, _______, _______, _______, _______ +), + +/* Lower + * + * ,----------------------------------. ,----------------------------------. + * | ! | @ | # | $ | % | | ^ | & | * | ( | ) | + * |------+------+------+------+------| |------+------+------+------+------| + * | Esc | | | | | | | _ | + | { | } | + * |------+------+------+------+------| |------+------+------+------+------| + * | Caps| ~ | | | | | | | | | | " | + * `----------------------------------' `----------------------------------' + * ,--------------------. ,--------------------. + * | LOWER| | | | Del | | RAISE| + * `--------------------' `--------------------. + */ +[_LOWER] = LAYOUT_split_3x5_3( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_ESC, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, + KC_CAPS, KC_TILD, _______, _______, _______, _______, _______, _______, KC_PIPE, KC_DQT, + _______, _______, _______, KC_DEL, _______, _______ +), + +/* Adjust (Lower + Raise) + * + * ,----------------------------------. ,----------------------------------. + * | RGB_T| RGB_R| RGB_F| |QWERTY| | F1 | F2 | F3 | F4 | F5 | + * |------+------+------+------+------| |------+------+------+------+------| + * | SPD_I| HUE_I| SAT_I| VAL_I|COLEMK| | F6 | F7 | F8 | F9 | F10 | + * |------+------+------+------+------| |------+------+------+------+------| + * | SPD_D| HUE_D| SAT_D| VAL_D| | | F11 | F12 | | | Reset| + * `----------------------------------' `----------------------------------' + * ,--------------------. ,--------------------. + * | LOWER| | | | | | RAISE| + * `--------------------' `--------------------. + */ +[_ADJUST] = LAYOUT_split_3x5_3( + RGB_TOG, RGB_RMOD, RGB_MOD, _______, TO(_QWERTY), KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, + RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, TO(_COLEMAK), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_F11, KC_F12, _______, _______, QK_BOOT, + _______, _______, _______, _______, _______, _______ +) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + diff --git a/keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/config.h b/keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/config.h new file mode 100644 index 0000000000..df70aeb550 --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/config.h @@ -0,0 +1,14 @@ +#pragma once + +#define LAYOUT_miryoku( \ +K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ +K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ +K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ +N30, N31, K32, K33, K34, K35, K36, K37, N38, N39 \ +) \ +LAYOUT_split_3x5_3( \ +K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ +K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ +K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K32, K33, K34, K35, K36, K37 \ +) diff --git a/keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/keymap.c b/keyboards/fingerpunch/dweeeeep/keymaps/manna-harbour_miryoku/keymap.c new file mode 100644 index 0000000000..e69de29bb2 diff --git a/keyboards/fingerpunch/dweeeeep/keymaps/test/keymap.c b/keyboards/fingerpunch/dweeeeep/keymaps/test/keymap.c new file mode 100644 index 0000000000..f4c3e308fe --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/keymaps/test/keymap.c @@ -0,0 +1,24 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┐ + * │ Q │ W │ E │ R │ T │ │ Y │ U │ I │ O │ P │ + * ├───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┤ + * │ A │ S │ D │ F │ G │ │ H │ J │ K │ L │ ; │ + * ├───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┤ + * │ Z │ X │ C │ V │ B │ │ N │ M │ , │ . │ / │ + * └───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┘ + * ┌───┐ ┌───┐ + * │GUI├───┐ ┌───┤Alt│ + * └───┤Bsp├───┐ ┌───┤Ent├───┘ + * └───┤ │ │ ├───┘ + * └───┘ └───┘ + */ + [0] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LGUI, KC_BSPC, KC_SPC, KC_SPC, KC_ENT, KC_RALT + ) +}; From ac4e32a8f60c312ace1ee8f3237f5326a410d144 Mon Sep 17 00:00:00 2001 From: azzamsa Date: Tue, 14 Nov 2023 05:15:31 +0700 Subject: [PATCH 3/3] [Keyboard]: add fingerpunch feature support --- keyboards/fingerpunch/dweeeeep/config.h | 4 ++++ keyboards/fingerpunch/dweeeeep/dweeeeep.h | 2 ++ keyboards/fingerpunch/dweeeeep/rules.mk | 3 +++ 3 files changed, 9 insertions(+) create mode 100644 keyboards/fingerpunch/dweeeeep/dweeeeep.h diff --git a/keyboards/fingerpunch/dweeeeep/config.h b/keyboards/fingerpunch/dweeeeep/config.h index 10887bdf18..52f02fbdee 100644 --- a/keyboards/fingerpunch/dweeeeep/config.h +++ b/keyboards/fingerpunch/dweeeeep/config.h @@ -1,3 +1,7 @@ #pragma once +#include "keyboards/fingerpunch/src/config_pre.h" + #define MASTER_LEFT + +#include "keyboards/fingerpunch/src/config_post.h" diff --git a/keyboards/fingerpunch/dweeeeep/dweeeeep.h b/keyboards/fingerpunch/dweeeeep/dweeeeep.h new file mode 100644 index 0000000000..f2def1b2c4 --- /dev/null +++ b/keyboards/fingerpunch/dweeeeep/dweeeeep.h @@ -0,0 +1,2 @@ + +#include "keyboards/fingerpunch/src/fp.h" diff --git a/keyboards/fingerpunch/dweeeeep/rules.mk b/keyboards/fingerpunch/dweeeeep/rules.mk index 6e7633bfe0..75eb8cde8e 100644 --- a/keyboards/fingerpunch/dweeeeep/rules.mk +++ b/keyboards/fingerpunch/dweeeeep/rules.mk @@ -1 +1,4 @@ # This file intentionally left blank + + +include keyboards/fingerpunch/src/rules.mk