1
0
Fork 0

[Keyboard] move @omkbd 's boards to /omkbd (#16116)

This commit is contained in:
peepeetee 2022-02-01 10:11:18 +08:00 committed by GitHub
parent 658d211804
commit 8515d12e20
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
161 changed files with 51 additions and 51 deletions

View file

View file

@ -0,0 +1,86 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0100
#define MANUFACTURER Omkbd
#define PRODUCT ErgoDash
/* key matrix size */
// Rows are doubled-up
#define MATRIX_ROWS 10
#define MATRIX_COLS 7
// wiring of each half
#define MATRIX_ROW_PINS { D4, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2 }
// #define MATRIX_COL_PINS { B2, B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order
#define DIODE_DIRECTION COL2ROW
/* define tapping term */
#define TAPPING_TERM 120
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
#define AUDIO_PIN C6
/* number of backlight levels */
#ifdef BACKLIGHT_ENABLE
#define BACKLIGHT_PIN B6
#define BACKLIGHT_LEVELS 7
// #define BACKLIGHT_BREATHING
// #define BREATHING_PERIOD 4
#endif
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* 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
/* ws2812 RGB LED */
#define RGB_DI_PIN D3
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 24
#define RGBLIGHT_SPLIT
#define RGBLED_SPLIT { 12, 12 } // Number of LEDs
// The LEDs on the slave half go in reverse order
#define RGBLIGHT_LED_MAP { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, \
23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12}
#define SOFT_SERIAL_PIN D0
#define SELECT_SOFT_SERIAL_SPEED 1
/*Sets the protocol speed when using serial communication*/
//Speeds:
//0: about 189kbps (Experimental only)
//1: about 137kbps (default)
//2: about 75kbps
//3: about 39kbps
//4: about 26kbps
//5: about 20kbps

View file

