[Keyboard] Add keymap and settings for dactyl_manuform 6x6_5 thumb (#15526)
* Add dactyl manu 6x6 with stm32 support and 5thumb cluster * Add review changes * Add license to new files * Fix enums for custom keymap * Readme update * Fix readme to follow one from template * Add missing licence to files * Update keyboards/handwired/dactyl_manuform/6x6/blackpill_f411/rules.mk * Update keyboards/handwired/dactyl_manuform/6x6/blackpill_f411/rules.mk * Remove readme from onekey keyboard * Make separate macro for 5thumbmaster
parent
f59cbfb75c
commit
d7eb09949d
|
@ -31,3 +31,26 @@
|
||||||
{ R50, R51, R52, R53, XXX, XXX }, \
|
{ R50, R51, R52, R53, XXX, XXX }, \
|
||||||
{ R60, R61, R62, R63, XXX, XXX } \
|
{ R60, R61, R62, R63, XXX, XXX } \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#define LAYOUT_6x6_5_thumb( \
|
||||||
|
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
|
||||||
|
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
|
||||||
|
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
|
||||||
|
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \
|
||||||
|
L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45, \
|
||||||
|
L52, L53, R52, R53, \
|
||||||
|
L54, R51, \
|
||||||
|
L64, L65, R60, R61, \
|
||||||
|
L62, L63, R62, R63 \
|
||||||
|
) LAYOUT_6x6( \
|
||||||
|
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
|
||||||
|
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
|
||||||
|
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
|
||||||
|
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \
|
||||||
|
L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45, \
|
||||||
|
L52, L53, R52, R53, \
|
||||||
|
L54, XXX, XXX, R51, \
|
||||||
|
L64, L65, R60, R61, \
|
||||||
|
L62, L63, R62, R63 \
|
||||||
|
)
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
/* Copyright 2021 QMK
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define CH_CFG_ST_FREQUENCY 10000
|
||||||
|
|
||||||
|
#include_next <chconf.h>
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
/* Copyright 2021 QMK
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "config_common.h"
|
||||||
|
|
||||||
|
#undef SOFT_SERIAL_PIN
|
||||||
|
|
||||||
|
#define MATRIX_ROW_PINS { B12, B13, B14, B15, A8 , A9, A10}
|
||||||
|
#define MATRIX_COL_PINS { B1, B0, A7, A6, A5, A4}
|
||||||
|
/* COL2ROW, ROW2COL */
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
#define BOOTMAGIC_LITE_ROW 0
|
||||||
|
#define BOOTMAGIC_LITE_COLUMN 0
|
||||||
|
#define BOOTMAGIC_LITE_ROW_RIGHT 7
|
||||||
|
#define BOOTMAGIC_LITE_COLUMN_RIGHT 0
|
||||||
|
|
||||||
|
// in col2row col is input, and row is output
|
||||||
|
// #define SPLIT_HAND_MATRIX_GRID A10, A4
|
||||||
|
// 68kohm
|
||||||
|
#define SPLIT_HAND_PIN B10
|
||||||
|
|
||||||
|
/* connection */
|
||||||
|
#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode.
|
||||||
|
#define SOFT_SERIAL_PIN B6 // USART TX pin
|
||||||
|
#define SERIAL_USART_RX_PIN B7 // USART RX pin
|
||||||
|
#define SERIAL_USART_TX_PIN SOFT_SERIAL_PIN // USART TX pin
|
||||||
|
|
||||||
|
#define SELECT_SOFT_SERIAL_SPEED 1 // or 0, 2, 3, 4, 5
|
||||||
|
// 0: 460800 baud
|
||||||
|
// 1: 230400 baud (default)
|
||||||
|
// 2: 115200 baud
|
||||||
|
// 3: 57600 baud
|
||||||
|
// 4: 38400 baud
|
||||||
|
// 5: 19200 baud
|
||||||
|
#define SERIAL_USART_DRIVER SD1 // USART driver of TX and RX pin. default: SD1
|
||||||
|
#define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
|
||||||
|
#define SERIAL_USART_RX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
|
||||||
|
#define SERIAL_USART_TIMEOUT 20 // USART driver timeout. default 20
|
|
@ -0,0 +1,24 @@
|
||||||
|
/* Copyright 2021 QMK
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#define HAL_USE_SERIAL TRUE
|
||||||
|
|
||||||
|
#define PAL_USE_CALLBACKS TRUE
|
||||||
|
#define PAL_USE_WAIT TRUE
|
||||||
|
|
||||||
|
#include_next <halconf.h>
|
|
@ -0,0 +1,22 @@
|
||||||
|
/* Copyright 2021 QMK
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include_next "mcuconf.h"
|
||||||
|
|
||||||
|
#undef STM32_SERIAL_USE_USART1
|
||||||
|
#define STM32_SERIAL_USE_USART1 TRUE
|
|
@ -0,0 +1,30 @@
|
||||||
|
# Copyright 2021 Bartosz Nowak (@dumam)
|
||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
# MCU name
|
||||||
|
MCU = STM32F411
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = tinyuf2
|
||||||
|
|
||||||
|
# Build Options
|
||||||
|
# change yes to no to disable
|
||||||
|
#
|
||||||
|
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||||
|
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||||
|
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||||
|
CONSOLE_ENABLE = yes # Console for debug
|
||||||
|
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||||
|
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||||
|
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
|
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||||
|
AUDIO_ENABLE = no # Audio output
|
||||||
|
|
||||||
|
|
||||||
|
# Build Options
|
||||||
|
# change yes to no to disable
|
||||||
|
#
|
||||||
|
SPLIT_KEYBOARD = yes
|
||||||
|
# split settings
|
||||||
|
# https://beta.docs.qmk.fm/developing-qmk/c-development/hardware_drivers/serial_driver
|
||||||
|
SERIAL_DRIVER = usart
|
|
@ -20,21 +20,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
#include "config_common.h"
|
#include "config_common.h"
|
||||||
|
|
||||||
#define PRODUCT_ID 0x3636
|
#define PRODUCT_ID 0x3636
|
||||||
#define DEVICE_VER 0x0001
|
#define DEVICE_VER 0x0001
|
||||||
#define PRODUCT Dactyl-Manuform (6x6)
|
#define PRODUCT "Dactyl-Manuform (6x6)"
|
||||||
|
|
||||||
|
/* USB Device descriptor parameter */
|
||||||
|
|
||||||
/* key matrix size */
|
/* key matrix size */
|
||||||
// Rows are doubled-up
|
// Rows are doubled-up
|
||||||
#define MATRIX_ROWS 14
|
#define MATRIX_ROWS 14
|
||||||
#define MATRIX_COLS 6
|
#define MATRIX_COLS 6
|
||||||
|
|
||||||
// wiring of each half
|
|
||||||
#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 }
|
|
||||||
#define MATRIX_ROW_PINS { F5, F6, F7, B1, B3, B2, B6 }
|
|
||||||
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
||||||
|
|
||||||
// WS2812 RGB LED strip input and number of LEDs
|
|
||||||
#define RGB_DI_PIN D3
|
|
||||||
#define RGBLED_NUM 12
|
|
||||||
|
|
|
@ -1,8 +1,13 @@
|
||||||
|
// Copyright 2021 david@impstyle.com (@zwnk)
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
#include QMK_KEYBOARD_H
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
#define _QWERTY 0
|
enum custom_layers {
|
||||||
#define _LOWER 1
|
_QWERTY,
|
||||||
#define _RAISE 2
|
_LOWER,
|
||||||
|
_RAISE,
|
||||||
|
};
|
||||||
|
|
||||||
#define RAISE MO(_RAISE)
|
#define RAISE MO(_RAISE)
|
||||||
#define LOWER MO(_LOWER)
|
#define LOWER MO(_LOWER)
|
||||||
|
@ -15,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
KC_LSFT, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
|
KC_LSFT, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
|
||||||
KC_LCTL, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_BSLASH,
|
KC_LCTL, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_BSLASH,
|
||||||
KC_LBRC,KC_RBRC, KC_PLUS, KC_EQL,
|
KC_LBRC,KC_RBRC, KC_PLUS, KC_EQL,
|
||||||
RAISE,KC_SPC, KC_ENT, LOWER,
|
RAISE ,KC_SPC, KC_ENT, LOWER,
|
||||||
KC_TAB,KC_HOME, KC_END, KC_DEL,
|
KC_TAB,KC_HOME, KC_END, KC_DEL,
|
||||||
KC_BSPC, KC_GRV, KC_LGUI, KC_LALT
|
KC_BSPC, KC_GRV, KC_LGUI, KC_LALT
|
||||||
),
|
),
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
// Copyright 2021 Bartosz Nowak (@dumam)
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
enum custom_layers {
|
||||||
|
_QWERTY,
|
||||||
|
_LOWER,
|
||||||
|
_RAISE,
|
||||||
|
};
|
||||||
|
|
||||||
|
#define RAISE LT(_RAISE, KC_SPC)
|
||||||
|
#define LOWER LT(_LOWER, KC_ENT)
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
[_QWERTY] = LAYOUT_6x6_5_thumb(
|
||||||
|
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_ESC ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,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_MINS,
|
||||||
|
KC_LSFT,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT,
|
||||||
|
KC_LCTL,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_BSLASH,
|
||||||
|
KC_LBRC,KC_RBRC, KC_PLUS,KC_EQL ,
|
||||||
|
RAISE , LOWER ,
|
||||||
|
KC_TAB ,KC_HOME, KC_END ,KC_DEL,
|
||||||
|
KC_BSPC,KC_GRV , KC_LGUI ,KC_LALT
|
||||||
|
),
|
||||||
|
|
||||||
|
[_LOWER] = LAYOUT_6x6_5_thumb(
|
||||||
|
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_TILD,KC_EXLM,KC_AT ,KC_HASH,KC_DLR ,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_DEL,
|
||||||
|
_______,_______,_______,_______,_______,KC_LBRC, KC_RBRC,KC_P7 ,KC_P8 ,KC_P9 ,_______,KC_PLUS,
|
||||||
|
_______,KC_HOME,KC_PGUP,KC_PGDN,KC_END ,KC_LPRN, KC_RPRN,KC_P4 ,KC_P5 ,KC_P6 ,KC_MINS,KC_PIPE,
|
||||||
|
_______,_______,_______,_______,_______,_______, _______,KC_P1 ,KC_P2 ,KC_P3 ,KC_EQL ,KC_UNDS,
|
||||||
|
_______,KC_PSCR, _______,KC_P0 ,
|
||||||
|
_______, _______,
|
||||||
|
_______,_______, _______,_______,
|
||||||
|
_______,_______, _______,_______
|
||||||
|
),
|
||||||
|
|
||||||
|
[_RAISE] = LAYOUT_6x6_5_thumb(
|
||||||
|
KC_F12 ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,
|
||||||
|
_______,_______,_______,_______,_______,KC_LBRC, KC_RBRC,_______,KC_NLCK,KC_INS ,KC_SLCK,KC_MUTE,
|
||||||
|
_______,KC_LEFT,KC_UP ,KC_DOWN,KC_RGHT,KC_LPRN, KC_RPRN,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_VOLU,
|
||||||
|
_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,KC_VOLD,
|
||||||
|
_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,
|
||||||
|
_______,_______, KC_EQL ,_______,
|
||||||
|
_______, _______,
|
||||||
|
_______,_______, _______,_______,
|
||||||
|
_______,_______, _______,_______
|
||||||
|
)
|
||||||
|
};
|
|
@ -0,0 +1,59 @@
|
||||||
|
// Copyright 2021 Bartosz Nowak (@dumam)
|
||||||
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
#include QMK_KEYBOARD_H
|
||||||
|
|
||||||
|
enum custom_layers {
|
||||||
|
_QWERTY, // daily use and coding
|
||||||
|
_MOVE, // mouse, arrows, browsing useful keys
|
||||||
|
_CONF, // machine settings, keyboard settings, backlight
|
||||||
|
};
|
||||||
|
#define _KC_SPC LT(_CONF, KC_SPC)
|
||||||
|
#define _KC_ENT LT(_MOVE, KC_ENT)
|
||||||
|
|
||||||
|
#define KC_SPEC KC_SFTENT //KC_SFTENT - Right Shift when held, Enter when tapped
|
||||||
|
#define KC_INS_ KC_INS
|
||||||
|
#define KC_TAB_ KC_TAB
|
||||||
|
#define RESET__ RESET
|
||||||
|
|
||||||
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
|
[_QWERTY] = LAYOUT_6x6_5_thumb(
|
||||||
|
|
||||||
|
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_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,
|
||||||
|
KC_BSLS,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_EQL ,
|
||||||
|
KC_SLSH,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , KC_H ,KC_J ,KC_K ,KC_L ,KC_LBRC,KC_RBRC,
|
||||||
|
KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SCLN,KC_QUOT,
|
||||||
|
KC_LGUI,KC_ESC , KC_HOME,KC_END ,
|
||||||
|
_KC_SPC, _KC_ENT,
|
||||||
|
KC_TAB_,KC_BSPC, KC_DEL ,KC_RSFT,
|
||||||
|
KC_LCTL,KC_LALT, KC_RALT,KC_RCTL
|
||||||
|
),
|
||||||
|
|
||||||
|
[_CONF] = LAYOUT_6x6_5_thumb(
|
||||||
|
|
||||||
|
RESET__,XXXXXXX,XXXXXXX,XXXXXXX,KC_SLEP,KC_WAKE, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RESET__,
|
||||||
|
XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
|
||||||
|
XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
|
||||||
|
XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PGUP,XXXXXXX, XXXXXXX,KC_PGUP,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
|
||||||
|
XXXXXXX,KC_CAPS,KC_MENU,XXXXXXX,KC_PGDN,KC_LGUI, KC_LGUI,KC_PGDN,XXXXXXX,KC_INS_,KC_PSCR,XXXXXXX,
|
||||||
|
_______,_______, _______,_______,
|
||||||
|
_______, _______,
|
||||||
|
_______,_______, _______,_______,
|
||||||
|
_______,_______, _______,_______
|
||||||
|
),
|
||||||
|
|
||||||
|
[_MOVE] = LAYOUT_6x6_5_thumb(
|
||||||
|
|
||||||
|
RESET__,XXXXXXX,XXXXXXX,KC_MPRV,KC_MPLY,KC_MPLY, KC_MUTE,KC_VOLD,KC_VOLU,XXXXXXX,XXXXXXX,RESET__,
|
||||||
|
XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
|
||||||
|
XXXXXXX,XXXXXXX,XXXXXXX,KC_MS_U,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,KC_UP ,XXXXXXX,XXXXXXX,XXXXXXX,
|
||||||
|
XXXXXXX,XXXXXXX,KC_MS_L,KC_MS_D,KC_MS_R,XXXXXXX, XXXXXXX,KC_LEFT,KC_DOWN,KC_RGHT,XXXXXXX,XXXXXXX,
|
||||||
|
XXXXXXX,XXXXXXX,KC_BTN1,KC_BTN3,KC_BTN2,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
|
||||||
|
_______,_______, _______,_______,
|
||||||
|
_______, _______,
|
||||||
|
_______,_______, _______,_______,
|
||||||
|
_______,_______, _______,_______
|
||||||
|
),
|
||||||
|
};
|
|
@ -0,0 +1,29 @@
|
||||||
|
/* Copyright 2019
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "config_common.h"
|
||||||
|
|
||||||
|
// wiring of each half
|
||||||
|
#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 }
|
||||||
|
#define MATRIX_ROW_PINS { F5, F6, F7, B1, B3, B2, B6 }
|
||||||
|
|
||||||
|
#define DIODE_DIRECTION COL2ROW
|
||||||
|
|
||||||
|
// WS2812 RGB LED strip input and number of LEDs
|
||||||
|
#define RGB_DI_PIN D3
|
||||||
|
#define RGBLED_NUM 12
|
|
@ -0,0 +1,8 @@
|
||||||
|
# Copyright 2021 Bartosz Nowak (@dumam)
|
||||||
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
|
||||||
|
# MCU name
|
||||||
|
MCU = atmega32u4
|
||||||
|
|
||||||
|
# Bootloader selection
|
||||||
|
BOOTLOADER = caterina
|
|
@ -0,0 +1,63 @@
|
||||||
|
# Dactyl Manuform (6x6) optional 5thumb cluster
|
||||||
|
|
||||||
|
## Dactyl Manufrom 6x6
|
||||||
|
|
||||||
|
![Dactyl Manufrom 6x6](https://i.imgur.com/j8dsBgs.jpeg)
|
||||||
|
|
||||||
|
## Dactyl Manufrom 6x6 with 5 key thumb cluster
|
||||||
|
|
||||||
|
![Dactyl Manufrom 6x6 with thumb](https://i.imgur.com/C7FRiwd.jpeg)
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
* Keyboard Maintainer: [dumam for 5thumb](https://github.com/DuMaM) and others
|
||||||
|
* Hardware Supported: STM32F4BlackPill, Promicro and clones
|
||||||
|
|
||||||
|
Basic guide how to build 6x6 board is in root keyboard dir. This will help you to to create your own board with 6key based cluster with promicro. [For more click here](../readme.md).
|
||||||
|
|
||||||
|
If you want to use 5thumb cluster or stm32, you also should read base guide, but please came back here after you finish 😉.
|
||||||
|
|
||||||
|
For my build I used stm32f411 black pill. It's pretty cheap board and I highly recommend you to buy one from official distributors, to support board creators. [To buy it, please go into designer site](https://github.com/WeActTC/MiniSTM32F4x1).
|
||||||
|
|
||||||
|
I recommend using stm32 boards for this project, because QMK recently added support for [tinyuf2 bootloader](https://github.com/adafruit/tinyuf2). This bootloader is great for cases where you are going to use QMK Configurator and don't want to use any command line interface. This way when you need change keyboard layout, you only need an UF2 file. Setting up board in boot mode will allow you to drag and drop it on to created STM32F flash drive.
|
||||||
|
![BlackPill Schematic](blackpill_f411/STM32F4x1_PinoutDiagram_RichardBalint.png "Schematic of stm32f4 blackpill")
|
||||||
|
|
||||||
|
For case I used 3D models form here. Big thanks to creators.
|
||||||
|
|
||||||
|
- [dactyl-manuform-mini-keyboard](https://github.com/l4u/dactyl-manuform-mini-keyboard)
|
||||||
|
- [dactyl-manuform](https://github.com/carbonfet/dactyl-manuform)
|
||||||
|
- [Good build guide](https://medium.com/swlh/complete-idiot-guide-for-building-a-dactyl-manuform-keyboard-53454845b065)
|
||||||
|
|
||||||
|
## STM32 Usage
|
||||||
|
|
||||||
|
![BlackPill](https://raw.githubusercontent.com/WeActTC/MiniSTM32F4x1/master/images/STM32F4x1_PinoutDiagram_RichardBalint.png)
|
||||||
|
|
||||||
|
My fixes allows for using STM32 with all keymaps located in this dir. Please note that you need to pull down and up B10 pin. I used here 68kohm resistor. Don't use bigger one then 100kohm and lower then 10kohm. Pin you should use for this it B10. [More can be found here](https://beta.docs.qmk.fm/using-qmk/hardware-features/feature_split_keyboard#setting-handedness).
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
- any board could be master one, and they can be used separately from each other
|
||||||
|
- it's using full usart (4 cables), mostly due to some stability and half detection problems
|
||||||
|
- easy keymaps update -> drag and drop file
|
||||||
|
- pin used for rows (B12, B13, B14, B15, A8 , A9, A10) and for cols (B1, B0, A7, A6, A5, A4)
|
||||||
|
|
||||||
|
## Build
|
||||||
|
|
||||||
|
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).
|
||||||
|
After setting up your build environment you can try to build it with those commands.
|
||||||
|
|
||||||
|
Make Promicro based img:
|
||||||
|
|
||||||
|
qmk compile -kb keyboards/handwired/dactyl_manuform/6x6 -km default
|
||||||
|
|
||||||
|
Make BlackPill one:
|
||||||
|
|
||||||
|
qmk compile -kb keyboards/handwired/dactyl_manuform/6x6/blackpill_f411 -km default
|
||||||
|
|
||||||
|
## Bootloader for BlackPill
|
||||||
|
|
||||||
|
Enter the bootloader in 3 ways:
|
||||||
|
|
||||||
|
* **Bootmagic reset**: Hold down the key at F1 for left side, and F7 for right side.
|
||||||
|
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
|
||||||
|
* **Keycode in layout**: Press the key mapped to `RESET`, in dumam keymap it's assigned to F1 and F12 keys on mod layers.
|
|
@ -1,9 +1,3 @@
|
||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
BOOTLOADER = caterina
|
|
||||||
|
|
||||||
# Build Options
|
# Build Options
|
||||||
# change yes to no to disable
|
# change yes to no to disable
|
||||||
#
|
#
|
||||||
|
@ -17,3 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||||
AUDIO_ENABLE = no # Audio output
|
AUDIO_ENABLE = no # Audio output
|
||||||
SPLIT_KEYBOARD = yes
|
SPLIT_KEYBOARD = yes
|
||||||
|
|
||||||
|
DEFAULT_FOLDER = handwired/dactyl_manuform/6x6/promicro
|
||||||
|
|
Loading…
Reference in New Issue