From db540e2832b0d3bed6ae2ca3a2c893d9c79a7f5d Mon Sep 17 00:00:00 2001 From: RJ Bernau Date: Sat, 25 Jul 2020 22:36:39 +0100 Subject: Adding VIA support for Dactyl Manuform 5x7 (#9462) * adding via support for Dactyl Manuform 5x7 * Changing Vendor ID from FEED to 444D (DM) * Update keyboards/handwired/dactyl_manuform/4x6/config.h Fixing typo in Dactyl Manuform 4x6 Product Id Co-authored-by: Joel Challis * Update keyboards/handwired/dactyl_manuform/4x5/config.h Fixing typo in Dactyl Manuform 4x5 Product Id Co-authored-by: Joel Challis Co-authored-by: Roland Bernau Co-authored-by: Joel Challis --- keyboards/handwired/dactyl_manuform/5x7/5x7.h | 4 +- keyboards/handwired/dactyl_manuform/5x7/config.h | 5 +- .../dactyl_manuform/5x7/keymaps/via/config.h | 27 +++++ .../dactyl_manuform/5x7/keymaps/via/keymap.c | 123 +++++++++++++++++++++ .../dactyl_manuform/5x7/keymaps/via/rules.mk | 1 + 5 files changed, 156 insertions(+), 4 deletions(-) create mode 100644 keyboards/handwired/dactyl_manuform/5x7/keymaps/via/config.h create mode 100644 keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c create mode 100644 keyboards/handwired/dactyl_manuform/5x7/keymaps/via/rules.mk (limited to 'keyboards/handwired/dactyl_manuform/5x7') diff --git a/keyboards/handwired/dactyl_manuform/5x7/5x7.h b/keyboards/handwired/dactyl_manuform/5x7/5x7.h index 88b68b31e6..c01fce957c 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/5x7.h +++ b/keyboards/handwired/dactyl_manuform/5x7/5x7.h @@ -6,8 +6,8 @@ #ifdef USE_I2C #include #ifdef __AVR__ - #include - #include + #include + #include #endif #endif diff --git a/keyboards/handwired/dactyl_manuform/5x7/config.h b/keyboards/handwired/dactyl_manuform/5x7/config.h index bf56d08251..32c351a472 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/config.h +++ b/keyboards/handwired/dactyl_manuform/5x7/config.h @@ -20,8 +20,9 @@ along with this program. If not, see . #include "config_common.h" - -#define PRODUCT Dactyl-Manuform (Ergodox) +#define PRODUCT_ID 0x3537 +#define DEVICE_VER 0x0001 +#define PRODUCT Dactyl-Manuform (5x7) /* key matrix size */ // Rows are doubled-up diff --git a/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/config.h b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/config.h new file mode 100644 index 0000000000..29ab59ad66 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/config.h @@ -0,0 +1,27 @@ +/* +Copyright 2012 Jun Wako + +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 . +*/ + + +#pragma once + + +#define USE_SERIAL + +#define MASTER_LEFT +// #define MASTER_RIGHT +//#define EE_HANDS +// Rows are doubled-up diff --git a/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c new file mode 100644 index 0000000000..07c5ec9ba3 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c @@ -0,0 +1,123 @@ +#include QMK_KEYBOARD_H + + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _QWERTY 0 +#define _FN 1 +#define _NUMPAD 2 +#define _BLANK 3 + +// Some basic macros +#define TASK LCTL(LSFT(KC_ESC)) +#define TAB_R LCTL(KC_TAB) +#define TAB_L LCTL(LSFT(KC_TAB)) +#define TAB_RO LCTL(LSFT(KC_T)) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = LAYOUT_5x7( + // left hand + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, TAB_RO, + OSM(MOD_LSFT), KC_Z, KC_X, KC_C, KC_V, KC_B, + KC_CAPS, KC_LGUI, TAB_L, TAB_R, + TT(_FN), KC_SPC, + KC_END, KC_HOME, + KC_PSCR, TASK, + // right hand + KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, + KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + TG(_NUMPAD), KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, OSM(MOD_RSFT), + KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, + KC_BSPC, KC_ENT, + KC_PGUP, KC_PGDN, + KC_LCTL, KC_LALT), + +[_FN] = LAYOUT_5x7( + // left hand + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + _______, _______, _______, KC_UP, _______, _______, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, RESET, + _______, _______, _______, _______, _______, _______, + KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, + _______, _______, + _______, _______, + _______, _______, + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + KC_DEL, _______, + _______, _______, + _______, _______), + +[_NUMPAD] = LAYOUT_5x7( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, + _______, _______, + // right hand + _______, _______, KC_NLCK, _______, KC_PMNS, KC_PPLS, _______, + _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, _______, KC_P4, KC_P5, KC_P6, KC_PAST, _______, + _______, KC_P1, KC_P2, KC_P3, KC_PSLS, _______, + KC_P0, KC_PDOT, _______, _______, + _______, KC_PENT, + _______, _______, + _______, _______), + + +[_NUMPAD] = LAYOUT_5x7( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, + _______, _______, + // right hand + _______, _______, KC_NLCK, _______, KC_PMNS, KC_PPLS, _______, + _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, _______, KC_P4, KC_P5, KC_P6, KC_PAST, _______, + _______, KC_P1, KC_P2, KC_P3, KC_PSLS, _______, + KC_P0, KC_PDOT, _______, _______, + _______, KC_PENT, + _______, _______, + _______, _______), + +[_BLANK] = LAYOUT_5x7( + // left hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, + _______, _______, + // right hand + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + _______, _______, + _______, _______), + + +}; diff --git a/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/rules.mk b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes -- cgit v1.2.3