@ -0,0 +1,364 @@
{
"keyboard_name": "ErgoDash rev1.2",
"url": "",
"maintainer": "qmk",
"layouts": {
"LAYOUT_4key": {
"layout": [
{"y": 0.375, "x": 0.5, "label": "L00"},
{"y": 0.375, "x": 1.5, "label": "L01"},
{"y": 0.125, "x": 2.5, "label": "L02"},
{"y": 0, "x": 3.5, "label": "L03"},
{"y": 0.125, "x": 4.5, "label": "L04"},
{"y": 0.25, "x": 5.5, "label": "L05"},
{"y": 0.75, "x": 6.5, "label": "L06"},
{"y": 0.75, "x": 12, "label": "R00"},
{"y": 0.25, "x": 13, "label": "R01"},
{"y": 0.125, "x": 14, "label": "R02"},
{"y": 0, "x": 15, "label": "R03"},
{"y": 0.125, "x": 16, "label": "R04"},
{"y": 0.375, "x": 17, "label": "R05"},
{"y": 0.375, "x": 18, "label": "R06"},
{"y": 1.375, "x": 0.5, "label": "L10"},
{"y": 1.375, "x": 1.5, "label": "L11"},
{"y": 1.125, "x": 2.5, "label": "L12"},
{"y": 1, "x": 3.5, "label": "L13"},
{"y": 1.125, "x": 4.5, "label": "L14"},
{"y": 1.25, "x": 5.5, "label": "L15"},
{"y": 1.75, "x": 6.5, "label": "L16"},
{"y": 1.75, "x": 12, "label": "R10"},
{"y": 1.25, "x": 13, "label": "R11"},
{"y": 1.125, "x": 14, "label": "R12"},
{"y": 1, "x": 15, "label": "R13"},
{"y": 1.125, "x": 16, "label": "R14"},
{"y": 1.375, "x": 17, "label": "R15"},
{"y": 1.375, "x": 18, "label": "R16"},
{"y": 2.375, "x": 0.5, "label": "L20"},
{"y": 2.375, "x": 1.5, "label": "L21"},
{"y": 2.125, "x": 2.5, "label": "L22"},
{"y": 2, "x": 3.5, "label": "L23"},
{"y": 2.125, "x": 4.5, "label": "L24"},
{"y": 2.25, "x": 5.5, "label": "L25"},
{"y": 2.75, "x": 6.5, "label": "L26"},
{"y": 2.75, "x": 12, "label": "R20"},
{"y": 2.25, "x": 13, "label": "R21"},
{"y": 2.125, "x": 14, "label": "R22"},
{"y": 2, "x": 15, "label": "R23"},
{"y": 2.125, "x": 16, "label": "R24"},
{"y": 2.375, "x": 17, "label": "R25"},
{"y": 2.375, "x": 18, "label": "R26"},
{"y": 3.375, "x": 0.5, "label": "L30"},
{"y": 3.375, "x": 1.5, "label": "L31"},
{"y": 3.125, "x": 2.5, "label": "L32"},
{"y": 3, "x": 3.5, "label": "L33"},
{"y": 3.125, "x": 4.5, "label": "L34"},
{"y": 3.25, "x": 5.5, "label": "L35"},
{"y": 4, "x": 6.5, "label": "L36"},
{"y": 4, "x": 12, "label": "R30"},
{"y": 3.25, "x": 13, "label": "R31"},
{"y": 3.125, "x": 14, "label": "R32"},
{"y": 3, "x": 15, "label": "R33"},
{"y": 3.125, "x": 16, "label": "R34"},
{"y": 3.375, "x": 17, "label": "R35"},
{"y": 3.375, "x": 18, "label": "R36"},
{"y": 4.375, "x": 0.5, "label": "L40"},
{"y": 4.375, "x": 1.5, "label": "L41"},
{"y": 4.125, "x": 2.5, "label": "L42"},
{"y": 4, "x": 3.5, "label": "L43"},
{"y": 5, "x": 5.5, "label": "L44"},
{"y": 5, "x": 6.5, "label": "L45"},
{"h": 2, "y": 4, "x": 7.5, "label": "L46"},
{"h": 2, "y": 4, "x": 11, "label": "R40"},
{"y": 5, "x": 12, "label": "R41"},
{"y": 5, "x": 13, "label": "R42"},
{"y": 4, "x": 15, "label": "R43"},
{"y": 4.125, "x": 16, "label": "R44"},
{"y": 4.375, "x": 17, "label": "R45"},
{"y": 4.375, "x": 18, "label": "R46"}]
},
"LAYOUT_4key_2u_inner": {
"layout": [
{"y": 0.375, "x": 0.5, "label": "L00"},
{"y": 0.375, "x": 1.5, "label": "L01"},
{"y": 0.125, "x": 2.5, "label": "L02"},
{"y": 0, "x": 3.5, "label": "L03"},
{"y": 0.125, "x": 4.5, "label": "L04"},
{"y": 0.25, "x": 5.5, "label": "L05"},
{"y": 0.75, "x": 6.5, "label": "L06"},
{"y": 0.75, "x": 12, "label": "R00"},
{"y": 0.25, "x": 13, "label": "R01"},
{"y": 0.125, "x": 14, "label": "R02"},
{"y": 0, "x": 15, "label": "R03"},
{"y": 0.125, "x": 16, "label": "R04"},
{"y": 0.375, "x": 17, "label": "R05"},
{"y": 0.375, "x": 18, "label": "R06"},
{"y": 1.375, "x": 0.5, "label": "L10"},
{"y": 1.375, "x": 1.5, "label": "L11"},
{"y": 1.125, "x": 2.5, "label": "L12"},
{"y": 1, "x": 3.5, "label": "L13"},
{"y": 1.125, "x": 4.5, "label": "L14"},
{"y": 1.25, "x": 5.5, "label": "L15"},
{"y": 1.75, "x": 6.5, "label": "L16"},
{"y": 1.75, "x": 12, "label": "R10"},
{"y": 1.25, "x": 13, "label": "R11"},
{"y": 1.125, "x": 14, "label": "R12"},
{"y": 1, "x": 15, "label": "R13"},
{"y": 1.125, "x": 16, "label": "R14"},
{"y": 1.375, "x": 17, "label": "R15"},
{"y": 1.375, "x": 18, "label": "R16"},
{"y": 2.375, "x": 0.5, "label": "L20"},
{"y": 2.375, "x": 1.5, "label": "L21"},
{"y": 2.125, "x": 2.5, "label": "L22"},
{"y": 2, "x": 3.5, "label": "L23"},
{"y": 2.125, "x": 4.5, "label": "L24"},
{"y": 2.25, "x": 5.5, "label": "L25"},
{"y": 2.75, "x": 6.5, "label": "L26"},
{"y": 2.75, "x": 12, "label": "R20"},
{"y": 2.25, "x": 13, "label": "R21"},
{"y": 2.125, "x": 14, "label": "R22"},
{"y": 2, "x": 15, "label": "R23"},
{"y": 2.125, "x": 16, "label": "R24"},
{"y": 2.375, "x": 17, "label": "R25"},
{"y": 2.375, "x": 18, "label": "R26"},
{"y": 3.375, "x": 0.5, "label": "L30"},
{"y": 3.375, "x": 1.5, "label": "L31"},
{"y": 3.125, "x": 2.5, "label": "L32"},
{"y": 3, "x": 3.5, "label": "L33"},
{"y": 3.125, "x": 4.5, "label": "L34"},
{"y": 3.25, "x": 5.5, "label": "L35"},
{"y": 4, "x": 7.5, "label": "L36"},
{"y": 4, "x": 11, "label": "R30"},
{"y": 3.25, "x": 13, "label": "R31"},
{"y": 3.125, "x": 14, "label": "R32"},
{"y": 3, "x": 15, "label": "R33"},
{"y": 3.125, "x": 16, "label": "R34"},
{"y": 3.375, "x": 17, "label": "R35"},
{"y": 3.375, "x": 18, "label": "R36"},
{"y": 4.375, "x": 0.5, "label": "L40"},
{"y": 4.375, "x": 1.5, "label": "L41"},
{"y": 4.125, "x": 2.5, "label": "L42"},
{"y": 4, "x": 3.5, "label": "L43"},
{"y": 5, "x": 5.5, "label": "L44"},
{"h": 2, "y": 4, "x": 6.5, "label": "L45"},
{"y": 5, "x": 7.5, "label": "L46"},
{"y": 5, "x": 11, "label": "R40"},
{"h": 2, "y": 4, "x": 12, "label": "R41"},
{"y": 5, "x": 13, "label": "R42"},
{"y": 4, "x": 15, "label": "R43"},
{"y": 4.125, "x": 16, "label": "R44"},
{"y": 4.375, "x": 17, "label": "R45"},
{"y": 4.375, "x": 18, "label": "R46"}]
},
"LAYOUT_3key_2us": {
"layout": [
{"y": 0.375, "x": 0.5, "label": "L00"},
{"y": 0.375, "x": 1.5, "label": "L01"},
{"y": 0.125, "x": 2.5, "label": "L02"},
{"y": 0, "x": 3.5, "label": "L03"},
{"y": 0.125, "x": 4.5, "label": "L04"},
{"y": 0.25, "x": 5.5, "label": "L05"},
{"y": 0.75, "x": 6.5, "label": "L06"},
{"y": 0.75, "x": 12, "label": "R00"},
{"y": 0.25, "x": 13, "label": "R01"},
{"y": 0.125, "x": 14, "label": "R02"},
{"y": 0, "x": 15, "label": "R03"},
{"y": 0.125, "x": 16, "label": "R04"},
{"y": 0.375, "x": 17, "label": "R05"},
{"y": 0.375, "x": 18, "label": "R06"},
{"y": 1.375, "x": 0.5, "label": "L10"},
{"y": 1.375, "x": 1.5, "label": "L11"},
{"y": 1.125, "x": 2.5, "label": "L12"},
{"y": 1, "x": 3.5, "label": "L13"},
{"y": 1.125, "x": 4.5, "label": "L14"},
{"y": 1.25, "x": 5.5, "label": "L15"},
{"y": 1.75, "x": 6.5, "label": "L16"},
{"y": 1.75, "x": 12, "label": "R10"},
{"y": 1.25, "x": 13, "label": "R11"},
{"y": 1.125, "x": 14, "label": "R12"},
{"y": 1, "x": 15, "label": "R13"},
{"y": 1.125, "x": 16, "label": "R14"},
{"y": 1.375, "x": 17, "label": "R15"},
{"y": 1.375, "x": 18, "label": "R16"},
{"y": 2.375, "x": 0.5, "label": "L20"},
{"y": 2.375, "x": 1.5, "label": "L21"},
{"y": 2.125, "x": 2.5, "label": "L22"},
{"y": 2, "x": 3.5, "label": "L23"},
{"y": 2.125, "x": 4.5, "label": "L24"},
{"y": 2.25, "x": 5.5, "label": "L25"},
{"y": 2.75, "x": 6.5, "label": "L26"},
{"y": 2.75, "x": 12, "label": "R20"},
{"y": 2.25, "x": 13, "label": "R21"},
{"y": 2.125, "x": 14, "label": "R22"},
{"y": 2, "x": 15, "label": "R23"},
{"y": 2.125, "x": 16, "label": "R24"},
{"y": 2.375, "x": 17, "label": "R25"},
{"y": 2.375, "x": 18, "label": "R26"},
{"y": 3.375, "x": 0.5, "label": "L30"},
{"y": 3.375, "x": 1.5, "label": "L31"},
{"y": 3.125, "x": 2.5, "label": "L32"},
{"y": 3, "x": 3.5, "label": "L33"},
{"y": 3.125, "x": 4.5, "label": "L34"},
{"y": 3.25, "x": 5.5, "label": "L35"},
{"y": 3.25, "x": 13, "label": "R31"},
{"y": 3.125, "x": 14, "label": "R32"},
{"y": 3, "x": 15, "label": "R33"},
{"y": 3.125, "x": 16, "label": "R34"},
{"y": 3.375, "x": 17, "label": "R35"},
{"y": 3.375, "x": 18, "label": "R36"},
{"y": 4.375, "x": 0.5, "label": "L40"},
{"y": 4.375, "x": 1.5, "label": "L41"},
{"y": 4.125, "x": 2.5, "label": "L42"},
{"y": 4, "x": 3.5, "label": "L43"},
{"y": 5, "x": 5.5, "label": "L44"},
{"h": 2, "y": 4, "x": 6.5, "label": "L45"},
{"h": 2, "y": 4, "x": 7.5, "label": "L46"},
{"h": 2, "y": 4, "x": 11, "label": "R40"},
{"h": 2, "y": 4, "x": 12, "label": "R41"},
{"y": 5, "x": 13, "label": "R42"},
{"y": 4, "x": 15, "label": "R43"},
{"y": 4.125, "x": 16, "label": "R44"},
{"y": 4.375, "x": 17, "label": "R45"},
{"y": 4.375, "x": 18, "label": "R46"}]
},
"LAYOUT_3key_1us": {
"layout": [
{"y": 0.375, "x": 0.5, "label": "L00"},
{"y": 0.375, "x": 1.5, "label": "L01"},
{"y": 0.125, "x": 2.5, "label": "L02"},
{"y": 0, "x": 3.5, "label": "L03"},
{"y": 0.125, "x": 4.5, "label": "L04"},
{"y": 0.25, "x": 5.5, "label": "L05"},
{"y": 0.75, "x": 6.5, "label": "L06"},
{"y": 0.75, "x": 12, "label": "R00"},
{"y": 0.25, "x": 13, "label": "R01"},
{"y": 0.125, "x": 14, "label": "R02"},
{"y": 0, "x": 15, "label": "R03"},
{"y": 0.125, "x": 16, "label": "R04"},
{"y": 0.375, "x": 17, "label": "R05"},
{"y": 0.375, "x": 18, "label": "R06"},
{"y": 1.375, "x": 0.5, "label": "L10"},
{"y": 1.375, "x": 1.5, "label": "L11"},
{"y": 1.125, "x": 2.5, "label": "L12"},
{"y": 1, "x": 3.5, "label": "L13"},
{"y": 1.125, "x": 4.5, "label": "L14"},
{"y": 1.25, "x": 5.5, "label": "L15"},
{"y": 1.75, "x": 6.5, "label": "L16"},
{"y": 1.75, "x": 12, "label": "R10"},
{"y": 1.25, "x": 13, "label": "R11"},
{"y": 1.125, "x": 14, "label": "R12"},
{"y": 1, "x": 15, "label": "R13"},
{"y": 1.125, "x": 16, "label": "R14"},
{"y": 1.375, "x": 17, "label": "R15"},
{"y": 1.375, "x": 18, "label": "R16"},
{"y": 2.375, "x": 0.5, "label": "L20"},
{"y": 2.375, "x": 1.5, "label": "L21"},
{"y": 2.125, "x": 2.5, "label": "L22"},
{"y": 2, "x": 3.5, "label": "L23"},
{"y": 2.125, "x": 4.5, "label": "L24"},
{"y": 2.25, "x": 5.5, "label": "L25"},
{"y": 2.75, "x": 6.5, "label": "L26"},
{"y": 2.75, "x": 12, "label": "R20"},
{"y": 2.25, "x": 13, "label": "R21"},
{"y": 2.125, "x": 14, "label": "R22"},
{"y": 2, "x": 15, "label": "R23"},
{"y": 2.125, "x": 16, "label": "R24"},
{"y": 2.375, "x": 17, "label": "R25"},
{"y": 2.375, "x": 18, "label": "R26"},
{"y": 3.375, "x": 0.5, "label": "L30"},
{"y": 3.375, "x": 1.5, "label": "L31"},
{"y": 3.125, "x": 2.5, "label": "L32"},
{"y": 3, "x": 3.5, "label": "L33"},
{"y": 3.125, "x": 4.5, "label": "L34"},
{"y": 3.25, "x": 5.5, "label": "L35"},
{"y": 4, "x": 6.5, "label": "L36"},
{"y": 4, "x": 12, "label": "R30"},
{"y": 3.25, "x": 13, "label": "R31"},
{"y": 3.125, "x": 14, "label": "R32"},
{"y": 3, "x": 15, "label": "R33"},
{"y": 3.125, "x": 16, "label": "R34"},
{"y": 3.375, "x": 17, "label": "R35"},
{"y": 3.375, "x": 18, "label": "R36"},
{"y": 4.375, "x": 0.5, "label": "L40"},
{"y": 4.375, "x": 1.5, "label": "L41"},
{"y": 4.125, "x": 2.5, "label": "L42"},
{"y": 4, "x": 3.5, "label": "L43"},
{"y": 5, "x": 5.5, "label": "L44"},
{"y": 5, "x": 6.5, "label": "L45"},
{"y": 5, "x": 12, "label": "R41"},
{"y": 5, "x": 13, "label": "R42"},
{"y": 4, "x": 15, "label": "R43"},
{"y": 4.125, "x": 16, "label": "R44"},
{"y": 4.375, "x": 17, "label": "R45"},
{"y": 4.375, "x": 18, "label": "R46"}]
},
"LAYOUT_2key": {
"layout": [
{"y": 0.375, "x": 0.5, "label": "L00"},
{"y": 0.375, "x": 1.5, "label": "L01"},
{"y": 0.125, "x": 2.5, "label": "L02"},
{"y": 0, "x": 3.5, "label": "L03"},
{"y": 0.125, "x": 4.5, "label": "L04"},
{"y": 0.25, "x": 5.5, "label": "L05"},
{"y": 0.75, "x": 6.5, "label": "L06"},
{"y": 0.75, "x": 12, "label": "R00"},
{"y": 0.25, "x": 13, "label": "R01"},
{"y": 0.125, "x": 14, "label": "R02"},
{"y": 0, "x": 15, "label": "R03"},
{"y": 0.125, "x": 16, "label": "R04"},
{"y": 0.375, "x": 17, "label": "R05"},
{"y": 0.375, "x": 18, "label": "R06"},
{"y": 1.375, "x": 0.5, "label": "L10"},
{"y": 1.375, "x": 1.5, "label": "L11"},
{"y": 1.125, "x": 2.5, "label": "L12"},
{"y": 1, "x": 3.5, "label": "L13"},
{"y": 1.125, "x": 4.5, "label": "L14"},
{"y": 1.25, "x": 5.5, "label": "L15"},
{"y": 1.75, "x": 6.5, "label": "L16"},
{"y": 1.75, "x": 12, "label": "R10"},
{"y": 1.25, "x": 13, "label": "R11"},
{"y": 1.125, "x": 14, "label": "R12"},
{"y": 1, "x": 15, "label": "R13"},
{"y": 1.125, "x": 16, "label": "R14"},
{"y": 1.375, "x": 17, "label": "R15"},
{"y": 1.375, "x": 18, "label": "R16"},
{"y": 2.375, "x": 0.5, "label": "L20"},
{"y": 2.375, "x": 1.5, "label": "L21"},
{"y": 2.125, "x": 2.5, "label": "L22"},
{"y": 2, "x": 3.5, "label": "L23"},
{"y": 2.125, "x": 4.5, "label": "L24"},
{"y": 2.25, "x": 5.5, "label": "L25"},
{"y": 2.75, "x": 6.5, "label": "L26"},
{"y": 2.75, "x": 12, "label": "R20"},
{"y": 2.25, "x": 13, "label": "R21"},
{"y": 2.125, "x": 14, "label": "R22"},
{"y": 2, "x": 15, "label": "R23"},
{"y": 2.125, "x": 16, "label": "R24"},
{"y": 2.375, "x": 17, "label": "R25"},
{"y": 2.375, "x": 18, "label": "R26"},
{"y": 3.375, "x": 0.5, "label": "L30"},
{"y": 3.375, "x": 1.5, "label": "L31"},
{"y": 3.125, "x": 2.5, "label": "L32"},
{"y": 3, "x": 3.5, "label": "L33"},
{"y": 3.125, "x": 4.5, "label": "L34"},
{"y": 3.25, "x": 5.5, "label": "L35"},
{"y": 3.25, "x": 13, "label": "R31"},
{"y": 3.125, "x": 14, "label": "R32"},
{"y": 3, "x": 15, "label": "R33"},
{"y": 3.125, "x": 16, "label": "R34"},
{"y": 3.375, "x": 17, "label": "R35"},
{"y": 3.375, "x": 18, "label": "R36"},
{"y": 4.375, "x": 0.5, "label": "L40"},
{"y": 4.375, "x": 1.5, "label": "L41"},
{"y": 4.125, "x": 2.5, "label": "L42"},
{"y": 4, "x": 3.5, "label": "L43"},
{"y": 5, "x": 5.5, "label": "L44"},
{"h": 2, "y": 4, "x": 6.5, "label": "L45"},
{"h": 2, "y": 4, "x": 12, "label": "R41"},
{"y": 5, "x": 13, "label": "R42"},
{"y": 4, "x": 15, "label": "R43"},
{"y": 4.125, "x": 16, "label": "R44"},
{"y": 4.375, "x": 17, "label": "R45"},
{"y": 4.375, "x": 18, "label": "R46"}]
}
}
}

