cleaned up and added UT47.2
This commit is contained in:
parent
e225535c8d
commit
2c5ed295f0
@ -1,43 +0,0 @@
|
|||||||
/* Copyright 2018 MechMerlin
|
|
||||||
*
|
|
||||||
* 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 "1up60hse.h"
|
|
||||||
|
|
||||||
void matrix_init_kb(void) {
|
|
||||||
// put your keyboard start-up code here
|
|
||||||
// runs once when the firmware starts up
|
|
||||||
|
|
||||||
matrix_init_user();
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_kb(void) {
|
|
||||||
// put your looping keyboard code here
|
|
||||||
// runs every cycle (a lot)
|
|
||||||
|
|
||||||
matrix_scan_user();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
// put your per-action keyboard code here
|
|
||||||
// runs for every action, just before processing by the firmware
|
|
||||||
|
|
||||||
return process_record_user(keycode, record);
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_kb(uint8_t usb_led) {
|
|
||||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
|
||||||
|
|
||||||
led_set_user(usb_led);
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
/* Copyright 2018 MechMerlin
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 2 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
// This a shortcut to help you visually see your layout.
|
|
||||||
// The first section contains all of the arguments representing the physical
|
|
||||||
// layout of the board and position of the keys
|
|
||||||
// The second converts the arguments into a two-dimensional array which
|
|
||||||
// represents the switch matrix.
|
|
||||||
#define LAYOUT_60_ansi( \
|
|
||||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \
|
|
||||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
|
|
||||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, \
|
|
||||||
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3D, \
|
|
||||||
K40, K41, K42, K45, K49, K4A, K4B, K4D \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \
|
|
||||||
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \
|
|
||||||
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D }, \
|
|
||||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, KC_NO, KC_NO, K3D }, \
|
|
||||||
{ K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, KC_NO, KC_NO, K49, K4A, K4B, KC_NO, K4D } \
|
|
||||||
}
|
|
@ -1,219 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2018 MechMerlin
|
|
||||||
|
|
||||||
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 0x6F75 // OU
|
|
||||||
#define PRODUCT_ID 0x6873
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER 1upkeyboards
|
|
||||||
#define PRODUCT 1up60hse
|
|
||||||
#define DESCRIPTION A custom 60% keyboard
|
|
||||||
|
|
||||||
/* key matrix size */
|
|
||||||
#define MATRIX_ROWS 5
|
|
||||||
#define MATRIX_COLS 14
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Keyboard Matrix Assignments
|
|
||||||
*
|
|
||||||
* Change this to how you wired your keyboard
|
|
||||||
* COLS: AVR pins used for columns, left to right
|
|
||||||
* ROWS: AVR pins used for rows, top to bottom
|
|
||||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
|
||||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define MATRIX_ROW_PINS { B3, B2, B1, B0, D4 }
|
|
||||||
#define MATRIX_COL_PINS { C7, F7, F6, F5, F4, F1, E6, D1, D0, D2, D3, D5, D6, D7 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW, ROW2COL*/
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
||||||
|
|
||||||
#define BACKLIGHT_PIN B7
|
|
||||||
#define BACKLIGHT_BREATHING
|
|
||||||
#define BACKLIGHT_LEVELS 5
|
|
||||||
|
|
||||||
#define RGB_DI_PIN F0
|
|
||||||
#ifdef RGB_DI_PIN
|
|
||||||
#define RGBLIGHT_ANIMATIONS
|
|
||||||
#define RGBLED_NUM 14
|
|
||||||
#define RGBLIGHT_HUE_STEP 8
|
|
||||||
#define RGBLIGHT_SAT_STEP 8
|
|
||||||
#define RGBLIGHT_VAL_STEP 8
|
|
||||||
#define RGBLIGHT_SLEEP
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
|
||||||
#define DEBOUNCE 5
|
|
||||||
|
|
||||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
|
||||||
//#define MATRIX_HAS_GHOST
|
|
||||||
|
|
||||||
/* number of backlight levels */
|
|
||||||
|
|
||||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
|
||||||
#define LOCKING_SUPPORT_ENABLE
|
|
||||||
/* Locking resynchronize hack */
|
|
||||||
#define LOCKING_RESYNC_ENABLE
|
|
||||||
|
|
||||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
|
||||||
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
|
|
||||||
*/
|
|
||||||
// #define GRAVE_ESC_CTRL_OVERRIDE
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Force NKRO
|
|
||||||
*
|
|
||||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
|
||||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
|
||||||
* makefile for this to work.)
|
|
||||||
*
|
|
||||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
|
||||||
* until the next keyboard reset.
|
|
||||||
*
|
|
||||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
|
||||||
* fully operational during normal computer usage.
|
|
||||||
*
|
|
||||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
|
||||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
|
||||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
|
||||||
* power-up.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
//#define FORCE_NKRO
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Magic Key Options
|
|
||||||
*
|
|
||||||
* Magic keys are hotkey commands that allow control over firmware functions of
|
|
||||||
* the keyboard. They are best used in combination with the HID Listen program,
|
|
||||||
* found here: https://www.pjrc.com/teensy/hid_listen.html
|
|
||||||
*
|
|
||||||
* The options below allow the magic key functionality to be changed. This is
|
|
||||||
* useful if your keyboard/keypad is missing keys and you want magic key support.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* control how magic key switches layers */
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
|
|
||||||
|
|
||||||
/* override magic key keymap */
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
|
|
||||||
//#define MAGIC_KEY_HELP1 H
|
|
||||||
//#define MAGIC_KEY_HELP2 SLASH
|
|
||||||
//#define MAGIC_KEY_DEBUG D
|
|
||||||
//#define MAGIC_KEY_DEBUG_MATRIX X
|
|
||||||
//#define MAGIC_KEY_DEBUG_KBD K
|
|
||||||
//#define MAGIC_KEY_DEBUG_MOUSE M
|
|
||||||
//#define MAGIC_KEY_VERSION V
|
|
||||||
//#define MAGIC_KEY_STATUS S
|
|
||||||
//#define MAGIC_KEY_CONSOLE C
|
|
||||||
//#define MAGIC_KEY_LAYER0_ALT1 ESC
|
|
||||||
//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
|
|
||||||
//#define MAGIC_KEY_LAYER0 0
|
|
||||||
//#define MAGIC_KEY_LAYER1 1
|
|
||||||
//#define MAGIC_KEY_LAYER2 2
|
|
||||||
//#define MAGIC_KEY_LAYER3 3
|
|
||||||
//#define MAGIC_KEY_LAYER4 4
|
|
||||||
//#define MAGIC_KEY_LAYER5 5
|
|
||||||
//#define MAGIC_KEY_LAYER6 6
|
|
||||||
//#define MAGIC_KEY_LAYER7 7
|
|
||||||
//#define MAGIC_KEY_LAYER8 8
|
|
||||||
//#define MAGIC_KEY_LAYER9 9
|
|
||||||
//#define MAGIC_KEY_BOOTLOADER PAUSE
|
|
||||||
//#define MAGIC_KEY_LOCK CAPS
|
|
||||||
//#define MAGIC_KEY_EEPROM E
|
|
||||||
//#define MAGIC_KEY_NKRO N
|
|
||||||
//#define MAGIC_KEY_SLEEP_LED Z
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Feature disable options
|
|
||||||
* These options are also useful to firmware size reduction.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* disable debug print */
|
|
||||||
//#define NO_DEBUG
|
|
||||||
|
|
||||||
/* disable print */
|
|
||||||
//#define NO_PRINT
|
|
||||||
|
|
||||||
/* disable action features */
|
|
||||||
//#define NO_ACTION_LAYER
|
|
||||||
//#define NO_ACTION_TAPPING
|
|
||||||
//#define NO_ACTION_ONESHOT
|
|
||||||
//#define NO_ACTION_MACRO
|
|
||||||
//#define NO_ACTION_FUNCTION
|
|
||||||
|
|
||||||
/*
|
|
||||||
* MIDI options
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Prevent use of disabled MIDI features in the keymap */
|
|
||||||
//#define MIDI_ENABLE_STRICT 1
|
|
||||||
|
|
||||||
/* enable basic MIDI features:
|
|
||||||
- MIDI notes can be sent when in Music mode is on
|
|
||||||
*/
|
|
||||||
//#define MIDI_BASIC
|
|
||||||
|
|
||||||
/* enable advanced MIDI features:
|
|
||||||
- MIDI notes can be added to the keymap
|
|
||||||
- Octave shift and transpose
|
|
||||||
- Virtual sustain, portamento, and modulation wheel
|
|
||||||
- etc.
|
|
||||||
*/
|
|
||||||
//#define MIDI_ADVANCED
|
|
||||||
|
|
||||||
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
|
|
||||||
//#define MIDI_TONE_KEYCODE_OCTAVES 1
|
|
||||||
|
|
||||||
/*
|
|
||||||
* HD44780 LCD Display Configuration
|
|
||||||
*/
|
|
||||||
/*
|
|
||||||
#define LCD_LINES 2 //< number of visible lines of the display
|
|
||||||
#define LCD_DISP_LENGTH 16 //< visibles characters per line of the display
|
|
||||||
|
|
||||||
#define LCD_IO_MODE 1 //< 0: memory mapped mode, 1: IO port mode
|
|
||||||
|
|
||||||
#if LCD_IO_MODE
|
|
||||||
#define LCD_PORT PORTB //< port for the LCD lines
|
|
||||||
#define LCD_DATA0_PORT LCD_PORT //< port for 4bit data bit 0
|
|
||||||
#define LCD_DATA1_PORT LCD_PORT //< port for 4bit data bit 1
|
|
||||||
#define LCD_DATA2_PORT LCD_PORT //< port for 4bit data bit 2
|
|
||||||
#define LCD_DATA3_PORT LCD_PORT //< port for 4bit data bit 3
|
|
||||||
#define LCD_DATA0_PIN 4 //< pin for 4bit data bit 0
|
|
||||||
#define LCD_DATA1_PIN 5 //< pin for 4bit data bit 1
|
|
||||||
#define LCD_DATA2_PIN 6 //< pin for 4bit data bit 2
|
|
||||||
#define LCD_DATA3_PIN 7 //< pin for 4bit data bit 3
|
|
||||||
#define LCD_RS_PORT LCD_PORT //< port for RS line
|
|
||||||
#define LCD_RS_PIN 3 //< pin for RS line
|
|
||||||
#define LCD_RW_PORT LCD_PORT //< port for RW line
|
|
||||||
#define LCD_RW_PIN 2 //< pin for RW line
|
|
||||||
#define LCD_E_PORT LCD_PORT //< port for Enable line
|
|
||||||
#define LCD_E_PIN 1 //< pin for Enable line
|
|
||||||
#endif
|
|
||||||
*/
|
|
@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "1up60hse",
|
|
||||||
"url": "",
|
|
||||||
"maintainer": "qmk",
|
|
||||||
"width": 15,
|
|
||||||
"height": 5,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT_60_ansi": {
|
|
||||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
/* Copyright 2018 MechMerlin
|
|
||||||
* Copyright 2018 Logan Huskins
|
|
||||||
*
|
|
||||||
* 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
|
|
@ -1,82 +0,0 @@
|
|||||||
/* Copyright 2018 MechMerlin
|
|
||||||
* Copyright 2018 Logan Huskins
|
|
||||||
*
|
|
||||||
* 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] = {
|
|
||||||
/* Qwerty
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Backspace |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Caps | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Shift | Z | X | C | V | B | N | M | , | . | / | Shift |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Ctrl | GUI | Alt | Space | Alt | GUI | L1 | Ctrl |
|
|
||||||
* `-----------------------------------------------------------------------------------------'
|
|
||||||
*/
|
|
||||||
[0] = LAYOUT_60_ansi(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 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, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL
|
|
||||||
),
|
|
||||||
|
|
||||||
/* Function
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Del |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | Up | | | | | | | |PrtSc|ScrLk|Pause| |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | |Left |Down |Right| | | | | | Ins |Home |PgUp | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | |VolUp|VolDn|VolMu| | | | | | End |PgDn | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | L2 | | |
|
|
||||||
* `-----------------------------------------------------------------------------------------'
|
|
||||||
*/
|
|
||||||
[1] = LAYOUT_60_ansi(
|
|
||||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
|
|
||||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
|
|
||||||
KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
/* RGB
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | | | | | | | | | | | | | | Reset |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | BL Tog |BLInc|BLDec|BLStp| | | | | | | | | | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | RGB Tog |Mode |Hue I|Sat I|Val I|Spd I|Plain|Breat|Rnbow|Swirl| | | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | |RMode|Hue D|Sat D|Val D|Spd D|Snake|Knigh|Xmas |Gradi| | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | | | |
|
|
||||||
* `-----------------------------------------------------------------------------------------'
|
|
||||||
*/
|
|
||||||
[2] = LAYOUT_60_ansi(
|
|
||||||
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, RESET,
|
|
||||||
BL_TOGG, BL_INC, BL_DEC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
};
|
|
@ -1,4 +0,0 @@
|
|||||||
# 1up60hse default keymap generated by QMK Configurator
|
|
||||||
|
|
||||||
This is the keymap used by [QMK Configurator](https://config.qmk.fm/#/1upkeyboards/1up60hse/LAYOUT_60_ansi) as default.
|
|
||||||
|
|
@ -1,91 +0,0 @@
|
|||||||
/* Copyright 2018 MechMerlin
|
|
||||||
* Copyright 2018 Logan Huskins
|
|
||||||
*
|
|
||||||
* 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] = {
|
|
||||||
/* Qwerty
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Backspace |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Caps | A | S | D | F | G | H | J | K | L | ; | ' | Enter |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Shift | Z | X | C | V | B | N | M | , | . | / | Shift |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | Ctrl | GUI | Alt | Space | Alt | GUI | L1 | Ctrl |
|
|
||||||
* `-----------------------------------------------------------------------------------------'
|
|
||||||
*/
|
|
||||||
[0] = LAYOUT_60_ansi(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 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, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL
|
|
||||||
),
|
|
||||||
|
|
||||||
/* Function
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Del |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | Up | | | | | | | |PrtSc|ScrLk|Pause| |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | |Left |Down |Right| | | | | | Ins |Home |PgUp | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | |VolUp|VolDn|VolMu| | | | | | End |PgDn | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | L2 | | |
|
|
||||||
* `-----------------------------------------------------------------------------------------'
|
|
||||||
*/
|
|
||||||
[1] = LAYOUT_60_ansi(
|
|
||||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
|
|
||||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
|
|
||||||
KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
/* RGB
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | | | | | | | | | | | | | | Reset |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | BL Tog |BLInc|BLDec|BLStp| | | | | | | | | | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | RGB Tog |Mode |Hue I|Sat I|Val I|Spd I|Plain|Breat|Rnbow|Swirl| | | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | |RMode|Hue D|Sat D|Val D|Spd D|Snake|Knigh|Xmas |Gradi| | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | | | |
|
|
||||||
* `-----------------------------------------------------------------------------------------'
|
|
||||||
*/
|
|
||||||
[2] = LAYOUT_60_ansi(
|
|
||||||
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, RESET,
|
|
||||||
BL_TOGG, BL_INC, BL_DEC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_TRNS, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
[3] = LAYOUT_60_ansi(
|
|
||||||
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_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
|
|
||||||
),
|
|
||||||
|
|
||||||
};
|
|
@ -1 +0,0 @@
|
|||||||
# 1up60hse via keymap
|
|
@ -1,3 +0,0 @@
|
|||||||
VIA_ENABLE = yes
|
|
||||||
LTO_ENABLE = yes
|
|
||||||
MOUSEKEY_ENABLE = no
|
|
@ -1,19 +0,0 @@
|
|||||||
/* Copyright 2018 Chuck "@vosechu" Lauer Vose
|
|
||||||
*
|
|
||||||
* 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
|
|
@ -1,46 +0,0 @@
|
|||||||
/* Copyright 2018 Chuck "@vosechu" Lauer Vose
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
#define SPACEFN LT(1, KC_SPC)
|
|
||||||
#define CTL_GRV CTL_T(KC_GRV)
|
|
||||||
#define ALT_TAB ALT_T(KC_TAB)
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT_60_ansi(
|
|
||||||
KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_MINS , KC_EQL , KC_BSPC ,
|
|
||||||
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC , KC_RBRC , KC_BSLS ,
|
|
||||||
KC_CAPS , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_QUOT , 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 ,
|
|
||||||
CTL_GRV , ALT_TAB , KC_LGUI , SPACEFN , KC_RALT , KC_RGUI , MO(1) , KC_RCTL
|
|
||||||
),
|
|
||||||
|
|
||||||
[1] = LAYOUT_60_ansi(
|
|
||||||
KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , KC_DEL ,
|
|
||||||
KC_TRNS , KC_TRNS , KC_UP , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_PSCR , KC_SLCK , KC_PAUS , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_LEFT , KC_DOWN , KC_RGHT , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_INS , KC_HOME , KC_PGUP , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_VOLU , KC_VOLD , KC_MUTE , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_END , KC_PGDN , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , MO(2) , KC_TRNS , KC_TRNS
|
|
||||||
),
|
|
||||||
|
|
||||||
[2] = LAYOUT_60_ansi(
|
|
||||||
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 , RESET ,
|
|
||||||
BL_TOGG , BL_INC , BL_DEC , BL_STEP , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS ,
|
|
||||||
RGB_TOG , RGB_MOD , RGB_HUI , RGB_SAI , RGB_VAI , RGB_SPI , RGB_M_P , RGB_M_B , RGB_M_R , RGB_M_SW , KC_TRNS , KC_TRNS , KC_TRNS ,
|
|
||||||
KC_TRNS , RGB_RMOD , RGB_HUD , RGB_SAD , RGB_VAD , RGB_SPD , RGB_M_SN , RGB_M_K , RGB_M_X , RGB_M_G , KC_TRNS , KC_TRNS ,
|
|
||||||
KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,6 +0,0 @@
|
|||||||
# 1up60hse keymap made by vosechu
|
|
||||||
|
|
||||||
Tweaks from default
|
|
||||||
|
|
||||||
* Add in SpaceFN so arrows are reachable with just left hand (leaving right free for mousing).
|
|
||||||
* Also add tab/grv under the alt/ctrl keys to make those easier to reach.
|
|
@ -1,15 +0,0 @@
|
|||||||
# 1up60hse (hot swap edition)
|
|
||||||
|
|
||||||
![1up60hse](https://i2.wp.com/www.1upkeyboards.com/wp-content/uploads/2018/08/PCB-1up-60-hotswap-group-RGB.jpg?fit=1280%2C1280&ssl=1)
|
|
||||||
|
|
||||||
A 60% PCB with USB C, RGB underglow, backlighting, hotswappable switches, and a standard ANSI layout.
|
|
||||||
|
|
||||||
Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
|
|
||||||
Hardware Supported: 1up60hse 60% PCB.
|
|
||||||
Hardware Availability: [1upkeyboards.com](https://www.1upkeyboards.com/shop/controllers/1up-rgb-pcb-hse/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/1up60hse:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,36 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
# Teensy halfkay
|
|
||||||
# Pro Micro caterina
|
|
||||||
# Atmel DFU atmel-dfu
|
|
||||||
# LUFA DFU lufa-dfu
|
|
||||||
# QMK DFU qmk-dfu
|
|
||||||
# ATmega32A bootloadHID
|
|
||||||
# ATmega328P USBasp
|
|
||||||
BOOTLOADER = atmel-dfu
|
|
||||||
|
|
||||||
# Build Options
|
|
||||||
# change yes to no to disable
|
|
||||||
#
|
|
||||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
|
|
||||||
MOUSEKEY_ENABLE = no # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = yes # Console for debug
|
|
||||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
|
||||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|
||||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
|
||||||
NKRO_ENABLE = no # USB Nkey Rollover
|
|
||||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality on B7 by default
|
|
||||||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
|
|
||||||
MIDI_ENABLE = no # MIDI support
|
|
||||||
UNICODE_ENABLE = no # Unicode
|
|
||||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
|
||||||
AUDIO_ENABLE = no # Audio output on port C6
|
|
||||||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
|
||||||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs
|
|
||||||
EXTRAFLAGS += -flto
|
|
||||||
|
|
||||||
LAYOUTS = 60_ansi
|
|
@ -1,34 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2019 Bubnick
|
|
||||||
|
|
||||||
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 "1up60hte.h"
|
|
||||||
|
|
||||||
void keyboard_pre_init_kb(void) {
|
|
||||||
// put your keyboard start-up code here
|
|
||||||
// runs once when the firmware starts up
|
|
||||||
setPinOutput(B6);
|
|
||||||
keyboard_pre_init_user();
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_kb(uint8_t usb_led) {
|
|
||||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
|
||||||
writePinLow(B6);
|
|
||||||
} else {
|
|
||||||
writePinHigh(B6);
|
|
||||||
}
|
|
||||||
led_set_user(usb_led);
|
|
||||||
}
|
|
@ -1,49 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2019 Bubnick
|
|
||||||
|
|
||||||
This program is free software: you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation, either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
#define LAYOUT_tsangan( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K413, \
|
|
||||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \
|
|
||||||
K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, \
|
|
||||||
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, \
|
|
||||||
K400, K401, K402, K406, K410, K411, K412 \
|
|
||||||
) { \
|
|
||||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013 }, \
|
|
||||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113 }, \
|
|
||||||
{ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO }, \
|
|
||||||
{ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, KC_NO }, \
|
|
||||||
{ K400, K401, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, K412, K413 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
/* HHKB Variant */
|
|
||||||
#define LAYOUT_60_hhkb( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K413, \
|
|
||||||
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \
|
|
||||||
K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, \
|
|
||||||
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, \
|
|
||||||
K401, K402, K406, K410, K411 \
|
|
||||||
) { \
|
|
||||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013 }, \
|
|
||||||
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113 }, \
|
|
||||||
{ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO }, \
|
|
||||||
{ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, KC_NO }, \
|
|
||||||
{ KC_NO, K401, K402, KC_NO, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413 } \
|
|
||||||
}
|
|
@ -1,65 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2019 Bubnick
|
|
||||||
|
|
||||||
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 0x6F75 // OU
|
|
||||||
#define PRODUCT_ID 0x6874 // HT
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER 1upkeyboards
|
|
||||||
#define PRODUCT 1up60hte
|
|
||||||
#define DESCRIPTION A custom 60% keyboard
|
|
||||||
|
|
||||||
/* key matrix size */
|
|
||||||
#define MATRIX_ROWS 5
|
|
||||||
#define MATRIX_COLS 14
|
|
||||||
|
|
||||||
/* key matrix pins */
|
|
||||||
#define MATRIX_ROW_PINS { B3, B2, B1, B0, D4 }
|
|
||||||
#define MATRIX_COL_PINS { F6, F5, F4, F1, E6, D0, D1, D2, D3, D5, D6, D7, B4, B5 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW or ROW2COL */
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
||||||
|
|
||||||
/* number of backlight levels */
|
|
||||||
#define BACKLIGHT_PIN B7
|
|
||||||
#ifdef BACKLIGHT_PIN
|
|
||||||
#define BACKLIGHT_LEVELS 3
|
|
||||||
#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
|
|
||||||
|
|
||||||
#define RGB_DI_PIN F0
|
|
||||||
#ifdef RGB_DI_PIN
|
|
||||||
#define RGBLIGHT_ANIMATIONS
|
|
||||||
#define RGBLED_NUM 14
|
|
||||||
#define RGBLIGHT_HUE_STEP 8
|
|
||||||
#define RGBLIGHT_SAT_STEP 8
|
|
||||||
#define RGBLIGHT_VAL_STEP 8
|
|
||||||
#endif
|
|
@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "1up60hte",
|
|
||||||
"url": "https://www.1upkeyboards.com/shop/controllers/1up-rgb-60-pcb-hte/",
|
|
||||||
"maintainer": "1upkeyboards",
|
|
||||||
"width": 15,
|
|
||||||
"height": 5,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT_tsangan": {
|
|
||||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"|", "x":13, "y":0}, {"label":"~", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Control", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Alt", "x":1.5, "y":4}, {"label":"Meta", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Meta", "x":11, "y":4, "w":1.5}, {"label":"Alt", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
|
|
||||||
},
|
|
||||||
"LAYOUT_60_hhkb": {
|
|
||||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"|", "x":13, "y":0}, {"label":"~", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Control", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, {"label":"Alt", "x":1.5, "y":4}, {"label":"Meta", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Meta", "x":11, "y":4, "w":1.5}, {"label":"Alt", "x":12.5, "y":4}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,33 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2019 Bubnick
|
|
||||||
|
|
||||||
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] = {
|
|
||||||
[0] = LAYOUT_tsangan(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
|
||||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 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, MO(1),
|
|
||||||
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL),
|
|
||||||
|
|
||||||
[1] = LAYOUT_tsangan(
|
|
||||||
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
|
||||||
KC_CAPS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_CLR,
|
|
||||||
KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, RGB_VAD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
|
|
||||||
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
|
||||||
};
|
|
@ -1,33 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2019 Bubnick
|
|
||||||
|
|
||||||
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] = {
|
|
||||||
[0] = LAYOUT_tsangan(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
|
||||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 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, MO(1),
|
|
||||||
KC_NO, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_NO),
|
|
||||||
|
|
||||||
[1] = LAYOUT_tsangan(
|
|
||||||
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
|
||||||
KC_CAPS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_CLR,
|
|
||||||
KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, RGB_VAD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
|
|
||||||
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
|
||||||
};
|
|
@ -1,47 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2020 MechMerlin
|
|
||||||
|
|
||||||
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] = {
|
|
||||||
[0] = LAYOUT_tsangan(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
|
||||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, 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, MO(1),
|
|
||||||
KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL),
|
|
||||||
|
|
||||||
[1] = LAYOUT_tsangan(
|
|
||||||
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
|
|
||||||
KC_CAPS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_CLR,
|
|
||||||
KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, RGB_VAD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS,
|
|
||||||
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
|
||||||
|
|
||||||
[2] = LAYOUT_tsangan(
|
|
||||||
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_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),
|
|
||||||
|
|
||||||
[3] = LAYOUT_tsangan(
|
|
||||||
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_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),
|
|
||||||
};
|
|
@ -1,2 +0,0 @@
|
|||||||
VIA_ENABLE = yes
|
|
||||||
MOUSEKEY_ENABLE = no
|
|
@ -1,17 +0,0 @@
|
|||||||
|
|
||||||
# 1up60hte (Hot Swap Tsangan Edition)
|
|
||||||
|
|
||||||
![1up60hte](https://www.1upkeyboards.com/wp-content/uploads/2019/01/PCB-60-HS-TSA-both.jpg)
|
|
||||||
|
|
||||||
|
|
||||||
A 60% PCB with USB C, RGB underglow, backlighting, hotswappable switches, and a Tsangan layout.
|
|
||||||
|
|
||||||
Keyboard Maintainer: [Bubnick](https://github.com/bubnick)
|
|
||||||
Hardware Supported: 1up60hte 60% PCB
|
|
||||||
Hardware Availability: [1upkeyboards.com](https://www.1upkeyboards.com/shop/controllers/1up-rgb-60-pcb-hte/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/1up60hte:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,29 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
# Teensy halfkay
|
|
||||||
# Pro Micro caterina
|
|
||||||
# Atmel DFU atmel-dfu
|
|
||||||
# LUFA DFU lufa-dfu
|
|
||||||
# QMK DFU qmk-dfu
|
|
||||||
# ATmega32A bootloadHID
|
|
||||||
# ATmega328P USBasp
|
|
||||||
BOOTLOADER = atmel-dfu
|
|
||||||
|
|
||||||
# Build Options
|
|
||||||
# comment out to disable the options.
|
|
||||||
#
|
|
||||||
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
|
|
||||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|
||||||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
|
||||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
|
||||||
AUDIO_ENABLE = no
|
|
||||||
RGBLIGHT_ENABLE = yes
|
|
||||||
LTO_ENABLE = yes
|
|
||||||
|
|
||||||
LAYOUTS = 60_hhkb
|
|
@ -1 +0,0 @@
|
|||||||
#include "1up60rgb.h"
|
|
@ -1,78 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
#define LAYOUT_all( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \
|
|
||||||
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
) { \
|
|
||||||
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \
|
|
||||||
{ K100, KC_NO, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
|
|
||||||
{ K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
|
|
||||||
{ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \
|
|
||||||
{ K400, K401, KC_NO, K403, KC_NO, KC_NO, K406, KC_NO, KC_NO, KC_NO, K410, K411, KC_NO, K413, K414 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* ANSI variant. No extra keys for ISO */
|
|
||||||
#define LAYOUT_60_ansi( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, \
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
|
|
||||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
) LAYOUT_all( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K013,\
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K214, \
|
|
||||||
K300, KC_NO,K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, KC_NO,\
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
)
|
|
||||||
|
|
||||||
/* ISO variant. Remove useless ANSI keys */
|
|
||||||
#define LAYOUT_60_iso( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, \
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \
|
|
||||||
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
) LAYOUT_all( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K013,\
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K214, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \
|
|
||||||
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, KC_NO,\
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
)
|
|
||||||
|
|
||||||
/* HHKB Variant */
|
|
||||||
#define LAYOUT_60_ansi_split_bs_rshift( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
|
|
||||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
) LAYOUT_all( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014,\
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K214, \
|
|
||||||
K300, KC_NO,K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314,\
|
|
||||||
K400, K401, K403, K406, K410, K411, K413, K414 \
|
|
||||||
)
|
|
||||||
|
|
||||||
/* HHKB Variant */
|
|
||||||
#define LAYOUT_60_hhkb( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, \
|
|
||||||
K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
|
|
||||||
K401, K403, K406, K411, K413 \
|
|
||||||
) LAYOUT_all( \
|
|
||||||
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \
|
|
||||||
K100, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
|
|
||||||
K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K214, \
|
|
||||||
K300, KC_NO,K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
|
|
||||||
KC_NO,K401, K403, K406, KC_NO,K411, K413, KC_NO \
|
|
||||||
)
|
|
@ -1,47 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "config_common.h"
|
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0x6F75 // OU
|
|
||||||
#define PRODUCT_ID 0x7267 // RG
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER 1upkeyboards
|
|
||||||
#define PRODUCT 1UP RGB Underglow PCB
|
|
||||||
#define DESCRIPTION 60% keyboard with RGB underglow
|
|
||||||
|
|
||||||
/* key matrix size */
|
|
||||||
#define MATRIX_ROWS 5
|
|
||||||
#define MATRIX_COLS 15
|
|
||||||
|
|
||||||
/* key matrix pins */
|
|
||||||
#define MATRIX_ROW_PINS { D0, D1, D2, D3, D5 }
|
|
||||||
#define MATRIX_COL_PINS { F0, F1, E6, C7, C6, B7, D4, B1, B0, B5, B4, D7, D6, B3, F4 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW or ROW2COL */
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
||||||
|
|
||||||
/* number of backlight levels */
|
|
||||||
#define BACKLIGHT_PIN B6
|
|
||||||
#ifdef BACKLIGHT_PIN
|
|
||||||
#define BACKLIGHT_LEVELS 5
|
|
||||||
#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
|
|
||||||
|
|
||||||
#define RGB_DI_PIN E2
|
|
||||||
#ifdef RGB_DI_PIN
|
|
||||||
#define RGBLIGHT_ANIMATIONS
|
|
||||||
#define RGBLED_NUM 16
|
|
||||||
#define RGBLIGHT_HUE_STEP 8
|
|
||||||
#define RGBLIGHT_SAT_STEP 8
|
|
||||||
#define RGBLIGHT_VAL_STEP 8
|
|
||||||
#endif
|
|
@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "1up60rgb",
|
|
||||||
"url": "",
|
|
||||||
"maintainer": "qmk",
|
|
||||||
"width": 15,
|
|
||||||
"height": 5,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT_all": {
|
|
||||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"~", "x":13, "y":0}, {"label":"Del", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
|
||||||
},
|
|
||||||
|
|
||||||
"LAYOUT_60_ansi": {
|
|
||||||
"layout": [{"x":0, "y":0, "label":"~"}, {"x":1, "y":0, "label":"!"}, {"x":2, "y":0, "label":"@"}, {"x":3, "y":0, "label":"#"}, {"x":4, "y":0, "label":"$"}, {"x":5, "y":0, "label":"%"}, {"x":6, "y":0, "label":"^"}, {"x":7, "y":0, "label":"&"}, {"x":8, "y":0, "label":"*"}, {"x":9, "y":0, "label":"("}, {"x":10, "y":0, "label":")"}, {"x":11, "y":0, "label":"_"}, {"x":12, "y":0, "label":"+"}, {"x":13, "y":0, "label":"Backspace", "w":2}, {"x":0, "y":1, "label":"Tab", "w":1.5}, {"x":1.5, "y":1, "label":"Q"}, {"x":2.5, "y":1, "label":"W"}, {"x":3.5, "y":1, "label":"E"}, {"x":4.5, "y":1, "label":"R"}, {"x":5.5, "y":1, "label":"T"}, {"x":6.5, "y":1, "label":"Y"}, {"x":7.5, "y":1, "label":"U"}, {"x":8.5, "y":1, "label":"I"}, {"x":9.5, "y":1, "label":"O"}, {"x":10.5, "y":1, "label":"P"}, {"x":11.5, "y":1, "label":"{"}, {"x":12.5, "y":1, "label":"}"}, {"x":13.5, "y":1, "label":"|", "w":1.5}, {"x":0, "y":2, "label":"Caps Lock", "w":1.75}, {"x":1.75, "y":2, "label":"A"}, {"x":2.75, "y":2, "label":"S"}, {"x":3.75, "y":2, "label":"D"}, {"x":4.75, "y":2, "label":"F"}, {"x":5.75, "y":2, "label":"G"}, {"x":6.75, "y":2, "label":"H"}, {"x":7.75, "y":2, "label":"J"}, {"x":8.75, "y":2, "label":"K"}, {"x":9.75, "y":2, "label":"L"}, {"x":10.75, "y":2, "label":":"}, {"x":11.75, "y":2, "label":"\""}, {"x":12.75, "y":2, "label":"Enter", "w":2.25}, {"x":0, "y":3, "label":"Shift", "w":2.25}, {"x":2.25, "y":3, "label":"Z"}, {"x":3.25, "y":3, "label":"X"}, {"x":4.25, "y":3, "label":"C"}, {"x":5.25, "y":3, "label":"V"}, {"x":6.25, "y":3, "label":"B"}, {"x":7.25, "y":3, "label":"N"}, {"x":8.25, "y":3, "label":"M"}, {"x":9.25, "y":3, "label":"<"}, {"x":10.25, "y":3, "label":">"}, {"x":11.25, "y":3, "label":"?"}, {"x":12.25, "y":3, "label":"Shift", "w":2.75}, {"x":0, "y":4, "label":"Ctrl", "w":1.25}, {"x":1.25, "y":4, "label":"Win", "w":1.25}, {"x":2.5, "y":4, "label":"Alt", "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4, "label":"Alt", "w":1.25}, {"x":11.25, "y":4, "label":"Win", "w":1.25}, {"x":12.5, "y":4, "label":"Menu", "w":1.25}, {"x":13.75, "y":4, "label":"Ctrl", "w":1.25}]
|
|
||||||
},
|
|
||||||
|
|
||||||
"LAYOUT_60_iso": {
|
|
||||||
"layout": [{"label":"\u00ac", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"@", "x":11.75, "y":2}, {"label":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"AltGr", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}]
|
|
||||||
},
|
|
||||||
|
|
||||||
"LAYOUT_60_ansi_split_bs_rshift": {
|
|
||||||
"layout": [{"label":"~", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"|", "x":13.5, "y":1, "w":1.5}, {"label":"Caps Lock", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.5}, {"label":"Win", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":6}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4}, {"label":"Menu", "x":12.5, "y":4}, {"label":"Ctrl", "x":13.5, "y":4, "w":1.5}]
|
|
||||||
},
|
|
||||||
"LAYOUT_60_hhkb": {
|
|
||||||
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"@", "x":2, "y":0}, {"label":"#", "x":3, "y":0}, {"label":"$", "x":4, "y":0}, {"label":"%", "x":5, "y":0}, {"label":"^", "x":6, "y":0}, {"label":"&", "x":7, "y":0}, {"label":"*", "x":8, "y":0}, {"label":"(", "x":9, "y":0}, {"label":")", "x":10, "y":0}, {"label":"_", "x":11, "y":0}, {"label":"+", "x":12, "y":0}, {"label":"|", "x":13, "y":0}, {"label":"~", "x":14, "y":0}, {"label":"Tab", "x":0, "y":1, "w":1.5}, {"label":"Q", "x":1.5, "y":1}, {"label":"W", "x":2.5, "y":1}, {"label":"E", "x":3.5, "y":1}, {"label":"R", "x":4.5, "y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, {"label":"U", "x":7.5, "y":1}, {"label":"I", "x":8.5, "y":1}, {"label":"O", "x":9.5, "y":1}, {"label":"P", "x":10.5, "y":1}, {"label":"{", "x":11.5, "y":1}, {"label":"}", "x":12.5, "y":1}, {"label":"Delete", "x":13.5, "y":1, "w":1.5}, {"label":"Control", "x":0, "y":2, "w":1.75}, {"label":"A", "x":1.75, "y":2}, {"label":"S", "x":2.75, "y":2}, {"label":"D", "x":3.75, "y":2}, {"label":"F", "x":4.75, "y":2}, {"label":"G", "x":5.75, "y":2}, {"label":"H", "x":6.75, "y":2}, {"label":"J", "x":7.75, "y":2}, {"label":"K", "x":8.75, "y":2}, {"label":"L", "x":9.75, "y":2}, {"label":":", "x":10.75, "y":2}, {"label":"\"", "x":11.75, "y":2}, {"label":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"Shift", "x":0, "y":3, "w":2.25}, {"label":"Z", "x":2.25, "y":3}, {"label":"X", "x":3.25, "y":3}, {"label":"C", "x":4.25, "y":3}, {"label":"V", "x":5.25, "y":3}, {"label":"B", "x":6.25, "y":3}, {"label":"N", "x":7.25, "y":3}, {"label":"M", "x":8.25, "y":3}, {"label":"<", "x":9.25, "y":3}, {"label":">", "x":10.25, "y":3}, {"label":"?", "x":11.25, "y":3}, {"label":"Shift", "x":12.25, "y":3, "w":1.75}, {"label":"Fn", "x":14, "y":3}, {"label":"Os", "x":1.5, "y":4}, {"label":"Alt", "x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":7}, {"label":"Alt", "x":11, "y":4, "w":1.5}, {"label":"Os", "x":12.5, "y":4}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,63 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
LAYOUT_all(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
|
||||||
KC_LSFT, 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_RSFT,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
|
||||||
|
|
||||||
LAYOUT_all(
|
|
||||||
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_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)
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
|
||||||
DDRB |= (1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
} else {
|
|
||||||
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_KANA)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,63 +0,0 @@
|
|||||||
#include "1up60rgb.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
LAYOUT_all(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT,
|
|
||||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,
|
|
||||||
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
|
||||||
|
|
||||||
LAYOUT_all(
|
|
||||||
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_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)
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
|
||||||
DDRB |= (1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
} else {
|
|
||||||
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_KANA)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,48 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Layer 0
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | 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 | L1 | Alt | space | Alt | Sup | L1 | Ctrl |
|
|
||||||
* \-----------------------------------------------------------------------------------------/
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
LAYOUT_all(
|
|
||||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
|
||||||
KC_LSHIFT, KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT, KC_RSHIFT,
|
|
||||||
KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Layer 1
|
|
||||||
* ,-----------------------------------------------------------------------------------------.
|
|
||||||
* | | f1 | f2 | f3 | f4 | f5 | f6 | f7 | f8 | f9 | f10 | f11 | f12 | Del |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | | | | Ins | | Paus| | | Prnt |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | | L | D | U | R | | | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | | Hom | PDn | PUp | End | | |
|
|
||||||
* |-----------------------------------------------------------------------------------------+
|
|
||||||
* | | | | | | | | |
|
|
||||||
* \-----------------------------------------------------------------------------------------/
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
LAYOUT_all(
|
|
||||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_PAUS, KC_TRNS, KC_TRNS, KC_PSCR,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
|
||||||
};
|
|
@ -1,130 +0,0 @@
|
|||||||
//****************************************************************************//
|
|
||||||
// raffle's keymap for the 1up60rgb. //
|
|
||||||
// emulates my pok3r layout and adds RGB control + firmware reset/debug //
|
|
||||||
// layers //
|
|
||||||
//****************************************************************************//
|
|
||||||
|
|
||||||
//************************ dependencies + definitions ************************//
|
|
||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
// create names for layers
|
|
||||||
enum layers {
|
|
||||||
_typing,
|
|
||||||
_raise,
|
|
||||||
_rgb,
|
|
||||||
_adjust
|
|
||||||
};
|
|
||||||
|
|
||||||
// define layer mods
|
|
||||||
#define RAISE MO(_raise)
|
|
||||||
#define RGB MO(_rgb)
|
|
||||||
|
|
||||||
// define mod masks for making multi-key macros
|
|
||||||
#define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))
|
|
||||||
#define MODS_CTRL_MASK (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTRL))
|
|
||||||
#define MODS_ALT_MASK (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT))
|
|
||||||
|
|
||||||
//********************************** Layers **********************************//
|
|
||||||
// define layers
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
// typing layer to handle basic typing
|
|
||||||
[_typing] = LAYOUT_all
|
|
||||||
(
|
|
||||||
KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
|
||||||
KC_LSFT, 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_RSFT,
|
|
||||||
RAISE, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, RGB, KC_RCTL
|
|
||||||
),
|
|
||||||
// raise layer to handle function & nav keys
|
|
||||||
[_raise] = LAYOUT_all
|
|
||||||
(
|
|
||||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_DEL,
|
|
||||||
KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_LSCR, KC_PAUSE, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_INS, KC_DEL, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_APP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, 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
|
|
||||||
),
|
|
||||||
// rgb layer for pretty backlight colors
|
|
||||||
[_rgb] = LAYOUT_all
|
|
||||||
(
|
|
||||||
RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_HUI, RGB_VAI, RGB_HUD, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_MOD, RGB_SAI, RGB_VAD,RGB_SAD, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_RMOD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
|
|
||||||
),
|
|
||||||
// adjust to handle firmware debug + reset mode
|
|
||||||
[_adjust] = LAYOUT_all
|
|
||||||
(
|
|
||||||
RESET, DEBUG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
//***************************** Function bodies *****************************//
|
|
||||||
// enable tri-layer state for _raise + _rgb = _adjust
|
|
||||||
uint32_t layer_state_set_user(uint32_t state) {
|
|
||||||
return update_tri_layer_state(state, _raise, _rgb, _adjust);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// scan matrix
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
// support for standard mod state keys (caps lock, scroll lock, etc.)
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
|
||||||
DDRB |= (1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
} else {
|
|
||||||
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_KANA)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//*********** Empty fxns from default map that I'm not modifying ***********//
|
|
||||||
// onboard macro support
|
|
||||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
|
|
||||||
;
|
|
||||||
|
|
||||||
switch (id) {
|
|
||||||
|
|
||||||
}
|
|
||||||
return MACRO_NONE;
|
|
||||||
}
|
|
||||||
|
|
||||||
// initialize matrix
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,43 +0,0 @@
|
|||||||
## raffle's keymap
|
|
||||||
The default keymap is just enough to get started. This keymap adds a pok3r-like
|
|
||||||
raise layer, backlight RGB control layer, and firmware reset/debug adjust layer
|
|
||||||
for ANSI layouts.
|
|
||||||
|
|
||||||
In the default layer, the following modifications are made (using standard ANSI
|
|
||||||
keys for LHS):
|
|
||||||
|
|
||||||
- `CAPS` = `LCTRL`
|
|
||||||
- `LCTRL` = `RAISE`
|
|
||||||
- `APP` = `RGB`
|
|
||||||
- `LCTRL` + `APP` (`RAISE` + `RGB`) = `ADJUST`
|
|
||||||
- `GRV` = `ESC`
|
|
||||||
|
|
||||||
Additionally, the pok3r's `SHIFT` + `ESC` for `~` is maintained (with either `SHIFT`).
|
|
||||||
|
|
||||||
### Raise Layer
|
|
||||||
Emulates standard pok3r layout (without the onboard macro keys)
|
|
||||||
|
|
||||||
Highlights:
|
|
||||||
|
|
||||||
- `IJKL` for arrow keys
|
|
||||||
- `H`/`N` for `HOME`/`END`
|
|
||||||
- `U`/`P` for `PGUP`/`PGDN`
|
|
||||||
- `1` - `=` for `F1` - `F12`
|
|
||||||
- `Y` for calculator
|
|
||||||
|
|
||||||
Other standard keys from the pok3r layout are carried over. See the keymap or
|
|
||||||
the pok3r documentation for details.
|
|
||||||
|
|
||||||
### RGB Layer
|
|
||||||
Uses navigation keys from `RAISE` layer for RGB adjustment
|
|
||||||
|
|
||||||
- `I`/`K` for Value (brightness) Increase/Decrease
|
|
||||||
- `U`/`P` for Hue (color) Increase/Decrease
|
|
||||||
- `H`/`N` for Saturation Incrase/Decrease
|
|
||||||
- `GRV` to toggle RGB on/off
|
|
||||||
- `1`-`9` to activate QMK's predefined RGB animations
|
|
||||||
|
|
||||||
### Adjust Layer
|
|
||||||
|
|
||||||
- `GRV` activates firmware reset for flashing
|
|
||||||
- `1` enters debug mode
|
|
@ -1,63 +0,0 @@
|
|||||||
#include "1up60rgb.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
LAYOUT_all(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
|
|
||||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
|
||||||
KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_RALT, KC_RGUI, KC_RCTL),
|
|
||||||
|
|
||||||
LAYOUT_all(
|
|
||||||
RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL,
|
|
||||||
KC_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, 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_LEFT, KC_RGHT, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS,
|
|
||||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_NUM_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
|
||||||
DDRB |= (1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
} else {
|
|
||||||
DDRB &= ~(1 << 2); PORTB &= ~(1 << 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_COMPOSE)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if (usb_led & (1 << USB_LED_KANA)) {
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
[0] = LAYOUT_all(
|
|
||||||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
|
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
|
|
||||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT,
|
|
||||||
KC_LSFT, 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_RSFT,
|
|
||||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
|
|
||||||
|
|
||||||
[1] = LAYOUT_all(
|
|
||||||
RESET, 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_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),
|
|
||||||
|
|
||||||
[2] = LAYOUT_all(
|
|
||||||
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_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),
|
|
||||||
|
|
||||||
[3] = LAYOUT_all(
|
|
||||||
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_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)
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
|||||||
VIA_ENABLE = yes
|
|
||||||
LTO_ENABLE = yes
|
|
@ -1,13 +0,0 @@
|
|||||||
# 1up60rgb 60% RGB
|
|
||||||
|
|
||||||
Firmware for custom keyboard PCB with 60% key layout.
|
|
||||||
|
|
||||||
Keyboard Maintainer: [rempired](https://github.com/rempired)
|
|
||||||
Hardware Supported: 1upkeyboards 60% RGB
|
|
||||||
Hardware Availability: [1upkeyboards](https://www.1upkeyboards.com/shop/controllers/1up-rgb-underglow-pcb/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/1up60rgb:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,28 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
# Teensy halfkay
|
|
||||||
# Pro Micro caterina
|
|
||||||
# Atmel DFU atmel-dfu
|
|
||||||
# LUFA DFU lufa-dfu
|
|
||||||
# QMK DFU qmk-dfu
|
|
||||||
# ATmega32A bootloadHID
|
|
||||||
# ATmega328P USBasp
|
|
||||||
BOOTLOADER = atmel-dfu
|
|
||||||
|
|
||||||
# Build Options
|
|
||||||
# comment out to disable the options.
|
|
||||||
#
|
|
||||||
BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration
|
|
||||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|
||||||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
|
||||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
|
||||||
AUDIO_ENABLE = no
|
|
||||||
RGBLIGHT_ENABLE = yes
|
|
||||||
|
|
||||||
LAYOUTS = 60_ansi 60_iso 60_ansi_split_bs_rshift 60_hhkb
|
|
@ -1,7 +0,0 @@
|
|||||||
# 1UP Keyboards
|
|
||||||
|
|
||||||
1UP Keyboards is an online mechanical keyboard retailer located in New York, USA.
|
|
||||||
|
|
||||||
Website: [1UP Keyboards](https://www.1upkeyboards.com/)
|
|
||||||
Discord: [Server Invite](https://discordapp.com/invite/c6SYn8)
|
|
||||||
YouTube: [skiwithpete](https://www.youtube.com/user/skiwithpete)
|
|
@ -1,254 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2019 MechMerlin
|
|
||||||
|
|
||||||
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 0x2010
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER 1upkeyboards
|
|
||||||
#define PRODUCT super16
|
|
||||||
#define DESCRIPTION A 4x4 custom macropad
|
|
||||||
|
|
||||||
/* key matrix size */
|
|
||||||
#define MATRIX_ROWS 4
|
|
||||||
#define MATRIX_COLS 4
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Keyboard Matrix Assignments
|
|
||||||
*
|
|
||||||
* Change this to how you wired your keyboard
|
|
||||||
* COLS: AVR pins used for columns, left to right
|
|
||||||
* ROWS: AVR pins used for rows, top to bottom
|
|
||||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
|
||||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define MATRIX_ROW_PINS \
|
|
||||||
{ D1, D0, F4, F5 }
|
|
||||||
#define MATRIX_COL_PINS \
|
|
||||||
{ D4, C6, F6, F7 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW, ROW2COL*/
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
|
|
||||||
*/
|
|
||||||
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
|
|
||||||
|
|
||||||
// #define BACKLIGHT_PIN B7
|
|
||||||
// #define BACKLIGHT_BREATHING
|
|
||||||
// #define BACKLIGHT_LEVELS 3
|
|
||||||
|
|
||||||
#define RGB_DI_PIN D3
|
|
||||||
#ifdef RGB_DI_PIN
|
|
||||||
# define RGBLED_NUM 16 // Add 12 if attaching the RGB LED ring
|
|
||||||
# define DRIVER_LED_TOTAL RGBLED_NUM
|
|
||||||
# ifdef RGBLIGHT_ENABLE
|
|
||||||
# define RGBLIGHT_HUE_STEP 8
|
|
||||||
# define RGBLIGHT_SAT_STEP 8
|
|
||||||
# define RGBLIGHT_VAL_STEP 8
|
|
||||||
# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
|
|
||||||
# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
|
|
||||||
/*== all animations enable ==*/
|
|
||||||
# define RGBLIGHT_ANIMATIONS
|
|
||||||
/*== or choose animations ==*/
|
|
||||||
// #define RGBLIGHT_EFFECT_BREATHING
|
|
||||||
// #define RGBLIGHT_EFFECT_RAINBOW_MOOD
|
|
||||||
// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
|
||||||
// #define RGBLIGHT_EFFECT_SNAKE
|
|
||||||
// #define RGBLIGHT_EFFECT_KNIGHT
|
|
||||||
// #define RGBLIGHT_EFFECT_CHRISTMAS
|
|
||||||
// #define RGBLIGHT_EFFECT_STATIC_GRADIENT
|
|
||||||
// #define RGBLIGHT_EFFECT_RGB_TEST
|
|
||||||
// #define RGBLIGHT_EFFECT_ALTERNATING
|
|
||||||
# elif defined RGB_MATRIX_ENABLE
|
|
||||||
# define RGB_MATRIX_KEYPRESSES // reacts to keypresses
|
|
||||||
# define RGB_MATRIX_FRAMEBUFFER_EFFECTS // reacts to keyreleases (instead of keypresses)
|
|
||||||
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
|
||||||
#define DEBOUNCE 5
|
|
||||||
|
|
||||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
|
||||||
//#define MATRIX_HAS_GHOST
|
|
||||||
|
|
||||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
|
||||||
#define LOCKING_SUPPORT_ENABLE
|
|
||||||
|
|
||||||
/* Locking resynchronize hack */
|
|
||||||
#define LOCKING_RESYNC_ENABLE
|
|
||||||
|
|
||||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
|
||||||
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
|
|
||||||
*/
|
|
||||||
// #define GRAVE_ESC_CTRL_OVERRIDE
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Force NKRO
|
|
||||||
*
|
|
||||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
|
||||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
|
||||||
* makefile for this to work.)
|
|
||||||
*
|
|
||||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
|
||||||
* until the next keyboard reset.
|
|
||||||
*
|
|
||||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
|
||||||
* fully operational during normal computer usage.
|
|
||||||
*
|
|
||||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
|
||||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
|
||||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
|
||||||
* power-up.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
//#define FORCE_NKRO
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Magic Key Options
|
|
||||||
*
|
|
||||||
* Magic keys are hotkey commands that allow control over firmware functions of
|
|
||||||
* the keyboard. They are best used in combination with the HID Listen program,
|
|
||||||
* found here: https://www.pjrc.com/teensy/hid_listen.html
|
|
||||||
*
|
|
||||||
* The options below allow the magic key functionality to be changed. This is
|
|
||||||
* useful if your keyboard/keypad is missing keys and you want magic key support.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* key combination for magic key command */
|
|
||||||
/* defined by default; to change, uncomment and set to the combination you want */
|
|
||||||
// #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))
|
|
||||||
|
|
||||||
/* control how magic key switches layers */
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
|
|
||||||
|
|
||||||
/* override magic key keymap */
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
|
|
||||||
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
|
|
||||||
//#define MAGIC_KEY_HELP1 H
|
|
||||||
//#define MAGIC_KEY_HELP2 SLASH
|
|
||||||
//#define MAGIC_KEY_DEBUG D
|
|
||||||
//#define MAGIC_KEY_DEBUG_MATRIX X
|
|
||||||
//#define MAGIC_KEY_DEBUG_KBD K
|
|
||||||
//#define MAGIC_KEY_DEBUG_MOUSE M
|
|
||||||
//#define MAGIC_KEY_VERSION V
|
|
||||||
//#define MAGIC_KEY_STATUS S
|
|
||||||
//#define MAGIC_KEY_CONSOLE C
|
|
||||||
//#define MAGIC_KEY_LAYER0_ALT1 ESC
|
|
||||||
//#define MAGIC_KEY_LAYER0_ALT2 GRAVE
|
|
||||||
//#define MAGIC_KEY_LAYER0 0
|
|
||||||
//#define MAGIC_KEY_LAYER1 1
|
|
||||||
//#define MAGIC_KEY_LAYER2 2
|
|
||||||
//#define MAGIC_KEY_LAYER3 3
|
|
||||||
//#define MAGIC_KEY_LAYER4 4
|
|
||||||
//#define MAGIC_KEY_LAYER5 5
|
|
||||||
//#define MAGIC_KEY_LAYER6 6
|
|
||||||
//#define MAGIC_KEY_LAYER7 7
|
|
||||||
//#define MAGIC_KEY_LAYER8 8
|
|
||||||
//#define MAGIC_KEY_LAYER9 9
|
|
||||||
//#define MAGIC_KEY_BOOTLOADER PAUSE
|
|
||||||
//#define MAGIC_KEY_LOCK CAPS
|
|
||||||
//#define MAGIC_KEY_EEPROM E
|
|
||||||
//#define MAGIC_KEY_NKRO N
|
|
||||||
//#define MAGIC_KEY_SLEEP_LED Z
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Feature disable options
|
|
||||||
* These options are also useful to firmware size reduction.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* disable debug print */
|
|
||||||
//#define NO_DEBUG
|
|
||||||
|
|
||||||
/* disable print */
|
|
||||||
//#define NO_PRINT
|
|
||||||
|
|
||||||
/* disable action features */
|
|
||||||
//#define NO_ACTION_LAYER
|
|
||||||
//#define NO_ACTION_TAPPING
|
|
||||||
//#define NO_ACTION_ONESHOT
|
|
||||||
//#define NO_ACTION_MACRO
|
|
||||||
//#define NO_ACTION_FUNCTION
|
|
||||||
|
|
||||||
/*
|
|
||||||
* MIDI options
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Prevent use of disabled MIDI features in the keymap */
|
|
||||||
//#define MIDI_ENABLE_STRICT 1
|
|
||||||
|
|
||||||
/* enable basic MIDI features:
|
|
||||||
- MIDI notes can be sent when in Music mode is on
|
|
||||||
*/
|
|
||||||
//#define MIDI_BASIC
|
|
||||||
|
|
||||||
/* enable advanced MIDI features:
|
|
||||||
- MIDI notes can be added to the keymap
|
|
||||||
- Octave shift and transpose
|
|
||||||
- Virtual sustain, portamento, and modulation wheel
|
|
||||||
- etc.
|
|
||||||
*/
|
|
||||||
//#define MIDI_ADVANCED
|
|
||||||
|
|
||||||
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
|
|
||||||
//#define MIDI_TONE_KEYCODE_OCTAVES 1
|
|
||||||
|
|
||||||
/*
|
|
||||||
* HD44780 LCD Display Configuration
|
|
||||||
*/
|
|
||||||
/*
|
|
||||||
#define LCD_LINES 2 //< number of visible lines of the display
|
|
||||||
#define LCD_DISP_LENGTH 16 //< visibles characters per line of the display
|
|
||||||
|
|
||||||
#define LCD_IO_MODE 1 //< 0: memory mapped mode, 1: IO port mode
|
|
||||||
|
|
||||||
#if LCD_IO_MODE
|
|
||||||
#define LCD_PORT PORTB //< port for the LCD lines
|
|
||||||
#define LCD_DATA0_PORT LCD_PORT //< port for 4bit data bit 0
|
|
||||||
#define LCD_DATA1_PORT LCD_PORT //< port for 4bit data bit 1
|
|
||||||
#define LCD_DATA2_PORT LCD_PORT //< port for 4bit data bit 2
|
|
||||||
#define LCD_DATA3_PORT LCD_PORT //< port for 4bit data bit 3
|
|
||||||
#define LCD_DATA0_PIN 4 //< pin for 4bit data bit 0
|
|
||||||
#define LCD_DATA1_PIN 5 //< pin for 4bit data bit 1
|
|
||||||
#define LCD_DATA2_PIN 6 //< pin for 4bit data bit 2
|
|
||||||
#define LCD_DATA3_PIN 7 //< pin for 4bit data bit 3
|
|
||||||
#define LCD_RS_PORT LCD_PORT //< port for RS line
|
|
||||||
#define LCD_RS_PIN 3 //< pin for RS line
|
|
||||||
#define LCD_RW_PORT LCD_PORT //< port for RW line
|
|
||||||
#define LCD_RW_PIN 2 //< pin for RW line
|
|
||||||
#define LCD_E_PORT LCD_PORT //< port for Enable line
|
|
||||||
#define LCD_E_PIN 1 //< pin for Enable line
|
|
||||||
#endif
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Bootmagic Lite key configuration */
|
|
||||||
// #define BOOTMAGIC_LITE_ROW 0
|
|
||||||
// #define BOOTMAGIC_LITE_COLUMN 0
|
|
||||||
|
|
||||||
/* prevent stuck modifiers */
|
|
@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "super16",
|
|
||||||
"url": "",
|
|
||||||
"maintainer": "qmk",
|
|
||||||
"width": 4,
|
|
||||||
"height": 4,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT_ortho_4x4": {
|
|
||||||
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}]
|
|
||||||
},
|
|
||||||
"LAYOUT_numpad_4x4": {
|
|
||||||
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0, "h":2}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2, "h":2}, {"x":0, "y":3, "w":2}, {"x":2, "y":3}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,110 +0,0 @@
|
|||||||
/* Copyright 2020 Sam Reinehr
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
enum my_keycodes {
|
|
||||||
K00 = SAFE_RANGE,
|
|
||||||
K01,
|
|
||||||
K02,
|
|
||||||
K03,
|
|
||||||
K04,
|
|
||||||
K05,
|
|
||||||
K06,
|
|
||||||
K07,
|
|
||||||
K08,
|
|
||||||
K09,
|
|
||||||
K10,
|
|
||||||
K11,
|
|
||||||
K12,
|
|
||||||
K13,
|
|
||||||
K14,
|
|
||||||
K15,
|
|
||||||
};
|
|
||||||
/* just a simple way to give each key a unique code */
|
|
||||||
//clang-format off
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
/* Base */
|
|
||||||
[0] = LAYOUT_ortho_4x4(
|
|
||||||
K00, K01, K02, K03,
|
|
||||||
K04, K05, K06, K07,
|
|
||||||
K08, K09, K10, K11,
|
|
||||||
K12, K13, K14, K15
|
|
||||||
)
|
|
||||||
};
|
|
||||||
/* flags describing current free square/0 */
|
|
||||||
uint8_t current = 0;
|
|
||||||
/* r g and b describe the colors for the initial map,
|
|
||||||
currently blank for free, and evenly spaced hues with maximum sat/value */
|
|
||||||
const uint8_t r[16] = {
|
|
||||||
0x00, 0xFF, 0xFF, 0xFF,
|
|
||||||
0xCC, 0x66, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x66, 0xCC, 0xFF, 0xFF
|
|
||||||
};
|
|
||||||
const uint8_t g[16] = {
|
|
||||||
0x00, 0x00, 0x66, 0xCC,
|
|
||||||
0xFF, 0xFF, 0xFF, 0xFF,
|
|
||||||
0xFF, 0xCC, 0x66, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x00
|
|
||||||
};
|
|
||||||
const uint8_t b[16] = {
|
|
||||||
0x00, 0x00, 0x00, 0x00,
|
|
||||||
0x00, 0x00, 0x00, 0x66,
|
|
||||||
0xCC, 0xFF, 0xFF, 0xFF,
|
|
||||||
0xFF, 0xFF, 0xCC, 0x66
|
|
||||||
};
|
|
||||||
/* pos contains the current positions, could technically be compressed to 4 bits per, but not worth it
|
|
||||||
index into pos is the position we're looking at, output is the tile that is currently there */
|
|
||||||
uint8_t tiles[16] = {
|
|
||||||
0, 1, 2, 3,
|
|
||||||
4, 5, 6, 7,
|
|
||||||
8, 9, 10, 11,
|
|
||||||
12, 13, 14, 15
|
|
||||||
};
|
|
||||||
/* default led array for super 16 has them in a snake, so we must do some remapping/flipping of the 2nd and 4th rows */
|
|
||||||
uint8_t remap[16] = {
|
|
||||||
0, 1, 2, 3,
|
|
||||||
7, 6, 5, 4,
|
|
||||||
8, 9, 10, 11,
|
|
||||||
15, 14, 13, 12
|
|
||||||
};
|
|
||||||
//clang-format on
|
|
||||||
/* function to refresh the led coloring with the positions with current tiles */
|
|
||||||
void refresh_leds(void) {
|
|
||||||
for (uint8_t index = 0; index < 16; ++index) {
|
|
||||||
uint8_t tile = tiles[index];
|
|
||||||
setrgb(r[tile], g[tile], b[tile], (LED_TYPE *)&led[remap[index]]);
|
|
||||||
}
|
|
||||||
rgblight_set();
|
|
||||||
}
|
|
||||||
void keyboard_post_init_user(void) {
|
|
||||||
rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
|
|
||||||
rgblight_enable_noeeprom();
|
|
||||||
refresh_leds();
|
|
||||||
}
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
uint8_t offset = keycode - K00;
|
|
||||||
uint8_t x = offset & 0x03;
|
|
||||||
uint8_t y = (offset & 0x0C) >> 2;
|
|
||||||
/* if the adjacent space exists and is empty, */
|
|
||||||
if ((x > 0 && 0 == tiles[offset - 1]) || (y > 0 && 0 == tiles[offset - 4]) || (x < 3 && 0 == tiles[offset + 1]) || (y < 3 && 0 == tiles[offset + 4])) {
|
|
||||||
/* set the currently blank tile to this tile, and make this one blank */
|
|
||||||
tiles[current] = tiles[offset];
|
|
||||||
tiles[offset] = 0;
|
|
||||||
current = offset;
|
|
||||||
}
|
|
||||||
refresh_leds();
|
|
||||||
return false;
|
|
||||||
}
|
|
@ -1,5 +0,0 @@
|
|||||||
# Trying to put a game that plays like the 15 puzzle on the super16
|
|
||||||
The 15/16 puzzle consists of a grid where one space is free, and adjacent spaces can be swapped with the free space
|
|
||||||
* future planned features:
|
|
||||||
* fix the start at red
|
|
||||||
* have a cute animation play when the puzzle is solved
|
|
@ -1,2 +0,0 @@
|
|||||||
RGBLIGHT_ENABLE = yes
|
|
||||||
RGB_MATRIX_ENABLE = no
|
|
@ -1,19 +0,0 @@
|
|||||||
/* Copyright 2019 MechMerlin
|
|
||||||
*
|
|
||||||
* 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
|
|
@ -1,41 +0,0 @@
|
|||||||
/* Copyright 2019 MechMerlin
|
|
||||||
*
|
|
||||||
* 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] = {
|
|
||||||
[0] = LAYOUT_ortho_4x4( /* Base */
|
|
||||||
RGB_TOG, KC_1, KC_U, KC_P,
|
|
||||||
RGB_MOD, KC_1, KC_U, KC_P,
|
|
||||||
RGB_TOG, KC_1, KC_U, KC_P,
|
|
||||||
RGB_MOD, KC_1, KC_U, KC_P
|
|
||||||
),
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
|
||||||
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
# The default keymap for super16
|
|
@ -1,13 +0,0 @@
|
|||||||
# Super 16 Macro Pad
|
|
||||||
|
|
||||||
A 4x4 macropad with RGB underglow.
|
|
||||||
|
|
||||||
Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
|
|
||||||
Hardware Supported: Super 16 Macropad
|
|
||||||
Hardware Availability: [1upkeyboards](https://www.1upkeyboards.com/shop/keyboard-kits/super-16-macro-pad/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/super16:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,36 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
# Teensy halfkay
|
|
||||||
# Pro Micro caterina
|
|
||||||
# Atmel DFU atmel-dfu
|
|
||||||
# LUFA DFU lufa-dfu
|
|
||||||
# QMK DFU qmk-dfu
|
|
||||||
# ATmega32A bootloadHID
|
|
||||||
# ATmega328P USBasp
|
|
||||||
BOOTLOADER = caterina
|
|
||||||
|
|
||||||
# Build Options
|
|
||||||
# change yes to no to disable
|
|
||||||
#
|
|
||||||
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
|
|
||||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|
||||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
|
||||||
NKRO_ENABLE = no # USB Nkey Rollover
|
|
||||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
|
|
||||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
|
||||||
RGB_MATRIX_ENABLE = WS2812
|
|
||||||
MIDI_ENABLE = no # MIDI support
|
|
||||||
UNICODE_ENABLE = no # Unicode
|
|
||||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
|
||||||
AUDIO_ENABLE = no # Audio output on port C6
|
|
||||||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
|
||||||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs
|
|
||||||
|
|
||||||
LAYOUTS = ortho_4x4 numpad_4x4
|
|
@ -1,39 +0,0 @@
|
|||||||
/* Copyright 2019 MechMerlin
|
|
||||||
*
|
|
||||||
* 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 "super16.h"
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
|
||||||
led_config_t g_led_config = { {
|
|
||||||
// Key Matrix to LED Index
|
|
||||||
{ 0, 1, 2, 3 },
|
|
||||||
{ 7, 6, 5, 4 },
|
|
||||||
{ 8, 9, 10, 11 },
|
|
||||||
{ 15, 14, 13, 12 }
|
|
||||||
}, {
|
|
||||||
// LED Index to Physical Position
|
|
||||||
{ 0, 0 }, { 75, 0 }, { 150, 0 }, { 224, 0 },
|
|
||||||
{ 224, 21 }, { 150, 21 }, { 75, 21 }, { 0, 21 },
|
|
||||||
{ 0, 43 }, { 75, 43 }, { 150, 43 }, { 224, 43 },
|
|
||||||
{ 224, 64 }, { 150, 64 }, { 75, 64 }, { 0, 64 },
|
|
||||||
|
|
||||||
}, {
|
|
||||||
// LED Index to Flag
|
|
||||||
4, 4, 4, 4,
|
|
||||||
4, 4, 4, 4,
|
|
||||||
4, 4, 4, 4,
|
|
||||||
4, 4, 4, 4
|
|
||||||
} };
|
|
||||||
#endif
|
|
@ -1,51 +0,0 @@
|
|||||||
/* Copyright 2019 MechMerlin
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 2 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
/* This a shortcut to help you visually see your layout.
|
|
||||||
*
|
|
||||||
* The first section contains all of the arguments representing the physical
|
|
||||||
* layout of the board and position of the keys.
|
|
||||||
*
|
|
||||||
* The second converts the arguments into a two-dimensional array which
|
|
||||||
* represents the switch matrix.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define LAYOUT_ortho_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, K13, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K30, K31, K32, K33 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, K13 }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ K30, K31, K32, K33 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define LAYOUT_numpad_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K31, K32 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, KC_NO }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ KC_NO, K31, K32, KC_NO } \
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "config_common.h"
|
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define VENDOR_ID 0xFEED
|
|
||||||
#define MANUFACTURER 1up Keyboards
|
|
||||||
#define PRODUCT Sweet16
|
|
||||||
#define DESCRIPTION 4x4 grid
|
|
||||||
|
|
||||||
/* key matrix size */
|
|
||||||
#define MATRIX_ROWS 4
|
|
||||||
#define MATRIX_COLS 4
|
|
||||||
|
|
||||||
/* number of backlight levels */
|
|
||||||
#define BACKLIGHT_LEVELS 10
|
|
||||||
|
|
||||||
/* 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
|
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "Sweet 16",
|
|
||||||
"url": "",
|
|
||||||
"maintainer": "skullydazed",
|
|
||||||
"width": 4,
|
|
||||||
"height": 4,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT_ortho_4x4": {
|
|
||||||
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}]
|
|
||||||
},
|
|
||||||
|
|
||||||
"LAYOUT_numpad_4x4": {
|
|
||||||
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0, "h":2}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2, "h":2}, {"x":0, "y":3, "w":2}, {"x":2, "y":3}]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,39 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
enum custom_keycodes {
|
|
||||||
UP_URL = SAFE_RANGE
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
LAYOUT_ortho_4x4(
|
|
||||||
KC_7, KC_8, KC_9, KC_ASTR,
|
|
||||||
KC_4, KC_5, KC_6, KC_SLSH,
|
|
||||||
KC_1, KC_2, KC_3, KC_MINS,
|
|
||||||
KC_0, KC_ENT, KC_DOT, KC_EQL
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
switch (keycode) {
|
|
||||||
case UP_URL:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
SEND_STRING("http://1upkeyboards.com");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef ENCODER_ENABLE
|
|
||||||
#include "encoder.h"
|
|
||||||
void encoder_update_user(int8_t index, bool clockwise) {
|
|
||||||
if (index == 0) { /* First encoder */
|
|
||||||
if (clockwise) {
|
|
||||||
tap_code(KC_VOLU);
|
|
||||||
} else {
|
|
||||||
tap_code(KC_VOLD);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
@ -1,38 +0,0 @@
|
|||||||
#include "sweet16.h"
|
|
||||||
|
|
||||||
enum layers {
|
|
||||||
num,
|
|
||||||
extra,
|
|
||||||
mouse
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[num] = LAYOUT_numpad_4x4(
|
|
||||||
KC_P7, KC_P8, KC_P9, LT(extra, KC_PPLS),
|
|
||||||
KC_P4, KC_P5, KC_P6,
|
|
||||||
KC_P1, KC_P2, KC_P3, KC_PENT,
|
|
||||||
LT(mouse, KC_P0), KC_DOT
|
|
||||||
),
|
|
||||||
|
|
||||||
[extra] = LAYOUT_numpad_4x4(
|
|
||||||
KC_PSLS, KC_PAST, KC_PMNS, KC_TRNS,
|
|
||||||
KC_BSPC, KC_EXECUTE, KC_DEL,
|
|
||||||
KC_LPRN, KC_RPRN, KC_PEQL, KC_PENT,
|
|
||||||
KC_TAB, KC_NLCK
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
[mouse] = LAYOUT_numpad_4x4(
|
|
||||||
KC_WH_D, KC_MS_U, KC_WH_U, LT(extra, KC_PPLS),
|
|
||||||
KC_MS_L, KC_MS_D, KC_MS_R,
|
|
||||||
KC_BTN1, KC_BTN2, KC_BTN3, KC_PENT,
|
|
||||||
KC_TRNS, KC_DOT
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
# Dale's keymap for the Sweet16
|
|
||||||
|
|
||||||
I wanted to reuse a standard numpad keyset and have the full functionality of an larger numpad with a nod to Excel functionality.
|
|
@ -1,15 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
/* tap dance stuff*/
|
|
||||||
#undef TAPPING_TERM
|
|
||||||
#define TAPPING_TERM 500
|
|
||||||
|
|
||||||
#define TAPPING_TOGGLE 2
|
|
||||||
|
|
||||||
#define EXAMPLESTRING1 "tapdance_1"
|
|
||||||
#define EXAMPLESTRING2 "tapdance_2"
|
|
||||||
#define EXAMPLESTRING3 "tapdance_3"
|
|
||||||
#define EXAMPLESTRING4 "tapdance_4"
|
|
||||||
|
|
||||||
#undef RGBLED_NUM
|
|
||||||
#define RGBLED_NUM 16
|
|
@ -1,215 +0,0 @@
|
|||||||
/*
|
|
||||||
tap danc eis turned on in the rules now...
|
|
||||||
*/
|
|
||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
#define _EMOJI 0
|
|
||||||
#define _TAPLAND 1
|
|
||||||
#define _LEDCNTL 2
|
|
||||||
|
|
||||||
enum custom_keycodes {
|
|
||||||
SHRUG,
|
|
||||||
DISFACE,
|
|
||||||
FU,
|
|
||||||
TFLIP,
|
|
||||||
TFLIP2,
|
|
||||||
SAD_EYES,
|
|
||||||
TPUT,
|
|
||||||
HAPPYFACE,
|
|
||||||
HEARTFACE,
|
|
||||||
CLOUD,
|
|
||||||
CHANFACE,
|
|
||||||
CMDCLEAR
|
|
||||||
};
|
|
||||||
//Tap Dance Declarations
|
|
||||||
enum {
|
|
||||||
TD_EXAMPLE1 = 0,
|
|
||||||
TD_EXAMPLE2,
|
|
||||||
TD_EXAMPLE3,
|
|
||||||
TD_EXAMPLE4
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
|
|
||||||
/* EMOJI Pad
|
|
||||||
* ,-------------------------------.
|
|
||||||
* |TFLIP | TFlIP2|DISFACE| FU |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | CLOUD| | | CLEAR |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* |SHRUG |DISFACE| HRTFAC| HAPPYF |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | ENTER| |LEDCNTR| tapland|
|
|
||||||
* `-------------------------------'
|
|
||||||
*/
|
|
||||||
//purple
|
|
||||||
[_EMOJI] = LAYOUT_ortho_4x4(
|
|
||||||
TFLIP, TFLIP2, KC_NO, FU ,
|
|
||||||
CLOUD, KC_NO, KC_NO, CMDCLEAR,
|
|
||||||
SHRUG, DISFACE, HEARTFACE, HAPPYFACE,
|
|
||||||
KC_ENT, RGB_TOG, MO(_LEDCNTL), MO(_TAPLAND)
|
|
||||||
),
|
|
||||||
|
|
||||||
/* TapLand //
|
|
||||||
* ,-------------------------------.
|
|
||||||
* | str1 | str2 | str3 | str4 |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | | | | |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | | | | |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | | | | |
|
|
||||||
* `-------------------------------'
|
|
||||||
*/
|
|
||||||
//blue
|
|
||||||
[_TAPLAND] = LAYOUT_ortho_4x4(
|
|
||||||
TD(TD_EXAMPLE1), TD(TD_EXAMPLE2), TD(TD_EXAMPLE3), TD(TD_EXAMPLE4),
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO
|
|
||||||
),
|
|
||||||
/* LEDControl Pad
|
|
||||||
* ,-------------------------------.
|
|
||||||
* | snake|breathe|rainbow|gradient|
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | xmas | Val+ | Sat+ | HUE+ |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* |kngrdr| Val- | Sat- | HUE- |
|
|
||||||
* |------+-------+-------+--------|
|
|
||||||
* | swirl| PLAIN | | ON/OFF |
|
|
||||||
* `-------------------------------'
|
|
||||||
*/
|
|
||||||
//blue
|
|
||||||
[_LEDCNTL] = LAYOUT_ortho_4x4(
|
|
||||||
RGB_M_SN, RGB_M_B, RGB_M_R, RGB_M_G,
|
|
||||||
RGB_M_X, RGB_VAI, RGB_SAI, RGB_HUI,
|
|
||||||
RGB_M_K, RGB_VAD, RGB_SAD, RGB_HUD,
|
|
||||||
RGB_M_SW, RGB_M_P, KC_NO, RGB_TOG
|
|
||||||
),
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
if (record->event.pressed) {
|
|
||||||
switch(keycode) {
|
|
||||||
case CLOUD: // (っ◕‿◕)っ
|
|
||||||
if(record->event.pressed){
|
|
||||||
send_unicode_hex_string("0028 3063 25D5 203F 25D5 0029 3063");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case FU: // t(-_-t)
|
|
||||||
if(record->event.pressed){
|
|
||||||
SEND_STRING("t(-_-t)");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case HAPPYFACE: // ʘ‿ʘ
|
|
||||||
if(record->event.pressed){
|
|
||||||
send_unicode_hex_string("0298 203F 0298");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case CMDCLEAR:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
register_code(KC_LGUI);
|
|
||||||
tap_code(KC_A);
|
|
||||||
unregister_code(KC_LGUI);
|
|
||||||
tap_code(KC_DEL);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case SHRUG: // ¯\_(ツ)_/¯
|
|
||||||
if (record->event.pressed) {
|
|
||||||
send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case HEARTFACE: // ♥‿♥
|
|
||||||
if(record->event.pressed){
|
|
||||||
send_unicode_hex_string("2665 203F 2665");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case DISFACE: // ಠ_ಠ
|
|
||||||
if(record->event.pressed){
|
|
||||||
send_unicode_hex_string("0CA0 005F 0CA0");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case TFLIP: // (╯°□°)╯ ︵ ┻━┻
|
|
||||||
if(record->event.pressed){
|
|
||||||
send_unicode_hex_string("0028 256F 00B0 25A1 00B0 0029 256F 0020 FE35 0020 253B 2501 253B");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
case TFLIP2: // ┻━┻︵ \(°□°)/ ︵ ┻━┻
|
|
||||||
if(record->event.pressed){
|
|
||||||
send_unicode_hex_string("253B 2501 253B FE35 0020 005C 0028 00B0 25A1 00B0 0029 002F 0020 FE35 0020 253B 2501 253B");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* tap dance time */
|
|
||||||
void tdexample1(qk_tap_dance_state_t *state, void *user_data) {
|
|
||||||
if (state->count >= 2) {
|
|
||||||
SEND_STRING(EXAMPLESTRING1);
|
|
||||||
reset_tap_dance (state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
void tdexample2(qk_tap_dance_state_t *state, void *user_data) {
|
|
||||||
if (state->count >= 2) {
|
|
||||||
SEND_STRING(EXAMPLESTRING2);
|
|
||||||
reset_tap_dance (state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
void tdexample3(qk_tap_dance_state_t *state, void *user_data) {
|
|
||||||
if (state->count >= 2) {
|
|
||||||
SEND_STRING(EXAMPLESTRING3);
|
|
||||||
reset_tap_dance (state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
void tdexample4(qk_tap_dance_state_t *state, void *user_data) {
|
|
||||||
if (state->count >= 2) {
|
|
||||||
SEND_STRING(EXAMPLESTRING4);
|
|
||||||
reset_tap_dance (state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
|
||||||
[TD_EXAMPLE1] = ACTION_TAP_DANCE_FN(tdexample1),
|
|
||||||
[TD_EXAMPLE2] = ACTION_TAP_DANCE_FN(tdexample2),
|
|
||||||
[TD_EXAMPLE3] = ACTION_TAP_DANCE_FN(tdexample3),
|
|
||||||
[TD_EXAMPLE4] = ACTION_TAP_DANCE_FN(tdexample4)
|
|
||||||
};
|
|
||||||
|
|
||||||
// Runs just one time when the keyboard initializes.
|
|
||||||
void matrix_scan_user(void) {
|
|
||||||
static bool has_ran_yet;
|
|
||||||
if (!has_ran_yet) {
|
|
||||||
has_ran_yet = true;
|
|
||||||
rgblight_setrgb (16, 0, 16);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
uint32_t layer_state_set_user(uint32_t state) {
|
|
||||||
switch (biton32(state)) {
|
|
||||||
case _TAPLAND:
|
|
||||||
rgblight_setrgb(0, 16, 0); //green
|
|
||||||
break;
|
|
||||||
case _LEDCNTL:
|
|
||||||
rgblight_setrgb(0, 0, 16); //blue
|
|
||||||
break;
|
|
||||||
case _EMOJI:
|
|
||||||
rgblight_setrgb (16, 0, 16); //purple
|
|
||||||
break;
|
|
||||||
|
|
||||||
default: // for any other layers, or the default layer
|
|
||||||
rgblight_setrgb (16, 0, 16); //purple
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return state;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
# Ridingtraffic's examples
|
|
||||||
===
|
|
||||||
This keymap has many features:
|
|
||||||
3 layers
|
|
||||||
Momentary layer switching
|
|
||||||
16 pixel neopixel
|
|
||||||
Unicode Enabled
|
|
||||||
Tap dance enabled
|
|
||||||
|
|
||||||
The rgb also updates depending on what layer you are on, and then flips back when done.
|
|
@ -1,5 +0,0 @@
|
|||||||
# turning on tap dance
|
|
||||||
TAP_DANCE_ENABLE = yes
|
|
||||||
RGBLIGHT_ENABLE = yes
|
|
||||||
MOUSEKEY_ENABLE = no
|
|
||||||
UNICODE_ENABLE = yes
|
|
@ -1,23 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
#define ALT TG(_FUNC)
|
|
||||||
|
|
||||||
enum layers {
|
|
||||||
_KEYP,
|
|
||||||
_FUNC
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_KEYP]=LAYOUT_ortho_4x4(
|
|
||||||
KC_P7, KC_P8, KC_P9, ALT,
|
|
||||||
KC_P4, KC_P5, KC_P6, KC_PAST,
|
|
||||||
KC_P1, KC_P2, KC_P3, KC_PMNS,
|
|
||||||
KC_P0, KC_PDOT, KC_PENT, KC_PPLS
|
|
||||||
),
|
|
||||||
[_FUNC]=LAYOUT_ortho_4x4(
|
|
||||||
KC_MPRV, KC_MPLY, KC_MNXT, _______,
|
|
||||||
XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK,
|
|
||||||
KC_INS, KC_HOME, KC_PGUP, XXXXXXX,
|
|
||||||
KC_DEL, KC_END, KC_PGDN, XXXXXXX
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,31 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
#include "switches.h"
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
LAYOUT_ortho_4x4(
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
|
||||||
KC_NO, KC_NO, KC_NO, KC_NO
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
struct mechswitch switches[MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
{CHERRY_MX_BLUE, CHERRY_MX_RED, CHERRY_MX_BLACK, CHERRY_MX_BROWN},
|
|
||||||
{GATERON_BLUE, GATERON_RED, GATERON_BLACK, GATERON_BROWN},
|
|
||||||
{KAILH_BLUE, KAILH_RED, KAILH_BLACK, KAILH_BROWN},
|
|
||||||
{HAKO_CLEAR, HAKO_TRUE, HAKO_VIOLET, HAKO_ROYAL_TRUE}
|
|
||||||
};
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
uint8_t col = record->event.key.col;
|
|
||||||
uint8_t row = record->event.key.row;
|
|
||||||
|
|
||||||
if (record->event.pressed) {
|
|
||||||
char name[MAX_SWITCH_NAME_LENGTH];
|
|
||||||
switch_name(switches[row][col], name);
|
|
||||||
send_string(name);
|
|
||||||
SEND_STRING("\n");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
@ -1,5 +0,0 @@
|
|||||||
# Sweet16 as a switch tester
|
|
||||||
|
|
||||||
This keymap uses the Sweet16 as a switch tester. The functionality outputs the switch name of whatever key the user pressed.
|
|
||||||
|
|
||||||
the `switches` two-dimensional (4x4) array contains the switches attached to the macropad. The switches supported are defined as macros in the `switches.h` header file.
|
|
@ -1,12 +0,0 @@
|
|||||||
# Build Options
|
|
||||||
# comment out to disable the options.
|
|
||||||
#
|
|
||||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
|
||||||
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
|
||||||
CONSOLE_ENABLE = yes # Console for debug(+400)
|
|
||||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
|
||||||
NKRO_ENABLE = no # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
|
||||||
RGBLIGHT_ENABLE = no
|
|
||||||
|
|
||||||
SRC += switches.c
|
|
@ -1,99 +0,0 @@
|
|||||||
#include <stdio.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include "switches.h"
|
|
||||||
|
|
||||||
static const char *BRAND_NAMES[] = {
|
|
||||||
"Kailh",
|
|
||||||
"Kailh Low Profile Choc",
|
|
||||||
"Gateron",
|
|
||||||
"Cherry MX",
|
|
||||||
"Cherry ML",
|
|
||||||
"Outemu",
|
|
||||||
"Greetech",
|
|
||||||
"Varmilo",
|
|
||||||
"MOD",
|
|
||||||
"Hako"
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *COLOR_NAMES[] = {
|
|
||||||
"",
|
|
||||||
"White",
|
|
||||||
"Black",
|
|
||||||
"Blue",
|
|
||||||
"Red",
|
|
||||||
"Yellow",
|
|
||||||
"Brown",
|
|
||||||
"Green",
|
|
||||||
"Clear",
|
|
||||||
"Silver",
|
|
||||||
"Nature White",
|
|
||||||
"Grey",
|
|
||||||
"Jade",
|
|
||||||
"Navy",
|
|
||||||
"Burnt Orange",
|
|
||||||
"Pale Blue",
|
|
||||||
"Dark Yellow",
|
|
||||||
"Gold",
|
|
||||||
"Chocolate White",
|
|
||||||
"Burgundy",
|
|
||||||
"Purple",
|
|
||||||
"Light Green",
|
|
||||||
"True",
|
|
||||||
"Berry",
|
|
||||||
"Plum",
|
|
||||||
"Sage",
|
|
||||||
"Violet",
|
|
||||||
"L",
|
|
||||||
"M",
|
|
||||||
"H",
|
|
||||||
"SH"
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *VARIANT_NAMES[] = {
|
|
||||||
"",
|
|
||||||
"BOX",
|
|
||||||
"BOX Thick",
|
|
||||||
"BOX Heavy",
|
|
||||||
"Silent",
|
|
||||||
"Tactile",
|
|
||||||
"Linear",
|
|
||||||
"Speed",
|
|
||||||
"Speed Heavy",
|
|
||||||
"Speed Thick Click",
|
|
||||||
"Pro",
|
|
||||||
"Pro Heavy",
|
|
||||||
"Royal",
|
|
||||||
"Thick Click",
|
|
||||||
"Heavy"
|
|
||||||
};
|
|
||||||
|
|
||||||
const char *brand_name(struct mechswitch ms) {
|
|
||||||
return BRAND_NAMES[ms.brand - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *variant_name(struct mechswitch ms) {
|
|
||||||
return VARIANT_NAMES[ms.variant];
|
|
||||||
}
|
|
||||||
|
|
||||||
const char *color_name(struct mechswitch ms) {
|
|
||||||
return COLOR_NAMES[ms.color];
|
|
||||||
}
|
|
||||||
|
|
||||||
void switch_name(struct mechswitch ms, char *buf) {
|
|
||||||
const char *v_name = variant_name(ms);
|
|
||||||
const char *c_name = color_name(ms);
|
|
||||||
|
|
||||||
snprintf(buf, MAX_SWITCH_NAME_LENGTH, "%s", brand_name(ms));
|
|
||||||
strncat(buf, " ", MAX_SWITCH_NAME_LENGTH - strlen(buf));
|
|
||||||
if (strlen(v_name) > 0) {
|
|
||||||
strncat(buf, v_name, MAX_SWITCH_NAME_LENGTH - strlen(buf));
|
|
||||||
strncat(buf, " ", MAX_SWITCH_NAME_LENGTH - strlen(buf));
|
|
||||||
}
|
|
||||||
if (strlen(c_name) > 0) {
|
|
||||||
strncat(buf, c_name, MAX_SWITCH_NAME_LENGTH - strlen(buf));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int bitfieldtoi(struct mechswitch ms) {
|
|
||||||
return ((ms.brand << 9) | (ms.variant << 5) | ms.color);
|
|
||||||
}
|
|
@ -1,189 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
struct mechswitch
|
|
||||||
{
|
|
||||||
unsigned int brand: 4;
|
|
||||||
unsigned int variant: 4;
|
|
||||||
unsigned int color: 5;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define MAX_SWITCH_NAME_LENGTH 256
|
|
||||||
|
|
||||||
#define BRAND_KAILH 1
|
|
||||||
#define BRAND_KAILH_LOW 2
|
|
||||||
#define BRAND_GATERON 3
|
|
||||||
#define BRAND_CHERRY_MX 4
|
|
||||||
#define BRAND_CHERRY_ML 5
|
|
||||||
#define BRAND_OUTEMU 6
|
|
||||||
#define BRAND_GREETECH 7
|
|
||||||
#define BRAND_VARMILO 8
|
|
||||||
#define BRAND_MOD 9
|
|
||||||
#define BRAND_HAKO 10
|
|
||||||
|
|
||||||
#define COLOR_NO 0
|
|
||||||
#define COLOR_WHITE 1
|
|
||||||
#define COLOR_BLACK 2
|
|
||||||
#define COLOR_BLUE 3
|
|
||||||
#define COLOR_RED 4
|
|
||||||
#define COLOR_YELLOW 5
|
|
||||||
#define COLOR_BROWN 6
|
|
||||||
#define COLOR_GREEN 7
|
|
||||||
#define COLOR_CLEAR 8
|
|
||||||
#define COLOR_SILVER 9
|
|
||||||
#define COLOR_NATURE_WHITE 10
|
|
||||||
#define COLOR_GREY 11
|
|
||||||
#define COLOR_JADE 12
|
|
||||||
#define COLOR_NAVY 13
|
|
||||||
#define COLOR_BURNT_ORANGE 14
|
|
||||||
#define COLOR_PALE_BLUE 15
|
|
||||||
#define COLOR_DARK_YELLOW 16
|
|
||||||
#define COLOR_GOLD 17
|
|
||||||
#define COLOR_CHOCOLATE_WHITE 18
|
|
||||||
#define COLOR_BURGUNDY 19
|
|
||||||
#define COLOR_PURPLE 20
|
|
||||||
#define COLOR_LIGHT_GREEN 21
|
|
||||||
#define COLOR_TRUE 22
|
|
||||||
#define COLOR_BERRY 23
|
|
||||||
#define COLOR_PLUM 24
|
|
||||||
#define COLOR_SAGE 25
|
|
||||||
#define COLOR_VIOLET 26
|
|
||||||
#define COLOR_L 27
|
|
||||||
#define COLOR_M 28
|
|
||||||
#define COLOR_H 29
|
|
||||||
#define COLOR_SH 30
|
|
||||||
|
|
||||||
#define VARIANT_NO 0
|
|
||||||
#define VARIANT_BOX 1
|
|
||||||
#define VARIANT_BOX_THICK 2
|
|
||||||
#define VARIANT_BOX_HEAVY 3
|
|
||||||
#define VARIANT_SILENT 4
|
|
||||||
#define VARIANT_TACTILE 5
|
|
||||||
#define VARIANT_LINEAR 6
|
|
||||||
#define VARIANT_SPEED 7
|
|
||||||
#define VARIANT_SPEED_HEAVY 8
|
|
||||||
#define VARIANT_SPEED_CLICK_THICK 9
|
|
||||||
#define VARIANT_PRO 10
|
|
||||||
#define VARIANT_PRO_HEAVY 11
|
|
||||||
#define VARIANT_ROYAL 12
|
|
||||||
#define VARIANT_CLICK_THICK 13
|
|
||||||
|
|
||||||
#define CHERRY_MX_BLUE {BRAND_CHERRY_MX, VARIANT_NO, COLOR_BLUE}
|
|
||||||
#define CHERRY_MX_RED {BRAND_CHERRY_MX, VARIANT_NO, COLOR_RED}
|
|
||||||
#define CHERRY_MX_BROWN {BRAND_CHERRY_MX, VARIANT_NO, COLOR_BROWN}
|
|
||||||
#define CHERRY_MX_BLACK {BRAND_CHERRY_MX, VARIANT_NO, COLOR_BLACK}
|
|
||||||
#define CHERRY_MX_GREEN {BRAND_CHERRY_MX, VARIANT_NO, COLOR_GREEN}
|
|
||||||
#define CHERRY_MX_CLEAR {BRAND_CHERRY_MX, VARIANT_NO, COLOR_CLEAR}
|
|
||||||
#define CHERRY_MX_WHITE {BRAND_CHERRY_MX, VARIANT_NO, COLOR_WHITE}
|
|
||||||
#define CHERRY_MX_SILVER {BRAND_CHERRY_MX, VARIANT_NO, COLOR_SILVER}
|
|
||||||
#define CHERRY_MX_NATURE_WHITE {BRAND_CHERRY_MX, VARIANT_NO, COLOR_NATURE_WHITE}
|
|
||||||
#define CHERRY_MX_SILENT_BLACK {BRAND_CHERRY_MX, VARIANT_SILENT, COLOR_BLACK}
|
|
||||||
#define CHERRY_MX_SILENT_RED {BRAND_CHERRY_MX, VARIANT_SILENT, COLOR_RED}
|
|
||||||
#define CHERRY_MX_TACTILE_BLACK {BRAND_CHERRY_MX, VARIANT_SILENT, COLOR_GREY}
|
|
||||||
#define CHERRY_MX_LINEAR_BLACK {BRAND_CHERRY_MX, VARIANT_LINEAR, COLOR_GREY}
|
|
||||||
|
|
||||||
#define CHERRY_ML {BRAND_CHERRY_ML, VARIANT_NO, COLOR_NO}
|
|
||||||
|
|
||||||
#define GATERON_BLUE {BRAND_GATERON, VARIANT_NO, COLOR_BLUE}
|
|
||||||
#define GATERON_BROWN {BRAND_GATERON, VARIANT_NO, COLOR_BROWN}
|
|
||||||
#define GATERON_BLACK {BRAND_GATERON, VARIANT_NO, COLOR_BLACK}
|
|
||||||
#define GATERON_RED {BRAND_GATERON, VARIANT_NO, COLOR_RED}
|
|
||||||
#define GATERON_CLEAR {BRAND_GATERON, VARIANT_NO, COLOR_CLEAR}
|
|
||||||
#define GATERON_GREEN {BRAND_GATERON, VARIANT_NO, COLOR_GREEN}
|
|
||||||
#define GATERON_YELLOW {BRAND_GATERON, VARIANT_NO, COLOR_YELLOW}
|
|
||||||
|
|
||||||
#define GATERON_SILENT_CLEAR {BRAND_GATERON, VARIANT_SILENT, COLOR_CLEAR}
|
|
||||||
#define GATERON_SILENT_RED {BRAND_GATERON, VARIANT_SILENT, COLOR_RED}
|
|
||||||
#define GATERON_SILENT_YELLOW {BRAND_GATERON, VARIANT_SILENT, COLOR_YELLOW}
|
|
||||||
#define GATERON_SILENT_BLACK {BRAND_GATERON, VARIANT_SILENT, COLOR_BLACK}
|
|
||||||
#define GATERON_SILENT_BROWN {BRAND_GATERON, VARIANT_SILENT, COLOR_BROWN}
|
|
||||||
|
|
||||||
#define GREETECH_BLUE {BRAND_GREETECH, VARIANT_NO, COLOR_BLUE}
|
|
||||||
#define GREETECH_BROWN {BRAND_GREETECH, VARIANT_NO, COLOR_BROWN}
|
|
||||||
#define GREETECH_BLACK {BRAND_GREETECH, VARIANT_NO, COLOR_BLACK}
|
|
||||||
#define GREETECH_RED {BRAND_GREETECH, VARIANT_NO, COLOR_RED}
|
|
||||||
|
|
||||||
#define OUTEMU_BLUE {BRAND_OUTEMU, VARIANT_NO, COLOR_BLUE}
|
|
||||||
#define OUTEMU_BROWN {BRAND_OUTEMU, VARIANT_NO, COLOR_BROWN}
|
|
||||||
#define OUTEMU_BLACK {BRAND_OUTEMU, VARIANT_NO, COLOR_BLACK}
|
|
||||||
#define OUTEMU_RED {BRAND_OUTEMU, VARIANT_NO, COLOR_RED}
|
|
||||||
|
|
||||||
#define KAILH_BLUE {BRAND_KAILH, VARIANT_NO, COLOR_BLUE}
|
|
||||||
#define KAILH_BROWN {BRAND_KAILH, VARIANT_NO, COLOR_BROWN}
|
|
||||||
#define KAILH_BLACK {BRAND_KAILH, VARIANT_NO, COLOR_BLACK}
|
|
||||||
#define KAILH_RED {BRAND_KAILH, VARIANT_NO, COLOR_RED}
|
|
||||||
#define KAILH_GREEN {BRAND_KAILH, VARIANT_NO, COLOR_GREEN}
|
|
||||||
|
|
||||||
#define KAILH_BOX_WHITE {BRAND_KAILH, VARIANT_BOX, COLOR_WHITE}
|
|
||||||
#define KAILH_BOX_RED {BRAND_KAILH, VARIANT_BOX, COLOR_RED}
|
|
||||||
#define KAILH_BOX_BLACK {BRAND_KAILH, VARIANT_BOX, COLOR_BLACK}
|
|
||||||
#define KAILH_BOX_BROWN {BRAND_KAILH, VARIANT_BOX, COLOR_BROWN}
|
|
||||||
#define KAILH_BOX_ROYAL {BRAND_KAILH, VARIANT_BOX, COLOR_ROYAL}
|
|
||||||
|
|
||||||
#define KAILH_BOX_THICK_JADE {BRAND_KAILH, VARIANT_BOX_THICK, COLOR_JADE}
|
|
||||||
#define KAILH_BOX_THICK_NAVY {BRAND_KAILH, VARIANT_BOX_THICK, COLOR_NAVY}
|
|
||||||
#define KAILH_BOX_HEAVY_BURNT_ORANGE {BRAND_KAILH, VARIANT_BOX_HEAVY, COLOR_BURNT_ORANGE}
|
|
||||||
#define KAILH_BOX_HEAVY_PALE_BLUE {BRAND_KAILH, VARIANT_BOX_HEAVY, COLOR_PALE_BLUE}
|
|
||||||
#define KAILH_BOX_HEAVY_DARK_YELLOW {BRAND_KAILH, VARIANT_BOX_HEAVY, COLOR_DARK_YELLOW}
|
|
||||||
|
|
||||||
#define KAILH_SPEED_BRONZE {BRAND_KAILH, VARIANT_SPEED, COLOR_BRONZE}
|
|
||||||
#define KAILH_SPEED_COPPER {BRAND_KAILH, VARIANT_SPEED, COLOR_COPPER}
|
|
||||||
#define KAILH_SPEED_GOLD {BRAND_KAILH, VARIANT_SPEED, COLOR_GOLD}
|
|
||||||
#define KAILH_SPEED_SILVER {BRAND_KAILH, VARIANT_SPEED, COLOR_SILVER}
|
|
||||||
|
|
||||||
#define KAILH_SPEED_HEAVY_BURNT_ORANGE {BRAND_KAILH, VARIANT_SPEED_HEAVY, COLOR_BURNT_ORANGE}
|
|
||||||
#define KAILH_SPEED_HEAVY_PALE_BLUE {BRAND_KAILH, VARIANT_SPEED_HEAVY, COLOR_PALE_BLUE}
|
|
||||||
#define KAILH_SPEED_HEAVY_DARK_YELLOW {BRAND_KAILH, VARIANT_SPEED_HEAVY, COLOR_DARK_YELLOW}
|
|
||||||
|
|
||||||
#define KAILH_SPEED_THICK_CLICK_NAVY {BRAND_KAILH, VARIANT_SPEED_CLICK_THICK, COLOR_NAVY}
|
|
||||||
|
|
||||||
#define KAILH_PRO_BURGUNDY {BRAND_KAILH, VARIANT_PRO, COLOR_BURGUNDY}
|
|
||||||
#define KAILH_PRO_PURPLE {BRAND_KAILH, VARIANT_PRO, COLOR_PURPLE}
|
|
||||||
#define KAILH_PRO_LIGHT_GREEN {BRAND_KAILH, VARIANT_PRO, COLOR_LIGHT_GREEN}
|
|
||||||
|
|
||||||
#define KAILH_PRO_HEAVY_BERRY {BRAND_KAILH, VARIANT_PRO_HEAVY, COLOR_BERRY}
|
|
||||||
#define KAILH_PRO_HEAVY_PLUM {BRAND_KAILH, VARIANT_PRO_HEAVY, COLOR_PLUM}
|
|
||||||
#define KAILH_PRO_GEAVY_SAGE {BRAND_KAILH, VARIANT_PRO_HEAVY, COLOR_SAGE}
|
|
||||||
|
|
||||||
#define KAILH_LOW_WHITE {BRAND_KAILH_LOW, VARIANT_NO, COLOR_WHITE}
|
|
||||||
#define KAILH_LOW_BROWN {BRAND_KAILH_LOW, VARIANT_NO, COLOR_BROWN}
|
|
||||||
#define KAILH_LOW_RED {BRAND_KAILH_LOW, VARIANT_NO, COLOR_RED}
|
|
||||||
#define KAILH_LOW_CHOCOLATE_WHITE {BRAND_KAILH_LOW, VARIANT_NO, COLOR_CHOCOLATE_WHITE}
|
|
||||||
#define KAILH_LOW_THICK_CLICK_NAVY {BRAND_KAILH_LOW, VARIANT_THICK_CLICK, COLOR_NAVY}
|
|
||||||
#define KAILH_LOW_THICK_CLICK_JADE {BRAND_KAILH_LOW, VARIANT_THICK_CLICK, COLOR_JADE}
|
|
||||||
#define KAILH_LOW_HEAVY_DARK_YELLOW {BRAND_KAILH_LOW, VARIANT_HEAVY, COLOR_DARK_YELLOW}
|
|
||||||
#define KAILH_LOW_HEAVY_BURNT_ORANGE {BRAND_KAILH_LOW, VARIANT_HEAVY, COLOR_BURNT_ORANGE}
|
|
||||||
#define KAILH_LOW_HEAVY_PALE_BLUE {BRAND_KAILH_LOW, VARIANT_HEAVY, COLOR_PALE_BLUE}
|
|
||||||
|
|
||||||
#define HAKO_ROYAL_CLEAR {BRAND_HAKO, VARIANT_ROYAL, COLOR_CLEAR}
|
|
||||||
#define HAKO_ROYAL_TRUE {BRAND_HAKO, VARIANT_ROYAL, COLOR_TRUE}
|
|
||||||
|
|
||||||
#define HAKO_CLEAR {BRAND_HAKO, VARIANT_NO, COLOR_CLEAR}
|
|
||||||
#define HAKO_TRUE {BRAND_HAKO, VARIANT_NO, COLOR_TRUE}
|
|
||||||
#define HAKO_VIOLET {BRAND_HAKO, VARIANT_NO, COLOR_VIOLET}
|
|
||||||
|
|
||||||
#define MOD_L_TACTILE {BRAND_MOD, VARIANT_TACTILE, COLOR_L}
|
|
||||||
#define MOD_M_TACTILE {BRAND_MOD, VARIANT_TACTILE, COLOR_M}
|
|
||||||
#define MOD_H_TACTILE {BRAND_MOD, VARIANT_TACTILE, COLOR_H}
|
|
||||||
#define MOD_SH_TACTILE {BRAND_MOD, VARIANT_TACTILE, COLOR_SH}
|
|
||||||
|
|
||||||
#define MOD_L_LINEAR {BRAND_MOD, VARIANT_LINEAR, COLOR_L}
|
|
||||||
#define MOD_M_LINEAR {BRAND_MOD, VARIANT_LINEAR, COLOR_M}
|
|
||||||
#define MOD_H_LINEAR {BRAND_MOD, VARIANT_LINEAR, COLOR_H}
|
|
||||||
|
|
||||||
#define BYTE_TO_BINARY_PATTERN "%c%c%c%c%c%c%c%c"
|
|
||||||
#define BYTE_TO_BINARY(byte) \
|
|
||||||
(byte & 0x80 ? '1' : '0'), \
|
|
||||||
(byte & 0x40 ? '1' : '0'), \
|
|
||||||
(byte & 0x20 ? '1' : '0'), \
|
|
||||||
(byte & 0x10 ? '1' : '0'), \
|
|
||||||
(byte & 0x08 ? '1' : '0'), \
|
|
||||||
(byte & 0x04 ? '1' : '0'), \
|
|
||||||
(byte & 0x02 ? '1' : '0'), \
|
|
||||||
(byte & 0x01 ? '1' : '0')
|
|
||||||
|
|
||||||
|
|
||||||
const char *brand_name(struct mechswitch ms);
|
|
||||||
const char *variant_name(struct mechswitch ms);
|
|
||||||
const char *color_name(struct mechswitch ms);
|
|
||||||
void switch_name(struct mechswitch ms, char *buf);
|
|
||||||
int bitfieldtoi(struct mechswitch ms);
|
|
@ -1,12 +0,0 @@
|
|||||||
# Sweet 16 Macropad
|
|
||||||
|
|
||||||
A 4x4 numpad/macro pad sold by 1up Keyboards.
|
|
||||||
|
|
||||||
* Keyboard Maintainer: skullydazed
|
|
||||||
* Hardware Supported: Sweet16 Keyboard PCB
|
|
||||||
* Hardware Availability: [1up Keyboards](https://1upkeyboards.com/)
|
|
||||||
|
|
||||||
Revisions:
|
|
||||||
* [v1](./v1/)- The original macropad, designed by Bishop Keyboards
|
|
||||||
* [v2/promicro](./v2/promicro)- The second macropad built with a Pro Micro, designed by Clueboard
|
|
||||||
* [v2/proton_c](./v2/proton_c)- The second macropad built with a Proton C, designed by Clueboard
|
|
@ -1,12 +0,0 @@
|
|||||||
# Build Options
|
|
||||||
#
|
|
||||||
DEFAULT_FOLDER = 1upkeyboards/sweet16/v1
|
|
||||||
#BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration
|
|
||||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
|
||||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
|
||||||
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
|
||||||
AUDIO_ENABLE = no
|
|
||||||
RGBLIGHT_ENABLE = no
|
|
@ -1 +0,0 @@
|
|||||||
#include "sweet16.h"
|
|
@ -1,30 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
// Any changes to the layout names and/or definitions must also be made to info.json
|
|
||||||
|
|
||||||
#define LAYOUT_ortho_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, K13, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K30, K31, K32, K33 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, K13 }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ K30, K31, K32, K33 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define LAYOUT_numpad_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K31, K32 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, KC_NO }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ KC_NO, K31, K32, KC_NO } \
|
|
||||||
}
|
|
||||||
|
|
@ -1,28 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "config_common.h"
|
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define PRODUCT_ID 0x2010
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
|
|
||||||
/* key matrix pins */
|
|
||||||
#define MATRIX_ROW_PINS { F4, F5, F6, F7 }
|
|
||||||
#define MATRIX_COL_PINS { D1, D0, D4, C6 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW or ROW2COL */
|
|
||||||
#define DIODE_DIRECTION COL2ROW
|
|
||||||
|
|
||||||
/* Set 0 if debouncing isn't needed */
|
|
||||||
#define DEBOUNCE 5
|
|
||||||
|
|
||||||
/* Underglow options */
|
|
||||||
#define RGB_DI_PIN B1
|
|
||||||
#ifdef RGB_DI_PIN
|
|
||||||
#define RGBLIGHT_ANIMATIONS
|
|
||||||
#define RGBLED_NUM 1
|
|
||||||
#define RGBLIGHT_HUE_STEP 8
|
|
||||||
#define RGBLIGHT_SAT_STEP 8
|
|
||||||
#define RGBLIGHT_VAL_STEP 8
|
|
||||||
#endif
|
|
@ -1,13 +0,0 @@
|
|||||||
# Sweet16 V1
|
|
||||||
|
|
||||||
A 4x4 numpad/macro pad sold by 1up Keyboards - designed by Bishop Keyboards
|
|
||||||
|
|
||||||
* Keyboard Maintainer: QMK Community
|
|
||||||
* Hardware Supported: Sweet16 V1 PCB
|
|
||||||
* Hardware Availability: [1up Keyboards](https://1upkeyboards.com/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/sweet16/v1:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,17 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
# Teensy halfkay
|
|
||||||
# Pro Micro caterina
|
|
||||||
# Atmel DFU atmel-dfu
|
|
||||||
# LUFA DFU lufa-dfu
|
|
||||||
# QMK DFU qmk-dfu
|
|
||||||
# ATmega32A bootloadHID
|
|
||||||
# ATmega328P USBasp
|
|
||||||
BOOTLOADER = caterina
|
|
||||||
|
|
||||||
RGBLIGHT_ENABLE = yes
|
|
||||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
|
||||||
|
|
||||||
LINK_TIME_OPTIMIZATION_ENABLE = yes
|
|
@ -1,21 +0,0 @@
|
|||||||
#include "v1.h"
|
|
||||||
|
|
||||||
void led_set_kb(uint8_t usb_led) {
|
|
||||||
#ifndef CONVERT_TO_PROTON_C
|
|
||||||
/* Map RXLED to USB_LED_NUM_LOCK */
|
|
||||||
if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
|
|
||||||
setPinOutput(B0);
|
|
||||||
writePinLow(B0);
|
|
||||||
} else {
|
|
||||||
setPinInput(B0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Map TXLED to USB_LED_CAPS_LOCK */
|
|
||||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
|
||||||
setPinOutput(D5);
|
|
||||||
writePinLow(D5);
|
|
||||||
} else {
|
|
||||||
setPinInput(D5);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
// Any changes to the layout names and/or definitions must also be made to info.json
|
|
||||||
|
|
||||||
#define LAYOUT_ortho_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, K13, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K30, K31, K32, K33 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, K13 }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ K30, K31, K32, K33 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define LAYOUT_numpad_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K31, K32 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, KC_NO }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ KC_NO, K31, K32, KC_NO } \
|
|
||||||
}
|
|
||||||
|
|
@ -1,31 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "config_common.h"
|
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define PRODUCT_ID 0x2011
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
|
|
||||||
/* key matrix pins */
|
|
||||||
#define MATRIX_ROW_PINS { D4, D1, E6, B5 }
|
|
||||||
#define MATRIX_COL_PINS { F7, F6, D2, D3 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW or ROW2COL */
|
|
||||||
#define DIODE_DIRECTION ROW2COL
|
|
||||||
|
|
||||||
/* Set 0 if debouncing isn't needed */
|
|
||||||
#define DEBOUNCE 5
|
|
||||||
|
|
||||||
/* Encoder pins */
|
|
||||||
#define ENCODERS_PAD_A { F4 }
|
|
||||||
#define ENCODERS_PAD_B { F5 }
|
|
||||||
#define ENCODER_RESOLUTION 4
|
|
||||||
|
|
||||||
/* Underglow options */
|
|
||||||
#define RGB_DI_PIN F4
|
|
||||||
#define RGBLIGHT_ANIMATIONS
|
|
||||||
#define RGBLED_NUM 1
|
|
||||||
#define RGBLIGHT_HUE_STEP 8
|
|
||||||
#define RGBLIGHT_SAT_STEP 8
|
|
||||||
#define RGBLIGHT_VAL_STEP 8
|
|
@ -1,8 +0,0 @@
|
|||||||
#include "promicro.h"
|
|
||||||
#include "encoder.h"
|
|
||||||
|
|
||||||
#ifdef ENCODER_ENABLED
|
|
||||||
void encoder_update_kb(int8_t index, bool clockwise) {
|
|
||||||
encoder_update_user(index, clockwise);
|
|
||||||
}
|
|
||||||
#endif
|
|
@ -1,30 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
// Any changes to the layout names and/or definitions must also be made to info.json
|
|
||||||
|
|
||||||
#define LAYOUT_ortho_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, K13, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K30, K31, K32, K33 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, K13 }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ K30, K31, K32, K33 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define LAYOUT_numpad_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K31, K32 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, KC_NO }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ KC_NO, K31, K32, KC_NO } \
|
|
||||||
}
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
|||||||
# Sweet16 V2 (Pro Micro)
|
|
||||||
|
|
||||||
A 4x4 numpad/macro pad sold by 1up Keyboards - designed by Clueboard
|
|
||||||
|
|
||||||
* Keyboard Maintainer: skullydazed
|
|
||||||
* Hardware Supported: Sweet16 V2 PCB, Pro Micro
|
|
||||||
* Hardware Availability: [1up Keyboards](https://1upkeyboards.com/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/sweet16/v2/promicro:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,21 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = atmega32u4
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
# Teensy halfkay
|
|
||||||
# Pro Micro caterina
|
|
||||||
# Atmel DFU atmel-dfu
|
|
||||||
# LUFA DFU lufa-dfu
|
|
||||||
# QMK DFU qmk-dfu
|
|
||||||
# ATmega32A bootloadHID
|
|
||||||
# ATmega328P USBasp
|
|
||||||
BOOTLOADER = caterina
|
|
||||||
|
|
||||||
## Features
|
|
||||||
CONSOLE_ENABLE = yes
|
|
||||||
|
|
||||||
## On a Pro Micro you have to choose between underglow and the rotary encoder.
|
|
||||||
RGBLIGHT_ENABLE = no
|
|
||||||
ENCODER_ENABLE = yes
|
|
||||||
|
|
||||||
LINK_TIME_OPTIMIZATION_ENABLE = yes
|
|
@ -1,20 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "config_common.h"
|
|
||||||
|
|
||||||
/* USB Device descriptor parameter */
|
|
||||||
#define PRODUCT_ID 0x2011
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
|
|
||||||
/* key matrix pins */
|
|
||||||
#define MATRIX_ROW_PINS { B5, B7, B2, B0 }
|
|
||||||
#define MATRIX_COL_PINS { B8, A0, A10, A9 }
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
/* COL2ROW or ROW2COL */
|
|
||||||
#define DIODE_DIRECTION ROW2COL
|
|
||||||
|
|
||||||
/* Encoder pins */
|
|
||||||
#define ENCODERS_PAD_A { A2 }
|
|
||||||
#define ENCODERS_PAD_B { A1 }
|
|
||||||
#define ENCODER_RESOLUTION 4
|
|
@ -1 +0,0 @@
|
|||||||
#include "proton_c.h"
|
|
@ -1,30 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
// Any changes to the layout names and/or definitions must also be made to info.json
|
|
||||||
|
|
||||||
#define LAYOUT_ortho_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, K13, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K30, K31, K32, K33 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, K13 }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ K30, K31, K32, K33 } \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define LAYOUT_numpad_4x4( \
|
|
||||||
K00, K01, K02, K03, \
|
|
||||||
K10, K11, K12, \
|
|
||||||
K20, K21, K22, K23, \
|
|
||||||
K31, K32 \
|
|
||||||
) { \
|
|
||||||
{ K00, K01, K02, K03 }, \
|
|
||||||
{ K10, K11, K12, KC_NO }, \
|
|
||||||
{ K20, K21, K22, K23 }, \
|
|
||||||
{ KC_NO, K31, K32, KC_NO } \
|
|
||||||
}
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
|||||||
# Sweet16 V2 (Proton C)
|
|
||||||
|
|
||||||
A 4x4 numpad/macro pad sold by 1up Keyboards - designed by Clueboard
|
|
||||||
|
|
||||||
* Keyboard Maintainer: skullydazed
|
|
||||||
* Hardware Supported: Sweet16 V2 PCB, Proton C
|
|
||||||
* Hardware Availability: [1up Keyboards](https://1upkeyboards.com/)
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make 1upkeyboards/sweet16/v2/proton_c:default
|
|
||||||
|
|
||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
|
@ -1,7 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = STM32F303
|
|
||||||
|
|
||||||
## Features
|
|
||||||
CONSOLE_ENABLE = yes
|
|
||||||
ENCODER_ENABLE = yes
|
|
||||||
AUDIO_ENABLE = yes
|
|
@ -1,16 +0,0 @@
|
|||||||
/* Copyright 2019 Sebastian Williams
|
|
||||||
*
|
|
||||||
* 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 "2_milk.h"
|
|
@ -1,26 +0,0 @@
|
|||||||
/* Copyright 2019 Sebastian Williams
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 2 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "quantum.h"
|
|
||||||
|
|
||||||
#define LAYOUT( \
|
|
||||||
K00, \
|
|
||||||
K01 \
|
|
||||||
) { \
|
|
||||||
{ K00 }, \
|
|
||||||
{ K01 } \
|
|
||||||
}
|
|
@ -1,41 +0,0 @@
|
|||||||
/* Copyright 2019 Sebastian Williams
|
|
||||||
*
|
|
||||||
* 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 0xB195
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER rionlion100
|
|
||||||
#define PRODUCT 2% Milk
|
|
||||||
#define DESCRIPTION A milk themed 2% Keyboard
|
|
||||||
|
|
||||||
/* key matrix size */
|
|
||||||
#define MATRIX_ROWS 2
|
|
||||||
#define MATRIX_COLS 1
|
|
||||||
|
|
||||||
/* Milk default pinout */
|
|
||||||
#define DIRECT_PINS { \
|
|
||||||
{D4}, \
|
|
||||||
{C6} \
|
|
||||||
}
|
|
||||||
#define UNUSED_PINS
|
|
||||||
|
|
||||||
#ifdef RGBLIGHT_ENABLE
|
|
||||||
#define RGB_DI_PIN B6
|
|
||||||
#define RGBLED_NUM 1
|
|
||||||
#endif
|
|
@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "2% Milk",
|
|
||||||
"keyboard_folder": "2_milk",
|
|
||||||
"url": "",
|
|
||||||
"maintainer": "rionlion100",
|
|
||||||
"width": 1,
|
|
||||||
"height": 2,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT": {
|
|
||||||
"key_count": 2,
|
|
||||||
"layout": [ {"x": 0, "y": 0 }, {"x": 0, "y": 1 }]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
KC_P0,
|
|
||||||
KC_P1
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,2 +0,0 @@
|
|||||||
# Binary keymap
|
|
||||||
0 and 1 that's it
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
RCTL(KC_C),
|
|
||||||
RCTL(KC_V)
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,2 +0,0 @@
|
|||||||
# Copy/Paste Keymap
|
|
||||||
![Picture](https://i.imgur.com/7LMZZrL.png)
|
|
@ -1,8 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
KC_Z,
|
|
||||||
KC_X
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,2 +0,0 @@
|
|||||||
# Default keymap for 2% Milk
|
|
||||||
![Picture](https://i.imgur.com/9PsZ6wa.png)
|
|
@ -1,2 +0,0 @@
|
|||||||
#define UNICODE_SELECTED_MODES UC_LNX, UC_OSX, UC_WIN, UC_WINC
|
|
||||||
#define TAPPING_TERM 300
|
|
@ -1,53 +0,0 @@
|
|||||||
#include QMK_KEYBOARD_H
|
|
||||||
|
|
||||||
enum tapdance_keycodes {
|
|
||||||
TD_KEY_1,
|
|
||||||
TD_KEY_2,
|
|
||||||
};
|
|
||||||
|
|
||||||
void dance_key_one (qk_tap_dance_state_t *state, void *user_data) {
|
|
||||||
if (state->count == 1) {
|
|
||||||
send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); // ¯\_(ツ)_/¯
|
|
||||||
SEND_STRING(SS_TAP(X_ENTER));
|
|
||||||
reset_tap_dance (state);
|
|
||||||
} else if (state->count == 2) {
|
|
||||||
cycle_unicode_input_mode(+1);
|
|
||||||
reset_tap_dance (state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void dance_key_two (qk_tap_dance_state_t *state, void *user_data) {
|
|
||||||
if (state->count == 1) {
|
|
||||||
send_unicode_hex_string("0CA0 005F 0CA0"); // ಠ_ಠ
|
|
||||||
SEND_STRING(SS_TAP(X_ENTER));
|
|
||||||
reset_tap_dance (state);
|
|
||||||
} else if (state->count == 2) {
|
|
||||||
send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); // (ノಠ痊ಠ)ノ彡┻━┻
|
|
||||||
SEND_STRING(SS_TAP(X_ENTER));
|
|
||||||
reset_tap_dance (state);
|
|
||||||
} else if (state->count == 3) {
|
|
||||||
send_unicode_hex_string("256D 2229 256E 0028 002D 005F 002D 0029 256D 2229 256E"); // ╭∩╮(-_-)╭∩╮
|
|
||||||
SEND_STRING(SS_TAP(X_ENTER));
|
|
||||||
reset_tap_dance (state);
|
|
||||||
} else if (state->count == 4) {
|
|
||||||
send_unicode_hex_string("0028 3065 FFE3 0020 00B3 FFE3 0029 3065"); // (づ ̄ ³ ̄)づ
|
|
||||||
SEND_STRING(SS_TAP(X_ENTER));
|
|
||||||
reset_tap_dance (state);
|
|
||||||
} else if (state->count == 5) {
|
|
||||||
send_unicode_hex_string("0028 FE3A FE39 FE3A 0029"); // (︺︹︺)
|
|
||||||
SEND_STRING(SS_TAP(X_ENTER));
|
|
||||||
reset_tap_dance (state);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
|
||||||
[TD_KEY_1] = ACTION_TAP_DANCE_FN(dance_key_one),
|
|
||||||
[TD_KEY_2] = ACTION_TAP_DANCE_FN(dance_key_two),
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
TD(TD_KEY_1),
|
|
||||||
TD(TD_KEY_2)
|
|
||||||
),
|
|
||||||
};
|
|
@ -1,39 +0,0 @@
|
|||||||
# Emoji Keymap
|
|
||||||
![Picture](https://i.imgur.com/1zEZ9Lq.png)
|
|
||||||
|
|
||||||
# Unicode Setup
|
|
||||||
|
|
||||||
Unicode input in QMK works by inputting a sequence of characters to the
|
|
||||||
OS, sort of like a macro. Unfortunately, the way this is done differs
|
|
||||||
for each platform. Specifically, each platform requires a different
|
|
||||||
combination of keys to trigger Unicode input. Therefore, a
|
|
||||||
corresponding input mode has to be set in QMK.
|
|
||||||
|
|
||||||
Documentation: [Feature Unicode](https://beta.docs.qmk.fm/features/feature_unicode#input-modes)
|
|
||||||
|
|
||||||
On this keymap the default unicode mode it's `UC_LNX`.
|
|
||||||
You can change it permanently tapping 2 times the KeyOne to select the next mode.
|
|
||||||
|
|
||||||
## Unicode Mode List
|
|
||||||
- UC_LNX
|
|
||||||
- UC_OSX
|
|
||||||
- UC_WIN
|
|
||||||
- UC_WINC
|
|
||||||
|
|
||||||
# Keymap
|
|
||||||
To add more functionality to this Minimal Keyboard,
|
|
||||||
it's implemented the tap dance feature, so pressing the same key
|
|
||||||
multiples times will produce different emojis.
|
|
||||||
|
|
||||||
## Key One
|
|
||||||
|
|
||||||
- 1 Tap: `¯\_(ツ)_/¯`
|
|
||||||
- 2 Taps: Switch Unicode Input Type
|
|
||||||
|
|
||||||
## Key Two
|
|
||||||
|
|
||||||
- 1 Tap: `ಠ_ಠ`
|
|
||||||
- 2 Taps: `(ノಠ痊ಠ)ノ彡┻━┻`
|
|
||||||
- 3 Taps: `╭∩╮(-_-)╭∩╮`
|
|
||||||
- 4 Taps: `(づ ̄ ³ ̄)づ`
|
|
||||||
- 5 Taps: `(︺︹︺)`
|
|
@ -1,2 +0,0 @@
|
|||||||
UNICODE_ENABLE = yes # Unicode
|
|
||||||
TAP_DANCE_ENABLE = yes # Tap Dance
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user