~ruther/qmk_firmware

db540e2832b0d3bed6ae2ca3a2c893d9c79a7f5d — RJ Bernau 5 years ago a0b1059
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 <git@zvecr.com>

* Update keyboards/handwired/dactyl_manuform/4x5/config.h

Fixing typo in Dactyl Manuform 4x5 Product Id

Co-authored-by: Joel Challis <git@zvecr.com>

Co-authored-by: Roland Bernau <roland@bernau.dev>
Co-authored-by: Joel Challis <git@zvecr.com>
M keyboards/handwired/dactyl_manuform/4x5/config.h => keyboards/handwired/dactyl_manuform/4x5/config.h +2 -2
@@ 21,9 21,9 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x3060
#define PRODUCT_ID      0x3435
#define DEVICE_VER      0x0001

#define MANUFACTURER    tshort
#define DESCRIPTION     A split keyboard for the cheap makers


M keyboards/handwired/dactyl_manuform/4x6/config.h => keyboards/handwired/dactyl_manuform/4x6/config.h +1 -3
@@ 21,10 21,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x3060
#define PRODUCT_ID      0x3436
#define DEVICE_VER      0x0001
#define MANUFACTURER    tshort
#define DESCRIPTION     A split keyboard for the cheap makers

/* key matrix size */

M keyboards/handwired/dactyl_manuform/5x6/config.h => keyboards/handwired/dactyl_manuform/5x6/config.h +2 -1
@@ 20,7 20,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#include "config_common.h"


#define PRODUCT_ID      0x3536
#define DEVICE_VER      0x0001
#define PRODUCT         Dactyl-Manuform (5x6)

/* key matrix size */

M keyboards/handwired/dactyl_manuform/5x7/5x7.h => keyboards/handwired/dactyl_manuform/5x7/5x7.h +2 -2
@@ 6,8 6,8 @@
#ifdef USE_I2C
#include <stddef.h>
#ifdef __AVR__
  #include <avR/io.h>
  #include <avR/inteRRupt.h>
  #include <avr/io.h>
  #include <avr/interrupt.h>
#endif
#endif


M keyboards/handwired/dactyl_manuform/5x7/config.h => keyboards/handwired/dactyl_manuform/5x7/config.h +3 -2
@@ 20,8 20,9 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#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

A keyboards/handwired/dactyl_manuform/5x7/keymaps/via/config.h => keyboards/handwired/dactyl_manuform/5x7/keymaps/via/config.h +27 -0
@@ 0,0 1,27 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>

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 USE_SERIAL

#define MASTER_LEFT
// #define MASTER_RIGHT
//#define EE_HANDS
// Rows are doubled-up

A keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c => keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c +123 -0
@@ 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
                     _______,   _______,   _______,   _______,   _______,   _______,   _______,
                     _______,   _______,   _______,   _______,   _______,   _______,   _______,
                     _______,   _______,   _______,   _______,   _______,   _______,   _______,
                                _______,   _______,   _______,   _______,   _______,   _______,
                                                      _______,   _______,   _______,   _______,
        _______, _______,
        _______, _______,
        _______, _______),


};

A keyboards/handwired/dactyl_manuform/5x7/keymaps/via/rules.mk => keyboards/handwired/dactyl_manuform/5x7/keymaps/via/rules.mk +1 -0
@@ 0,0 1,1 @@
VIA_ENABLE = yes

M keyboards/handwired/dactyl_manuform/6x6/config.h => keyboards/handwired/dactyl_manuform/6x6/config.h +2 -1
@@ 20,7 20,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#include "config_common.h"


#define PRODUCT_ID      0x3636
#define DEVICE_VER      0x0001
#define PRODUCT         Dactyl-Manuform (6x6)

/* key matrix size */

M keyboards/handwired/dactyl_manuform/config.h => keyboards/handwired/dactyl_manuform/config.h +1 -3
@@ 21,9 21,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x3060
#define DEVICE_VER      0x0001
#define VENDOR_ID       0x444D
#define MANUFACTURER    tshort
// defined in subfolder
#define DESCRIPTION     A split keyboard for the cheap makers

M keyboards/handwired/dactyl_manuform/dmote/62key/config.h => keyboards/handwired/dactyl_manuform/dmote/62key/config.h +2 -1
@@ 1,7 1,8 @@
#pragma once

#include "config_common.h"

#define PRODUCT_ID      0x3632
#define DEVICE_VER      0x0001
#define PRODUCT  DMOTE (62-key)
#define MATRIX_ROWS 12
#define MATRIX_COLS 6