View file

@ -0,0 +1,29 @@
/*
Copyright (c) 2020 Fred Silberberg
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
#pragma once
#define USE_SERIAL
#define MASTER_LEFT
#undef TAPPING_TERM
#define TAPPING_TERM 200

View file

@ -0,0 +1,79 @@
/*
Copyright (c) 2020 Fred Silberberg
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
#include QMK_KEYBOARD_H
#include "333fred.h"
extern keymap_config_t keymap_config;
// Use an expanded macro with VA_ARGS to ensure that the common
// rows get expanded out before getting passed to the LAYOUT
// macro.
#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[BASE] = LAYOUT_wrapper( \
ROW5_LEFT_BASE, KC_F5, KC_F6, ROW5_RGHT_BASE,
ROW4_LEFT_BASE, TG(GAME), TG(GAME_ARROW), ROW4_RGHT_BASE,
ROW3_LEFT_BASE, KC_LGUI, KC_BSPC, ROW3_RGHT_BASE,
ROW2_LEFT_BASE, TD(TD_COPY_PASTE), KC_UP , ROW2_RGHT_BASE,
ROW1_LEFT_BASE, KC_BSPC, TD(TD_SYM_VIM), KC_DEL, KC_ENT, KC_SPC , KC_DOWN, ROW1_RGHT_BASE
),
[SYMB] = LAYOUT_wrapper(
ROW5_LEFT_SYMB, _______, _______, ROW5_RGHT_SYMB,
ROW4_LEFT_SYMB, PSCREEN_APP, _______, ROW4_RGHT_SYMB,
ROW3_LEFT_SYMB, KC_PSCR, KC_VOLU, ROW3_RGHT_SYMB,
ROW2_LEFT_SYMB, _______, KC_VOLD, ROW2_RGHT_SYMB,
ROW1_LEFT_SYMB, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, ROW1_RGHT_SYMB
),
[VIM] = LAYOUT_wrapper(
ROW5_LEFT_VIM, _______, _______, ROW5_RGHT_VIM,
ROW4_LEFT_VIM, _______, _______, ROW4_RGHT_VIM,
ROW3_LEFT_VIM, _______, _______, ROW3_RGHT_VIM,
ROW2_LEFT_VIM, _______, _______, ROW2_RGHT_VIM,
ROW1_LEFT_VIM, _______, _______, _______, _______, _______, _______, ROW1_RGHT_VIM
),
[GAME] = LAYOUT_wrapper(
KC_ESC, SIX_TRNS, _______, SIX_TRNS,
SIX_TRNS, _______, _______, SIX_TRNS,
KC_LCTL, FOUR_TRNS, _______, KC_F6, _______, SIX_TRNS,
KC_LSFT, KC_Z, FOUR_TRNS, KC_F5, _______, SIX_TRNS,
KC_ENT, _______, KC_LOCK, KC_BSPC, KC_LALT, KC_SPC, OSM(SYMB), _______, SIX_TRNS
),
[GAME_ARROW] = LAYOUT_wrapper(
KC_ESC, SIX_TRNS, _______, SIX_TRNS,
_______, _______, KC_UP, _______, _______, _______, _______, _______, SIX_TRNS,
KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_F6, _______, SIX_TRNS,
KC_LSFT, KC_Z, FOUR_TRNS, KC_F5, _______, SIX_TRNS,
KC_ENT, _______, KC_LOCK, KC_BSPC, KC_LALT, KC_SPC, OSM(SYMB), _______, SIX_TRNS
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
tap_dance_process_keycode(keycode);
return !try_handle_macro(keycode, record);
}

View file

@ -0,0 +1,5 @@
BACKLIGHT_ENABLE = no
RGBLIGHT_ENABLE = yes
AUDIO_ENABLE = no
KEY_LOCK_ENABLE = yes
CONSOLE_ENABLE = no

View file

@ -0,0 +1,33 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS

View file

@ -0,0 +1,153 @@
#include QMK_KEYBOARD_H
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
#define _ADJUST 16
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
ADJUST,
};
#define EISU LALT(KC_GRV)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,----------------------------------------------------------------------------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | [ | | ] | 6 | 7 | 8 | 9 | 0 |Pscree|
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | ` | Q | W | E | R | T | - | | = | Y | U | I | O | P | \ |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Tab | A | S | D | F | G | Del | | Bksp | H | J | K | L | ; | " |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | Shift| Z | X | C | V | B | Space| | Enter| N | M | , | . | / | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | Ctrl | GUI | ALt | EISU |||||||| Lower| Space| Del |||||||| Bksp | Enter| Raise|||||||| Left | Down | Up | Right|
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_QWERTY] = LAYOUT(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_PSCR,
KC_GRV, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MINS, KC_EQL , KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_DEL , KC_BSPC, 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_SPC , KC_ENT , KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, EISU, LOWER, KC_SPC ,KC_DEL, KC_BSPC,KC_ENT , RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
),
/* Lower
* ,----------------------------------------------------------------------------------------------------------------------.
* | F11 | F1 | F2 | F3 | F4 | F5 | { | | } | F6 | F7 | F8 | F9 | F10 | F12 |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | ~ | ! | @ | # | $ | % | _ | | + | ^ | & | * | ( | ) | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Tab | 1 | 2 | 3 | 4 | 5 | Del | | Bksp | H | J | K | L | : | " |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | Shift| 6 | 7 | 8 | 9 | 0 | Space| | Enter| N | M | < | > | ? | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | Ctrl | GUI | ALt | EISU |||||||| Lower| Space| Del |||||||| Bksp | Enter| Raise|||||||| Home |PageDn|PageUp| End |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_LOWER] = LAYOUT(
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LCBR, KC_RCBR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_UNDS, KC_PLUS, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DEL , KC_BSPC, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_DQT ,
KC_LSFT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SPC , KC_ENT , KC_N, KC_M, KC_LT, KC_GT, KC_QUES, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, EISU, LOWER, KC_SPC ,KC_DEL, KC_BSPC,KC_ENT , RAISE, KC_HOME, KC_PGDN, KC_PGUP, KC_END
),
/* Raise
* ,----------------------------------------------------------------------------------------------------------------------.
* | F11 | F1 | F2 | F3 | F4 | F5 | { | | } | F6 | F7 | F8 | F9 | F10 | F12 |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | ~ | ! | @ | # | $ | % | _ | | + | ^ | & | * | ( | ) | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Tab | 1 | 2 | 3 | 4 | 5 | Del | | Bksp | H | J | K | L | : | " |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | Shift| 6 | 7 | 8 | 9 | 0 | Space| | Enter| N | M | < | > | ? | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | Ctrl | GUI | ALt | EISU |||||||| Lower| Space| Del |||||||| Bksp | Enter| Raise|||||||| Home |PageDn|PageUp| End |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_RAISE] = LAYOUT(
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LCBR, KC_RCBR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12,
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_UNDS, KC_PLUS, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DEL , KC_BSPC, KC_H, KC_J, KC_K, KC_L, KC_COLN, KC_DQT ,
KC_LSFT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SPC , KC_ENT , KC_N, KC_M, KC_LT, KC_GT, KC_QUES, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, EISU, LOWER, KC_SPC ,KC_DEL, KC_BSPC,KC_ENT , RAISE, KC_HOME, KC_PGDN, KC_PGUP, KC_END
),
/* Adjust
* ,----------------------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | | Reset|RGB ON| MODE| HUE-| HUE+| | | | SAT-| SAT+| VAL-| VAL+| | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | | | BL ON| BRTG| INC| DEC| | | | | | | | | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | | | | | | | | | | | | | | | |
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| | | |||||||| | | |||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_ADJUST] = LAYOUT(
_______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
_______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,_______, _______, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______,
_______, _______, BL_TOGG, BL_BRTG, BL_INC , BL_DEC ,_______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______,_______,_______, _______,_______, _______, _______, _______, _______, _______
)
};
#ifdef AUDIO_ENABLE
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
print("mode just switched to qwerty and this is a huge string\n");
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = no
RGBLIGHT_ENABLE = no
AUDIO_ENABLE = no

View file

@ -0,0 +1,33 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS

View file

@ -0,0 +1,460 @@
[
{
"name": "gsm-ErgoDash",
"notes": "Front Legend = \"Adust\" layer (both lower and Raise)\n\n\nLayout Positions are an aproximation and not exact"
},
[
{
"x": 3,
"t": "#0000ff\n#ff0000"
},
"\nF3\n\n\n\n\n\n\n\n3 #",
{
"x": 11
},
"\nF8\n\n\n\n\n\n\n\n8 *"
],
[
{
"y": -0.875,
"x": 2
},
"\nF2\n\n\n\n\n\n\n\n2 @",
{
"x": 1
},
"\nF4\n\n\n\n\n\n\n\n4 $",
{
"x": 9
},
"\nF7\n\n\n\n\n\n\n\n7 &",
{
"x": 1
},
"\nF9\n\n\n\n\n\n\n\n9 ("
],
[
{
"y": -0.875,
"x": 5
},
"\nF5\n\n\n\n\n\n\n\n5 %",
{
"x": 7
},
"\nF6\n\n\n\n\n\n\n\n6 &"
],
[
{
"y": -0.875,
"t": "#000000",
"a": 3
},
"Esc\n\n\n\nreset",
{
"t": "#0000ff\n#ff0000",
"a": 4
},
"\nF1\n\n\n\n\n\n\n\n1 !",
{
"x": 15
},
"\nF10\n\n\n\n\n\n\n\n0 )",
{
"t": "#000000",
"a": 7,
"fa": [
2
]
},
"Bksp"
],
[
{
"y": -0.625,
"x": 6,
"f": 3
},
"= +",
{
"x": 5,
"f": 3
},
"- _"
],
[
{
"y": -0.75,
"x": 3,
"f": 3
},
"E",
{
"x": 11,
"f": 3
},
"I"
],
[
{
"y": -0.875,
"x": 2,
"t": "#0000ff\n#ff0000\n\n\n\n\n\n\n\n\n#ff0000",
"a": 4,
"f": 3
},
"PgUP\nUP\n\n\n\n\n\n\n\nW",
{
"x": 1,
"t": "#000000",
"a": 3,
"f": 3
},
"R\n\n\n\nrgb_tog",
{
"x": 9,
"a": 7,
"f": 3
},
"U",
{
"x": 1,
"f": 3
},
"O"
],
[
{
"y": -0.875,
"x": 5,
"a": 3,
"f": 3
},
"T\n\n\n\nbl_tog",
{
"x": 7,
"a": 7,
"f": 3
},
"Y"
],
[
{
"y": -0.875,
"f": 3
},
"Tab",
{
"f": 3
},
"Q",
{
"x": 15,
"f": 3
},
"P",
{
"f": 3
},
"] }"
],
[
{
"y": -0.625,
"x": 6
},
"",
{
"x": 5,
"f": 3
},
"[ {"
],
[
{
"y": -0.75,
"x": 3,
"t": "#0000ff\n#ff0000\n\n\n\n\n\n\n\n\n#ff0000",
"a": 0,
"f": 3
},
"End\nRIGHT\n\n\nrgb_sai\n\n\n\n\nD",
{
"x": 11,
"t": "#000000",
"a": 7,
"f": 3
},
"K"
],
[
{
"y": -0.875,
"x": 2,
"t": "#0000ff\n#ff0000\n\n\n\n\n\n\n\n\n#ff0000",
"a": 0,
"f": 3
},
"PgDwn\nDOWN\n\n\nrgb_hai\n\n\n\n\nS",
{
"x": 1,
"t": "#000000",
"a": 3,
"f": 3
},
"F\n\n\n\nrgb_val",
{
"x": 9,
"a": 7,
"f": 3
},
"J",
{
"x": 1,
"f": 3
},
"L"
],
[
{
"y": -0.875,
"x": 5,
"a": 3,
"f": 3
},
"G\n\n\n\nbl_inc",
{
"x": 7,
"a": 7,
"f": 3
},
"H"
],
[
{
"y": -0.875,
"c": "#0000ff",
"t": "#ffffffff",
"f": 3
},
"Raise",
{
"c": "#cccccc",
"t": "#0000ff\n#ff0000\n\n\n\n\n\n\n\n\n#ff0000",
"a": 4,
"f": 3
},
"Home\nLEFT\n\n\n\n\n\n\n\nA",
{
"x": 15,
"t": "#000000",
"a": 7,
"f": 3
},
": ;",
{
"f": 3
},
"' \""
],
[
{
"y": -0.625,
"x": 6
},
"",
{
"x": 5
},
""
],
[
{
"y": -0.75,
"x": 3,
"a": 3,
"f": 3
},
"C\n\n\n\nrgb_sad",
{
"x": 11,
"a": 7,
"f": 3
},
", <"
],
[
{
"y": -0.875,
"x": 2,
"a": 3,
"f": 3
},
"X\n\n\n\nrgb_sad",
{
"x": 1,
"f": 3
},
"V\n\n\n\nrgb_vad",
{
"x": 9,
"a": 7,
"f": 3
},
"M",
{
"x": 1,
"f": 3
},
". >"
],
[
{
"y": -0.875,
"x": 5,
"a": 3,
"f": 3
},
"B\n\n\n\nbl_dec",
{
"x": 7,
"a": 7,
"f": 3
},
"N"
],
[
{
"y": -0.875,
"a": 3,
"f": 3
},
"Shift\n\n\n\neep_rst",
{
"a": 7,
"f": 3
},
"Z",
{
"x": 15,
"f": 3
},
"/ ?",
{
"f": 3
},
"Shift"
],
[
{
"y": -0.25,
"x": 2,
"f": 3
},
"Alt",
{
"x": 13,
"f": 3
},
"DOWN"
],
[
{
"y": -0.9749999999999996,
"x": 3.5,
"f": 3
},
"Ctrl",
{
"x": 10.15,
"f": 3
},
"LEFT"
],
[
{
"y": -0.7750000000000004,
"f": 3
},
"`~",
{
"f": 3
},
"\\|",
{
"x": 15,
"f": 3
},
"UP",
{
"f": 3
},
"RIGHT"
],
[
{
"r": 30,
"rx": 6.5,
"ry": 4.25,
"y": -0.25,
"x": -0.2999999999999998,
"c": "#eb7c15",
"f": 3,
"h": 2
},
"Space",
{
"c": "#cccccc",
"f": 3
},
"Del"
],
[
{
"x": -1.2999999999999998,
"c": "#ff0000",
"f": 3
},
"Lower",
{
"x": 1,
"c": "#cccccc",
"t": "#0000ff\n#ff0000",
"a": 4
},
"\nApp\n\n\n\n\n\n\n\nOS"
],
[
{
"r": -30,
"rx": 13,
"y": -0.5,
"x": -2,
"t": "#000000",
"a": 7,
"f": 3
},
"PrtScr",
{
"c": "#eb7c15",
"f": 3,
"h": 2
},
"Space"
],
[
{
"x": -2,
"c": "#cccccc",
"f": 3
},
"Enter",
{
"x": 1,
"c": "#0000ff",
"t": "#ffffff",
"f": 3
},
"Raise"
]
]

View file

@ -0,0 +1,124 @@
#include QMK_KEYBOARD_H
enum custom_keycodes {
LOWER = SAFE_RANGE,
RAISE,
};
enum layer_names {
_QWERTY,
_LOWER,
_RAISE,
_ADJUST,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,----------------------------------------------------------------------------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | = | | - | 6 | 7 | 8 | 9 | 0 |Backsp|
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Tab | Q | W | E | R | T | | | [ | Y | U | I | O | P | ] |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Raise| A | S | D | F | G | | | | H | J | K | L | ; | " |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | Shift| Z | X | C | V | B |||||||| Del | | |||||||| N | M | , | . | / | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | ` | \ | ALt | Ctrl |||||||| Lower| Space| LGui|||||||| Enter| Space| Raise|||||||| Left | Down | Up | Right|
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_QWERTY] = LAYOUT(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL, KC_MINS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, KC_LBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC,
RAISE, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, 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_DEL, KC_PSCR, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_GRV,KC_BSLS, KC_LALT, KC_LCTL, LOWER, KC_SPC,KC_LGUI, KC_ENT ,KC_SPC , RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
),
/* Lower
* ,----------------------------------------------------------------------------------------------------------------------.
* | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | | Up | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Raise| Left | Down | Rght | | | | | | | | | | | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | Shift| | | | | |||||||| | | |||||||| | | | | | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| Lower| Space| |||||||| | Space| Raise|||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_LOWER] = LAYOUT(
XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX,
XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
RAISE, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_RSFT,
XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, LOWER, KC_SPC ,XXXXXXX, XXXXXXX, KC_SPC , RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
),
/* Raise
* ,----------------------------------------------------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | | PgUp | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Raise| Home | PgDwn| End | | | | | | | | | | | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | Shift| | | | | |||||||| | | |||||||| | | | | | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| Lower| Space| |||||||| |Space | Raise|||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_RAISE] = LAYOUT(
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
RAISE, KC_HOME,KC_PGDOWN, KC_END, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
KC_LSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_RSFT,
XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, LOWER, KC_SPC ,XXXXXXX, XXXXXXX, KC_SPC , RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
),
/* Adjust (Both Raise and Lower Together)
* ,----------------------------------------------------------------------------------------------------------------------.
* | Reset| | | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | | | |rgbtog|bl_tog| | | | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | Raise| |rgbhui|rgbsai|rgbvai|bl_inc| | | | | | | | | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
*|EEP_RST| |rgbhud|rgbdec|rgbvad|bl_dec|||||||| | | |||||||| | | | | | Shift|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| Lower| Space| |||||||| | Space| Raise|||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_ADJUST] = LAYOUT(
RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, BL_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
RAISE, XXXXXXX, RGB_HUI, RGB_SAI, RGB_VAI, BL_INC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
EEP_RST, XXXXXXX, RGB_HUD, RGB_SAD, RGB_VAD, BL_DEC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_RSFT,
XXXXXXX, XXXXXXX, XXXXXXX,XXXXXXX, LOWER, KC_SPC ,XXXXXXX, XXXXXXX, KC_SPC, RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
}
return true;
}

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
AUDIO_ENABLE = no

View file

@ -0,0 +1,21 @@
/* Copyright 2021 IFo Hancroft
*
* 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
// place overrides here
#define USB_POLLING_INTERVAL_MS 1
#define FORCE_NKRO

View file

@ -0,0 +1,104 @@
/* Copyright 2021 IFo Hancroft
*
* 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/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Default Layer
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
* | ` || 1 || 2 || 3 || 4 || 5 || - || || = || 6 || 7 || 8 || 9 || 0 || Del |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | Tab || Q || W || E || R || T || [ || || ] || Y || U || I || O || P || \ |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | ESC || A || S || D || F || G || " || || " || H || J || K || L || ; || Enter |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | Shift || Z || X || C || V || B || || || || N || M || , || . || / || Shift |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | Ctrl || Super || Alt || MO(2) || || MO(1) || Bkspc || Space || || Space || Bkspc || MO(1) || || Left || Down || Up || Right |
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
*/
LAYOUT_3key_2us(
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_QUOT, KC_QUOT, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, MO(2), MO(1), KC_BSPC, KC_SPC, KC_SPC, KC_BSPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
),
/* Function Layer
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
* | || F1 || F2 || F3 || F4 || F5 || F6 || || F7 || F8 || F9 || F10 || F11 || F12 || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || || || |
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
*/
LAYOUT_3key_2us(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
/* Left Right Hand Layer
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
* | Del || 0 || 9 || 8 || 7 || 6 || = || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | \ || P || O || I || U || Y || ] || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | Enter || ; || L || K || J || H || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || / || . || , || M || N || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || || || |
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
*/
LAYOUT_3key_2us(
KC_DEL, KC_0, KC_9, KC_8, KC_7, KC_6, KC_EQL, _______, _______, _______, _______, _______, _______, _______,
KC_BSLS, KC_P, KC_O, KC_I, KC_U, KC_Y, KC_RBRC, _______, _______, _______, _______, _______, _______, _______,
KC_ENT, KC_SCLN, KC_L, KC_K, KC_J, KC_H, _______, _______, _______, _______, _______, _______, _______, _______,
_______, KC_SLSH, KC_DOT, KC_COMM, KC_M, KC_N, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
/* Empty Layer
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || |
* |-------------------------------------------------------------------------------------------------------------------------------------------------------|
* | || || || || || || || || || || || || || || || || |
* ---------------------------------------------------------------------------------------------------------------------------------------------------------
*/
LAYOUT_3key_2us(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};

View file

@ -0,0 +1,14 @@
![IFo Hancroft ErgoDash Layout Image](https://i.imgur.com/vANNhro.png)
# IFo Hancroft's ErgoDash Layout
- Layer 1: A standard ANSI QWERTY layer.
- Layer 2: A function layer. It contains just the F1-F12 keys.
- Layer 3: A mirror of the right hand part of Layer 1, on the left hand, so I don't have to get my hand off the mouse when in CAD.
- Layer 4: An empty layer in-case I need something on-the-fly so I can remap with VIA.
This keymap also sets the polling rate of the keyboard to 1ms, disables the EXTRAKEY feature, and enables the following features:
- COMMAND
- NKRO (forced on)
- VIA

View file

@ -0,0 +1,4 @@
EXTRAKEY_ENABLE = no
COMMAND_ENABLE = yes
NKRO_ENABLE = yes
VIA_ENABLE = yes

View file

@ -0,0 +1,33 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS

View file

@ -0,0 +1,219 @@
#include QMK_KEYBOARD_H
#include "keymap_jp.h"
// clang-format off
enum layers { _QWERTY, _LOWER, _RAISE, _ADJUST };
enum custom_keycodes { JP = SAFE_RANGE, US, SHIFT, LOWER, RAISE, ADJUST,
CSTM_0, CSTM_1, CSTM_2, CSTM_3, CSTM_4, CSTM_5, CSTM_6, CSTM_7, CSTM_8, CSTM_9,
CIRC, AT, LBRC, RBRC, BSLS, AMPR, QUOT, LPRN, RPRN, EQL, TILD, PIPE, GRV, LCBR,
PLUS, ASTR, RCBR, UNDS, MINS, SCLN, COMM, DOT, SLSH, EXLM, HASH, DLR, PERC, DEL };
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Qwerty
* ,----------------------------------------------------------------------------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | ZKHK | | ZKHK | 6 | 7 | 8 | 9 | 0 | ` |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | TAB | Q | W | E | R | T | MHEN | |HENKAN| Y | U | I | O | P | \ |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | CTRL | A | S | D | F | G | EISU | <- ONLY FOR MAC -> | KANA | H | J | K | L | ; | ' |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | SHIFT| Z | X | C | V | B | SHIFT| | SHIFT| N | M | , | . | / | SHIFT|
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | SHIFT|ADJUST| ALT | GUI |||||||| LOWER| SPACE| |||||||| | ENTER| RAISE|||||||| GUI | ALT |ADJUST| SHIFT|
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_QWERTY] = LAYOUT( \
KC_ESC, CSTM_1, CSTM_2, CSTM_3, CSTM_4, CSTM_5, JP_KANA, JP_KANA, CSTM_6, CSTM_7, CSTM_8, CSTM_9, CSTM_0, GRV , \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, JP_MHEN, JP_HENK, KC_Y, KC_U, KC_I, KC_O, KC_P, BSLS , \
KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LANG2, JP_LANG1,KC_H, KC_J, KC_K, KC_L, SCLN, QUOT , \
SHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, SHIFT , SHIFT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SHIFT , \
SHIFT, ADJUST, KC_LALT, KC_LCTL, LOWER, KC_SPC ,XXXXXXX, XXXXXXX,KC_ENT , RAISE, KC_LCTL, KC_LALT, ADJUST, SHIFT \
),
/* Lower
* ,----------------------------------------------------------------------------------------------------------------------.
* | F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | |||||||||||||||||||||| - | _ | | | | + | = | [ | ] |||||||| |
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| | ESC | |||||||| | BKSP | |||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_LOWER] = LAYOUT(
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12 , \
TILD, EXLM, AT, HASH, DLR, PERC, _______, _______, CIRC, AMPR, ASTR, LPRN, RPRN, PIPE , \
_______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0 , _______, \
_______, XXXXXXX, XXXXXXX, XXXXXXX, MINS, UNDS, _______, _______, PLUS, EQL, LBRC, RBRC, XXXXXXX, _______, \
_______, _______, _______, _______, _______, KC_ESC ,_______, _______,KC_BSPC, _______, _______, _______, _______, _______ \
),
/* Raise
* ,----------------------------------------------------------------------------------------------------------------------.
* | F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | |||||||| [ | ] | - | _ | | | | + | = |||||||||||||||||||||| |
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| | ESC | |||||||| | BKSP | |||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_RAISE] = LAYOUT(
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12 , \
TILD, EXLM, AT, HASH, DLR, PERC, _______, _______, CIRC, AMPR, ASTR, LPRN, RPRN, PIPE , \
_______, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0 , _______, \
_______, XXXXXXX, LBRC, RBRC, MINS, UNDS, _______, _______, PLUS, EQL, XXXXXXX, XXXXXXX, XXXXXXX, _______, \
_______, _______, _______, _______, _______, KC_ESC ,_______, _______,KC_BSPC, _______, _______, _______, _______, _______ \
),
/* Adjust
* ,----------------------------------------------------------------------------------------------------------------------.
* | | | | | | | US | | JP | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | | | | | | | | | | | | | | |
* |------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
* | | HOME |PAGEDN|PAGEUP| END |||||||| | | | LEFT | DOWN | UP | RIGHT|||||||| |
* |------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
* | | | { | } | | | | | | | | { | } | | |
* |-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
* | | | | |||||||| | | |||||||| | | |||||||| | | | |
* ,----------------------------------------------------------------------------------------------------------------------.
*/
[_ADJUST] = LAYOUT(
_______, _______, _______, _______, _______, _______, US , JP, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, XXXXXXX, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, _______, \
_______, _______, LCBR, RCBR, _______, _______, _______, _______, _______, _______, LCBR, RCBR, _______, _______, \
_______, _______, _______, _______, _______, _______,_______, _______,_______, _______, _______, _______, _______, _______ \
)};
// clang-format on
#ifdef AUDIO_ENABLE
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
#endif
#define JP_LAYOUT true
#define US_LAYOUT false
#ifdef MASTER_LEFT
bool LAYOUT_STATUS = US_LAYOUT;
#else
bool LAYOUT_STATUS = JP_LAYOUT;
#endif
bool SHIFT_PRESSED = false;
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
#define SEND_STRING_RESTORE(STR) (SHIFT_PRESSED ? SEND_STRING(STR SS_DOWN(X_LSHIFT)) : SEND_STRING(STR SS_UP(X_LSHIFT)))
#define KEY(CODE) (record->event.pressed ? SEND_STRING(SS_DOWN(X_##CODE)) : SEND_STRING_RESTORE(SS_UP(X_##CODE)))
#define KEY_SHIFT(CODE) (record->event.pressed ? SEND_STRING(SS_DOWN(X_LSHIFT) SS_DOWN(X_##CODE)) : SEND_STRING_RESTORE(SS_UP(X_##CODE)))
#define KEY_UPSHIFT(CODE) (record->event.pressed ? SEND_STRING(SS_UP(X_LSHIFT) SS_DOWN(X_##CODE)) : SEND_STRING_RESTORE(SS_UP(X_##CODE)))
#define SHIFT_DU(CODE_DOWN, CODE_UP) (SHIFT_PRESSED ? CODE_DOWN : CODE_UP)
#define CASE_US(CODE, US, JP) \
case CODE: \
(LAYOUT_STATUS == JP_LAYOUT ? JP : US); \
return false;
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
CASE_US(CSTM_0, KEY(0), SHIFT_DU(KEY_SHIFT(9), KEY(0)));
CASE_US(CSTM_1, KEY(1), KEY(1));
CASE_US(CSTM_2, KEY(2), SHIFT_DU(KEY_UPSHIFT(LBRACKET), KEY(2)));
CASE_US(CSTM_3, KEY(3), KEY(3));
CASE_US(CSTM_4, KEY(4), KEY(4));
CASE_US(CSTM_5, KEY(5), KEY(5));
CASE_US(CSTM_6, KEY(6), SHIFT_DU(KEY_UPSHIFT(EQUAL), KEY(6)));
CASE_US(CSTM_7, KEY(7), SHIFT_DU(KEY_SHIFT(6), KEY(7)));
CASE_US(CSTM_8, KEY(8), SHIFT_DU(KEY_SHIFT(QUOTE), KEY(8)));
CASE_US(CSTM_9, KEY(9), SHIFT_DU(KEY_SHIFT(8), KEY(9)));
CASE_US(DEL, KEY(DELETE), KEY_UPSHIFT(BSPACE));
CASE_US(TILD, KEY_SHIFT(GRAVE), KEY_SHIFT(EQUAL));
CASE_US(EXLM, KEY_SHIFT(1), KEY_SHIFT(1));
CASE_US(AT, KEY_SHIFT(2), KEY(LBRACKET));
CASE_US(HASH, KEY_SHIFT(3), KEY_SHIFT(3));
CASE_US(DLR, KEY_SHIFT(4), KEY_SHIFT(4));
CASE_US(PERC, KEY_SHIFT(5), KEY_SHIFT(5));
CASE_US(CIRC, KEY_SHIFT(6), KEY(EQUAL));
CASE_US(AMPR, KEY_SHIFT(7), KEY_SHIFT(6));
CASE_US(ASTR, KEY_SHIFT(8), KEY_SHIFT(QUOTE));
CASE_US(LPRN, KEY_SHIFT(9), KEY_SHIFT(8));
CASE_US(RPRN, KEY_SHIFT(0), KEY_SHIFT(9));
CASE_US(LBRC, KEY(LBRACKET), SHIFT_DU(KEY_SHIFT(RBRACKET), KEY(RBRACKET)));
CASE_US(RBRC, KEY(RBRACKET), SHIFT_DU(KEY_SHIFT(NONUS_HASH), KEY(NONUS_HASH)));
CASE_US(LCBR, KEY_SHIFT(LBRACKET), KEY_SHIFT(RBRACKET));
CASE_US(RCBR, KEY_SHIFT(RBRACKET), KEY_SHIFT(NONUS_HASH));
CASE_US(GRV, KEY(GRAVE), SHIFT_DU(KEY_SHIFT(EQUAL), KEY_SHIFT(LBRACKET)));
CASE_US(BSLS, KEY(BSLASH), SHIFT_DU(KEY_SHIFT(INT3), KEY(INT3)));
CASE_US(PIPE, KEY_SHIFT(BSLASH), KEY_SHIFT(INT3));
CASE_US(MINS, KEY(MINUS), SHIFT_DU(KEY_SHIFT(INT1), KEY(MINUS)));
CASE_US(UNDS, KEY_SHIFT(MINUS), KEY_SHIFT(INT1));
CASE_US(EQL, KEY(EQUAL), SHIFT_DU(KEY_SHIFT(SCOLON), KEY_SHIFT(MINUS)));
CASE_US(PLUS, KEY_SHIFT(EQUAL), KEY_SHIFT(SCOLON));
CASE_US(SCLN, KEY(SCOLON), SHIFT_DU(KEY_UPSHIFT(QUOTE), KEY(SCOLON)));
CASE_US(QUOT, KEY(QUOTE), SHIFT_DU(KEY_SHIFT(2), KEY_SHIFT(7)));
case JP:
if (record->event.pressed) {
LAYOUT_STATUS = JP_LAYOUT;
}
return false;
break;
case US:
if (record->event.pressed) {
LAYOUT_STATUS = US_LAYOUT;
}
return false;
break;
case SHIFT:
if (record->event.pressed) {
SEND_STRING(SS_DOWN(X_LSHIFT));
SHIFT_PRESSED = true;
} else {
SEND_STRING(SS_UP(X_LSHIFT));
SHIFT_PRESSED = false;
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
} else {
layer_off(_LOWER);
}
update_tri_layer(_LOWER, _RAISE, _ADJUST);
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
} else {
layer_off(_RAISE);
}
update_tri_layer(_LOWER, _RAISE, _ADJUST);
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View file

@ -0,0 +1 @@
{"keyboard":"ergodash/rev1","keymap":"m47ch4ns_keymap","layout":"LAYOUT_3key_1us","layers":[["KC_ESC","KC_1","KC_2","KC_3","KC_4","KC_5","KC_NO","KC_NO","KC_6","KC_7","KC_8","KC_9","KC_0","KC_GRV","KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_NO","KC_NO","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_BSLS","KC_LCTL","KC_A","KC_S","KC_D","KC_F","KC_G","KC_NO","KC_NO","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_LSFT","KC_RSFT","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_RSFT","KC_LSFT","ANY(ADJUST)","KC_LALT","KC_LGUI","ANY(LOWER)","KC_SPC","KC_ENT","ANY(RAISE)","KC_RGUI","KC_RALT","ANY(ADJUST)","KC_RSFT"],["KC_F11","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_TRNS","KC_TRNS","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_F12","KC_TRNS","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_TRNS","KC_TRNS","KC_CIRC","KC_AMPR","KC_ASTR","KC_LPRN","KC_RPRN","KC_PIPE","KC_TRNS","KC_1","KC_2","KC_3","KC_4","KC_5","KC_TRNS","KC_TRNS","KC_6","KC_7","KC_8","KC_9","KC_0","KC_TRNS","KC_TRNS","KC_NO","KC_NO","KC_NO","KC_MINS","KC_UNDS","KC_TRNS","KC_TRNS","KC_PLUS","KC_EQL","KC_LBRC","KC_RBRC","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_ESC","KC_BSPC","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["KC_F11","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_TRNS","KC_TRNS","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_F12","KC_TRNS","KC_EXLM","KC_AT","KC_HASH","KC_DLR","KC_PERC","KC_TRNS","KC_TRNS","KC_CIRC","KC_AMPR","KC_ASTR","KC_LPRN","KC_RPRN","KC_PIPE","KC_TRNS","KC_1","KC_2","KC_3","KC_4","KC_5","KC_TRNS","KC_TRNS","KC_6","KC_7","KC_8","KC_9","KC_0","KC_TRNS","KC_TRNS","KC_NO","KC_LBRC","KC_RBRC","KC_MINS","KC_UNDS","KC_TRNS","KC_TRNS","KC_PLUS","KC_EQL","KC_NO","KC_NO","KC_NO","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_ESC","KC_BSPC","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"],["KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_HOME","KC_PGDN","KC_PGUP","KC_END","KC_TRNS","KC_TRNS","KC_TRNS","KC_LEFT","KC_DOWN","KC_UP","KC_RGHT","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_LCBR","KC_RCBR","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS"]],"author":"","notes":""}

View file

@ -0,0 +1,73 @@
# m47ch4n's keymap for Ergodash rev1
This is the m47ch4n's keymap configuration for Ergodash rev1.
There are four layers, QWERTY(default), LOWER, RAISE and ADJSUT.
## Layers
### Qwerty
```
,----------------------------------------------------------------------------------------------------------------------.
| ESC | 1 | 2 | 3 | 4 | 5 | ZKHK | | ZKHK | 6 | 7 | 8 | 9 | 0 | ` |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| TAB | Q | W | E | R | T | MHEN | |HENKAN| Y | U | I | O | P | \ |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| CTRL | A | S | D | F | G | EISU |<-- ONLY FOR MAC -->| KANA | H | J | K | L | ; | ' |
|------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
| SHIFT| Z | X | C | V | B | SHIFT| | SHIFT| N | M | , | . | / | SHIFT|
|-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
| SHIFT|ADJUST| ALT | GUI |||||||| LOWER| SPACE| |||||||| | ENTER| RAISE|||||||| GUI | ALT |ADJUST| SHIFT|
,----------------------------------------------------------------------------------------------------------------------.
```
### Lower
```
,----------------------------------------------------------------------------------------------------------------------.
| F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | |
|------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
| |||||||||||||||||||||| - | _ | | | | + | = | [ | ] |||||||| |
|-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
| | | | |||||||| | ESC | |||||||| | BKSP | |||||||| | | | |
,----------------------------------------------------------------------------------------------------------------------.
```
### Raise
```
,----------------------------------------------------------------------------------------------------------------------.
| F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | |
|------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
| |||||||| [ | ] | - | _ | | | | + | = |||||||||||||||||||||| |
|-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
| | | | |||||||| | ESC | |||||||| | BKSP | |||||||| | | | |
,----------------------------------------------------------------------------------------------------------------------.
```
### Adjust
```
,----------------------------------------------------------------------------------------------------------------------.
| | | | | | | US | | JP | | | | | | |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| | | | | | | | | | | | | | | |
|------+------+------+------+------+------+------+--------------------+------+------+------+------+------+------+------|
| | HOME |PAGEDN|PAGEUP| END |||||||| | | | LEFT | DOWN | UP | RIGHT|||||||| |
|------+------+------+------+------+------+---------------------------+------+------+------+------+------+------+------|
| | | { | } | | | | | | | | { | } | | |
|-------------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------|
| | | | |||||||| | | |||||||| | | |||||||| | | | |
,----------------------------------------------------------------------------------------------------------------------.
```
If your pc connect this keyboard with JIS(JP) layout, you should press JP MODE key.

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = no
RGBLIGHT_ENABLE = no
AUDIO_ENABLE = no

View file

@ -0,0 +1,36 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#undef TAPPING_TERM
#define TAPPING_TERM 300

View file

@ -0,0 +1,18 @@
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_3key_2us(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_EQL, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_PGUP, KC_LBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_ENT,
LCA_T(KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_PGDN, KC_RBRC, 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_RSFT,
KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_GRV, KC_SPC, LT(1,KC_DEL), KC_HOME, KC_END, KC_BSLS, KC_LEFT, KC_RGHT, KC_DOWN, KC_UP
),
[1] = LAYOUT_3key_2us(
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F12, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, LSFT(KC_HOME), LSFT(KC_END), KC_TRNS, LALT(LSFT(KC_LEFT)), LALT(LSFT(KC_RIGHT)), LALT(LSFT(KC_DOWN)), LALT(LSFT(KC_UP))
)
};

View file

@ -0,0 +1 @@
[["KC_ESC", "KC_1", "KC_2", "KC_3", "KC_4", "KC_5", "KC_6", "KC_EQL", "KC_7", "KC_8", "KC_9", "KC_0", "KC_MINS", "KC_BSPC", "KC_TAB", "KC_Q", "KC_W", "KC_E", "KC_R", "KC_T", "KC_PGUP", "KC_LBRC", "KC_Y", "KC_U", "KC_I", "KC_O", "KC_P", "KC_ENT", "LCA_T(KC_CAPS)", "KC_A", "KC_S", "KC_D", "KC_F", "KC_G", "KC_PGDN", "KC_RBRC", "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_RSFT", "KC_LCTL", "KC_LGUI", "KC_LALT", "MO(1)", "KC_GRV", "KC_SPC", "LT(1,KC_DEL)", "KC_HOME", "KC_END", "KC_BSLS", "KC_LEFT", "KC_RGHT", "KC_DOWN", "KC_UP"], ["KC_TRNS", "KC_F1", "KC_F2", "KC_F3", "KC_F4", "KC_F5", "KC_F6", "KC_F12", "KC_F7", "KC_F8", "KC_F9", "KC_F10", "KC_F11", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_PSCR", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "LSFT(KC_HOME)", "LSFT(KC_END)", "KC_TRNS", "LALT(LSFT(KC_LEFT))", "LALT(LSFT(KC_RIGHT))", "LALT(LSFT(KC_DOWN))", "LALT(LSFT(KC_UP))"]]

View file

@ -0,0 +1,13 @@
# Generated Keymap Layout
This layout was generated by the QMK API. You can find the JSON data used to
generate this keymap in the file layers.json.
To make use of this file you will need follow the following steps:
* Download or Clone QMK Firmware: <https://github.com/qmk/qmk_firmware/>
* Extract QMK Firmware to a location on your hard drive
* Copy this folder into `keyboards/ergodash/rev1/keymaps/`
* You are now ready to compile or use your keymap with the source
More information can be found in the QMK docs: <https://docs.qmk.fm>

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = no
RGBLIGHT_ENABLE = no
AUDIO_ENABLE = no

View file

@ -0,0 +1,36 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#define LEADER_PER_KEY_TIMING
#define LEADER_TIMEOUT 250

View file

@ -0,0 +1,199 @@
#include QMK_KEYBOARD_H
enum layers {
_WINDOWS,
_LINUX,
_NUMPAD,
_LOWER,
_RAISE,
_ADJUST,
};
enum custom_keycodes {
WINDOWS = SAFE_RANGE,
LINUX,
NUMPAD,
LOWER,
RAISE,
ADJUST
};
#define CTL_ENT MT(MOD_RCTL, KC_PENT)
#define NUMPAD MO(_NUMPAD)
#define SHELL LCA(KC_T)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Windows Qwerty
* .---------------------------------------------------------------------------------------------------------------------------------------.
* | ` | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 |BSpace |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Esc | A | S | D | F | G | Home | | Del | H | J | K | L | : | ' |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Shift | Z | X | C | V | B | - | | = | N | M | , | . | / | Shift |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | LCtrl | LGUI | LAlt |Numpad ||||||||| Space | Lower | Enter ||||||||| Enter | Raise |BSpace ||||||||| F5 | RAlt | RGui |Ctl/Ent|
* .---------------------------------------------------------------------------------------------------------------------------------------.
*/
[_WINDOWS] = LAYOUT( \
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, 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_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, \
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_DEL, 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_MINS, KC_EQL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
KC_LCTL, KC_LGUI, KC_LALT, NUMPAD, KC_SPC, LOWER, KC_ENT, KC_ENT, RAISE, KC_BSPC, KC_F5, KC_RALT, KC_RGUI, CTL_ENT \
),
/* Linux Qwerty
* .---------------------------------------------------------------------------------------------------------------------------------------.
* | ` | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 |BSpace |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Esc | A | S | D | F | G | Home | | Del | H | J | K | L | : | ' |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Shift | Z | X | C | V | B | - | | = | N | M | , | . | / | Shift |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | LCtrl | LGUI | LAlt |Numpad ||||||||| Space | Lower | Enter ||||||||| Enter | Raise |BSpace ||||||||| Shell | RAlt | RGui |Ctl/Ent|
* .---------------------------------------------------------------------------------------------------------------------------------------.
*/
[_LINUX] = LAYOUT( \
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, 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_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, \
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_DEL, 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_MINS, KC_EQL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
KC_LCTL, KC_LGUI, KC_LALT, NUMPAD, KC_SPC, LOWER, KC_ENT, KC_ENT, RAISE, KC_BSPC, SHELL, KC_RALT, KC_RGUI, CTL_ENT \
),
/* Numpad
* .---------------------------------------------------------------------------------------------------------------------------------------.
* |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|NumLock| / | * | - |XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX| 7 | 8 | 9 | |XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+ + +-------|
* |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX| 4 | 5 | 6 | |XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX| 1 | 2 | 3 | |XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+ Enter +-------|
* |XXXXXXX|XXXXXXX|XXXXXXX|Numpad |||||||||XXXXXXX|XXXXXXX|XXXXXXX|||||||||XXXXXXX|XXXXXXX|XXXXXXX||||||||| 0 | . | | Enter |
* .---------------------------------------------------------------------------------------------------------------------------------------.
*/
[_NUMPAD] = LAYOUT( \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_BSPC, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, NUMPAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_KP_0, KC_PDOT, KC_PENT, KC_PENT \
),
/* Lower
* .---------------------------------------------------------------------------------------------------------------------------------------.
* | F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | ( | { | [ | | | | ] | } | ) | | | |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | | |PageUp | | | | | | | | | |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | |VolDown| VolUp | | |PageDwn| | | | | | | | | |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | ||||||||| | Lower | ||||||||| | Raise | ||||||||| | | | |
* .---------------------------------------------------------------------------------------------------------------------------------------.
*/
[_LOWER] = LAYOUT( \
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \
_______, _______, _______, KC_LPRN, KC_LCBR, KC_LBRC, _______, _______, KC_RBRC, KC_RCBR, KC_RPRN, _______, _______, _______, \
_______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, \
KC_CAPS, KC_VOLD, KC_VOLU, _______, _______, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, \
_______, _______, _______, _______, _______, LOWER, _______, _______, RAISE, _______, _______, _______, _______, _______ \
),
/* Raise
* .---------------------------------------------------------------------------------------------------------------------------------------.
* | F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | ( | { | [ | | | | ] | } | ) | | | |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | | | | End | | | Left | Down | Up | Right | | |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | | | | | | | | | | | | |
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | | | | ||||||||| | Lower | ||||||||| | Raise | ||||||||| | | | |
* .---------------------------------------------------------------------------------------------------------------------------------------.
*/
[_RAISE] = LAYOUT( \
KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, \
_______, _______, _______, KC_LPRN, KC_LCBR, KC_LBRC, _______, _______, KC_RBRC, KC_RCBR, KC_RPRN, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, \
KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_MPLY, KC_CAPS, \
_______, _______, _______, _______, _______, LOWER, _______, _______, RAISE, _______, _______, _______, _______, _______ \
),
/* Adjust
* .---------------------------------------------------------------------------------------------------------------------------------------.
* |XXXXXXX|Windows| Linux |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* |XXXXXXX|XXXXXXX|XXXXXXX| Cycle |On/Off |XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|On/Off | Cycle |XXXXXXX|XXXXXXX|XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* | Reset |XXXXXXX|XXXXXXX|Breathe| Inc |XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|Hue inc|Sat inc| Inc |XXXXXXX|XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| Dec |XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|Hue dec|Sat dec| Dec |XXXXXXX|XXXXXXX|
* |-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
* |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|||||||||XXXXXXX| Lower |XXXXXXX|||||||||XXXXXXX| Raise |XXXXXXX|||||||||XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|
* .---------------------------------------------------------------------------------------------------------------------------------------.
*/
[_ADJUST] = LAYOUT( \
XXXXXXX, WINDOWS, LINUX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, BL_STEP, BL_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, \
RESET, XXXXXXX, XXXXXXX, BL_BRTG, BL_INC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LOWER, XXXXXXX, XXXXXXX, RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case WINDOWS:
if (record->event.pressed) {
set_single_persistent_default_layer(_WINDOWS);
}
return false;
break;
case LINUX:
if (record->event.pressed) {
set_single_persistent_default_layer(_LINUX);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View file

@ -0,0 +1,89 @@
# ShadowProgr's layout for ErgoDash
There are 2 different QWERTY base layers for use with Windows and Linux OSes. Beside those 2 there are also a numpad layer and 3 modifier layers (lower, raise and adjust).
## Layouts
### Windows
```
.---------------------------------------------------------------------------------------------------------------------------------------.
| ` | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 |BSpace |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Esc | A | S | D | F | G | Home | | Del | H | J | K | L | : | ' |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Shift | Z | X | C | V | B | - | | = | N | M | , | . | / | Shift |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| LCtrl | LGUI | LAlt |Numpad ||||||||| Space | Lower | Enter ||||||||| Enter | Raise |BSpace ||||||||| F5 | RAlt | RGui |Ctl/Ent|
.---------------------------------------------------------------------------------------------------------------------------------------.
```
### Linux
```
.---------------------------------------------------------------------------------------------------------------------------------------.
| ` | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 |BSpace |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Esc | A | S | D | F | G | Home | | Del | H | J | K | L | : | ' |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Shift | Z | X | C | V | B | - | | = | N | M | , | . | / | Shift |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| LCtrl | LGUI | LAlt |Numpad ||||||||| Space | Lower | Enter ||||||||| Enter | Raise |BSpace ||||||||| Shell | RAlt | RGui |Ctl/Ent|
.---------------------------------------------------------------------------------------------------------------------------------------.
```
### Numpad
```
.---------------------------------------------------------------------------------------------------------------------------------------.
|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|NumLock| / | * | - |XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX| 7 | 8 | 9 | |XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+ + +-------|
|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX| 4 | 5 | 6 | |XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX| 1 | 2 | 3 | |XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+ Enter +-------|
|XXXXXXX|XXXXXXX|XXXXXXX|Numpad |||||||||XXXXXXX|XXXXXXX|XXXXXXX|||||||||XXXXXXX|XXXXXXX|XXXXXXX||||||||| 0 | . | | Enter |
.---------------------------------------------------------------------------------------------------------------------------------------.
```
### Lower
```
.---------------------------------------------------------------------------------------------------------------------------------------.
| F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | ( | { | [ | | | | ] | } | ) | | | |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | | |PageUp | | | | | | | | | |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| |VolDown| VolUp | | |PageDwn| | | | | | | | | |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | ||||||||| | Lower | ||||||||| | Raise | ||||||||| | | | |
.---------------------------------------------------------------------------------------------------------------------------------------.
```
### Raise
```
.---------------------------------------------------------------------------------------------------------------------------------------.
| F11 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F12 |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | ( | { | [ | | | | ] | } | ) | | | |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | | | | End | | | Left | Down | Up | Right | | |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | | | | | | | | | | | | |
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| | | | ||||||||| | Lower | ||||||||| | Raise | ||||||||| | | | |
.---------------------------------------------------------------------------------------------------------------------------------------.
```
### Adjust
```
.---------------------------------------------------------------------------------------------------------------------------------------.
|XXXXXXX|Windows| Linux |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
|XXXXXXX|XXXXXXX|XXXXXXX| Cycle |On/Off |XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|On/Off | Cycle |XXXXXXX|XXXXXXX|XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
| Reset |XXXXXXX|XXXXXXX|Breathe| Inc |XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|Hue inc|Sat inc| Inc |XXXXXXX|XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX| Dec |XXXXXXX|XXXXXXX| |XXXXXXX|XXXXXXX|Hue dec|Sat dec| Dec |XXXXXXX|XXXXXXX|
|-------+-------+-------+-------+-------+-------+-------+-----------------------+-------+-------+-------+-------+-------+-------+-------|
|XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|||||||||XXXXXXX| Lower |XXXXXXX|||||||||XXXXXXX| Raise |XXXXXXX|||||||||XXXXXXX|XXXXXXX|XXXXXXX|XXXXXXX|
.---------------------------------------------------------------------------------------------------------------------------------------.
```

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
AUDIO_ENABLE = no

View file

@ -0,0 +1,33 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS

View file

@ -0,0 +1,24 @@
#include QMK_KEYBOARD_H
#include "keymap_german.h"
enum layers {
_QWERTZ,
_MOD,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTZ] = LAYOUT(
_______ ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,_______ , KC_RSFT ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,_______ ,
KC_ESC ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_BSPC , KC_DEL ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,DE_ADIA ,
KC_TAB ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,DE_UNDS , KC_LALT ,KC_H ,KC_J ,KC_K ,KC_L ,DE_EQL ,DE_ODIA ,
_______ ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_SPC , KC_ENT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,DE_SS ,DE_UDIA ,
_______ ,_______ ,_______ ,_______ , KC_LCTL ,KC_SPC ,KC_LSFT , MO(_MOD),KC_ENT ,KC_LGUI , _______ ,_______ ,_______ ,_______
),
[_MOD] = LAYOUT(
KC_F11 ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,RGB_MOD , RESET ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F12 ,
DE_CIRC ,DE_QUOT ,DE_DQUO ,DE_LCBR ,DE_RCBR ,DE_GRV ,RGB_TOG , _______ ,DE_PERC ,DE_PLUS ,DE_MINS ,DE_ASTR ,DE_SLSH ,DE_BSLS ,
DE_TILD ,DE_EXLM ,DE_DLR ,DE_LPRN ,DE_RPRN ,DE_AMPR ,RGB_M_P , _______ ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RGHT ,DE_QUES ,DE_PIPE ,
_______ ,DE_AT ,DE_EURO ,DE_LBRC ,DE_RBRC ,_______ ,_______ , _______ ,DE_HASH ,DE_LABK ,DE_SCLN ,DE_COLN ,DE_RABK ,DE_SECT ,
_______ ,_______ ,_______ ,_______ , _______ ,_______ ,_______ , _______ ,_______ ,_______ , _______ ,_______ ,_______ ,_______
),
};

View file

@ -0,0 +1,4 @@
# Tw1t611 Ergodash Layout
This is a german layout for the ergodash keyboard. The Umlauts are placed on the right side.
It uses two layers and has vim like aligned arrow keys.

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = no
RGBLIGHT_ENABLE = no
AUDIO_ENABLE = no

View file

@ -0,0 +1,67 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
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
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
//#define MASTER_LEFT
#define MASTER_RIGHT /* Cable connected to the right split keyboard */
// #define EE_HANDS
#define AUTO_SHIFT_TIMEOUT 210
#define TAPPING_TERM_PER_KEY
// https://beta.docs.qmk.fm/features/feature_leader_key
//#define LEADER_PER_KEY_TIMING
//#define LEADER_TIMEOUT 280
// https://docs.qmk.fm/#/feature_mouse_keys
#define MK_3_SPEED // Constant Speed Mode
#define MOUSEKEY_DELAY 300
#define MOUSEKEY_INTERVAL 16
#define MOUSEKEY_MAX_SPEED 3
#define MOUSEKEY_TIME_TO_MAX 60
#define MK_C_OFFSET_0 4
#define MK_C_INTERVAL_0 28
#define MK_C_OFFSET_1 8
#define MK_C_INTERVAL_1 16
#define MK_C_OFFSET_2 20
#define MK_C_INTERVAL_2 16
#define MOUSEKEY_WHEEL_MAX_SPEED 4
#define MOUSEKEY_WHEEL_TIME_TO_MAX 40
#define MK_W_OFFSET_0 1
#define MK_W_INTERVAL_0 120
#define MK_W_OFFSET_1 1
#define MK_W_INTERVAL_1 100
#define MK_W_OFFSET_2 1
#define MK_W_INTERVAL_2 60
//#define STARTUP_RESET_EEPROM // EMERGENCY

View file

@ -0,0 +1,157 @@
#include QMK_KEYBOARD_H
#include "yet-another-developer.h"
#ifndef UNICODE_ENABLE
# define UC(x) KC_NO
#endif
extern keymap_config_t keymap_config;
#define EISU LALT(KC_GRV)
#define LAYOUT_ergodash_pretty_wrapper(...) LAYOUT_ergodash_pretty(__VA_ARGS__)
/* Keymap: BASE layer
*
* ,----------------------------------------------------. ,----------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | [ | | ] | 6 | 7 | 8 | 9 | 0 | Pscree |
* |--------+--------+------+------+------+-------------| |------+------+------+------+------+--------+--------|
* | ` | K01 | K02 | K03 | K04 | K05 | - | | = | K06 | K07 | K08 | K09 | K0A | \ |
* |--------+--------+------+------+------+------|------| |------|------+------+------+------+--------+--------|
* | Tab | K11 | K12 | K13 | K14 | K15 | { | | } | K16 | K17 | K18 | K19 | K1A | " |
* |--------+--------+------+------+------+------|------' `------|------+------+------+------+--------+--------|
* | LShift | K21 | K22 | K23 | K24 | K25 | | K26 | K27 | K28 | K29 | K2A | RShift |
* |--------+--------+------+------+------+------' `------+------+------+------+--------+--------|
* | LCtrl | GUI | Alt | Alt | | LEFT | DOWN | UP | RIGHT |
* `-------------------------------' `-------------------------------'
* ,--------------. ,--------------.
* | Lower| | | | Raise |
* ,-------| / | Del | | Bksp + / +-------.
* |CMD/Spc| Space| | | | Enter |CMD/Spc|
* `----------------------' `----------------------'
*/
#define LAYOUT_ergodash_pretty_base( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \
K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \
) \
LAYOUT_ergodash_pretty_wrapper( \
KC_ESC, ________________NUMBER_LEFT________________, KC_LBRC, KC_RBRC, ________________NUMBER_RIGHT_______________, KC_PSCR, \
KC_GRV, K01, K02, K03, K04, K05, KC_MINS, KC_EQL, K06, K07, K08, K09, K0A, KC_BSLS, \
KC_TAB, K11, K12, K13, K14, K15, KC_LCBR, KC_RCBR, K16, K17, K18, K19, K1A, KC_QUOT, \
OS_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, OS_RSFT, \
KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, \
LT(_LOWER, KC_SPC), LT(_RAISE, KC_ENT), \
OS_LGUI,LT(_LOWER, KC_SPC),KC_DEL, KC_BSPC, LT(_RAISE, KC_ENT), OS_RGUI \
)
#define LAYOUT_ergodash_pretty_base_wrapper(...) LAYOUT_ergodash_pretty_base(__VA_ARGS__)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_ergodash_pretty_base_wrapper(
_________________QWERTY_L1_________________, _________________QWERTY_R1_________________,
_________________QWERTY_L2_________________, _________________QWERTY_R2_________________,
_________________QWERTY_L3_________________, _________________QWERTY_R3_________________
),
/* Keymap: COLEMAK layer
*
* ,----------------------------------------------------. ,----------------------------------------------------.
* | ESC | 1 | 2 | 3 | 4 | 5 | [ | | ] | 6 | 7 | 8 | 9 | 0 | - |
* |--------+--------+------+------+------+-------------| |------+------+------+------+------+--------+--------|
* | ` | Q | W | F | P | G | - | | = | J | L | U | Y | ; | \ |
* |--------+--------+------+------+------+------|------| |------|------+------+------+------+--------+--------|
* | Tab | A | R | S | T | D | Del | | Bksp | H | N | E | I | O | ' |
* |--------+--------+------+------+------+------|------' `------|------+------+------+------+--------+--------|
* | LShift | Z | X | C | V | B | | K | M | , < | . > | / | RShift |
* |--------+--------+------+------+------+------' `------+------+------+------+--------+--------|
* | Ctrl | GUI | Alt | EISU | | LEFT | DOWN | UP | RIGHT |
* `-------------------------------' `-------------------------------'
* ,--------------. ,--------------.
* | Lower| | | | Raise |
* ,-------| / | Del | | Bksp + / +-------.
* |CMD/Spc| Space| | | | Enter |CMD/Spc|
* `----------------------' `----------------------'
*/
// If it accepts an argument (i.e, is a function), it doesn't need KC_.
// Otherwise, it needs KC_*
[_COLEMAK] = LAYOUT_ergodash_pretty_base_wrapper(
_________________COLEMAK_L1________________, _________________COLEMAK_R1________________,
_________________COLEMAK_L2________________, _________________COLEMAK_R2________________,
_________________COLEMAK_L3________________, _________________COLEMAK_R3________________
),
[_DVORAK] = LAYOUT_ergodash_pretty_base_wrapper(
_________________DVORAK_L1_________________, _________________DVORAK_R1_________________,
_________________DVORAK_L2_________________, _________________DVORAK_R2_________________,
_________________DVORAK_L3_________________, _________________DVORAK_R3_________________
),
[_WORKMAN] = LAYOUT_ergodash_pretty_base_wrapper(
_________________WORKMAN_L1________________, _________________WORKMAN_R1________________,
_________________WORKMAN_L2________________, _________________WORKMAN_R2________________,
_________________WORKMAN_L3________________, _________________WORKMAN_R3________________
),
#ifdef UNICODEMAP_ENABLE
[_UNICODE] = LAYOUT_ergodash_pretty_base_wrapper(
_______________UNICODE_L1__________________, _______________UNICODE_R1__________________,
_______________UNICODE_L2__________________, _______________UNICODE_R2__________________,
_______________UNICODE_L3__________________, _______________UNICODE_R3__________________
),
#endif
[_LOWER] = LAYOUT_ergodash_pretty_wrapper(
KC_F11, _________________FUNC_LEFT_________________, KC_RST , KC_RST , _________________FUNC_RIGHT________________, KC_F12,
KC_TILD, _________________LOWER_L1__________________, _______, _______, _________________LOWER_R1__________________, KC_PIPE,
_______, _________________LOWER_L2__________________, _______, _______, _________________LOWER_R2__________________, KC_DQUO,
_______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, KC_PSCR,
_______, _______, _______, _______, _______, _______, _______, KC_PAUS,
_______, _______,
_______, _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_ergodash_pretty_wrapper(
KC_F12, _________________FUNC_LEFT_________________, KC_RST, KC_RST , _________________FUNC_RIGHT________________, KC_F11,
KC_GRV, _________________RAISE_L1__________________, _______, _______, _________________RAISE_R1__________________, KC_BSLS,
_______, _________________RAISE_L2__________________, _______, _______, _________________RAISE_R2__________________, KC_QUOT,
_______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, KC_PSCR,
_______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END,
_______, _______,
_______, _______, _______, _______, _______, _______
),
[_ADJUST] = LAYOUT_ergodash_pretty_wrapper(
KC_MAKE, _______, _______, _______, _______, _______, _______, KC_NUKE, _______, _______, _______, _______, _______, KC_RST,
VRSN, _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________, EEP_RST,
_______, _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________, _______,
_______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, _______,
_______, _______, _______, _______, _______, _______, _______, _______,
_______, _______,
_______, _______, _______, _______, _______, _______
),
};
#ifdef AUDIO_ENABLE
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
return true;
}
void matrix_init_keymap(void) {
#ifdef STARTUP_RESET_EEPROM
eeconfig_init();
#endif
}
//

View file

@ -0,0 +1,23 @@
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
# Device
AUDIO_ENABLE = no
RGBLIGHT_ENABLE = no
BACKLIGHT_ENABLE = no
INDICATOR_LIGHTS = no
# QMK Features
AUTO_SHIFT_ENABLE = no
MOUSEKEY_ENABLE = no
CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = no # Commands for debug and configuration
LEADER_ENABLE = yes # default is yes
TAP_DANCE_ENABLE = no #(+1254)
UNICODE_ENABLE = no #(+1134)
UNICODEMAP_ENABLE = no
NKRO_ENABLE = no
MACROS_ENABLED = no
# User Defined Features
NO_SECRETS = no

View file

@ -0,0 +1,32 @@
#include "ergodash.h"
#ifdef AUDIO_ENABLE
float tone_startup[][2] = SONG(STARTUP_SOUND);
float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
#endif
void matrix_init_kb(void) {
#ifdef AUDIO_ENABLE
_delay_ms(20); // gets rid of tick
PLAY_SONG(tone_startup);
#endif
// // green led on
// DDRD |= (1<<5);
// PORTD &= ~(1<<5);
// // orange led on
// DDRB |= (1<<0);
// PORTB &= ~(1<<0);
matrix_init_user();
};
void shutdown_user(void) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_goodbye);
_delay_ms(150);
stop_all_notes();
#endif
}

View file

@ -0,0 +1,139 @@
#pragma once
#include "ergodash.h"
#include "quantum.h"
#ifdef USE_I2C
#include <stddef.h>
#ifdef __AVR__
#include <avr/io.h>
#include <avr/interrupt.h>
#endif
#endif
#define XXX KC_NO
#ifndef FLIP_HALF
// Standard Keymap
// (TRRS jack on the left half is to the right, TRRS jack on the right half is to the left)
# define LAYOUT_4key( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
) { \
{ L00, L01, L02, L03, L04, L05, L06 }, \
{ L10, L11, L12, L13, L14, L15, L16 }, \
{ L20, L21, L22, L23, L24, L25, L26 }, \
{ L30, L31, L32, L33, L34, L35, L36 }, \
{ L40, L41, L42, L43, L44, L45, L46 }, \
{ R06, R05, R04, R03, R02, R01, R00 }, \
{ R16, R15, R14, R13, R12, R11, R10 }, \
{ R26, R25, R24, R23, R22, R21, R20 }, \
{ R36, R35, R34, R33, R32, R31, R30 }, \
{ R46, R45, R44, R43, R42, R41, R40 } \
}
// Just defined for configurator support, the matrix is identical to LAYOUT_4key
# define LAYOUT_4key_2u_inner( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
) { \
{ L00, L01, L02, L03, L04, L05, L06 }, \
{ L10, L11, L12, L13, L14, L15, L16 }, \
{ L20, L21, L22, L23, L24, L25, L26 }, \
{ L30, L31, L32, L33, L34, L35, L36 }, \
{ L40, L41, L42, L43, L44, L45, L46 }, \
{ R06, R05, R04, R03, R02, R01, R00 }, \
{ R16, R15, R14, R13, R12, R11, R10 }, \
{ R26, R25, R24, R23, R22, R21, R20 }, \
{ R36, R35, R34, R33, R32, R31, R30 }, \
{ R46, R45, R44, R43, R42, R41, R40 } \
}
# define LAYOUT_3key_2us( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
) { \
{ L00, L01, L02, L03, L04, L05, L06 }, \
{ L10, L11, L12, L13, L14, L15, L16 }, \
{ L20, L21, L22, L23, L24, L25, L26 }, \
{ L30, L31, L32, L33, L34, L35, XXX }, \
{ L40, L41, L42, L43, L44, L45, L46 }, \
{ R06, R05, R04, R03, R02, R01, R00 }, \
{ R16, R15, R14, R13, R12, R11, R10 }, \
{ R26, R25, R24, R23, R22, R21, R20 }, \
{ R36, R35, R34, R33, R32, R31, XXX }, \
{ R46, R45, R44, R43, R42, R41, R40 } \
}
# define LAYOUT_3key_1us( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, R41, R42, R43, R44, R45, R46 \
) { \
{ L00, L01, L02, L03, L04, L05, L06 }, \
{ L10, L11, L12, L13, L14, L15, L16 }, \
{ L20, L21, L22, L23, L24, L25, L26 }, \
{ L30, L31, L32, L33, L34, L35, L36 }, \
{ L40, L41, L42, L43, L44, L45, XXX }, \
{ R06, R05, R04, R03, R02, R01, R00 }, \
{ R16, R15, R14, R13, R12, R11, R10 }, \
{ R26, R25, R24, R23, R22, R21, R20 }, \
{ R36, R35, R34, R33, R32, R31, R30 }, \
{ R46, R45, R44, R43, R42, R41, XXX } \
}
# define LAYOUT_2key( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, R41, R42, R43, R44, R45, R46 \
) { \
{ L00, L01, L02, L03, L04, L05, L06 }, \
{ L10, L11, L12, L13, L14, L15, L16 }, \
{ L20, L21, L22, L23, L24, L25, L26 }, \
{ L30, L31, L32, L33, L34, L35, XXX }, \
{ L40, L41, L42, L43, L44, L45, XXX }, \
{ R06, R05, R04, R03, R02, R01, R00 }, \
{ R16, R15, R14, R13, R12, R11, R10 }, \
{ R26, R25, R24, R23, R22, R21, R20 }, \
{ R36, R35, R34, R33, R32, R31, XXX }, \
{ R46, R45, R44, R43, R42, R41, XXX } \
}
#define LAYOUT LAYOUT_4key
#else
// Keymap with right side flipped
// (TRRS jack on both halves are to the right)
# define LAYOUT( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
) { \
{ L00, L01, L02, L03, L04, L05, L06 }, \
{ L10, L11, L12, L13, L14, L15, L16 }, \
{ L20, L21, L22, L23, L24, L25, L26 }, \
{ L30, L31, L32, L33, L34, L35, L36 }, \
{ L40, L41, L42, L43, L44, L45, L46 }, \
{ R00, R01, R02, R03, R04, R05, R06 }, \
{ R10, R11, R12, R13, R14, R15, R16 }, \
{ R20, R21, R22, R23, R24, R25, R26 }, \
{ R30, R31, R32, R33, R34, R35, R36 }, \
{ R40, R41, R42, R43, R44, R45, R46 } \
}
#endif

View file

@ -0,0 +1,3 @@
BACKLIGHT_ENABLE = no
RGBLIGHT_ENABLE = no
AUDIO_ENABLE = no