~ruther/qmk_firmware

2a3cd98fc6b362db82f0426229dfacf7c508e3f1 — jack 3 years ago 320219d
boardsource/technik_o data driven (#17635)

9 files changed, 168 insertions(+), 280 deletions(-)

M keyboards/boardsource/technik_o/config.h
M keyboards/boardsource/technik_o/info.json
M keyboards/boardsource/technik_o/keymaps/default/keymap.c
D keyboards/boardsource/technik_o/keymaps/default/readme.md
M keyboards/boardsource/technik_o/keymaps/via/keymap.c
D keyboards/boardsource/technik_o/keymaps/via/readme.md
M keyboards/boardsource/technik_o/rules.mk
M keyboards/boardsource/technik_o/technik_o.c
D keyboards/boardsource/technik_o/technik_o.h
M keyboards/boardsource/technik_o/config.h => keyboards/boardsource/technik_o/config.h +2 -114
@@ 1,5 1,5 @@
/*
Copyright 2020 Boardsource
Copyright 2022 Boardsource

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


@@ 16,62 16,19 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#pragma once

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID    0x4273
#define PRODUCT_ID   0x0079
#define DEVICE_VER   0x0001
#define MANUFACTURER Boardsource
#define PRODUCT      Technik-O

/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12

/*
 * Keyboard Matrix Assignments
 *
 * Change this to how you wired your keyboard
 * COLS: AVR pins used for columns, left to right
 * ROWS: AVR pins used for rows, top to bottom
 * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
 *                  ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
 *
 */
#define MATRIX_ROW_PINS {B0, B1, B2, B3}
#define MATRIX_COL_PINS {B5, B6, B7, F5, C7, D0, D1, D2, D3, D4, D5, D6}
#define UNUSED_PINS

/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW

//#define BACKLIGHT_PIN B7
//#define BACKLIGHT_LEVELS 3
#define BACKLIGHT_BREATHING
#define RGBLIGHT_ANIMATIONS
#define RGB_DI_PIN C6
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
// RGB Matrix Animation modes. Explicitly enabled
// For full list of effects, see:
// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
#define DRIVER_LED_TOTAL 58
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
#define ENABLE_RGB_MATRIX_BREATHING
#define ENABLE_RGB_MATRIX_BAND_SAT
#define ENABLE_RGB_MATRIX_BAND_VAL
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
#define ENABLE_RGB_MATRIX_CYCLE_ALL
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
#define ENABLE_RGB_MATRIX_DUAL_BEACON


@@ 85,81 42,12 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
#define ENABLE_RGB_MATRIX_SPLASH
#define ENABLE_RGB_MATRIX_MULTISPLASH
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
#ifdef RGBLIGHT_ENABLE
#    define RGBLED_NUM 10  // Number of LEDs
#endif

#define DRIVER_LED_TOTAL  58

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
//#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
//#define LOCKING_RESYNC_ENABLE

/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
 * This is useful for the Windows task manager shortcut (ctrl+shift+esc).
 */
//#define GRAVE_ESC_CTRL_OVERRIDE

/*
 * Force NKRO
 *
 * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
 * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
 * makefile for this to work.)
 *
 * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
 * until the next keyboard reset.
 *
 * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
 * fully operational during normal computer usage.
 *
 * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
 * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
 * bootmagic, NKRO mode will always be enabled until it is toggled again during a
 * power-up.
 *
 */
//#define FORCE_NKRO

/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.
 */

/* disable debug print */
//#define NO_DEBUG

/* disable print */
//#define NO_PRINT

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

/* Bootmagic Lite key configuration */
//#define BOOTMAGIC_LITE_ROW 0
//#define BOOTMAGIC_LITE_COLUMN 0

M keyboards/boardsource/technik_o/info.json => keyboards/boardsource/technik_o/info.json +141 -59
@@ 1,62 1,144 @@
{
    "keyboard_name": "Technik-O",
    "url": "https://boardsource.xyz",
    "maintainer": "Boardsource",
    "layouts": {
        "LAYOUT_ortho_4x12": {
            "layout": [
                { "label": "K01", "x": 0, "y": 0 },
                { "label": "K02", "x": 1, "y": 0 },
                { "label": "K03", "x": 2, "y": 0 },
                { "label": "K04", "x": 3, "y": 0 },
                { "label": "K05", "x": 4, "y": 0 },
                { "label": "K06", "x": 5, "y": 0 },
                { "label": "K07", "x": 6, "y": 0 },
                { "label": "K08", "x": 7, "y": 0 },
                { "label": "K09", "x": 8, "y": 0 },
                { "label": "K010", "x": 9, "y": 0 },
                { "label": "K011", "x": 10, "y": 0 },
                { "label": "K012", "x": 11, "y": 0 },

                { "label": "K11", "x": 0, "y": 1 },
                { "label": "K12", "x": 1, "y": 1 },
                { "label": "K13", "x": 2, "y": 1 },
                { "label": "K14", "x": 3, "y": 1 },
                { "label": "K15", "x": 4, "y": 1 },
                { "label": "K16", "x": 5, "y": 1 },
                { "label": "K17", "x": 6, "y": 1 },
                { "label": "K18", "x": 7, "y": 1 },
                { "label": "K19", "x": 8, "y": 1 },
                { "label": "K110", "x": 9, "y": 1 },
                { "label": "K111", "x": 10, "y": 1 },
                { "label": "K112", "x": 11, "y": 1 },

                { "label": "K21", "x": 0, "y": 2 },
                { "label": "K22", "x": 1, "y": 2 },
                { "label": "K23", "x": 2, "y": 2 },
                { "label": "K24", "x": 3, "y": 2 },
                { "label": "K25", "x": 4, "y": 2 },
                { "label": "K26", "x": 5, "y": 2 },
                { "label": "K27", "x": 6, "y": 2 },
                { "label": "K28", "x": 7, "y": 2 },
                { "label": "K29", "x": 8, "y": 2 },
                { "label": "K210", "x": 9, "y": 2 },
                { "label": "K211", "x": 10, "y": 2 },
                { "label": "K212", "x": 11, "y": 2 },

                { "label": "K31", "x": 0, "y": 3 },
                { "label": "K32", "x": 1, "y": 3 },
                { "label": "K33", "x": 2, "y": 3 },
                { "label": "K34", "x": 3, "y": 3 },
                { "label": "K35", "x": 4, "y": 3 },
                { "label": "K36", "x": 5, "y": 3 },
                { "label": "K37", "x": 6, "y": 3 },
                { "label": "K38", "x": 7, "y": 3 },
                { "label": "K39", "x": 8, "y": 3 },
                { "label": "K310", "x": 9, "y": 3 },
                { "label": "K311", "x": 10, "y": 3 },
                { "label": "K312", "x": 11, "y": 3 }
            ]
        }
  "manufacturer": "Boardsource",
  "keyboard_name": "Technik-O",
  "maintainer": "waffle87",
  "bootloader": "atmel-dfu",
  "diode_direction": "COL2ROW",
  "features": {
    "bootmagic": true,
    "extrakey": true,
    "mousekey": true,
    "nkro": true,
    "rgb_matrix": true
  },
  "matrix_pins": {
    "cols": ["B5", "B6", "B7", "F5", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6"],
    "rows": ["B0", "B1", "B2", "B3"]
  },
  "processor": "atmega32u4",
  "url": "https://boardsource.xyz/store/5ffb9b01edd0447f8023fdb2",
  "usb": {
    "device_version": "1.0.0",
    "pid": "0x0079",
    "vid": "0x4273"
  },
  "rgb_matrix": { 
    "layout": [
      { "flags": 2, "x": 220, "y": 17 },
      { "flags": 2, "x": 172, "y": 17 },
      { "flags": 2, "x": 112, "y": 17 },
      { "flags": 2, "x": 50, "y": 17 },
      { "flags": 2, "x": 4, "y": 17 },
      { "flags": 2, "x": 4, "y": 56 },
      { "flags": 2, "x": 50, "y": 56 },
      { "flags": 2, "x": 112, "y": 56 },
      { "flags": 2, "x": 172, "y": 56 },
      { "flags": 2, "x": 220, "y": 56 },
      { "flags": 1, "matrix": [0, 0], "x": 0, "y": 0 },
      { "flags": 4, "matrix": [0, 1], "x": 20, "y": 0 },
      { "flags": 4, "matrix": [0, 2], "x": 40, "y": 0 },
      { "flags": 4, "matrix": [0, 3], "x": 61, "y": 0 },
      { "flags": 4, "matrix": [0, 4], "x": 81, "y": 0 },
      { "flags": 4, "matrix": [0, 5], "x": 101, "y": 0 },
      { "flags": 4, "matrix": [0, 6], "x": 122, "y": 0 },
      { "flags": 4, "matrix": [0, 7], "x": 142, "y": 0 },
      { "flags": 4, "matrix": [0, 8], "x": 162, "y": 0 },
      { "flags": 4, "matrix": [0, 9], "x": 183, "y": 0 },
      { "flags": 4, "matrix": [0, 10], "x": 203, "y": 0 },
      { "flags": 1, "matrix": [0, 11], "x": 224, "y": 0 },
      { "flags": 1, "matrix": [1, 0], "x": 0, "y": 21 },
      { "flags": 4, "matrix": [1, 1], "x": 20, "y": 21 },
      { "flags": 4, "matrix": [1, 2], "x": 40, "y": 21 },
      { "flags": 4, "matrix": [1, 3], "x": 61, "y": 21 },
      { "flags": 4, "matrix": [1, 4], "x": 81, "y": 21 },
      { "flags": 4, "matrix": [1, 5], "x": 101, "y": 21 },
      { "flags": 4, "matrix": [1, 6], "x": 122, "y": 21 },
      { "flags": 4, "matrix": [1, 7], "x": 142, "y": 21 },
      { "flags": 4, "matrix": [1, 8], "x": 162, "y": 21 },
      { "flags": 4, "matrix": [1, 9], "x": 183, "y": 21 },
      { "flags": 4, "matrix": [1, 10], "x": 203, "y": 21 },
      { "flags": 1, "matrix": [1, 11], "x": 224, "y": 21 },
      { "flags": 1, "matrix": [2, 0], "x": 0, "y": 42 },
      { "flags": 4, "matrix": [2, 1], "x": 20, "y": 42 },
      { "flags": 4, "matrix": [2, 2], "x": 40, "y": 42 },
      { "flags": 4, "matrix": [2, 3], "x": 61, "y": 42 },
      { "flags": 4, "matrix": [2, 4], "x": 81, "y": 42 },
      { "flags": 4, "matrix": [2, 5], "x": 101, "y": 42 },
      { "flags": 4, "matrix": [2, 6], "x": 122, "y": 42 },
      { "flags": 4, "matrix": [2, 7], "x": 142, "y": 42 },
      { "flags": 4, "matrix": [2, 8], "x": 162, "y": 42 },
      { "flags": 4, "matrix": [2, 9], "x": 183, "y": 42 },
      { "flags": 4, "matrix": [2, 10], "x": 203, "y": 42 },
      { "flags": 1, "matrix": [2, 11], "x": 224, "y": 42 },
      { "flags": 1, "matrix": [3, 0], "x": 0, "y": 64 },
      { "flags": 1, "matrix": [3, 1], "x": 20, "y": 64 },
      { "flags": 1, "matrix": [3, 2], "x": 40, "y": 64 },
      { "flags": 1, "matrix": [3, 3], "x": 61, "y": 64 },
      { "flags": 1, "matrix": [3, 4], "x": 81, "y": 64 },
      { "flags": 4, "matrix": [3, 5], "x": 101, "y": 64 },
      { "flags": 4, "matrix": [3, 6], "x": 122, "y": 64 },
      { "flags": 1, "matrix": [3, 7], "x": 142, "y": 64 },
      { "flags": 1, "matrix": [3, 8], "x": 162, "y": 64 },
      { "flags": 1, "matrix": [3, 9], "x": 183, "y": 64 },
      { "flags": 1, "matrix": [3, 10], "x": 203, "y": 64 },
      { "flags": 1, "matrix": [3, 11], "x": 224, "y": 64 }
    ]
  },
  "community_layouts": [
    "ortho_4x12"
  ],
  "layouts": {
    "LAYOUT_ortho_4x12": {
      "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": [0, 5], "x": 5, "y": 0 },
        { "matrix": [0, 6], "x": 6, "y": 0 },
        { "matrix": [0, 7], "x": 7, "y": 0 },
        { "matrix": [0, 8], "x": 8, "y": 0 },
        { "matrix": [0, 9], "x": 9, "y": 0 },
        { "matrix": [0, 10], "x": 10, "y": 0 },
        { "matrix": [0, 11], "x": 11, "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": [1, 5], "x": 5, "y": 1 },
        { "matrix": [1, 6], "x": 6, "y": 1 },
        { "matrix": [1, 7], "x": 7, "y": 1 },
        { "matrix": [1, 8], "x": 8, "y": 1 },
        { "matrix": [1, 9], "x": 9, "y": 1 },
        { "matrix": [1, 10], "x": 10, "y": 1 },
        { "matrix": [1, 11], "x": 11, "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": [2, 5], "x": 5, "y": 2 },
        { "matrix": [2, 6], "x": 6, "y": 2 },
        { "matrix": [2, 7], "x": 7, "y": 2 },
        { "matrix": [2, 8], "x": 8, "y": 2 },
        { "matrix": [2, 9], "x": 9, "y": 2 },
        { "matrix": [2, 10], "x": 10, "y": 2 },
        { "matrix": [2, 11], "x": 11, "y": 2 },
        { "matrix": [3, 0], "x": 0, "y": 3 },
        { "matrix": [3, 1], "x": 1, "y": 3 },
        { "matrix": [3, 2], "x": 2, "y": 3 },
        { "matrix": [3, 3], "x": 3, "y": 3 },
        { "matrix": [3, 4], "x": 4, "y": 3 },
        { "matrix": [3, 5], "x": 5, "y": 3 },
        { "matrix": [3, 6], "x": 6, "y": 3 },
        { "matrix": [3, 7], "x": 7, "y": 3 },
        { "matrix": [3, 8], "x": 8, "y": 3 },
        { "matrix": [3, 9], "x": 9, "y": 3 },
        { "matrix": [3, 10], "x": 10, "y": 3 },
        { "matrix": [3, 11], "x": 11, "y": 3 }
      ]
    }
  }
}

M keyboards/boardsource/technik_o/keymaps/default/keymap.c => keyboards/boardsource/technik_o/keymaps/default/keymap.c +9 -14
@@ 1,4 1,4 @@
/* Copyright 2020 Boardsource
/* Copyright 2022 Boardsource
 *
 * 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


@@ 22,32 22,27 @@ enum layers {
    _LOWER,
};

// Readability keycodes
#define LOWER   MO(_LOWER)
#define RAISE   MO(_RAISE)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  [_MAIN] = LAYOUT_ortho_4x12(
    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC,
    KC_ESC,  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_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT ,
    RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT
  ),

  [_RAISE] = LAYOUT_ortho_4x12(
  KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR,    KC_ASTR,    KC_LPRN, KC_RPRN, KC_BSPC,
  KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS,    KC_PLUS,    KC_LCBR, KC_RCBR, KC_PIPE,
  _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END,  _______,
  QK_BOOT,   _______, _______, _______, _______, _______, _______, _______,    KC_MNXT,    KC_VOLD, KC_VOLU, KC_MPLY
    KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR,    KC_ASTR,    KC_LPRN, KC_RPRN, KC_BSPC,
    KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS,    KC_PLUS,    KC_LCBR, KC_RCBR, KC_PIPE,
    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END,  _______,
    QK_BOOT,   _______, _______, _______, _______, _______, _______, _______,    KC_MNXT,    KC_VOLD, KC_VOLU, KC_MPLY
  ),

  [_LOWER] = LAYOUT_ortho_4x12(
 KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC,
 KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS,
 _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
 RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC,
    KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS,
    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
    RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
  )

};


D keyboards/boardsource/technik_o/keymaps/default/readme.md => keyboards/boardsource/technik_o/keymaps/default/readme.md +0 -1
@@ 1,1 0,0 @@
# The default keymap for Technik-O

M keyboards/boardsource/technik_o/keymaps/via/keymap.c => keyboards/boardsource/technik_o/keymaps/via/keymap.c +15 -15
@@ 1,4 1,4 @@
/* Copyright 2020 Boardsource
/* Copyright 2022 Boardsource
 *
 * 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


@@ 22,32 22,32 @@ enum layers {
    _LOWER,
};

// Readability keycodes
#define LOWER   MO(_LOWER)
#define RAISE   MO(_RAISE)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  [_MAIN] = LAYOUT_ortho_4x12(
    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_BSPC,
    KC_ESC,  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_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_ENT ,
    RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, LOWER,   KC_SPC,  KC_SPC,  RAISE,   KC_LEFT, KC_DOWN, KC_UP,   KC_RGHT
  ),

  [_RAISE] = LAYOUT_ortho_4x12(
  KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR,    KC_ASTR,    KC_LPRN, KC_RPRN, KC_BSPC,
  KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS,    KC_PLUS,    KC_LCBR, KC_RCBR, KC_PIPE,
  _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END,  _______,
  QK_BOOT,   _______, _______, _______, _______, _______, _______, _______,    KC_MNXT,    KC_VOLD, KC_VOLU, KC_MPLY
    KC_TILD, KC_EXLM, KC_AT,   KC_HASH, KC_DLR,  KC_PERC, KC_CIRC, KC_AMPR,    KC_ASTR,    KC_LPRN, KC_RPRN, KC_BSPC,
    KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_UNDS,    KC_PLUS,    KC_LCBR, KC_RCBR, KC_PIPE,
    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END,  _______,
    QK_BOOT,   _______, _______, _______, _______, _______, _______, _______,    KC_MNXT,    KC_VOLD, KC_VOLU, KC_MPLY
  ),

  [_LOWER] = LAYOUT_ortho_4x12(
 KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC,
 KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS,
 _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
 RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_BSPC,
    KC_DEL,  KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_MINS, KC_EQL,  KC_LBRC, KC_RBRC, KC_BSLS,
    _______, KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
    RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
  ),
  [3] = LAYOUT_ortho_4x12(
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
    _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
  )

};


D keyboards/boardsource/technik_o/keymaps/via/readme.md => keyboards/boardsource/technik_o/keymaps/via/readme.md +0 -1
@@ 1,1 0,0 @@
# The via keymap for Technik-O

M keyboards/boardsource/technik_o/rules.mk => keyboards/boardsource/technik_o/rules.mk +0 -20
@@ 1,21 1,1 @@
# MCU name
MCU = atmega32u4

# Bootloader selection
BOOTLOADER = atmel-dfu

# 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 = no         # Console for debug
COMMAND_ENABLE = no         # 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
RGB_MATRIX_ENABLE = yes
RGB_MATRIX_DRIVER = WS2812
LAYOUTS = ortho_4x12

M keyboards/boardsource/technik_o/technik_o.c => keyboards/boardsource/technik_o/technik_o.c +1 -25
@@ 1,4 1,4 @@
/* Copyright 2020 Boardsource
/* Copyright 2022 Boardsource
 * Copyright 2021 @filterpaper
 *
 * This program is free software: you can redistribute it and/or modify


@@ 15,29 15,6 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include "technik_o.h"

#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = { {
    { 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21},
    { 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33},
    { 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45},
    { 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57}
}, {
    {220, 17}, {172, 17}, {112, 17}, { 50, 17}, {  4, 17}, {  4, 56}, { 50, 56}, {112, 56}, {172, 56}, {220, 56},
    {  0,  0}, { 20,  0}, { 40,  0}, { 61,  0}, { 81,  0}, {101,  0}, {122,  0}, {142,  0}, {162,  0}, {183,  0}, {203,  0}, {224,  0},
    {  0, 21}, { 20, 21}, { 40, 21}, { 61, 21}, { 81, 21}, {101, 21}, {122, 21}, {142, 21}, {162, 21}, {183, 21}, {203, 21}, {224, 21},
    {  0, 42}, { 20, 42}, { 40, 42}, { 61, 42}, { 81, 42}, {101, 42}, {122, 42}, {142, 42}, {162, 42}, {183, 42}, {203, 42}, {224, 42},
    {  0, 64}, { 20, 64}, { 40, 64}, { 61, 64}, { 81, 64}, {101, 64}, {122, 64}, {142, 64}, {162, 64}, {183, 64}, {203, 64}, {224, 64}
}, {
    2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
    1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
    1, 1, 1, 1, 1, 4, 4, 1, 1, 1, 1, 1
} };
#endif

#ifdef SWAP_HANDS_ENABLE
__attribute__ ((weak))
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {


@@ 47,4 24,3 @@ const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
    {{11, 3}, {10, 3}, {9, 3}, {8, 3}, {7, 3}, {6, 3}, {5, 3}, {4, 3}, {3, 3}, {2, 3}, {1, 3}, {0, 3}}
};
#endif


D keyboards/boardsource/technik_o/technik_o.h => keyboards/boardsource/technik_o/technik_o.h +0 -31
@@ 1,31 0,0 @@
/* Copyright 2020 Boardsource
 *
 * 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 "quantum.h"
#define LAYOUT_ortho_4x12( \
    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, K30, K31, K32, K33, K34, K35, \
    K36, K37, K38, K39, K40, K41, K42, K43, K44, K45, K46, K47 \
    ) { \
        {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, K30, K31, K32, K33, K34, K35}, \
        {K36, K37, K38, K39, K40, K41, K42, K43, K44, K45, K46, K47} \
    }