forked from mfulz_github/qmk_firmware
Merge branch 'master' into features/encryption
This commit is contained in:
commit
562df82b85
|
@ -5,6 +5,10 @@
|
|||
.DS_Store
|
||||
._*
|
||||
|
||||
# Merge files
|
||||
*.orig
|
||||
*.rej
|
||||
|
||||
# Build artifacts
|
||||
.clang_complete
|
||||
.build/
|
||||
|
@ -27,16 +31,11 @@ quantum/version.h
|
|||
*.uf2
|
||||
|
||||
# Old-style QMK Makefiles
|
||||
/keyboards/*/Makefile
|
||||
/keyboards/*/*/Makefile
|
||||
/keyboards/*/*/*/Makefile
|
||||
/keyboards/*/*/*/*/Makefile
|
||||
/keyboards/*/*/*/*/*/Makefile
|
||||
/keyboards/*/keymaps/Makefile
|
||||
/keyboards/*/*/keymaps/Makefile
|
||||
/keyboards/*/*/*/keymaps/Makefile
|
||||
/keyboards/*/*/*/*/keymaps/Makefile
|
||||
/keyboards/*/*/*/*/*/keymaps/Makefile
|
||||
/keyboards/**/Makefile
|
||||
|
||||
# kbfirmware....
|
||||
/keyboards/**/kb.h
|
||||
/keyboards/**/kb.c
|
||||
|
||||
# Eclipse/PyCharm/Other IDE Settings
|
||||
*.iml
|
||||
|
|
|
@ -84,6 +84,7 @@
|
|||
* [One Shot Keys](one_shot_keys.md)
|
||||
* [Pointing Device](feature_pointing_device.md)
|
||||
* [Raw HID](feature_rawhid.md)
|
||||
* [Secure](feature_secure.md)
|
||||
* [Sequencer](feature_sequencer.md)
|
||||
* [Swap Hands](feature_swap_hands.md)
|
||||
* [Tap Dance](feature_tap_dance.md)
|
||||
|
|
|
@ -0,0 +1,54 @@
|
|||
# Secure
|
||||
|
||||
The secure feature aims to prevent unwanted interaction without user intervention.
|
||||
|
||||
?> Secure does **not** currently implement encryption/decryption/etc and should not be a replacement where a strong hardware/software based solution is required.
|
||||
|
||||
### Unlock sequence
|
||||
|
||||
To unlock, the user must perform a set of actions. This can optionally be configured to be multiple keys.
|
||||
|
||||
* While unlocking all keyboard input is ignored
|
||||
* Incorrect attempts will revert back to the previously locked state
|
||||
|
||||
### Automatic Locking
|
||||
|
||||
Once unlocked, the keyboard will revert back to a locked state after the configured timeout.
|
||||
The timeout can be refreshed by using the `secure_activity_event` function, for example from one of the various [hooks](custom_quantum_functions.md).
|
||||
|
||||
## Usage
|
||||
|
||||
Add the following to your `rules.mk`:
|
||||
|
||||
```make
|
||||
SECURE_ENABLE = yes
|
||||
```
|
||||
|
||||
## Keycodes
|
||||
|
||||
| Key | Description |
|
||||
|------------------|--------------------------------------------------------------------------------|
|
||||
| `SECURE_LOCK` | Revert back to a locked state |
|
||||
| `SECURE_UNLOCK` | Forces unlock without performing a unlock sequence |
|
||||
| `SECURE_TOGGLE` | Toggle directly between locked and unlock without performing a unlock sequence |
|
||||
| `SECURE_REQUEST` | Request that user perform the unlock sequence |
|
||||
|
||||
## Configuration
|
||||
|
||||
| Define | Default | Description |
|
||||
|-------------------------|----------------|---------------------------------------------------------------------------------|
|
||||
|`SECURE_UNLOCK_TIMEOUT` | `5000` | Timeout for the user to perform the configured unlock sequence - `0` to disable |
|
||||
|`SECURE_IDLE_TIMEOUT` | `60000` | Timeout while unlocked before returning to locked - `0` to disable |
|
||||
|`SECURE_UNLOCK_SEQUENCE` | `{ { 0, 0 } }` | Array of matrix locations describing a sequential sequence of keypresses |
|
||||
|
||||
## Functions
|
||||
|
||||
| Function | Description |
|
||||
|---------------------------|----------------------------------------------------------------------------|
|
||||
| `secure_is_locked()` | Check if the device is currently locked |
|
||||
| `secure_is_unlocking()` | Check if an unlock sequence is currently in progress |
|
||||
| `secure_is_unlocked()` | Check if the device is currently unlocked |
|
||||
| `secure_lock()` | Lock down the device |
|
||||
| `secure_unlock()` | Force unlock the device - bypasses user unlock sequence |
|
||||
| `secure_request_unlock()` | Begin listening for an unlock sequence |
|
||||
| `secure_activity_event()` | Flag that user activity has happened and the device should remain unlocked |
|
|
@ -79,6 +79,9 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard
|
|||
- `matrix_init_board()` etc. migrated to `keyboard_pre_init_kb()`, see: [keyboard_pre_init*](custom_quantum_functions.md?id=keyboard_pre_init_-function-documentation)
|
||||
- prefer `CUSTOM_MATRIX = lite` if custom matrix used, allows for standard debounce, see [custom matrix 'lite'](custom_matrix.md?id=lite)
|
||||
- prefer LED indicator [Configuration Options](feature_led_indicators.md?id=configuration-options) to custom `led_update_*()` implementations where possible
|
||||
- Encoder support should not be hacked into the keymap here -- no `tap_code(dynamic_keymap_get_keycode())` or `action_exec()` hacks. The [Encoder Map](feature_encoders.md?id=encoder-map) feature already supports the dynamic keymap feature (what power's VIA's "live keymap updates" capability).
|
||||
- If support is absolutely necessary, it should be implemented exclusively at the keymap level, with none of the implementation bleeding into the keyboard level (no empty rows/columns, no encoder specific layouts, etc.), as those configurations can be redefined at the keymap level. Keymaps can then choose to use the `action_exec` hack. <!-- because people will complain, give them a way to implement it, in the meanwhile. To be removed. -->
|
||||
- [Request for official proper VIA support](https://github.com/the-via/app/issues/26)
|
||||
- `<keyboard>.h`
|
||||
- `#include "quantum.h"` appears at the top
|
||||
- `LAYOUT` macros should use standard definitions if applicable
|
||||
|
|
|
@ -238,3 +238,25 @@ Example:
|
|||
```
|
||||
|
||||
The device version is a BCD (binary coded decimal) value, in the format `MMmr`, so the below value would look like `0x0100` in the generated code. This also means the maximum valid values for each part are `99.9.9`, despite it being a hexadecimal value under the hood.
|
||||
|
||||
### Secure
|
||||
|
||||
The following options can be configured:
|
||||
|
||||
|Key |Description |
|
||||
|------------------|---------------------------------------------------------------------------------|
|
||||
|`unlock_sequence` | Timeout for the user to perform the configured unlock sequence - `0` to disable |
|
||||
|`unlock_timeout` | Timeout while unlocked before returning to locked - `0` to disable |
|
||||
|`idle_timeout` | Array of matrix locations describing a sequential sequence of keypresses |
|
||||
|
||||
Example:
|
||||
|
||||
```json
|
||||
{
|
||||
"secure": {
|
||||
"unlock_sequence": [ [0,0], [0,1] ],
|
||||
"unlock_timeout": 5000,
|
||||
"idle_timeout": 60000
|
||||
}
|
||||
}
|
||||
```
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
|
||||
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 0xCB00
|
||||
#define PRODUCT_ID 0xF09F
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER ItsFiremanSam
|
||||
#define PRODUCT TutelPad
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 2
|
||||
#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)
|
||||
*
|
||||
*/
|
||||
/* Keyboard Matrix Assignments */
|
||||
#define DIRECT_PINS { \
|
||||
{ E6, D7, B1, B3 }, \
|
||||
{ B5, B4, B2, B6 } \
|
||||
}
|
||||
|
||||
#define RGB_DI_PIN D3 // LED data pin on controller
|
||||
#define RGBLED_NUM 4 // Number of LEDs connected
|
||||
|
||||
#define RGBLIGHT_HUE_STEP 10 // The number of steps to cycle through the hue by
|
||||
#define RGBLIGHT_SAT_STEP 17 // The number of steps to increment the saturation by
|
||||
#define RGBLIGHT_VAL_STEP 17 // The number of steps to increment the brightness by
|
||||
#define RGBLIGHT_LIMIT_VAL 255 // Max brightness level
|
||||
#define RGBLIGHT_SLEEP // RGB will switch off when host goes to sleep
|
||||
|
||||
#define RGBLIGHT_EFFECT_BREATHING // Enable all additional RGB animation modes
|
||||
#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
|
||||
#define RGBLIGHT_EFFECT_TWINKLE
|
||||
|
||||
#define OLED_TIMEOUT 20000 // Turns off OLED after said amount of milliseconds
|
||||
#define OLED_BRIGHTNESS 128
|
||||
#define OLED_DISPLAY_128X64
|
||||
|
||||
|
||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
||||
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||
*/
|
||||
//#define GRAVE_ESC_CTRL_OVERRIDE
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
||||
/* Bootmagic Lite key configuration */
|
||||
#define BOOTMAGIC_LITE_ROW 1
|
||||
#define BOOTMAGIC_LITE_COLUMN 0
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
"keyboard_name": "TutelPad",
|
||||
"url": "",
|
||||
"maintainer": "ItsFiremanSam",
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label": "k03", "x": 0, "y": 0},
|
||||
{"label": "k02", "x": 1, "y": 0},
|
||||
{"label": "k01", "x": 2, "y": 0},
|
||||
{"label": "k00", "x": 3, "y": 0},
|
||||
|
||||
{"label": "k13", "x": 0, "y": 1},
|
||||
{"label": "k12", "x": 1, "y": 1},
|
||||
{"label": "k11", "x": 2, "y": 1},
|
||||
{"label": "k10", "x": 3, "y": 1}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
*
|
||||
* 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
|
||||
|
||||
// Defines names for use in layer keycodes and the keymap
|
||||
enum layer_names {
|
||||
_BASE
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/* Base */
|
||||
[_BASE] = LAYOUT(
|
||||
KC_1, KC_2, KC_3, KC_4,
|
||||
KC_5, KC_6, KC_7, KC_8
|
||||
)
|
||||
};
|
|
@ -0,0 +1,39 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
*
|
||||
* 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] = {
|
||||
/* Base */
|
||||
[0] = LAYOUT(
|
||||
KC_1, KC_2, KC_3, KC_4,
|
||||
KC_5, LT(1, KC_6), LT(1, KC_7), LT(1, KC_8)
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______
|
||||
),
|
||||
|
||||
[2] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______
|
||||
),
|
||||
|
||||
[3] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______
|
||||
),
|
||||
};
|
|
@ -0,0 +1 @@
|
|||
VIA_ENABLE = yes
|
|
@ -0,0 +1,19 @@
|
|||
# TutelPad macropad
|
||||
|
||||
* Keyboard Maintainer: [ItsFiremanSam](https://github.com/ItsFiremanSam)
|
||||
* Hardware Supported: [TutelPad GitHub](https://github.com/0xCB-dev/0xCB-TutelPad)
|
||||
* Hardware Availability: [KeebSupply](https://keeb.supply/)
|
||||
|
||||
## Bootloader
|
||||
|
||||
You can enter the bootloader by pressing the reset switch on the side while the keyboard is plugged in. You can also short the GND and RST pads on the controller.
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 0xcb/tutelpad:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 0xcb/tutelpad:default:flash
|
||||
|
||||
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).
|
|
@ -0,0 +1,21 @@
|
|||
## MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = caterina
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = no # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
|
||||
OLED_ENABLE = yes
|
||||
OLED_DRIVER = SSD1306
|
|
@ -0,0 +1,106 @@
|
|||
/* Copyright 2022 ItsFiremanSam
|
||||
*
|
||||
* 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 "tutelpad.h"
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||
return OLED_ROTATION_180;
|
||||
}
|
||||
|
||||
static void render_logo(void) {
|
||||
static const char PROGMEM tutel[] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
||||
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0,
|
||||
0xf0, 0xf0, 0xf0, 0xf0, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
};
|
||||
|
||||
oled_write_raw_P(tutel, sizeof(tutel));
|
||||
}
|
||||
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
render_logo();
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 ItsFiremanSam
|
||||
*
|
||||
* 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
|
||||
|
@ -17,15 +17,19 @@
|
|||
#pragma once
|
||||
|
||||
#include "quantum.h"
|
||||
#define LAYOUT( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, \
|
||||
K12, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, \
|
||||
K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, \
|
||||
K36, K37, K38, K39, K40, K41, K42, K43, K44, K45 \
|
||||
) { \
|
||||
{K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11}, \
|
||||
{K12, KC_NO, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23}, \
|
||||
{K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35}, \
|
||||
{K36, K37, K38, K39,KC_NO,K40, K41,KC_NO,K42, K43, K44, K45} \
|
||||
}
|
||||
|
||||
/* This is 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( \
|
||||
k00, k01, k02, k03, \
|
||||
k10, k11, k12, k13 \
|
||||
) { \
|
||||
{ k00, k01, k02, k03 }, \
|
||||
{ k10, k11, k12, k13 } \
|
||||
}
|
|
@ -1,9 +1,13 @@
|
|||
{
|
||||
"keyboard_name": "Nayeon",
|
||||
"url": "",
|
||||
"maintainer": "Ramon Imbao",
|
||||
"maintainer": "ramonimbao",
|
||||
"layout_aliases": {
|
||||
"LAYOUT_ansi": "LAYOUT_tkl_f13_ansi_tsangan",
|
||||
"LAYOUT_iso": "LAYOUT_tkl_f13_iso_tsangan"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ansi": {
|
||||
"LAYOUT_tkl_f13_ansi_tsangan": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
{"x":1.25, "y":0},
|
||||
|
@ -99,7 +103,105 @@
|
|||
{"x":17.25, "y":5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
{"x":1.25, "y":0},
|
||||
{"x":2.25, "y":0},
|
||||
{"x":3.25, "y":0},
|
||||
{"x":4.25, "y":0},
|
||||
{"x":5.5, "y":0},
|
||||
{"x":6.5, "y":0},
|
||||
{"x":7.5, "y":0},
|
||||
{"x":8.5, "y":0},
|
||||
{"x":9.75, "y":0},
|
||||
{"x":10.75, "y":0},
|
||||
{"x":11.75, "y":0},
|
||||
{"x":12.75, "y":0},
|
||||
{"x":14, "y":0},
|
||||
{"x":15.25, "y":0},
|
||||
{"x":16.25, "y":0},
|
||||
{"x":17.25, "y":0},
|
||||
|
||||
{"x":0, "y":1.25},
|
||||
{"x":1, "y":1.25},
|
||||
{"x":2, "y":1.25},
|
||||
{"x":3, "y":1.25},
|
||||
{"x":4, "y":1.25},
|
||||
{"x":5, "y":1.25},
|
||||
{"x":6, "y":1.25},
|
||||
{"x":7, "y":1.25},
|
||||
{"x":8, "y":1.25},
|
||||
{"x":9, "y":1.25},
|
||||
{"x":10, "y":1.25},
|
||||
{"x":11, "y":1.25},
|
||||
{"x":12, "y":1.25},
|
||||
{"x":13, "y":1.25},
|
||||
{"x":14, "y":1.25},
|
||||
{"x":15.25, "y":1.25},
|
||||
{"x":16.25, "y":1.25},
|
||||
{"x":17.25, "y":1.25},
|
||||
|
||||
{"x":0, "y":2.25, "w":1.5},
|
||||
{"x":1.5, "y":2.25},
|
||||
{"x":2.5, "y":2.25},
|
||||
{"x":3.5, "y":2.25},
|
||||
{"x":4.5, "y":2.25},
|
||||
{"x":5.5, "y":2.25},
|
||||
{"x":6.5, "y":2.25},
|
||||
{"x":7.5, "y":2.25},
|
||||
{"x":8.5, "y":2.25},
|
||||
{"x":9.5, "y":2.25},
|
||||
{"x":10.5, "y":2.25},
|
||||
{"x":11.5, "y":2.25},
|
||||
{"x":12.5, "y":2.25},
|
||||
{"x":13.5, "y":2.25, "w":1.5},
|
||||
{"x":15.25, "y":2.25},
|
||||
{"x":16.25, "y":2.25},
|
||||
{"x":17.25, "y":2.25},
|
||||
|
||||
{"x":0, "y":3.25, "w":1.75},
|
||||
{"x":1.75, "y":3.25},
|
||||
{"x":2.75, "y":3.25},
|
||||
{"x":3.75, "y":3.25},
|
||||
{"x":4.75, "y":3.25},
|
||||
{"x":5.75, "y":3.25},
|
||||
{"x":6.75, "y":3.25},
|
||||
{"x":7.75, "y":3.25},
|
||||
{"x":8.75, "y":3.25},
|
||||
{"x":9.75, "y":3.25},
|
||||
{"x":10.75, "y":3.25},
|
||||
{"x":11.75, "y":3.25},
|
||||
{"x":12.75, "y":3.25, "w":2.25},
|
||||
|
||||
{"x":0, "y":4.25, "w":2.25},
|
||||
{"x":2.25, "y":4.25},
|
||||
{"x":3.25, "y":4.25},
|
||||
{"x":4.25, "y":4.25},
|
||||
{"x":5.25, "y":4.25},
|
||||
{"x":6.25, "y":4.25},
|
||||
{"x":7.25, "y":4.25},
|
||||
{"x":8.25, "y":4.25},
|
||||
{"x":9.25, "y":4.25},
|
||||
{"x":10.25, "y":4.25},
|
||||
{"x":11.25, "y":4.25},
|
||||
{"x":12.25, "y":4.25, "w":1.75},
|
||||
{"x":14, "y":4.25},
|
||||
{"x":16.25, "y":4.25},
|
||||
|
||||
{"x":0, "y":5.25, "w":1.5},
|
||||
{"x":1.5, "y":5.25},
|
||||
{"x":2.5, "y":5.25, "w":1.5},
|
||||
{"x":4, "y":5.25, "w":7},
|
||||
{"x":11, "y":5.25, "w":1.5},
|
||||
{"x":12.5, "y":5.25},
|
||||
{"x":13.5, "y":5.25, "w":1.5},
|
||||
{"x":15.25, "y":5.25},
|
||||
{"x":16.25, "y":5.25},
|
||||
{"x":17.25, "y":5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_f13_iso_tsangan": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
{"x":1.25, "y":0},
|
||||
|
@ -196,6 +298,105 @@
|
|||
{"x":17.25, "y":5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
{"x":1.25, "y":0},
|
||||
{"x":2.25, "y":0},
|
||||
{"x":3.25, "y":0},
|
||||
{"x":4.25, "y":0},
|
||||
{"x":5.5, "y":0},
|
||||
{"x":6.5, "y":0},
|
||||
{"x":7.5, "y":0},
|
||||
{"x":8.5, "y":0},
|
||||
{"x":9.75, "y":0},
|
||||
{"x":10.75, "y":0},
|
||||
{"x":11.75, "y":0},
|
||||
{"x":12.75, "y":0},
|
||||
{"x":14, "y":0},
|
||||
{"x":15.25, "y":0},
|
||||
{"x":16.25, "y":0},
|
||||
{"x":17.25, "y":0},
|
||||
|
||||
{"x":0, "y":1.25},
|
||||
{"x":1, "y":1.25},
|
||||
{"x":2, "y":1.25},
|
||||
{"x":3, "y":1.25},
|
||||
{"x":4, "y":1.25},
|
||||
{"x":5, "y":1.25},
|
||||
{"x":6, "y":1.25},
|
||||
{"x":7, "y":1.25},
|
||||
{"x":8, "y":1.25},
|
||||
{"x":9, "y":1.25},
|
||||
{"x":10, "y":1.25},
|
||||
{"x":11, "y":1.25},
|
||||
{"x":12, "y":1.25},
|
||||
{"x":13, "y":1.25},
|
||||
{"x":14, "y":1.25},
|
||||
{"x":15.25, "y":1.25},
|
||||
{"x":16.25, "y":1.25},
|
||||
{"x":17.25, "y":1.25},
|
||||
|
||||
{"x":0, "y":2.25, "w":1.5},
|
||||
{"x":1.5, "y":2.25},
|
||||
{"x":2.5, "y":2.25},
|
||||
{"x":3.5, "y":2.25},
|
||||
{"x":4.5, "y":2.25},
|
||||
{"x":5.5, "y":2.25},
|
||||
{"x":6.5, "y":2.25},
|
||||
{"x":7.5, "y":2.25},
|
||||
{"x":8.5, "y":2.25},
|
||||
{"x":9.5, "y":2.25},
|
||||
{"x":10.5, "y":2.25},
|
||||
{"x":11.5, "y":2.25},
|
||||
{"x":12.5, "y":2.25},
|
||||
{"x":15.25, "y":2.25},
|
||||
{"x":16.25, "y":2.25},
|
||||
{"x":17.25, "y":2.25},
|
||||
|
||||
{"x":0, "y":3.25, "w":1.75},
|
||||
{"x":1.75, "y":3.25},
|
||||
{"x":2.75, "y":3.25},
|
||||
{"x":3.75, "y":3.25},
|
||||
{"x":4.75, "y":3.25},
|
||||
{"x":5.75, "y":3.25},
|
||||
{"x":6.75, "y":3.25},
|
||||
{"x":7.75, "y":3.25},
|
||||
{"x":8.75, "y":3.25},
|
||||
{"x":9.75, "y":3.25},
|
||||
{"x":10.75, "y":3.25},
|
||||
{"x":11.75, "y":3.25},
|
||||
{"x":12.75, "y":3.25},
|
||||
{"x":13.75, "y":2.25, "w":1.25, "h":2},
|
||||
|
||||
{"x":0, "y":4.25, "w":1.25},
|
||||
{"x":1.25, "y":4.25},
|
||||
{"x":2.25, "y":4.25},
|
||||
{"x":3.25, "y":4.25},
|
||||
{"x":4.25, "y":4.25},
|
||||
{"x":5.25, "y":4.25},
|
||||
{"x":6.25, "y":4.25},
|
||||
{"x":7.25, "y":4.25},
|
||||
{"x":8.25, "y":4.25},
|
||||
{"x":9.25, "y":4.25},
|
||||
{"x":10.25, "y":4.25},
|
||||
{"x":11.25, "y":4.25},
|
||||
{"x":12.25, "y":4.25, "w":1.75},
|
||||
{"x":14, "y":4.25},
|
||||
{"x":16.25, "y":4.25},
|
||||
|
||||
{"x":0, "y":5.25, "w":1.5},
|
||||
{"x":1.5, "y":5.25},
|
||||
{"x":2.5, "y":5.25, "w":1.5},
|
||||
{"x":4, "y":5.25, "w":7},
|
||||
{"x":11, "y":5.25, "w":1.5},
|
||||
{"x":12.5, "y":5.25},
|
||||
{"x":13.5, "y":5.25, "w":1.5},
|
||||
{"x":15.25, "y":5.25},
|
||||
{"x":16.25, "y":5.25},
|
||||
{"x":17.25, "y":5.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"x":0, "y":0},
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ansi(
|
||||
[0] = LAYOUT_tkl_f13_ansi_tsangan(
|
||||
KC_ESC, 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_F13, KC_PSCR, KC_SLCK, KC_PAUS,
|
||||
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_INS, KC_HOME, KC_PGUP,
|
||||
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_DEL, KC_END, KC_PGDN,
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_iso(
|
||||
[0] = LAYOUT_tkl_f13_iso_tsangan(
|
||||
KC_ESC, 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_F13, KC_PSCR, KC_SLCK, KC_PAUS,
|
||||
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_INS, KC_HOME, KC_PGUP,
|
||||
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_DEL, KC_END, KC_PGDN,
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
// Full backspace
|
||||
// Full right shift
|
||||
// Full left shift
|
||||
#define LAYOUT_ansi( \
|
||||
#define LAYOUT_tkl_f13_ansi_tsangan( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g, \
|
||||
|
@ -40,11 +40,31 @@
|
|||
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, ___, k5b, k5c, k5d, k5e, k5f, k5g }, \
|
||||
}
|
||||
|
||||
// ANSI layout
|
||||
// Split backspace
|
||||
// Split right shift
|
||||
// Full left shift
|
||||
#define LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k3d, k1e, k1f, k1g, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
|
||||
k40, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, k4f, \
|
||||
k50, k51, k52, k57, k5b, k5c, k5d, k5e, k5f, k5g \
|
||||
) { \
|
||||
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, ___, ___, ___ }, \
|
||||
{ k40, ___, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, ___, k4f, ___ }, \
|
||||
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, ___, k5b, k5c, k5d, k5e, k5f, k5g }, \
|
||||
}
|
||||
|
||||
// ISO layout
|
||||
// Full backspace
|
||||
// Full right shift
|
||||
// Split left shift
|
||||
#define LAYOUT_iso( \
|
||||
#define LAYOUT_tkl_f13_iso_tsangan( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, k2f, k2g, \
|
||||
|
@ -60,6 +80,26 @@
|
|||
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, ___, k5b, k5c, k5d, k5e, k5f, k5g }, \
|
||||
}
|
||||
|
||||
// ISO layout
|
||||
// Split backspace
|
||||
// Split right shift
|
||||
// Split left shift
|
||||
#define LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift( \
|
||||
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
|
||||
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k3d, k1e, k1f, k1g, \
|
||||
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, k2f, k2g, \
|
||||
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k2d, \
|
||||
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, k4f, \
|
||||
k50, k51, k52, k57, k5b, k5c, k5d, k5e, k5f, k5g \
|
||||
) { \
|
||||
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
|
||||
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
|
||||
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
|
||||
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, ___, ___, ___ }, \
|
||||
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, ___, k4f, ___ }, \
|
||||
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, ___, k5b, k5c, k5d, k5e, k5f, k5g }, \
|
||||
}
|
||||
|
||||
// Layout for VIA
|
||||
// Split backspace
|
||||
// Split left shift
|
||||
|
|
|
@ -16,3 +16,5 @@ NKRO_ENABLE = no # Enable N-Key Rollover
|
|||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
|
||||
LAYOUTS = tkl_f13_ansi_tsangan tkl_f13_ansi_tsangan_split_bs_rshift tkl_f13_iso_tsangan tkl_f13_iso_tsangan_split_bs_rshift
|
||||
|
|
|
@ -66,10 +66,10 @@
|
|||
{ "label": "K3B (D6,D7)", "x": 11.25, "y": 3 },
|
||||
{ "label": "K3C (D6,D5)", "x": 12.25, "y": 3, "w": 1.75 },
|
||||
{ "label": "K3D (D6,D3)", "x": 14, "y": 3 },
|
||||
{ "label": "K40 (D4,F7)", "x": 0, "y": 4, "w": 1.25 },
|
||||
{ "label": "K41 (D4,F6)", "x": 1.25, "y": 4, "w": 1.25 },
|
||||
{ "label": "K42 (D4,F5)", "x": 2.5, "y": 4, "w": 1.25 },
|
||||
{ "label": "K46 (D4,C7)", "x": 3.75, "y": 4, "w": 7.25 },
|
||||
{ "label": "K40 (D4,F7)", "x": 0, "y": 4, "w": 1.5 },
|
||||
{ "label": "K41 (D4,F6)", "x": 1.5, "y": 4},
|
||||
{ "label": "K42 (D4,F5)", "x": 2.5, "y": 4, "w": 1.5 },
|
||||
{ "label": "K46 (D4,C7)", "x": 4, "y": 4, "w": 7},
|
||||
{ "label": "K4B (D4,D7)", "x": 11, "y": 4, "w": 1.5 },
|
||||
{ "label": "K4C (D4,D5)", "x": 13, "y": 4 },
|
||||
{ "label": "K4D (D4,D3)", "x": 14, "y": 4 },
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
{
|
||||
"manufacturer": "Balloondog",
|
||||
"keyboard_name": "TR90",
|
||||
"maintainer": "balloondogcaps",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F5", "F6", "D5"],
|
||||
"rows": ["F0", "F1", "F4"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0001",
|
||||
"vid": "0x4243"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2021 Balloondog
|
||||
*
|
||||
* 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
|
||||
|
@ -13,26 +13,19 @@
|
|||
* 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
|
||||
|
||||
#include "beiwagon.h"
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
led_config_t g_led_config = { {
|
||||
{7,8,9},
|
||||
{10,11,12},
|
||||
{13,14,15},
|
||||
{16,17,18}
|
||||
}, {
|
||||
{2, 0}, {1, 0}, {0, 0},
|
||||
{2, 1}, {1, 1}, {0, 1},
|
||||
{2, 2}, {1, 2}, {0, 2},
|
||||
{2, 3}, {1, 3}, {0, 3},
|
||||
}, {
|
||||
2, 2, 2, 2, 2, 2,
|
||||
1, 1, 1,
|
||||
1, 4, 1,
|
||||
1, 4, 1,
|
||||
1, 1, 1
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT( /* Base */
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_4, KC_5, KC_6,
|
||||
KC_VOLD, KC_VOLU, MO(1)
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
KC_7, KC_8, KC_9,
|
||||
KC_0, KC_MINUS, KC_PLUS,
|
||||
RESET, KC_AT , KC_TRNS
|
||||
),
|
||||
};
|
||||
|
||||
} };
|
||||
#endif
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
/* Copyright 2021 Balloondog
|
||||
*
|
||||
* 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( /* Base */
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_4, KC_5, KC_6,
|
||||
KC_VOLD, KC_VOLU, MO(1)
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
KC_7, KC_8, KC_9,
|
||||
KC_0, KC_MINUS, KC_PLUS,
|
||||
RESET, KC_AT , KC_TRNS
|
||||
),
|
||||
[2] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[3] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
# balloondogcaps/tr90
|
||||
|
||||
![balloondogcaps/tr90](https://i.imgur.com/GCAZotn.jpeg)
|
||||
|
||||
A 3x3 Pro Macropad with programmer pins
|
||||
|
||||
* Keyboard Maintainer: [Balloondog](https://instagram.com/balloondogcaps)
|
||||
* Hardware Supported: Balloondog Play Rough series case(s)
|
||||
* Hardware Availability: [Balloondog](http://store.balloondog.nl)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make balloondogcaps/tr90:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make balloondogcaps/tr90:default:flash
|
||||
|
||||
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).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 2 ways:
|
||||
* **Physical reset button**: Briefly press the button on the back of the PCB
|
||||
* **Keycode in layout**: Hold the bottom right key and then press the bottom left key to enter the bootloader
|
|
@ -0,0 +1,41 @@
|
|||
{
|
||||
"manufacturer": "Balloondog",
|
||||
"keyboard_name": "TR90PM",
|
||||
"maintainer": "balloondogcaps",
|
||||
"bootloader": "caterina",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["D1", "D0", "D4"],
|
||||
"rows": ["C6", "D7", "E6"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0002",
|
||||
"vid": "0x4243"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
/* Copyright 2021 Balloondog
|
||||
*
|
||||
* 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( /* Base */
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_4, KC_5, KC_6,
|
||||
KC_VOLD, KC_VOLU, MO(1)
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
KC_7, KC_8, KC_9,
|
||||
KC_0, KC_MINUS, KC_PLUS,
|
||||
RESET, KC_AT , KC_TRNS
|
||||
),
|
||||
};
|
||||
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
/* Copyright 2021 Balloondog
|
||||
*
|
||||
* 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( /* Base */
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_4, KC_5, KC_6,
|
||||
KC_VOLD, KC_VOLU, MO(1)
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
KC_7, KC_8, KC_9,
|
||||
KC_0, KC_MINUS, KC_PLUS,
|
||||
RESET, KC_AT , KC_TRNS
|
||||
),
|
||||
[2] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
[3] = LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
# balloondogcaps/tr90pm
|
||||
|
||||
![balloondogcaps/tr90pm](https://i.imgur.com/AO5anzZh.png)
|
||||
|
||||
A 3x3 Pro Micro enabled Macropad
|
||||
|
||||
* Keyboard Maintainer: [Balloondog](https://instagram.com/balloondogcaps)
|
||||
* Hardware Supported: Balloondog Play Rough series case(s)
|
||||
* Hardware Availability: [Balloondog](http://store.balloondog.nl)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make balloondogcaps/tr90pm:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make balloondogcaps/tr90pm:default:flash
|
||||
|
||||
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).
|
||||
|
||||
## Bootloader
|
||||
|
||||
Enter the bootloader in 2 ways:
|
||||
* **Physical reset button**: Briefly press the button on the back of the PCB. Some Pro Micro's require a double press.
|
||||
* **Keycode in layout**: Hold the bottom right key and then press the bottom left key to enter the bootloader
|
|
@ -0,0 +1 @@
|
|||
# This file intentionally left blank
|
|
@ -1 +0,0 @@
|
|||
#include "3x4.h"
|
|
@ -1,12 +0,0 @@
|
|||
#pragma once
|
||||
|
||||
#include "quantum.h"
|
||||
#define LAYOUT( \
|
||||
K00, K01, K02, K03, \
|
||||
K10, K11, K12, K13, \
|
||||
K20, K21, K22, K23 \
|
||||
) { \
|
||||
{K00, K01, K02, K03}, \
|
||||
{K10, K11, K12, K13}, \
|
||||
{K20, K21, K22, K23} \
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0x4273 // "Bs" - Boardsource
|
||||
#define PRODUCT_ID 0x0304 // 3x4
|
||||
#define DEVICE_VER 0x0000
|
||||
#define MANUFACTURER Boardsource
|
||||
#define PRODUCT 3x4
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 3
|
||||
#define MATRIX_COLS 4
|
||||
|
||||
#define MATRIX_ROW_PINS {F7, F6, F5}
|
||||
#define MATRIX_COL_PINS {B6, B2, B3, B1}
|
||||
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#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
|
||||
|
||||
/* 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
|
||||
|
||||
/*
|
||||
* 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
|
|
@ -1,27 +1,40 @@
|
|||
{
|
||||
"keyboard_name": "boardsource 4x3",
|
||||
"url": "https://boardsource.xyz",
|
||||
"maintainer": "boardsource",
|
||||
"layouts": {
|
||||
|
||||
"LAYOUT": {
|
||||
|
||||
"layout": [
|
||||
{ "label": "K01", "x": 0, "y": 0 },
|
||||
{ "label": "K02", "x": 1, "y": 0 },
|
||||
{ "label": "K03", "x": 2, "y": 0 },
|
||||
{ "label": "K04", "x": 3, "y": 0 },
|
||||
|
||||
{ "label": "K05", "x": 0, "y": 1 },
|
||||
{ "label": "K06", "x": 1, "y": 1 },
|
||||
{ "label": "K07", "x": 2, "y": 1 },
|
||||
{ "label": "K08", "x": 3, "y": 1 },
|
||||
|
||||
{ "label": "K09", "x": 0, "y": 2 },
|
||||
{ "label": "K10", "x": 1, "y": 2 },
|
||||
{ "label": "K11", "x": 2, "y": 2 },
|
||||
{ "label": "K12", "x": 3, "y": 2 }
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "3x4",
|
||||
"maintainer": "waffle87",
|
||||
"development_board": "promicro",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B6", "B2", "B3", "B1"],
|
||||
"rows": ["F7", "F6", "F5"]
|
||||
},
|
||||
"url": "https://boardsource.xyz/store/5ecc2008eee64242946c98c1",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0304",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 3, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,26 +1,16 @@
|
|||
// Copyright 2022 @waffle87
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
_MAIN,
|
||||
_RAISE,
|
||||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT(
|
||||
KC_0, KC_1, KC_4, KC_7,
|
||||
KC_ENT, KC_2, KC_5, KC_8,
|
||||
RAISE, KC_3, KC_6, KC_9
|
||||
[0] = LAYOUT(
|
||||
KC_0, KC_1, KC_4, KC_7,
|
||||
KC_ENT, KC_2, KC_5, KC_8,
|
||||
MO(1), KC_3, KC_6, KC_9
|
||||
),
|
||||
[_RAISE] = LAYOUT(
|
||||
[1] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, QK_BOOT
|
||||
)
|
||||
|
||||
};
|
||||
|
|
|
@ -1,25 +1,26 @@
|
|||
// Copyright 2022 @gwillad
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
LAYOUT(
|
||||
KC_0, KC_1, KC_4, KC_7,
|
||||
KC_ENT, KC_2, KC_5, KC_8,
|
||||
MO(1), KC_3, KC_6, KC_9
|
||||
),
|
||||
LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT
|
||||
),
|
||||
LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
LAYOUT(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
[0] = LAYOUT(
|
||||
KC_0, KC_1, KC_4, KC_7,
|
||||
KC_ENT, KC_2, KC_5, KC_8,
|
||||
MO(1), KC_3, KC_6, KC_9
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, QK_BOOT
|
||||
),
|
||||
[2] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______
|
||||
),
|
||||
[3] = LAYOUT(
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______,
|
||||
_______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
# The via keymap for boardsource 3x4 macropad
|
||||
|
||||
This folder contains the [VIA](https://caniusevia.com/) configuration for the boardsource 3x4 macropad
|
||||
|
||||
Maintained by: [gwillad](https://github.com/gwillad)
|
|
@ -1,17 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = caterina
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = yes # Console for debug
|
||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
# This file intentionally left blank
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
#include "4x12.h"
|
|
@ -1,14 +0,0 @@
|
|||
#pragma once
|
||||
#include "quantum.h"
|
||||
|
||||
#define LAYOUT_ortho_4x12( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, \
|
||||
K12, K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, \
|
||||
K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, \
|
||||
K36, K37, K38, K39, K40, K41, K42, K43, K44, K45, K46, K47 \
|
||||
) { \
|
||||
{K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11}, \
|
||||
{K12, K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23}, \
|
||||
{K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35}, \
|
||||
{K36, K37, K38, K39, K40, K41, K42, K43, K44, K45, K46, K47} \
|
||||
}
|
|
@ -1,68 +0,0 @@
|
|||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0x4273 // "Bs" - Boardsource
|
||||
#define PRODUCT_ID 0x0412
|
||||
#define DEVICE_VER 0x0000
|
||||
#define MANUFACTURER Boardsource
|
||||
#define PRODUCT 4x12
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 4
|
||||
#define MATRIX_COLS 12
|
||||
#define MATRIX_ROW_PINS { D2, D3, D1, D0}
|
||||
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, B5, B4, E6, D7 }
|
||||
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not 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
|
||||
|
||||
/* 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
|
||||
|
||||
/*
|
||||
* 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
|
|
@ -1,62 +1,79 @@
|
|||
{
|
||||
"keyboard_name": "Boardsource 4x12",
|
||||
"url": "https://boardsource.xyz",
|
||||
"maintainer": "Boardsource",
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{ "label": "K01", "x": 0, "y": 0 },
|
||||
{ "label": "K02", "x": 1, "y": 0 },
|
||||
{ "label": "K03", "x": 2, "y": 0 },
|
||||
{ "label": "K04", "x": 3, "y": 0 },
|
||||
{ "label": "K05", "x": 4, "y": 0 },
|
||||
{ "label": "K06", "x": 5, "y": 0 },
|
||||
{ "label": "K07", "x": 6, "y": 0 },
|
||||
{ "label": "K08", "x": 7, "y": 0 },
|
||||
{ "label": "K09", "x": 8, "y": 0 },
|
||||
{ "label": "K010", "x": 9, "y": 0 },
|
||||
{ "label": "K011", "x": 10, "y": 0 },
|
||||
{ "label": "K012", "x": 11, "y": 0 },
|
||||
|
||||
{ "label": "K11", "x": 0, "y": 1 },
|
||||
{ "label": "K12", "x": 1, "y": 1 },
|
||||
{ "label": "K13", "x": 2, "y": 1 },
|
||||
{ "label": "K14", "x": 3, "y": 1 },
|
||||
{ "label": "K15", "x": 4, "y": 1 },
|
||||
{ "label": "K16", "x": 5, "y": 1 },
|
||||
{ "label": "K17", "x": 6, "y": 1 },
|
||||
{ "label": "K18", "x": 7, "y": 1 },
|
||||
{ "label": "K19", "x": 8, "y": 1 },
|
||||
{ "label": "K110", "x": 9, "y": 1 },
|
||||
{ "label": "K111", "x": 10, "y": 1 },
|
||||
{ "label": "K112", "x": 11, "y": 1 },
|
||||
|
||||
{ "label": "K21", "x": 0, "y": 2 },
|
||||
{ "label": "K22", "x": 1, "y": 2 },
|
||||
{ "label": "K23", "x": 2, "y": 2 },
|
||||
{ "label": "K24", "x": 3, "y": 2 },
|
||||
{ "label": "K25", "x": 4, "y": 2 },
|
||||
{ "label": "K26", "x": 5, "y": 2 },
|
||||
{ "label": "K27", "x": 6, "y": 2 },
|
||||
{ "label": "K28", "x": 7, "y": 2 },
|
||||
{ "label": "K29", "x": 8, "y": 2 },
|
||||
{ "label": "K210", "x": 9, "y": 2 },
|
||||
{ "label": "K211", "x": 10, "y": 2 },
|
||||
{ "label": "K212", "x": 11, "y": 2 },
|
||||
|
||||
{ "label": "K31", "x": 0, "y": 3 },
|
||||
{ "label": "K32", "x": 1, "y": 3 },
|
||||
{ "label": "K33", "x": 2, "y": 3 },
|
||||
{ "label": "K34", "x": 3, "y": 3 },
|
||||
{ "label": "K35", "x": 4, "y": 3 },
|
||||
{ "label": "K36", "x": 5, "y": 3 },
|
||||
{ "label": "K37", "x": 6, "y": 3 },
|
||||
{ "label": "K38", "x": 7, "y": 3 },
|
||||
{ "label": "K39", "x": 8, "y": 3 },
|
||||
{ "label": "K310", "x": 9, "y": 3 },
|
||||
{ "label": "K311", "x": 10, "y": 3 },
|
||||
{ "label": "K312", "x": 11, "y": 3 }
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "4x12",
|
||||
"maintainer": "waffle87",
|
||||
"development_board": "promicro",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7"],
|
||||
"rows": ["D2", "D3", "D1", "D0"]
|
||||
},
|
||||
"url": "https://boardsource.xyz/store/5ecb78d286879c9a0c22dafd",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0412",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"community_layouts": [
|
||||
"ortho_4x12"
|
||||
],
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 3, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 4, "y": 1 },
|
||||
{ "matrix": [1, 5], "x": 5, "y": 1 },
|
||||
{ "matrix": [1, 6], "x": 6, "y": 1 },
|
||||
{ "matrix": [1, 7], "x": 7, "y": 1 },
|
||||
{ "matrix": [1, 8], "x": 8, "y": 1 },
|
||||
{ "matrix": [1, 9], "x": 9, "y": 1 },
|
||||
{ "matrix": [1, 10], "x": 10, "y": 1 },
|
||||
{ "matrix": [1, 11], "x": 11, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 4, "y": 2 },
|
||||
{ "matrix": [2, 5], "x": 5, "y": 2 },
|
||||
{ "matrix": [2, 6], "x": 6, "y": 2 },
|
||||
{ "matrix": [2, 7], "x": 7, "y": 2 },
|
||||
{ "matrix": [2, 8], "x": 8, "y": 2 },
|
||||
{ "matrix": [2, 9], "x": 9, "y": 2 },
|
||||
{ "matrix": [2, 10], "x": 10, "y": 2 },
|
||||
{ "matrix": [2, 11], "x": 11, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 0, "y": 3 },
|
||||
{ "matrix": [3, 1], "x": 1, "y": 3 },
|
||||
{ "matrix": [3, 2], "x": 2, "y": 3 },
|
||||
{ "matrix": [3, 3], "x": 3, "y": 3 },
|
||||
{ "matrix": [3, 4], "x": 4, "y": 3 },
|
||||
{ "matrix": [3, 5], "x": 5, "y": 3 },
|
||||
{ "matrix": [3, 6], "x": 6, "y": 3 },
|
||||
{ "matrix": [3, 7], "x": 7, "y": 3 },
|
||||
{ "matrix": [3, 8], "x": 8, "y": 3 },
|
||||
{ "matrix": [3, 9], "x": 9, "y": 3 },
|
||||
{ "matrix": [3, 10], "x": 10, "y": 3 },
|
||||
{ "matrix": [3, 11], "x": 11, "y": 3 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
// Copyright 2022 @waffle87
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
|
@ -6,31 +8,26 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT_ortho_4x12(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
|
||||
KC_PIPE, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_4x12(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_4x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
)
|
||||
|
||||
};
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
// Copyright 2022 @gwillad
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
|
@ -6,31 +8,32 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT_ortho_4x12(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
|
||||
KC_PIPE, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_4x12(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_4x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
[4] = LAYOUT_ortho_4x12(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
# The via keymap for boardsource 4x12 ortholinear keybaoard
|
||||
|
||||
This folder contains the [VIA](https://caniusevia.com/) configuration for the boardsource 4x12 ortholinear keybaoard
|
||||
|
||||
Maintained by: [gwillad](https://github.com/gwillad)
|
|
@ -1,24 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = caterina
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = yes # Console for debug
|
||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
|
||||
LAYOUTS = ortho_4x12
|
||||
|
||||
# Disable unsupported hardware
|
||||
RGBLIGHT_SUPPORTED = no
|
||||
AUDIO_SUPPORTED = no
|
||||
BACKLIGHT_SUPPORTED = no
|
||||
# This file intentionally left blank
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
#include "5x12.h"
|
|
@ -1,17 +0,0 @@
|
|||
#pragma once
|
||||
#include "quantum.h"
|
||||
|
||||
#define LAYOUT_ortho_5x12( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, \
|
||||
K12, K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, \
|
||||
K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35, \
|
||||
K36, K37, K38, K39, K40, K41, K42, K43, K44, K45, K46, K47, \
|
||||
K48, K49, K50, K51, K52, K53, K54, K55, K56, K57, K58, K59 \
|
||||
) { \
|
||||
{K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11}, \
|
||||
{K12, K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23}, \
|
||||
{K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, K35}, \
|
||||
{K36, K37, K38, K39, K40, K41, K42, K43, K44, K45, K46, K47}, \
|
||||
{K48, K49, K50, K51, K52, K53, K54, K55, K56, K57, K58, K59} \
|
||||
}
|
||||
|
|
@ -1,75 +1,91 @@
|
|||
{
|
||||
"keyboard_name": "boardsource 5x12",
|
||||
"url": "https://boardsource.xyz",
|
||||
"maintainer": "boardsource",
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_5x12": {
|
||||
"layout": [
|
||||
{ "label": "K01", "x": 0, "y": 0 },
|
||||
{ "label": "K02", "x": 1, "y": 0 },
|
||||
{ "label": "K03", "x": 2, "y": 0 },
|
||||
{ "label": "K04", "x": 3, "y": 0 },
|
||||
{ "label": "K05", "x": 4, "y": 0 },
|
||||
{ "label": "K06", "x": 5, "y": 0 },
|
||||
{ "label": "K07", "x": 6, "y": 0 },
|
||||
{ "label": "K08", "x": 7, "y": 0 },
|
||||
{ "label": "K09", "x": 8, "y": 0 },
|
||||
{ "label": "K010", "x": 9, "y": 0 },
|
||||
{ "label": "K011", "x": 10, "y": 0 },
|
||||
{ "label": "K012", "x": 11, "y": 0 },
|
||||
|
||||
{ "label": "K11", "x": 0, "y": 1 },
|
||||
{ "label": "K12", "x": 1, "y": 1 },
|
||||
{ "label": "K13", "x": 2, "y": 1 },
|
||||
{ "label": "K14", "x": 3, "y": 1 },
|
||||
{ "label": "K15", "x": 4, "y": 1 },
|
||||
{ "label": "K16", "x": 5, "y": 1 },
|
||||
{ "label": "K17", "x": 6, "y": 1 },
|
||||
{ "label": "K18", "x": 7, "y": 1 },
|
||||
{ "label": "K19", "x": 8, "y": 1 },
|
||||
{ "label": "K110", "x": 9, "y": 1 },
|
||||
{ "label": "K111", "x": 10, "y": 1 },
|
||||
{ "label": "K112", "x": 11, "y": 1 },
|
||||
|
||||
{ "label": "K21", "x": 0, "y": 2 },
|
||||
{ "label": "K22", "x": 1, "y": 2 },
|
||||
{ "label": "K23", "x": 2, "y": 2 },
|
||||
{ "label": "K24", "x": 3, "y": 2 },
|
||||
{ "label": "K25", "x": 4, "y": 2 },
|
||||
{ "label": "K26", "x": 5, "y": 2 },
|
||||
{ "label": "K27", "x": 6, "y": 2 },
|
||||
{ "label": "K28", "x": 7, "y": 2 },
|
||||
{ "label": "K29", "x": 8, "y": 2 },
|
||||
{ "label": "K210", "x": 9, "y": 2 },
|
||||
{ "label": "K211", "x": 10, "y": 2 },
|
||||
{ "label": "K212", "x": 11, "y": 2 },
|
||||
|
||||
{ "label": "K31", "x": 0, "y": 3 },
|
||||
{ "label": "K32", "x": 1, "y": 3 },
|
||||
{ "label": "K33", "x": 2, "y": 3 },
|
||||
{ "label": "K34", "x": 3, "y": 3 },
|
||||
{ "label": "K35", "x": 4, "y": 3 },
|
||||
{ "label": "K36", "x": 5, "y": 3 },
|
||||
{ "label": "K37", "x": 6, "y": 3 },
|
||||
{ "label": "K38", "x": 7, "y": 3 },
|
||||
{ "label": "K39", "x": 8, "y": 3 },
|
||||
{ "label": "K310", "x": 9, "y": 3 },
|
||||
{ "label": "K311", "x": 10, "y": 3 },
|
||||
{ "label": "K312", "x": 11, "y": 3 },
|
||||
|
||||
{ "label": "K41", "x": 0, "y": 4 },
|
||||
{ "label": "K42", "x": 1, "y": 4 },
|
||||
{ "label": "K43", "x": 2, "y": 4 },
|
||||
{ "label": "K44", "x": 3, "y": 4 },
|
||||
{ "label": "K45", "x": 4, "y": 4 },
|
||||
{ "label": "K46", "x": 5, "y": 4 },
|
||||
{ "label": "K47", "x": 6, "y": 4 },
|
||||
{ "label": "K48", "x": 7, "y": 4 },
|
||||
{ "label": "K49", "x": 8, "y": 4 },
|
||||
{ "label": "K410", "x": 9, "y": 4 },
|
||||
{ "label": "K411", "x": 10, "y": 4 },
|
||||
{ "label": "K412", "x": 11, "y": 4 }
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "5x12",
|
||||
"maintainer": "waffle87",
|
||||
"development_board": "promicro",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7"],
|
||||
"rows": ["D2", "D3", "D1", "D0", "D4"]
|
||||
},
|
||||
"url": "https://boardsource.xyz/store/5ecb802c86879c9a0c22db61",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0512",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"community_layouts": [
|
||||
"ortho_5x12"
|
||||
],
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_5x12": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 3, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 4, "y": 1 },
|
||||
{ "matrix": [1, 5], "x": 5, "y": 1 },
|
||||
{ "matrix": [1, 6], "x": 6, "y": 1 },
|
||||
{ "matrix": [1, 7], "x": 7, "y": 1 },
|
||||
{ "matrix": [1, 8], "x": 8, "y": 1 },
|
||||
{ "matrix": [1, 9], "x": 9, "y": 1 },
|
||||
{ "matrix": [1, 10], "x": 10, "y": 1 },
|
||||
{ "matrix": [1, 11], "x": 11, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 4, "y": 2 },
|
||||
{ "matrix": [2, 5], "x": 5, "y": 2 },
|
||||
{ "matrix": [2, 6], "x": 6, "y": 2 },
|
||||
{ "matrix": [2, 7], "x": 7, "y": 2 },
|
||||
{ "matrix": [2, 8], "x": 8, "y": 2 },
|
||||
{ "matrix": [2, 9], "x": 9, "y": 2 },
|
||||
{ "matrix": [2, 10], "x": 10, "y": 2 },
|
||||
{ "matrix": [2, 11], "x": 11, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 0, "y": 3 },
|
||||
{ "matrix": [3, 1], "x": 1, "y": 3 },
|
||||
{ "matrix": [3, 2], "x": 2, "y": 3 },
|
||||
{ "matrix": [3, 3], "x": 3, "y": 3 },
|
||||
{ "matrix": [3, 4], "x": 4, "y": 3 },
|
||||
{ "matrix": [3, 5], "x": 5, "y": 3 },
|
||||
{ "matrix": [3, 6], "x": 6, "y": 3 },
|
||||
{ "matrix": [3, 7], "x": 7, "y": 3 },
|
||||
{ "matrix": [3, 8], "x": 8, "y": 3 },
|
||||
{ "matrix": [3, 9], "x": 9, "y": 3 },
|
||||
{ "matrix": [3, 10], "x": 10, "y": 3 },
|
||||
{ "matrix": [3, 11], "x": 11, "y": 3 },
|
||||
{ "matrix": [4, 0], "x": 0, "y": 4 },
|
||||
{ "matrix": [4, 1], "x": 1, "y": 4 },
|
||||
{ "matrix": [4, 2], "x": 2, "y": 4 },
|
||||
{ "matrix": [4, 3], "x": 3, "y": 4 },
|
||||
{ "matrix": [4, 4], "x": 4, "y": 4 },
|
||||
{ "matrix": [4, 5], "x": 5, "y": 4 },
|
||||
{ "matrix": [4, 6], "x": 6, "y": 4 },
|
||||
{ "matrix": [4, 7], "x": 7, "y": 4 },
|
||||
{ "matrix": [4, 8], "x": 8, "y": 4 },
|
||||
{ "matrix": [4, 9], "x": 9, "y": 4 },
|
||||
{ "matrix": [4, 10], "x": 10, "y": 4 },
|
||||
{ "matrix": [4, 11], "x": 11, "y": 4 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
// Copyright 2022 @waffle87
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
|
@ -6,34 +8,29 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT_ortho_5x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_PIPE, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_PIPE, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_5x12(
|
||||
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_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
|
||||
_______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______,
|
||||
KC_ENT, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
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_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
|
||||
_______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______,
|
||||
KC_ENT, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_5x12(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
)
|
||||
|
||||
};
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
// Copyright 2022 @gwillad
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
|
@ -6,42 +8,36 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT_ortho_5x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_PIPE, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
|
||||
KC_PIPE, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_5x12(
|
||||
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_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
|
||||
_______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______,
|
||||
KC_ENT, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
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_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL,
|
||||
_______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______,
|
||||
KC_ENT, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_5x12(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
|
||||
KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[3] = LAYOUT_ortho_5x12(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
# The via keymap for boardsource 5x12 ortholinear keyboard
|
||||
|
||||
This folder contains the [VIA](https://caniusevia.com/) configuration for the boardsource 5x12 ortholinear keyboard
|
||||
|
||||
Maintained by: [gwillad](https://github.com/gwillad)
|
|
@ -1,24 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = caterina
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = yes # Console for debug
|
||||
COMMAND_ENABLE = yes # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
|
||||
LAYOUTS = ortho_5x12
|
||||
|
||||
# Disable unsupported hardware
|
||||
RGBLIGHT_SUPPORTED = no
|
||||
AUDIO_SUPPORTED = no
|
||||
BACKLIGHT_SUPPORTED = no
|
||||
# This file intentionally left blank
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright 2020 Boardsource
|
||||
Copyright 2022 Boardsource
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -16,62 +16,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0x4273
|
||||
#define PRODUCT_ID 0x0066
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER Boardsource
|
||||
#define PRODUCT Beiwagon
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 4
|
||||
#define MATRIX_COLS 3
|
||||
|
||||
/*
|
||||
* Keyboard Matrix Assignments
|
||||
*
|
||||
* Change this to how you wired your keyboard
|
||||
* COLS: AVR pins used for columns, left to right
|
||||
* ROWS: AVR pins used for rows, top to bottom
|
||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
||||
*
|
||||
*/
|
||||
#define MATRIX_ROW_PINS {B0, B1, B2, B3}
|
||||
#define MATRIX_COL_PINS {B5,B6,B7}
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW, ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
//#define BACKLIGHT_PIN B7
|
||||
//#define BACKLIGHT_LEVELS 3
|
||||
#define BACKLIGHT_BREATHING
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGB_DI_PIN C6
|
||||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
|
||||
// RGB Matrix Animation modes. Explicitly enabled
|
||||
// For full list of effects, see:
|
||||
// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
|
||||
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||
#define DRIVER_LED_TOTAL 18
|
||||
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_BREATHING
|
||||
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||
|
@ -85,81 +41,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||
#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
|
||||
// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
|
||||
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||
// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||
#define ENABLE_RGB_MATRIX_SPLASH
|
||||
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
#define RGBLED_NUM 6 // Number of LEDs
|
||||
#endif
|
||||
|
||||
#define DRIVER_LED_TOTAL 22
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
||||
//#define MATRIX_HAS_GHOST
|
||||
|
||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||
//#define LOCKING_SUPPORT_ENABLE
|
||||
/* Locking resynchronize hack */
|
||||
//#define LOCKING_RESYNC_ENABLE
|
||||
|
||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
||||
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||
*/
|
||||
//#define GRAVE_ESC_CTRL_OVERRIDE
|
||||
|
||||
/*
|
||||
* Force NKRO
|
||||
*
|
||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
||||
* makefile for this to work.)
|
||||
*
|
||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
||||
* until the next keyboard reset.
|
||||
*
|
||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
||||
* fully operational during normal computer usage.
|
||||
*
|
||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
||||
* power-up.
|
||||
*
|
||||
*/
|
||||
//#define FORCE_NKRO
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
||||
/* Bootmagic Lite key configuration */
|
||||
//#define BOOTMAGIC_LITE_ROW 0
|
||||
//#define BOOTMAGIC_LITE_COLUMN 0
|
||||
|
|
|
@ -1,26 +1,64 @@
|
|||
{
|
||||
"keyboard_name": "Beiwagon",
|
||||
"url": "",
|
||||
"maintainer": "Boardsource",
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "label": "k00", "x": 0, "y": 0 },
|
||||
{ "label": "k01", "x": 1, "y": 0 },
|
||||
{ "label": "k02", "x": 2, "y": 0 },
|
||||
|
||||
{ "label": "k10", "x": 0, "y": 1 },
|
||||
{ "label": "k11", "x": 1, "y": 1 },
|
||||
{ "label": "k12", "x": 2, "y": 1 },
|
||||
|
||||
{ "label": "k20", "x": 0, "y": 2 },
|
||||
{ "label": "k21", "x": 1, "y": 2 },
|
||||
{ "label": "k22", "x": 2, "y": 2 },
|
||||
|
||||
{ "label": "k30", "x": 0, "y": 3 },
|
||||
{ "label": "k31", "x": 1, "y": 3 },
|
||||
{ "label": "k32", "x": 2, "y": 3 }
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "Beiwagon",
|
||||
"maintainer": "waffle87",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": false,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B5", "B6", "B7"],
|
||||
"rows": ["B0", "B1", "B2", "B3"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "https://boardsource.xyz/store/5ffbfe2ab855550844cab109",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0066",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"layout": [
|
||||
{ "flags": 2, "x": 16, "y": 38 },
|
||||
{ "flags": 2, "x": 16, "y": 113 },
|
||||
{ "flags": 2, "x": 16, "y": 188 },
|
||||
{ "flags": 2, "x": 48, "y": 38 },
|
||||
{ "flags": 2, "x": 48, "y": 113 },
|
||||
{ "flags": 2, "x": 48, "y": 188 },
|
||||
{ "flags": 4, "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 32, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 64, "y": 0 },
|
||||
{ "flags": 4, "matrix": [1, 0], "x": 0, "y": 75 },
|
||||
{ "flags": 4, "matrix": [1, 1], "x": 32, "y": 75 },
|
||||
{ "flags": 4, "matrix": [1, 2], "x": 64, "y": 75 },
|
||||
{ "flags": 4, "matrix": [2, 0], "x": 0, "y": 150 },
|
||||
{ "flags": 4, "matrix": [2, 1], "x": 32, "y": 150 },
|
||||
{ "flags": 4, "matrix": [2, 2], "x": 64, "y": 150 },
|
||||
{ "flags": 4, "matrix": [3, 0], "x": 0, "y": 224 },
|
||||
{ "flags": 4, "matrix": [3, 1], "x": 32, "y": 224 },
|
||||
{ "flags": 4, "matrix": [3, 2], "x": 64, "y": 224 }
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [3, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [3, 2], "x": 2, "y": 2 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -18,30 +18,23 @@
|
|||
|
||||
enum layers {
|
||||
_MAIN,
|
||||
_RAISE,
|
||||
_LOWER,
|
||||
_RAISE
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT(
|
||||
KC_7, KC_8, KC_9,
|
||||
KC_4, KC_5, KC_6,
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_0, KC_PENT,RAISE
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT(
|
||||
KC_7, KC_8, RGB_TOG,
|
||||
KC_4, KC_5, RGB_MOD,
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_0, KC_PENT,KC_TRNS
|
||||
|
||||
KC_0, KC_PENT,_______
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
# The default keymap for Beiwagon
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -18,30 +18,35 @@
|
|||
|
||||
enum layers {
|
||||
_MAIN,
|
||||
_RAISE,
|
||||
_LOWER,
|
||||
_RAISE
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT(
|
||||
KC_7, KC_8, KC_9,
|
||||
KC_4, KC_5, KC_6,
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_0, KC_PENT,RAISE
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT(
|
||||
KC_7, KC_8, RGB_TOG,
|
||||
KC_4, KC_5, RGB_MOD,
|
||||
KC_1, KC_2, KC_3,
|
||||
KC_0, KC_PENT,KC_TRNS
|
||||
|
||||
KC_0, KC_PENT,_______
|
||||
),
|
||||
[2] = LAYOUT(
|
||||
_______, _______, _______,
|
||||
_______, _______, _______,
|
||||
_______, _______, _______,
|
||||
_______, _______, _______
|
||||
),
|
||||
[3] = LAYOUT(
|
||||
_______, _______, _______,
|
||||
_______, _______, _______,
|
||||
_______, _______, _______,
|
||||
_______, _______, _______
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
# The via keymap for Beiwagon
|
|
@ -1,20 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = no # Mouse keys
|
||||
EXTRAKEY_ENABLE = no # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
RGB_MATRIX_ENABLE = yes
|
||||
RGB_MATRIX_DRIVER = WS2812
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright 2020 Boardsource
|
||||
Copyright 2022 Boardsource
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -16,62 +16,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0x4273
|
||||
#define PRODUCT_ID 0x0079
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER Boardsource
|
||||
#define PRODUCT Technik-O
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 4
|
||||
#define MATRIX_COLS 12
|
||||
|
||||
/*
|
||||
* Keyboard Matrix Assignments
|
||||
*
|
||||
* Change this to how you wired your keyboard
|
||||
* COLS: AVR pins used for columns, left to right
|
||||
* ROWS: AVR pins used for rows, top to bottom
|
||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
||||
*
|
||||
*/
|
||||
#define MATRIX_ROW_PINS {B0, B1, B2, B3}
|
||||
#define MATRIX_COL_PINS {B5, B6, B7, F5, C7, D0, D1, D2, D3, D4, D5, D6}
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW, ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
//#define BACKLIGHT_PIN B7
|
||||
//#define BACKLIGHT_LEVELS 3
|
||||
#define BACKLIGHT_BREATHING
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGB_DI_PIN C6
|
||||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
|
||||
// RGB Matrix Animation modes. Explicitly enabled
|
||||
// For full list of effects, see:
|
||||
// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
|
||||
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||
#define DRIVER_LED_TOTAL 58
|
||||
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_BREATHING
|
||||
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||
|
@ -85,81 +42,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||
#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
|
||||
// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
|
||||
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||
// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||
#define ENABLE_RGB_MATRIX_SPLASH
|
||||
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
# define RGBLED_NUM 10 // Number of LEDs
|
||||
#endif
|
||||
|
||||
#define DRIVER_LED_TOTAL 58
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
||||
//#define MATRIX_HAS_GHOST
|
||||
|
||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||
//#define LOCKING_SUPPORT_ENABLE
|
||||
/* Locking resynchronize hack */
|
||||
//#define LOCKING_RESYNC_ENABLE
|
||||
|
||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
||||
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||
*/
|
||||
//#define GRAVE_ESC_CTRL_OVERRIDE
|
||||
|
||||
/*
|
||||
* Force NKRO
|
||||
*
|
||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
||||
* makefile for this to work.)
|
||||
*
|
||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
||||
* until the next keyboard reset.
|
||||
*
|
||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
||||
* fully operational during normal computer usage.
|
||||
*
|
||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
||||
* power-up.
|
||||
*
|
||||
*/
|
||||
//#define FORCE_NKRO
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
||||
/* Bootmagic Lite key configuration */
|
||||
//#define BOOTMAGIC_LITE_ROW 0
|
||||
//#define BOOTMAGIC_LITE_COLUMN 0
|
||||
|
|
|
@ -1,62 +1,144 @@
|
|||
{
|
||||
"keyboard_name": "Technik-O",
|
||||
"url": "https://boardsource.xyz",
|
||||
"maintainer": "Boardsource",
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{ "label": "K01", "x": 0, "y": 0 },
|
||||
{ "label": "K02", "x": 1, "y": 0 },
|
||||
{ "label": "K03", "x": 2, "y": 0 },
|
||||
{ "label": "K04", "x": 3, "y": 0 },
|
||||
{ "label": "K05", "x": 4, "y": 0 },
|
||||
{ "label": "K06", "x": 5, "y": 0 },
|
||||
{ "label": "K07", "x": 6, "y": 0 },
|
||||
{ "label": "K08", "x": 7, "y": 0 },
|
||||
{ "label": "K09", "x": 8, "y": 0 },
|
||||
{ "label": "K010", "x": 9, "y": 0 },
|
||||
{ "label": "K011", "x": 10, "y": 0 },
|
||||
{ "label": "K012", "x": 11, "y": 0 },
|
||||
|
||||
{ "label": "K11", "x": 0, "y": 1 },
|
||||
{ "label": "K12", "x": 1, "y": 1 },
|
||||
{ "label": "K13", "x": 2, "y": 1 },
|
||||
{ "label": "K14", "x": 3, "y": 1 },
|
||||
{ "label": "K15", "x": 4, "y": 1 },
|
||||
{ "label": "K16", "x": 5, "y": 1 },
|
||||
{ "label": "K17", "x": 6, "y": 1 },
|
||||
{ "label": "K18", "x": 7, "y": 1 },
|
||||
{ "label": "K19", "x": 8, "y": 1 },
|
||||
{ "label": "K110", "x": 9, "y": 1 },
|
||||
{ "label": "K111", "x": 10, "y": 1 },
|
||||
{ "label": "K112", "x": 11, "y": 1 },
|
||||
|
||||
{ "label": "K21", "x": 0, "y": 2 },
|
||||
{ "label": "K22", "x": 1, "y": 2 },
|
||||
{ "label": "K23", "x": 2, "y": 2 },
|
||||
{ "label": "K24", "x": 3, "y": 2 },
|
||||
{ "label": "K25", "x": 4, "y": 2 },
|
||||
{ "label": "K26", "x": 5, "y": 2 },
|
||||
{ "label": "K27", "x": 6, "y": 2 },
|
||||
{ "label": "K28", "x": 7, "y": 2 },
|
||||
{ "label": "K29", "x": 8, "y": 2 },
|
||||
{ "label": "K210", "x": 9, "y": 2 },
|
||||
{ "label": "K211", "x": 10, "y": 2 },
|
||||
{ "label": "K212", "x": 11, "y": 2 },
|
||||
|
||||
{ "label": "K31", "x": 0, "y": 3 },
|
||||
{ "label": "K32", "x": 1, "y": 3 },
|
||||
{ "label": "K33", "x": 2, "y": 3 },
|
||||
{ "label": "K34", "x": 3, "y": 3 },
|
||||
{ "label": "K35", "x": 4, "y": 3 },
|
||||
{ "label": "K36", "x": 5, "y": 3 },
|
||||
{ "label": "K37", "x": 6, "y": 3 },
|
||||
{ "label": "K38", "x": 7, "y": 3 },
|
||||
{ "label": "K39", "x": 8, "y": 3 },
|
||||
{ "label": "K310", "x": 9, "y": 3 },
|
||||
{ "label": "K311", "x": 10, "y": 3 },
|
||||
{ "label": "K312", "x": 11, "y": 3 }
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "Technik-O",
|
||||
"maintainer": "waffle87",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B5", "B6", "B7", "F5", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6"],
|
||||
"rows": ["B0", "B1", "B2", "B3"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "https://boardsource.xyz/store/5ffb9b01edd0447f8023fdb2",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0079",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"layout": [
|
||||
{ "flags": 2, "x": 220, "y": 17 },
|
||||
{ "flags": 2, "x": 172, "y": 17 },
|
||||
{ "flags": 2, "x": 112, "y": 17 },
|
||||
{ "flags": 2, "x": 50, "y": 17 },
|
||||
{ "flags": 2, "x": 4, "y": 17 },
|
||||
{ "flags": 2, "x": 4, "y": 56 },
|
||||
{ "flags": 2, "x": 50, "y": 56 },
|
||||
{ "flags": 2, "x": 112, "y": 56 },
|
||||
{ "flags": 2, "x": 172, "y": 56 },
|
||||
{ "flags": 2, "x": 220, "y": 56 },
|
||||
{ "flags": 1, "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 20, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 40, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 61, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 81, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 5], "x": 101, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 6], "x": 122, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 7], "x": 142, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 8], "x": 162, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 9], "x": 183, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 10], "x": 203, "y": 0 },
|
||||
{ "flags": 1, "matrix": [0, 11], "x": 224, "y": 0 },
|
||||
{ "flags": 1, "matrix": [1, 0], "x": 0, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 1], "x": 20, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 2], "x": 40, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 3], "x": 61, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 4], "x": 81, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 5], "x": 101, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 6], "x": 122, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 7], "x": 142, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 8], "x": 162, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 9], "x": 183, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 10], "x": 203, "y": 21 },
|
||||
{ "flags": 1, "matrix": [1, 11], "x": 224, "y": 21 },
|
||||
{ "flags": 1, "matrix": [2, 0], "x": 0, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 1], "x": 20, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 2], "x": 40, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 3], "x": 61, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 4], "x": 81, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 5], "x": 101, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 6], "x": 122, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 7], "x": 142, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 8], "x": 162, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 9], "x": 183, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 10], "x": 203, "y": 42 },
|
||||
{ "flags": 1, "matrix": [2, 11], "x": 224, "y": 42 },
|
||||
{ "flags": 1, "matrix": [3, 0], "x": 0, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 1], "x": 20, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 2], "x": 40, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 3], "x": 61, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 4], "x": 81, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 5], "x": 101, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 6], "x": 122, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 7], "x": 142, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 8], "x": 162, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 9], "x": 183, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 10], "x": 203, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 11], "x": 224, "y": 64 }
|
||||
]
|
||||
},
|
||||
"community_layouts": [
|
||||
"ortho_4x12"
|
||||
],
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 1], "x": 1, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 2, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 3, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 4, "y": 1 },
|
||||
{ "matrix": [1, 5], "x": 5, "y": 1 },
|
||||
{ "matrix": [1, 6], "x": 6, "y": 1 },
|
||||
{ "matrix": [1, 7], "x": 7, "y": 1 },
|
||||
{ "matrix": [1, 8], "x": 8, "y": 1 },
|
||||
{ "matrix": [1, 9], "x": 9, "y": 1 },
|
||||
{ "matrix": [1, 10], "x": 10, "y": 1 },
|
||||
{ "matrix": [1, 11], "x": 11, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 4, "y": 2 },
|
||||
{ "matrix": [2, 5], "x": 5, "y": 2 },
|
||||
{ "matrix": [2, 6], "x": 6, "y": 2 },
|
||||
{ "matrix": [2, 7], "x": 7, "y": 2 },
|
||||
{ "matrix": [2, 8], "x": 8, "y": 2 },
|
||||
{ "matrix": [2, 9], "x": 9, "y": 2 },
|
||||
{ "matrix": [2, 10], "x": 10, "y": 2 },
|
||||
{ "matrix": [2, 11], "x": 11, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 0, "y": 3 },
|
||||
{ "matrix": [3, 1], "x": 1, "y": 3 },
|
||||
{ "matrix": [3, 2], "x": 2, "y": 3 },
|
||||
{ "matrix": [3, 3], "x": 3, "y": 3 },
|
||||
{ "matrix": [3, 4], "x": 4, "y": 3 },
|
||||
{ "matrix": [3, 5], "x": 5, "y": 3 },
|
||||
{ "matrix": [3, 6], "x": 6, "y": 3 },
|
||||
{ "matrix": [3, 7], "x": 7, "y": 3 },
|
||||
{ "matrix": [3, 8], "x": 8, "y": 3 },
|
||||
{ "matrix": [3, 9], "x": 9, "y": 3 },
|
||||
{ "matrix": [3, 10], "x": 10, "y": 3 },
|
||||
{ "matrix": [3, 11], "x": 11, "y": 3 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -22,32 +22,27 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT_ortho_4x12(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
|
||||
RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_4x12(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_4x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
# The default keymap for Technik-O
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -22,32 +22,32 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT_ortho_4x12(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT ,
|
||||
RGB_TOG, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_4x12(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_4x12(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
[3] = LAYOUT_ortho_4x12(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
# The via keymap for Technik-O
|
|
@ -1,21 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
RGB_MATRIX_ENABLE = yes
|
||||
RGB_MATRIX_DRIVER = WS2812
|
||||
LAYOUTS = ortho_4x12
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
* Copyright 2021 @filterpaper
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
|
@ -15,29 +15,6 @@
|
|||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "technik_o.h"
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
led_config_t g_led_config = { {
|
||||
{ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21},
|
||||
{ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33},
|
||||
{ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45},
|
||||
{ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57}
|
||||
}, {
|
||||
{220, 17}, {172, 17}, {112, 17}, { 50, 17}, { 4, 17}, { 4, 56}, { 50, 56}, {112, 56}, {172, 56}, {220, 56},
|
||||
{ 0, 0}, { 20, 0}, { 40, 0}, { 61, 0}, { 81, 0}, {101, 0}, {122, 0}, {142, 0}, {162, 0}, {183, 0}, {203, 0}, {224, 0},
|
||||
{ 0, 21}, { 20, 21}, { 40, 21}, { 61, 21}, { 81, 21}, {101, 21}, {122, 21}, {142, 21}, {162, 21}, {183, 21}, {203, 21}, {224, 21},
|
||||
{ 0, 42}, { 20, 42}, { 40, 42}, { 61, 42}, { 81, 42}, {101, 42}, {122, 42}, {142, 42}, {162, 42}, {183, 42}, {203, 42}, {224, 42},
|
||||
{ 0, 64}, { 20, 64}, { 40, 64}, { 61, 64}, { 81, 64}, {101, 64}, {122, 64}, {142, 64}, {162, 64}, {183, 64}, {203, 64}, {224, 64}
|
||||
}, {
|
||||
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 1, 1, 1, 4, 4, 1, 1, 1, 1, 1
|
||||
} };
|
||||
#endif
|
||||
|
||||
#ifdef SWAP_HANDS_ENABLE
|
||||
__attribute__ ((weak))
|
||||
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
@ -47,4 +24,3 @@ const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
|
|||
{{11, 3}, {10, 3}, {9, 3}, {8, 3}, {7, 3}, {6, 3}, {5, 3}, {4, 3}, {3, 3}, {2, 3}, {1, 3}, {0, 3}}
|
||||
};
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright 2020 Boardsource
|
||||
Copyright 2022 Boardsource
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -16,62 +16,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0x4273
|
||||
#define PRODUCT_ID 0x0083
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER Boardsource
|
||||
#define PRODUCT Technik-S
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 4
|
||||
#define MATRIX_COLS 12
|
||||
|
||||
/*
|
||||
* Keyboard Matrix Assignments
|
||||
*
|
||||
* Change this to how you wired your keyboard
|
||||
* COLS: AVR pins used for columns, left to right
|
||||
* ROWS: AVR pins used for rows, top to bottom
|
||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
||||
*
|
||||
*/
|
||||
#define MATRIX_ROW_PINS {B0, B1, B2, B3}
|
||||
#define MATRIX_COL_PINS {B5, B6, B7, F5, C7, D0, D1, D2, D3, D4, D5, D6}
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW, ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
//#define BACKLIGHT_PIN B7
|
||||
//#define BACKLIGHT_LEVELS 3
|
||||
#define BACKLIGHT_BREATHING
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGB_DI_PIN C6
|
||||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
|
||||
// RGB Matrix Animation modes. Explicitly enabled
|
||||
// For full list of effects, see:
|
||||
// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
|
||||
#define ENABLE_RGB_MATRIX_ALPHAS_MODS
|
||||
#define DRIVER_LED_TOTAL 55
|
||||
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_BREATHING
|
||||
#define ENABLE_RGB_MATRIX_BAND_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_VAL
|
||||
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
|
||||
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||
#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||
#define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||
|
@ -85,81 +42,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||
#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
|
||||
// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
|
||||
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||
// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
|
||||
#define ENABLE_RGB_MATRIX_SPLASH
|
||||
#define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||
#define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
# define RGBLED_NUM 10 // Number of LEDs
|
||||
#endif
|
||||
|
||||
#define DRIVER_LED_TOTAL 55
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
||||
//#define MATRIX_HAS_GHOST
|
||||
|
||||
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
|
||||
//#define LOCKING_SUPPORT_ENABLE
|
||||
/* Locking resynchronize hack */
|
||||
//#define LOCKING_RESYNC_ENABLE
|
||||
|
||||
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
|
||||
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||
*/
|
||||
//#define GRAVE_ESC_CTRL_OVERRIDE
|
||||
|
||||
/*
|
||||
* Force NKRO
|
||||
*
|
||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
||||
* makefile for this to work.)
|
||||
*
|
||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
||||
* until the next keyboard reset.
|
||||
*
|
||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
||||
* fully operational during normal computer usage.
|
||||
*
|
||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
||||
* power-up.
|
||||
*
|
||||
*/
|
||||
//#define FORCE_NKRO
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
||||
/* Bootmagic Lite key configuration */
|
||||
//#define BOOTMAGIC_LITE_ROW 0
|
||||
//#define BOOTMAGIC_LITE_COLUMN 0
|
||||
|
|
|
@ -1,56 +1,135 @@
|
|||
{
|
||||
"keyboard_name": "Technik-S",
|
||||
"url": "",
|
||||
"maintainer": "Boardsource",
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "label": "1", "x": 0, "y": 0 },
|
||||
{ "label": "2", "x": 1, "y": 0 },
|
||||
{ "label": "3", "x": 2, "y": 0 },
|
||||
{ "label": "4", "x": 3, "y": 0 },
|
||||
{ "label": "5", "x": 4, "y": 0 },
|
||||
{ "label": "6", "x": 5, "y": 0 },
|
||||
{ "label": "7", "x": 6, "y": 0 },
|
||||
{ "label": "8", "x": 7, "y": 0 },
|
||||
{ "label": "9", "x": 8, "y": 0 },
|
||||
{ "label": "10", "x": 9, "y": 0 },
|
||||
{ "label": "11", "x": 10, "y": 0 },
|
||||
{ "label": "12", "x": 11, "y": 0 },
|
||||
{ "label": "13", "x": 0, "y": 1, "w": 1.5 },
|
||||
{ "label": "14", "x": 1.5, "y": 1 },
|
||||
{ "label": "15", "x": 2.5, "y": 1 },
|
||||
{ "label": "16", "x": 3.5, "y": 1 },
|
||||
{ "label": "17", "x": 4.5, "y": 1 },
|
||||
{ "label": "18", "x": 5.5, "y": 1 },
|
||||
{ "label": "19", "x": 6.5, "y": 1 },
|
||||
{ "label": "20", "x": 7.5, "y": 1 },
|
||||
{ "label": "21", "x": 8.5, "y": 1 },
|
||||
{ "label": "22", "x": 9.5, "y": 1 },
|
||||
{ "label": "23", "x": 10.5, "y": 1, "w": 1.5 },
|
||||
{ "label": "24", "x": 0, "y": 2 },
|
||||
{ "label": "25", "x": 1, "y": 2 },
|
||||
{ "label": "26", "x": 2, "y": 2 },
|
||||
{ "label": "27", "x": 3, "y": 2 },
|
||||
{ "label": "28", "x": 4, "y": 2 },
|
||||
{ "label": "29", "x": 5, "y": 2 },
|
||||
{ "label": "30", "x": 6, "y": 2 },
|
||||
{ "label": "31", "x": 7, "y": 2 },
|
||||
{ "label": "32", "x": 8, "y": 2 },
|
||||
{ "label": "33", "x": 9, "y": 2 },
|
||||
{ "label": "34", "x": 10, "y": 2 },
|
||||
{ "label": "35", "x": 11, "y": 2 },
|
||||
{ "label": "36", "x": 0, "y": 3 },
|
||||
{ "label": "37", "x": 1, "y": 3 },
|
||||
{ "label": "38", "x": 2, "y": 3 },
|
||||
{ "label": "39", "x": 3, "y": 3, "w": 1.5 },
|
||||
{ "label": "40", "x": 4.5, "y": 3, "w": 1.5 },
|
||||
{ "label": "41", "x": 6, "y": 3, "w": 1.5 },
|
||||
{ "label": "42", "x": 7.5, "y": 3, "w": 1.5 },
|
||||
{ "label": "43", "x": 9, "y": 3 },
|
||||
{ "label": "44", "x": 10, "y": 3 },
|
||||
{ "label": "45", "x": 11, "y": 3 }
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "Technik-S",
|
||||
"maintainer": "waffle87",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B5", "B6", "B7", "F5", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6"],
|
||||
"rows": ["B0", "B1", "B2", "B3"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "https://boardsource.xyz/store/5ffb9b01edd0447f8023fdb2",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0083",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"layout": [
|
||||
{ "flags": 2, "x": 220, "y": 17 },
|
||||
{ "flags": 2, "x": 172, "y": 17 },
|
||||
{ "flags": 2, "x": 112, "y": 17 },
|
||||
{ "flags": 2, "x": 50, "y": 17 },
|
||||
{ "flags": 2, "x": 4, "y": 17 },
|
||||
{ "flags": 2, "x": 4, "y": 56 },
|
||||
{ "flags": 2, "x": 50, "y": 56 },
|
||||
{ "flags": 2, "x": 112, "y": 56 },
|
||||
{ "flags": 2, "x": 172, "y": 56 },
|
||||
{ "flags": 2, "x": 220, "y": 56 },
|
||||
{ "flags": 1, "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 20, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 40, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 61, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 81, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 5], "x": 101, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 6], "x": 122, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 7], "x": 142, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 8], "x": 162, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 9], "x": 183, "y": 0 },
|
||||
{ "flags": 4, "matrix": [0, 10], "x": 203, "y": 0 },
|
||||
{ "flags": 1, "matrix": [0, 11], "x": 224, "y": 0 },
|
||||
{ "flags": 1, "matrix": [1, 0], "x": 10, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 2], "x": 30, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 3], "x": 51, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 4], "x": 71, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 5], "x": 91, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 6], "x": 112, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 7], "x": 132, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 8], "x": 152, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 9], "x": 173, "y": 21 },
|
||||
{ "flags": 4, "matrix": [1, 10], "x": 193, "y": 21 },
|
||||
{ "flags": 1, "matrix": [1, 11], "x": 214, "y": 21 },
|
||||
{ "flags": 1, "matrix": [2, 0], "x": 0, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 1], "x": 20, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 2], "x": 40, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 3], "x": 61, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 4], "x": 81, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 5], "x": 101, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 6], "x": 122, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 7], "x": 142, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 8], "x": 162, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 9], "x": 183, "y": 42 },
|
||||
{ "flags": 4, "matrix": [2, 10], "x": 203, "y": 42 },
|
||||
{ "flags": 1, "matrix": [2, 11], "x": 224, "y": 42 },
|
||||
{ "flags": 1, "matrix": [3, 0], "x": 0, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 1], "x": 20, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 2], "x": 40, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 3], "x": 68, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 5], "x": 97, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 6], "x": 126, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 8], "x": 154, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 9], "x": 183, "y": 64 },
|
||||
{ "flags": 4, "matrix": [3, 10], "x": 203, "y": 64 },
|
||||
{ "flags": 1, "matrix": [3, 11], "x": 224, "y": 64 }
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1 },
|
||||
{ "matrix": [1, 2], "x": 1.5, "y": 1 },
|
||||
{ "matrix": [1, 3], "x": 2.5, "y": 1 },
|
||||
{ "matrix": [1, 4], "x": 3.5, "y": 1 },
|
||||
{ "matrix": [1, 5], "x": 4.5, "y": 1 },
|
||||
{ "matrix": [1, 6], "x": 5.5, "y": 1 },
|
||||
{ "matrix": [1, 7], "x": 6.5, "y": 1 },
|
||||
{ "matrix": [1, 8], "x": 7.5, "y": 1 },
|
||||
{ "matrix": [1, 9], "x": 8.5, "y": 1 },
|
||||
{ "matrix": [1, 10], "x": 9.5, "y": 1 },
|
||||
{ "matrix": [1, 11], "w": 1.5, "x": 10.5, "y": 1 },
|
||||
{ "matrix": [2, 0], "x": 0, "y": 2 },
|
||||
{ "matrix": [2, 1], "x": 1, "y": 2 },
|
||||
{ "matrix": [2, 2], "x": 2, "y": 2 },
|
||||
{ "matrix": [2, 3], "x": 3, "y": 2 },
|
||||
{ "matrix": [2, 4], "x": 4, "y": 2 },
|
||||
{ "matrix": [2, 5], "x": 5, "y": 2 },
|
||||
{ "matrix": [2, 6], "x": 6, "y": 2 },
|
||||
{ "matrix": [2, 7], "x": 7, "y": 2 },
|
||||
{ "matrix": [2, 8], "x": 8, "y": 2 },
|
||||
{ "matrix": [2, 9], "x": 9, "y": 2 },
|
||||
{ "matrix": [2, 10], "x": 10, "y": 2 },
|
||||
{ "matrix": [2, 11], "x": 11, "y": 2 },
|
||||
{ "matrix": [3, 0], "x": 0, "y": 3 },
|
||||
{ "matrix": [3, 1], "x": 1, "y": 3 },
|
||||
{ "matrix": [3, 2], "x": 2, "y": 3 },
|
||||
{ "matrix": [3, 3], "w": 1.5, "x": 3, "y": 3 },
|
||||
{ "matrix": [3, 5], "w": 1.5, "x": 4.5, "y": 3 },
|
||||
{ "matrix": [3, 6], "w": 1.5, "x": 6, "y": 3 },
|
||||
{ "matrix": [3, 8], "w": 1.5, "x": 7.5, "y": 3 },
|
||||
{ "matrix": [3, 9], "x": 9, "y": 3 },
|
||||
{ "matrix": [3, 10], "x": 10, "y": 3 },
|
||||
{ "matrix": [3, 11], "x": 11, "y": 3 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -22,32 +22,26 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
|
||||
KC_LSHIFT,KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_UP, KC_ENT ,
|
||||
RGB_TOG, KC_LCTL, KC_LALT, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_RIGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR,
|
||||
RGB_MOD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR,
|
||||
RGB_MOD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
)
|
||||
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
)
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
# The default keymap for Technik-S
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -22,32 +22,32 @@ enum layers {
|
|||
_LOWER,
|
||||
};
|
||||
|
||||
// Readability keycodes
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[_MAIN] = LAYOUT(
|
||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
|
||||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
|
||||
KC_LSHIFT,KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_UP, KC_ENT ,
|
||||
RGB_TOG, KC_LCTL, KC_LALT, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_RIGHT
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR,
|
||||
RGB_MOD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR,
|
||||
RGB_MOD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______,
|
||||
QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
)
|
||||
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
|
||||
KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD
|
||||
),
|
||||
[3] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
# The via keymap for Technik-S
|
|
@ -1,21 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
RGB_MATRIX_ENABLE = yes
|
||||
RGB_MATRIX_DRIVER = WS2812
|
||||
LTO_ENABLE = yes
|
||||
|
|
|
@ -1,38 +0,0 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "technik_s.h"
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
led_config_t g_led_config = { {
|
||||
{10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21},
|
||||
{22, NO_LED, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32},
|
||||
{33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44},
|
||||
{45, 46, 47, 48, NO_LED, 49, 50, NO_LED, 51, 52, 53, 54}
|
||||
}, {
|
||||
{220, 17}, {172, 17}, {112, 17}, { 50, 17}, { 4, 17}, { 4, 56}, { 50, 56}, {112, 56}, {172, 56}, {220, 56},
|
||||
{ 0, 0}, { 20, 0}, { 40, 0}, { 61, 0}, { 81, 0}, {101, 0}, {122, 0}, {142, 0}, {162, 0}, {183, 0}, {203, 0}, {224, 0},
|
||||
{ 10, 21}, { 30, 21}, { 51, 21}, { 71, 21}, { 91, 21}, {112, 21}, {132, 21}, {152, 21}, {173, 21}, {193, 21}, {214, 21},
|
||||
{ 0, 42}, { 20, 42}, { 40, 42}, { 61, 42}, { 81, 42}, {101, 42}, {122, 42}, {142, 42}, {162, 42}, {183, 42}, {203, 42}, {224, 42},
|
||||
{ 0, 64}, { 20, 64}, { 40, 64}, { 68, 64}, { 97, 64}, {126, 64}, {154, 64}, {183, 64}, {203, 64}, {224, 64}
|
||||
}, {
|
||||
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 1, 1, 4, 4, 1, 1, 1, 1
|
||||
} };
|
||||
#endif
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright 2020 Boardsource
|
||||
Copyright 2022 Boardsource
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -16,141 +16,40 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0x4273 // "Bs" - Boardsource
|
||||
#define PRODUCT_ID 0x0001
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER Boardsource
|
||||
#define PRODUCT The Mark65
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 5
|
||||
#define MATRIX_COLS 16
|
||||
|
||||
/*
|
||||
* Keyboard Matrix Assignments
|
||||
*
|
||||
* Change this to how you wired your keyboard
|
||||
* COLS: AVR pins used for columns, left to right
|
||||
* ROWS: AVR pins used for rows, top to bottom
|
||||
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
|
||||
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
|
||||
*
|
||||
*/
|
||||
|
||||
#define MATRIX_ROW_PINS {B0, B1, B2, B3, B4}
|
||||
#define MATRIX_COL_PINS {B5, B6, B7, F5, C7, D0, D1, D2, D3, D4, D5, D6, D7,F0, F1, F4}
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW, ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
#define RGBLIGHT_ANIMATIONS
|
||||
#define RGB_DI_PIN C6
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
#define RGBLED_NUM 24 // Number of LEDs
|
||||
#define RGBLIGHT_LIMIT_VAL 200
|
||||
#endif
|
||||
|
||||
/* RGB matrix support */
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
# define DRIVER_LED_TOTAL 24 // Number of LEDs
|
||||
# define DRIVER_LED_TOTAL 24
|
||||
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200
|
||||
# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended
|
||||
# define RGB_DISABLE_WHEN_USB_SUSPENDED
|
||||
# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
|
||||
# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
|
||||
# define ENABLE_RGB_MATRIX_BREATHING
|
||||
# define ENABLE_RGB_MATRIX_BAND_SAT
|
||||
# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
|
||||
# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
|
||||
# define ENABLE_RGB_MATRIX_CYCLE_ALL
|
||||
# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||
# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
|
||||
# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
|
||||
# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
|
||||
# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
|
||||
# define ENABLE_RGB_MATRIX_DUAL_BEACON
|
||||
# define ENABLE_RGB_MATRIX_RAINBOW_BEACON
|
||||
# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
|
||||
# define ENABLE_RGB_MATRIX_RAINDROPS
|
||||
# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
|
||||
# define ENABLE_RGB_MATRIX_HUE_BREATHING
|
||||
# define ENABLE_RGB_MATRIX_HUE_PENDULUM
|
||||
# define ENABLE_RGB_MATRIX_HUE_WAVE
|
||||
# define ENABLE_RGB_MATRIX_PIXEL_RAIN
|
||||
# define ENABLE_RGB_MATRIX_PIXEL_FLOW
|
||||
# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
|
||||
# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
|
||||
# define ENABLE_RGB_MATRIX_DIGITAL_RAIN
|
||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE
|
||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
|
||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
|
||||
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
|
||||
# define ENABLE_RGB_MATRIX_SPLASH
|
||||
# define ENABLE_RGB_MATRIX_MULTISPLASH
|
||||
# define ENABLE_RGB_MATRIX_SOLID_SPLASH
|
||||
#endif
|
||||
|
||||
/*
|
||||
* 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_LEVELS 3
|
||||
//#define BACKLIGHT_BREATHING
|
||||
|
||||
//#define RGB_DI_PIN E2
|
||||
//#ifdef RGB_DI_PIN
|
||||
//# define RGBLED_NUM 16
|
||||
//# 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
|
||||
/*== customize breathing effect ==*/
|
||||
/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
|
||||
//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
|
||||
/*==== use exp() and sin() ====*/
|
||||
//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
|
||||
//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
|
||||
//#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 useful for the Windows task manager shortcut (ctrl+shift+esc).
|
||||
*/
|
||||
//#define GRAVE_ESC_CTRL_OVERRIDE
|
||||
|
||||
/*
|
||||
* Force NKRO
|
||||
*
|
||||
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
|
||||
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
|
||||
* makefile for this to work.)
|
||||
*
|
||||
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
|
||||
* until the next keyboard reset.
|
||||
*
|
||||
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
|
||||
* fully operational during normal computer usage.
|
||||
*
|
||||
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
|
||||
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
|
||||
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
|
||||
* power-up.
|
||||
*
|
||||
*/
|
||||
//#define FORCE_NKRO
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
||||
|
||||
/* Bootmagic Lite key configuration */
|
||||
//#define BOOTMAGIC_LITE_ROW 0
|
||||
//#define BOOTMAGIC_LITE_COLUMN 0
|
||||
|
|
|
@ -1,394 +1,431 @@
|
|||
{
|
||||
"keyboard_name": "The Mark: 65",
|
||||
"url": "",
|
||||
"maintainer": "daysgobye, Boardsource",
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"1!", "x":1, "y":0},
|
||||
{"label":"2@", "x":2, "y":0},
|
||||
{"label":"3#", "x":3, "y":0},
|
||||
{"label":"4$", "x":4, "y":0},
|
||||
{"label":"5%", "x":5, "y":0},
|
||||
{"label":"6^", "x":6, "y":0},
|
||||
{"label":"7&", "x":7, "y":0},
|
||||
{"label":"8*", "x":8, "y":0},
|
||||
{"label":"9(", "x":9, "y":0},
|
||||
{"label":"0)", "x":10, "y":0},
|
||||
{"label":"-_", "x":11, "y":0},
|
||||
{"label":"=+", "x":12, "y":0},
|
||||
{"label":"Backspace", "x":13, "y":0},
|
||||
{"label":"Backspace", "x":14, "y":0},
|
||||
{"label":"Toggle RGB", "x":15.25, "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":"RGB Mode +", "x":15.25, "y":1},
|
||||
|
||||
{"label":"Ctrl", "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":"Fn", "x":15.25, "y":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":1.75},
|
||||
{"label":"\u2191", "x":14.25, "y":3.25},
|
||||
|
||||
{"label":"Ctrl", "x":0, "y":4, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":4, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":4, "w":2.25},
|
||||
{"label":"Space", "x":6, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":7.25, "y":4, "w":2.75},
|
||||
{"label":"Alt", "x":10, "y":4},
|
||||
{"label":"Ctrl", "x":11, "y":4},
|
||||
{"label":"`~", "x":12, "y":4},
|
||||
{"label":"\u2190", "x":13.25, "y":4.25},
|
||||
{"label":"\u2193", "x":14.25, "y":4.25},
|
||||
{"label":"\u2192", "x":15.25, "y":4.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"1!", "x":1, "y":0},
|
||||
{"label":"2@", "x":2, "y":0},
|
||||
{"label":"3#", "x":3, "y":0},
|
||||
{"label":"4$", "x":4, "y":0},
|
||||
{"label":"5%", "x":5, "y":0},
|
||||
{"label":"6^", "x":6, "y":0},
|
||||
{"label":"7&", "x":7, "y":0},
|
||||
{"label":"8*", "x":8, "y":0},
|
||||
{"label":"9(", "x":9, "y":0},
|
||||
{"label":"0)", "x":10, "y":0},
|
||||
{"label":"-_", "x":11, "y":0},
|
||||
{"label":"=+", "x":12, "y":0},
|
||||
{"label":"Backspace", "x":13, "y":0, "w":2},
|
||||
{"label":"Toggle RGB", "x":15.25, "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":"RGB Mode +", "x":15.25, "y":1},
|
||||
|
||||
{"label":"Ctrl", "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":"Fn", "x":15.25, "y":2},
|
||||
|
||||
{"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":"\u2191", "x":14.25, "y":3.25},
|
||||
|
||||
{"label":"Ctrl", "x":0, "y":4, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":4, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":4, "w":6.25},
|
||||
{"label":"Alt", "x":10, "y":4},
|
||||
{"label":"Ctrl", "x":11, "y":4},
|
||||
{"label":"`~", "x":12, "y":4},
|
||||
{"label":"\u2190", "x":13.25, "y":4.25},
|
||||
{"label":"\u2193", "x":14.25, "y":4.25},
|
||||
{"label":"\u2192", "x":15.25, "y":4.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi_split_bs_space": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"1!", "x":1, "y":0},
|
||||
{"label":"2@", "x":2, "y":0},
|
||||
{"label":"3#", "x":3, "y":0},
|
||||
{"label":"4$", "x":4, "y":0},
|
||||
{"label":"5%", "x":5, "y":0},
|
||||
{"label":"6^", "x":6, "y":0},
|
||||
{"label":"7&", "x":7, "y":0},
|
||||
{"label":"8*", "x":8, "y":0},
|
||||
{"label":"9(", "x":9, "y":0},
|
||||
{"label":"0)", "x":10, "y":0},
|
||||
{"label":"-_", "x":11, "y":0},
|
||||
{"label":"=+", "x":12, "y":0},
|
||||
{"label":"Backspace", "x":13, "y":0},
|
||||
{"label":"Backspace", "x":14, "y":0},
|
||||
{"label":"Toggle RGB", "x":15.25, "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":"RGB Mode +", "x":15.25, "y":1},
|
||||
|
||||
{"label":"Ctrl", "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":"Fn", "x":15.25, "y":2},
|
||||
|
||||
{"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":"\u2191", "x":14.25, "y":3.25},
|
||||
|
||||
{"label":"Ctrl", "x":0, "y":4, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":4, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":4, "w":2.25},
|
||||
{"label":"Space", "x":6, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":7.25, "y":4, "w":2.75},
|
||||
{"label":"Alt", "x":10, "y":4},
|
||||
{"label":"Ctrl", "x":11, "y":4},
|
||||
{"label":"`~", "x":12, "y":4},
|
||||
{"label":"\u2190", "x":13.25, "y":4.25},
|
||||
{"label":"\u2193", "x":14.25, "y":4.25},
|
||||
{"label":"\u2192", "x":15.25, "y":4.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"1!", "x":1, "y":0},
|
||||
{"label":"2\"", "x":2, "y":0},
|
||||
{"label":"3\u00a3", "x":3, "y":0},
|
||||
{"label":"4$", "x":4, "y":0},
|
||||
{"label":"5%", "x":5, "y":0},
|
||||
{"label":"6^", "x":6, "y":0},
|
||||
{"label":"7&", "x":7, "y":0},
|
||||
{"label":"8*", "x":8, "y":0},
|
||||
{"label":"9(", "x":9, "y":0},
|
||||
{"label":"0)", "x":10, "y":0},
|
||||
{"label":"-_", "x":11, "y":0},
|
||||
{"label":"=+", "x":12, "y":0},
|
||||
{"label":"Backspace", "x":13, "y":0, "w":2},
|
||||
{"label":"Toggle RGB", "x":15.25, "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":"RGB Mode +", "x":15.25, "y":1},
|
||||
|
||||
{"label":"Ctrl", "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":"Fn", "x":15.25, "y":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":1.75},
|
||||
{"label":"\u2191", "x":14.25, "y":3.25},
|
||||
|
||||
{"label":"Ctrl", "x":0, "y":4, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":4, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":4, "w":6.25},
|
||||
{"label":"Alt", "x":10, "y":4},
|
||||
{"label":"Ctrl", "x":11, "y":4},
|
||||
{"label":"`\u00ac", "x":12, "y":4},
|
||||
{"label":"\u2190", "x":13.25, "y":4.25},
|
||||
{"label":"\u2193", "x":14.25, "y":4.25},
|
||||
{"label":"\u2192", "x":15.25, "y":4.25}
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_split_bs_space": {
|
||||
"layout": [
|
||||
{"label":"Esc", "x":0, "y":0},
|
||||
{"label":"1!", "x":1, "y":0},
|
||||
{"label":"2\"", "x":2, "y":0},
|
||||
{"label":"3\u00a3", "x":3, "y":0},
|
||||
{"label":"4$", "x":4, "y":0},
|
||||
{"label":"5%", "x":5, "y":0},
|
||||
{"label":"6^", "x":6, "y":0},
|
||||
{"label":"7&", "x":7, "y":0},
|
||||
{"label":"8*", "x":8, "y":0},
|
||||
{"label":"9(", "x":9, "y":0},
|
||||
{"label":"0)", "x":10, "y":0},
|
||||
{"label":"-_", "x":11, "y":0},
|
||||
{"label":"=+", "x":12, "y":0},
|
||||
{"label":"Backspace", "x":13, "y":0},
|
||||
{"label":"Backspace", "x":14, "y":0},
|
||||
{"label":"Toggle RGB", "x":15.25, "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":"RGB Mode +", "x":15.25, "y":1},
|
||||
|
||||
{"label":"Ctrl", "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":"Fn", "x":15.25, "y":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":1.75},
|
||||
{"label":"\u2191", "x":14.25, "y":3.25},
|
||||
|
||||
{"label":"Ctrl", "x":0, "y":4, "w":1.25},
|
||||
{"label":"GUI", "x":1.25, "y":4, "w":1.25},
|
||||
{"label":"Alt", "x":2.5, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":3.75, "y":4, "w":2.25},
|
||||
{"label":"Space", "x":6, "y":4, "w":1.25},
|
||||
{"label":"Space", "x":7.25, "y":4, "w":2.75},
|
||||
{"label":"Alt", "x":10, "y":4},
|
||||
{"label":"Ctrl", "x":11, "y":4},
|
||||
{"label":"`\u00ac", "x":12, "y":4},
|
||||
{"label":"\u2190", "x":13.25, "y":4.25},
|
||||
{"label":"\u2193", "x":14.25, "y":4.25},
|
||||
{"label":"\u2192", "x":15.25, "y":4.25}
|
||||
]
|
||||
}
|
||||
"manufacturer": "Boardsource",
|
||||
"keyboard_name": "The Mark65",
|
||||
"maintainer": "waffle87",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"rgblight": true,
|
||||
"rgb_matrix": false
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["B5", "B6", "B7", "F5", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "F0", "F1", "F4"],
|
||||
"rows": ["B0", "B1", "B2", "B3", "B4"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"url": "https://boardsource.xyz/projects/5f46409bdce98063626dcb08",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0001",
|
||||
"vid": "0x4273"
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 24,
|
||||
"pin": "C6",
|
||||
"sleep": true,
|
||||
"max_brightness": 200,
|
||||
"animations": {
|
||||
"all": true
|
||||
}
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"layout": [
|
||||
{ "flags": 2, "x": 224, "y": 42},
|
||||
{ "flags": 2, "x": 224, "y": 21},
|
||||
{ "flags": 2, "x": 209, "y": 21},
|
||||
{ "flags": 2, "x": 179, "y": 21},
|
||||
{ "flags": 2, "x": 164, "y": 21},
|
||||
{ "flags": 2, "x": 134, "y": 21},
|
||||
{ "flags": 2, "x": 119, "y": 21},
|
||||
{ "flags": 2, "x": 89, "y": 21},
|
||||
{ "flags": 2, "x": 74, "y": 21},
|
||||
{ "flags": 2, "x": 45, "y": 21},
|
||||
{ "flags": 2, "x": 30, "y": 21},
|
||||
{ "flags": 2, "x": 30, "y": 42},
|
||||
{ "flags": 2, "x": 30, "y": 64},
|
||||
{ "flags": 2, "x": 30, "y": 85},
|
||||
{ "flags": 2, "x": 45, "y": 85},
|
||||
{ "flags": 2, "x": 74, "y": 85},
|
||||
{ "flags": 2, "x": 89, "y": 85},
|
||||
{ "flags": 2, "x": 119, "y": 85},
|
||||
{ "flags": 2, "x": 134, "y": 85},
|
||||
{ "flags": 2, "x": 164, "y": 85},
|
||||
{ "flags": 2, "x": 179, "y": 85},
|
||||
{ "flags": 2, "x": 209, "y": 85},
|
||||
{ "flags": 2, "x": 224, "y": 85},
|
||||
{ "flags": 2, "x": 224, "y": 64}
|
||||
]
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [0, 12], "x": 12, "y": 0 },
|
||||
{ "matrix": [0, 13], "x": 13, "y": 0 },
|
||||
{ "matrix": [0, 14], "x": 14, "y": 0 },
|
||||
{ "matrix": [0, 15], "x": 15, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 16, "y": 0 },
|
||||
{ "matrix": [1, 2], "x": 17, "y": 0 },
|
||||
{ "matrix": [1, 3], "x": 18, "y": 0 },
|
||||
{ "matrix": [1, 4], "x": 19, "y": 0 },
|
||||
{ "matrix": [1, 5], "x": 20, "y": 0 },
|
||||
{ "matrix": [1, 6], "x": 21, "y": 0 },
|
||||
{ "matrix": [1, 7], "x": 22, "y": 0 },
|
||||
{ "matrix": [1, 8], "x": 23, "y": 0 },
|
||||
{ "matrix": [1, 9], "x": 24, "y": 0 },
|
||||
{ "matrix": [1, 10], "x": 25, "y": 0 },
|
||||
{ "matrix": [1, 11], "x": 26, "y": 0 },
|
||||
{ "matrix": [1, 12], "x": 27, "y": 0 },
|
||||
{ "matrix": [1, 13], "x": 28, "y": 0 },
|
||||
{ "matrix": [1, 14], "x": 29, "y": 0 },
|
||||
{ "matrix": [1, 15], "x": 30, "y": 0 },
|
||||
{ "matrix": [2, 0], "x": 31, "y": 0 },
|
||||
{ "matrix": [2, 2], "x": 32, "y": 0 },
|
||||
{ "matrix": [2, 3], "x": 33, "y": 0 },
|
||||
{ "matrix": [2, 4], "x": 34, "y": 0 },
|
||||
{ "matrix": [2, 5], "x": 35, "y": 0 },
|
||||
{ "matrix": [2, 6], "x": 36, "y": 0 },
|
||||
{ "matrix": [2, 7], "x": 37, "y": 0 },
|
||||
{ "matrix": [2, 8], "x": 38, "y": 0 },
|
||||
{ "matrix": [2, 9], "x": 39, "y": 0 },
|
||||
{ "matrix": [2, 10], "x": 40, "y": 0 },
|
||||
{ "matrix": [2, 11], "x": 41, "y": 0 },
|
||||
{ "matrix": [2, 12], "x": 42, "y": 0 },
|
||||
{ "matrix": [2, 13], "x": 43, "y": 0 },
|
||||
{ "matrix": [2, 15], "x": 44, "y": 0 },
|
||||
{ "matrix": [3, 1], "x": 45, "y": 0 },
|
||||
{ "matrix": [3, 0], "x": 46, "y": 0 },
|
||||
{ "matrix": [3, 2], "x": 47, "y": 0 },
|
||||
{ "matrix": [3, 3], "x": 48, "y": 0 },
|
||||
{ "matrix": [3, 4], "x": 49, "y": 0 },
|
||||
{ "matrix": [3, 5], "x": 50, "y": 0 },
|
||||
{ "matrix": [3, 6], "x": 51, "y": 0 },
|
||||
{ "matrix": [3, 7], "x": 52, "y": 0 },
|
||||
{ "matrix": [3, 8], "x": 53, "y": 0 },
|
||||
{ "matrix": [3, 9], "x": 54, "y": 0 },
|
||||
{ "matrix": [3, 10], "x": 55, "y": 0 },
|
||||
{ "matrix": [3, 11], "x": 56, "y": 0 },
|
||||
{ "matrix": [3, 13], "x": 57, "y": 0 },
|
||||
{ "matrix": [3, 14], "x": 58, "y": 0 },
|
||||
{ "matrix": [4, 0], "x": 59, "y": 0 },
|
||||
{ "matrix": [4, 1], "x": 60, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 61, "y": 0 },
|
||||
{ "matrix": [4, 4], "x": 62, "y": 0 },
|
||||
{ "matrix": [4, 6], "x": 63, "y": 0 },
|
||||
{ "matrix": [4, 8], "x": 64, "y": 0 },
|
||||
{ "matrix": [4, 10], "x": 65, "y": 0 },
|
||||
{ "matrix": [4, 11], "x": 66, "y": 0 },
|
||||
{ "matrix": [4, 12], "x": 67, "y": 0 },
|
||||
{ "matrix": [4, 13], "x": 68, "y": 0 },
|
||||
{ "matrix": [4, 14], "x": 69, "y": 0 },
|
||||
{ "matrix": [4, 15], "x": 70, "y": 0 }
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [0, 12], "x": 12, "y": 0 },
|
||||
{ "matrix": [0, 13], "x": 13, "y": 0 },
|
||||
{ "matrix": [0, 15], "x": 14, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 15, "y": 0 },
|
||||
{ "matrix": [1, 2], "x": 16, "y": 0 },
|
||||
{ "matrix": [1, 3], "x": 17, "y": 0 },
|
||||
{ "matrix": [1, 4], "x": 18, "y": 0 },
|
||||
{ "matrix": [1, 5], "x": 19, "y": 0 },
|
||||
{ "matrix": [1, 6], "x": 20, "y": 0 },
|
||||
{ "matrix": [1, 7], "x": 21, "y": 0 },
|
||||
{ "matrix": [1, 8], "x": 22, "y": 0 },
|
||||
{ "matrix": [1, 9], "x": 23, "y": 0 },
|
||||
{ "matrix": [1, 10], "x": 24, "y": 0 },
|
||||
{ "matrix": [1, 11], "x": 25, "y": 0 },
|
||||
{ "matrix": [1, 12], "x": 26, "y": 0 },
|
||||
{ "matrix": [1, 13], "x": 27, "y": 0 },
|
||||
{ "matrix": [1, 14], "x": 28, "y": 0 },
|
||||
{ "matrix": [1, 15], "x": 29, "y": 0 },
|
||||
{ "matrix": [2, 0], "x": 30, "y": 0 },
|
||||
{ "matrix": [2, 2], "x": 31, "y": 0 },
|
||||
{ "matrix": [2, 3], "x": 32, "y": 0 },
|
||||
{ "matrix": [2, 4], "x": 33, "y": 0 },
|
||||
{ "matrix": [2, 5], "x": 34, "y": 0 },
|
||||
{ "matrix": [2, 6], "x": 35, "y": 0 },
|
||||
{ "matrix": [2, 7], "x": 36, "y": 0 },
|
||||
{ "matrix": [2, 8], "x": 37, "y": 0 },
|
||||
{ "matrix": [2, 9], "x": 38, "y": 0 },
|
||||
{ "matrix": [2, 10], "x": 39, "y": 0 },
|
||||
{ "matrix": [2, 11], "x": 40, "y": 0 },
|
||||
{ "matrix": [2, 12], "x": 41, "y": 0 },
|
||||
{ "matrix": [2, 13], "x": 42, "y": 0 },
|
||||
{ "matrix": [2, 15], "x": 43, "y": 0 },
|
||||
{ "matrix": [3, 1], "x": 44, "y": 0 },
|
||||
{ "matrix": [3, 2], "x": 45, "y": 0 },
|
||||
{ "matrix": [3, 3], "x": 46, "y": 0 },
|
||||
{ "matrix": [3, 4], "x": 47, "y": 0 },
|
||||
{ "matrix": [3, 5], "x": 48, "y": 0 },
|
||||
{ "matrix": [3, 6], "x": 49, "y": 0 },
|
||||
{ "matrix": [3, 7], "x": 50, "y": 0 },
|
||||
{ "matrix": [3, 8], "x": 51, "y": 0 },
|
||||
{ "matrix": [3, 9], "x": 52, "y": 0 },
|
||||
{ "matrix": [3, 10], "x": 53, "y": 0 },
|
||||
{ "matrix": [3, 11], "x": 54, "y": 0 },
|
||||
{ "matrix": [3, 13], "x": 55, "y": 0 },
|
||||
{ "matrix": [3, 14], "x": 56, "y": 0 },
|
||||
{ "matrix": [4, 0], "x": 57, "y": 0 },
|
||||
{ "matrix": [4, 1], "x": 58, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 59, "y": 0 },
|
||||
{ "matrix": [4, 6], "x": 60, "y": 0 },
|
||||
{ "matrix": [4, 10], "x": 61, "y": 0 },
|
||||
{ "matrix": [4, 11], "x": 62, "y": 0 },
|
||||
{ "matrix": [4, 12], "x": 63, "y": 0 },
|
||||
{ "matrix": [4, 13], "x": 64, "y": 0 },
|
||||
{ "matrix": [4, 14], "x": 65, "y": 0 },
|
||||
{ "matrix": [4, 15], "x": 66, "y": 0 }
|
||||
]
|
||||
},
|
||||
"LAYOUT_ansi_split_bs_space": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [0, 12], "x": 12, "y": 0 },
|
||||
{ "matrix": [0, 13], "x": 13, "y": 0 },
|
||||
{ "matrix": [0, 14], "x": 14, "y": 0 },
|
||||
{ "matrix": [0, 15], "x": 15, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 16, "y": 0 },
|
||||
{ "matrix": [1, 2], "x": 17, "y": 0 },
|
||||
{ "matrix": [1, 3], "x": 18, "y": 0 },
|
||||
{ "matrix": [1, 4], "x": 19, "y": 0 },
|
||||
{ "matrix": [1, 5], "x": 20, "y": 0 },
|
||||
{ "matrix": [1, 6], "x": 21, "y": 0 },
|
||||
{ "matrix": [1, 7], "x": 22, "y": 0 },
|
||||
{ "matrix": [1, 8], "x": 23, "y": 0 },
|
||||
{ "matrix": [1, 9], "x": 24, "y": 0 },
|
||||
{ "matrix": [1, 10], "x": 25, "y": 0 },
|
||||
{ "matrix": [1, 11], "x": 26, "y": 0 },
|
||||
{ "matrix": [1, 12], "x": 27, "y": 0 },
|
||||
{ "matrix": [1, 13], "x": 28, "y": 0 },
|
||||
{ "matrix": [1, 14], "x": 29, "y": 0 },
|
||||
{ "matrix": [1, 15], "x": 30, "y": 0 },
|
||||
{ "matrix": [2, 0], "x": 31, "y": 0 },
|
||||
{ "matrix": [2, 2], "x": 32, "y": 0 },
|
||||
{ "matrix": [2, 3], "x": 33, "y": 0 },
|
||||
{ "matrix": [2, 4], "x": 34, "y": 0 },
|
||||
{ "matrix": [2, 5], "x": 35, "y": 0 },
|
||||
{ "matrix": [2, 6], "x": 36, "y": 0 },
|
||||
{ "matrix": [2, 7], "x": 37, "y": 0 },
|
||||
{ "matrix": [2, 8], "x": 38, "y": 0 },
|
||||
{ "matrix": [2, 9], "x": 39, "y": 0 },
|
||||
{ "matrix": [2, 10], "x": 40, "y": 0 },
|
||||
{ "matrix": [2, 11], "x": 41, "y": 0 },
|
||||
{ "matrix": [2, 12], "x": 42, "y": 0 },
|
||||
{ "matrix": [2, 13], "x": 43, "y": 0 },
|
||||
{ "matrix": [2, 15], "x": 44, "y": 0 },
|
||||
{ "matrix": [3, 1], "x": 45, "y": 0 },
|
||||
{ "matrix": [3, 2], "x": 46, "y": 0 },
|
||||
{ "matrix": [3, 3], "x": 47, "y": 0 },
|
||||
{ "matrix": [3, 4], "x": 48, "y": 0 },
|
||||
{ "matrix": [3, 5], "x": 49, "y": 0 },
|
||||
{ "matrix": [3, 6], "x": 50, "y": 0 },
|
||||
{ "matrix": [3, 7], "x": 51, "y": 0 },
|
||||
{ "matrix": [3, 8], "x": 52, "y": 0 },
|
||||
{ "matrix": [3, 9], "x": 53, "y": 0 },
|
||||
{ "matrix": [3, 10], "x": 54, "y": 0 },
|
||||
{ "matrix": [3, 11], "x": 55, "y": 0 },
|
||||
{ "matrix": [3, 13], "x": 56, "y": 0 },
|
||||
{ "matrix": [3, 14], "x": 57, "y": 0 },
|
||||
{ "matrix": [4, 0], "x": 58, "y": 0 },
|
||||
{ "matrix": [4, 1], "x": 59, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 60, "y": 0 },
|
||||
{ "matrix": [4, 4], "x": 61, "y": 0 },
|
||||
{ "matrix": [4, 6], "x": 62, "y": 0 },
|
||||
{ "matrix": [4, 8], "x": 63, "y": 0 },
|
||||
{ "matrix": [4, 10], "x": 64, "y": 0 },
|
||||
{ "matrix": [4, 11], "x": 65, "y": 0 },
|
||||
{ "matrix": [4, 12], "x": 66, "y": 0 },
|
||||
{ "matrix": [4, 13], "x": 67, "y": 0 },
|
||||
{ "matrix": [4, 14], "x": 68, "y": 0 },
|
||||
{ "matrix": [4, 15], "x": 69, "y": 0 }
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [0, 12], "x": 12, "y": 0 },
|
||||
{ "matrix": [0, 13], "x": 13, "y": 0 },
|
||||
{ "matrix": [0, 15], "x": 14, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 15, "y": 0 },
|
||||
{ "matrix": [1, 2], "x": 16, "y": 0 },
|
||||
{ "matrix": [1, 3], "x": 17, "y": 0 },
|
||||
{ "matrix": [1, 4], "x": 18, "y": 0 },
|
||||
{ "matrix": [1, 5], "x": 19, "y": 0 },
|
||||
{ "matrix": [1, 6], "x": 20, "y": 0 },
|
||||
{ "matrix": [1, 7], "x": 21, "y": 0 },
|
||||
{ "matrix": [1, 8], "x": 22, "y": 0 },
|
||||
{ "matrix": [1, 9], "x": 23, "y": 0 },
|
||||
{ "matrix": [1, 10], "x": 24, "y": 0 },
|
||||
{ "matrix": [1, 11], "x": 25, "y": 0 },
|
||||
{ "matrix": [1, 12], "x": 26, "y": 0 },
|
||||
{ "matrix": [1, 13], "x": 27, "y": 0 },
|
||||
{ "matrix": [1, 15], "x": 28, "y": 0 },
|
||||
{ "matrix": [2, 0], "x": 29, "y": 0 },
|
||||
{ "matrix": [2, 2], "x": 30, "y": 0 },
|
||||
{ "matrix": [2, 3], "x": 31, "y": 0 },
|
||||
{ "matrix": [2, 4], "x": 32, "y": 0 },
|
||||
{ "matrix": [2, 5], "x": 33, "y": 0 },
|
||||
{ "matrix": [2, 6], "x": 34, "y": 0 },
|
||||
{ "matrix": [2, 7], "x": 35, "y": 0 },
|
||||
{ "matrix": [2, 8], "x": 36, "y": 0 },
|
||||
{ "matrix": [2, 9], "x": 37, "y": 0 },
|
||||
{ "matrix": [2, 10], "x": 38, "y": 0 },
|
||||
{ "matrix": [2, 11], "x": 39, "y": 0 },
|
||||
{ "matrix": [2, 12], "x": 40, "y": 0 },
|
||||
{ "matrix": [1, 14], "x": 41, "y": 0 },
|
||||
{ "matrix": [2, 13], "x": 42, "y": 0 },
|
||||
{ "matrix": [2, 15], "x": 43, "y": 0 },
|
||||
{ "matrix": [3, 1], "x": 44, "y": 0 },
|
||||
{ "matrix": [3, 0], "x": 45, "y": 0 },
|
||||
{ "matrix": [3, 2], "x": 46, "y": 0 },
|
||||
{ "matrix": [3, 3], "x": 47, "y": 0 },
|
||||
{ "matrix": [3, 4], "x": 48, "y": 0 },
|
||||
{ "matrix": [3, 5], "x": 49, "y": 0 },
|
||||
{ "matrix": [3, 6], "x": 50, "y": 0 },
|
||||
{ "matrix": [3, 7], "x": 51, "y": 0 },
|
||||
{ "matrix": [3, 8], "x": 52, "y": 0 },
|
||||
{ "matrix": [3, 9], "x": 53, "y": 0 },
|
||||
{ "matrix": [3, 10], "x": 54, "y": 0 },
|
||||
{ "matrix": [3, 11], "x": 55, "y": 0 },
|
||||
{ "matrix": [3, 13], "x": 56, "y": 0 },
|
||||
{ "matrix": [3, 14], "x": 57, "y": 0 },
|
||||
{ "matrix": [4, 0], "x": 58, "y": 0 },
|
||||
{ "matrix": [4, 1], "x": 59, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 60, "y": 0 },
|
||||
{ "matrix": [4, 6], "x": 61, "y": 0 },
|
||||
{ "matrix": [4, 10], "x": 62, "y": 0 },
|
||||
{ "matrix": [4, 11], "x": 63, "y": 0 },
|
||||
{ "matrix": [4, 12], "x": 64, "y": 0 },
|
||||
{ "matrix": [4, 13], "x": 65, "y": 0 },
|
||||
{ "matrix": [4, 14], "x": 66, "y": 0 },
|
||||
{ "matrix": [4, 15], "x": 67, "y": 0 }
|
||||
]
|
||||
},
|
||||
"LAYOUT_iso_split_bs_space": {
|
||||
"layout": [
|
||||
{ "matrix": [0, 0], "x": 0, "y": 0 },
|
||||
{ "matrix": [0, 1], "x": 1, "y": 0 },
|
||||
{ "matrix": [0, 2], "x": 2, "y": 0 },
|
||||
{ "matrix": [0, 3], "x": 3, "y": 0 },
|
||||
{ "matrix": [0, 4], "x": 4, "y": 0 },
|
||||
{ "matrix": [0, 5], "x": 5, "y": 0 },
|
||||
{ "matrix": [0, 6], "x": 6, "y": 0 },
|
||||
{ "matrix": [0, 7], "x": 7, "y": 0 },
|
||||
{ "matrix": [0, 8], "x": 8, "y": 0 },
|
||||
{ "matrix": [0, 9], "x": 9, "y": 0 },
|
||||
{ "matrix": [0, 10], "x": 10, "y": 0 },
|
||||
{ "matrix": [0, 11], "x": 11, "y": 0 },
|
||||
{ "matrix": [0, 12], "x": 12, "y": 0 },
|
||||
{ "matrix": [0, 13], "x": 13, "y": 0 },
|
||||
{ "matrix": [0, 14], "x": 14, "y": 0 },
|
||||
{ "matrix": [0, 15], "x": 15, "y": 0 },
|
||||
{ "matrix": [1, 0], "x": 16, "y": 0 },
|
||||
{ "matrix": [1, 2], "x": 17, "y": 0 },
|
||||
{ "matrix": [1, 3], "x": 18, "y": 0 },
|
||||
{ "matrix": [1, 4], "x": 19, "y": 0 },
|
||||
{ "matrix": [1, 5], "x": 20, "y": 0 },
|
||||
{ "matrix": [1, 6], "x": 21, "y": 0 },
|
||||
{ "matrix": [1, 7], "x": 22, "y": 0 },
|
||||
{ "matrix": [1, 8], "x": 23, "y": 0 },
|
||||
{ "matrix": [1, 9], "x": 24, "y": 0 },
|
||||
{ "matrix": [1, 10], "x": 25, "y": 0 },
|
||||
{ "matrix": [1, 11], "x": 26, "y": 0 },
|
||||
{ "matrix": [1, 12], "x": 27, "y": 0 },
|
||||
{ "matrix": [1, 13], "x": 28, "y": 0 },
|
||||
{ "matrix": [1, 15], "x": 29, "y": 0 },
|
||||
{ "matrix": [2, 0], "x": 30, "y": 0 },
|
||||
{ "matrix": [2, 2], "x": 31, "y": 0 },
|
||||
{ "matrix": [2, 3], "x": 32, "y": 0 },
|
||||
{ "matrix": [2, 4], "x": 33, "y": 0 },
|
||||
{ "matrix": [2, 5], "x": 34, "y": 0 },
|
||||
{ "matrix": [2, 6], "x": 35, "y": 0 },
|
||||
{ "matrix": [2, 7], "x": 36, "y": 0 },
|
||||
{ "matrix": [2, 8], "x": 37, "y": 0 },
|
||||
{ "matrix": [2, 9], "x": 38, "y": 0 },
|
||||
{ "matrix": [2, 10], "x": 39, "y": 0 },
|
||||
{ "matrix": [2, 11], "x": 40, "y": 0 },
|
||||
{ "matrix": [2, 12], "x": 41, "y": 0 },
|
||||
{ "matrix": [1, 14], "x": 42, "y": 0 },
|
||||
{ "matrix": [2, 13], "x": 43, "y": 0 },
|
||||
{ "matrix": [2, 15], "x": 44, "y": 0 },
|
||||
{ "matrix": [3, 1], "x": 45, "y": 0 },
|
||||
{ "matrix": [3, 0], "x": 46, "y": 0 },
|
||||
{ "matrix": [3, 2], "x": 47, "y": 0 },
|
||||
{ "matrix": [3, 3], "x": 48, "y": 0 },
|
||||
{ "matrix": [3, 4], "x": 49, "y": 0 },
|
||||
{ "matrix": [3, 5], "x": 50, "y": 0 },
|
||||
{ "matrix": [3, 6], "x": 51, "y": 0 },
|
||||
{ "matrix": [3, 7], "x": 52, "y": 0 },
|
||||
{ "matrix": [3, 8], "x": 53, "y": 0 },
|
||||
{ "matrix": [3, 9], "x": 54, "y": 0 },
|
||||
{ "matrix": [3, 10], "x": 55, "y": 0 },
|
||||
{ "matrix": [3, 11], "x": 56, "y": 0 },
|
||||
{ "matrix": [3, 13], "x": 57, "y": 0 },
|
||||
{ "matrix": [3, 14], "x": 58, "y": 0 },
|
||||
{ "matrix": [4, 0], "x": 59, "y": 0 },
|
||||
{ "matrix": [4, 1], "x": 60, "y": 0 },
|
||||
{ "matrix": [4, 3], "x": 61, "y": 0 },
|
||||
{ "matrix": [4, 4], "x": 62, "y": 0 },
|
||||
{ "matrix": [4, 6], "x": 63, "y": 0 },
|
||||
{ "matrix": [4, 8], "x": 64, "y": 0 },
|
||||
{ "matrix": [4, 10], "x": 65, "y": 0 },
|
||||
{ "matrix": [4, 11], "x": 66, "y": 0 },
|
||||
{ "matrix": [4, 12], "x": 67, "y": 0 },
|
||||
{ "matrix": [4, 13], "x": 68, "y": 0 },
|
||||
{ "matrix": [4, 14], "x": 69, "y": 0 },
|
||||
{ "matrix": [4, 15], "x": 70, "y": 0 }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
* 2022 QMK / James Young (@noroadsleft)
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
* 2022 QMK / James Young (@noroadsleft)
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
/* Copyright 2022 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
# The via keymap for The Mark: 65
|
||||
|
||||
This folder contains the VIA configuration for the boardsource's The Mark: 65
|
|
@ -1,20 +1 @@
|
|||
# MCU name
|
||||
MCU = atmega32u4
|
||||
|
||||
# Bootloader selection
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control
|
||||
CONSOLE_ENABLE = no # Console for debug
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
NKRO_ENABLE = no # Enable N-Key Rollover
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
|
||||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
|
||||
AUDIO_ENABLE = no # Audio output
|
||||
RGB_MATRIX_ENABLE = no # Enable keyboard RGB matrix (do not use together with RGBLIGHT_ENABLE)
|
||||
RGB_MATRIX_DRIVER = WS2812 # RGB matrix driver support
|
||||
RGB_MATRIX_DRIVER = WS2812
|
||||
|
|
|
@ -1,49 +0,0 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "the_mark.h"
|
||||
|
||||
/* Map physical under glow LEDs for RGB matrix support */
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
led_config_t g_led_config = { {
|
||||
// Key Matrix to LED Index
|
||||
{ 10 , NO_LED, 9 , NO_LED, 8 , 7 , NO_LED, 6 , 5 , NO_LED, 4 , 3 , NO_LED, 2 , NO_LED, 1 },
|
||||
{ 11 , NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 0 },
|
||||
{ 12 , NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 23 },
|
||||
{ 13 , NO_LED, 14 , NO_LED, 15 , 16 , NO_LED, 17 , 18 , NO_LED, 19 , 20 , NO_LED, 21 , NO_LED, NO_LED },
|
||||
{ NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 22 },
|
||||
}, {
|
||||
// LED Index to Physical Position
|
||||
{224, 42}, {224, 21}, {209, 21}, {179, 21}, {164, 21}, {134, 21}, {119, 21}, {89, 21}, {74, 21}, {45, 21}, {30, 21}, {30, 42},
|
||||
{30, 64}, {30, 85}, {45, 85}, {74, 85}, {89, 85}, {119, 85}, {134, 85}, {164, 85}, {179, 85}, {209, 85}, {224, 85}, {224, 64}
|
||||
}, {
|
||||
// LED Index to Flag
|
||||
LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
|
||||
LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL,
|
||||
LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL
|
||||
} };
|
||||
|
||||
|
||||
void suspend_power_down_kb(void) {
|
||||
rgb_matrix_set_suspend_state(true);
|
||||
suspend_power_down_user();
|
||||
}
|
||||
|
||||
void suspend_wakeup_init_kb(void) {
|
||||
rgb_matrix_set_suspend_state(false);
|
||||
suspend_wakeup_init_user();
|
||||
}
|
||||
#endif
|
|
@ -1,109 +0,0 @@
|
|||
/* Copyright 2020 Boardsource
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#define ___ KC_NO
|
||||
|
||||
/*
|
||||
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┐ ┌───────┐
|
||||
* │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E ││0F │ │0D │ 2u Backspace
|
||||
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┤ └─┬─────┤
|
||||
* │10 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E ││1F │ │ │
|
||||
* 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ ┌──┴┐2D │ ISO Enter
|
||||
* LShift │20 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D ││2F │ │1E │ │
|
||||
* ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ └───┴────┘
|
||||
* │31 │ │31 │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │┌───┐
|
||||
* └────────┘ ├────┼───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┘│3E │
|
||||
* │40 │41 │43 │44 │46 │48 │4A │4B │4C │┌───┼───┼───┐
|
||||
* └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┘│4D │4E │4F │
|
||||
* └───┴───┴───┘
|
||||
* ┌────────────────────────┬─────┬─────┐
|
||||
* 6.25u Space │46 │4A │4B │ RWKL
|
||||
* └────────────────────────┴─────┴─────┘
|
||||
*/
|
||||
|
||||
#define LAYOUT_all( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
|
||||
K10, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
|
||||
K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \
|
||||
K31, K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
|
||||
K40, K41, K43, K44, K46, K48, K4A, K4B, K4C, K4D, K4E, K4F \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \
|
||||
{ K10, ___, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
|
||||
{ K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, ___, K2F }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E, ___ }, \
|
||||
{ K40, K41, ___, K43, K44, ___, K46, ___, K48, ___, K4A, K4B, K4C, K4D, K4E, K4F } \
|
||||
}
|
||||
|
||||
#define LAYOUT_ansi( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \
|
||||
K10, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
|
||||
K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \
|
||||
K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
|
||||
K40, K41, K43, K46, K4A, K4B, K4C, K4D, K4E, K4F \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, ___, K0F }, \
|
||||
{ K10, ___, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
|
||||
{ K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, ___, K2F }, \
|
||||
{ ___, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E, ___ }, \
|
||||
{ K40, K41, ___, K43, ___, ___, K46, ___, ___, ___, K4A, K4B, K4C, K4D, K4E, K4F } \
|
||||
}
|
||||
|
||||
#define LAYOUT_ansi_split_bs_space( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
|
||||
K10, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \
|
||||
K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \
|
||||
K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
|
||||
K40, K41, K43, K44, K46, K48, K4A, K4B, K4C, K4D, K4E, K4F \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \
|
||||
{ K10, ___, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
|
||||
{ K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, ___, K2F }, \
|
||||
{ ___, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E, ___ }, \
|
||||
{ K40, K41, ___, K43, K44, ___, K46, ___, K48, ___, K4A, K4B, K4C, K4D, K4E, K4F } \
|
||||
}
|
||||
|
||||
#define LAYOUT_iso( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \
|
||||
K10, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \
|
||||
K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1E, K2D, K2F, \
|
||||
K31, K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
|
||||
K40, K41, K43, K46, K4A, K4B, K4C, K4D, K4E, K4F \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, ___, K0F }, \
|
||||
{ K10, ___, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
|
||||
{ K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, ___, K2F }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E, ___ }, \
|
||||
{ K40, K41, ___, K43, ___, ___, K46, ___, ___, ___, K4A, K4B, K4C, K4D, K4E, K4F } \
|
||||
}
|
||||
|
||||
#define LAYOUT_iso_split_bs_space( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \
|
||||
K10, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \
|
||||
K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1E, K2D, K2F, \
|
||||
K31, K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
|
||||
K40, K41, K43, K44, K46, K48, K4A, K4B, K4C, K4D, K4E, K4F \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \
|
||||
{ K10, ___, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \
|
||||
{ K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, ___, K2F }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E, ___ }, \
|
||||
{ K40, K41, ___, K43, K44, ___, K46, ___, K48, ___, K4A, K4B, K4C, K4D, K4E, K4F } \
|
||||
}
|
|
@ -4,8 +4,82 @@
|
|||
"maintainer": "awkannan",
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"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":"Bkspc", "x":13, "y":0}, {"label":"Del", "x":14, "y":0}, {"label":"Del", "x":15.5, "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":"PgUp", "x":15.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":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"PgDn", "x":15.5, "y":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":1.75}, {"label":"Fn", "x":15.5, "y":3}, {"label":"Up", "x":14.25, "y":3.25}, {"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}, {"label":"Win", "x":11, "y":4}, {"label":"Ctrl", "x":12, "y":4}, {"label":"Left", "x":13.25, "y":4.25}, {"label":"Down", "x":14.25, "y":4.25}, {"label":"Right", "x":15.25, "y":4.25}]
|
||||
"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":"Bkspc", "x":13, "y":0},
|
||||
{"label":"Del", "x":14, "y":0},
|
||||
{"label":"Del", "x":15.5, "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":"PgUp", "x":15.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":"Enter", "x":12.75, "y":2, "w":2.25},
|
||||
{"label":"PgDn", "x":15.5, "y":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":1.75},
|
||||
{"label":"Up", "x":14.25, "y":3.25},
|
||||
{"label":"Fn", "x":15.5, "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},
|
||||
{"label":"Win", "x":11, "y":4},
|
||||
{"label":"Ctrl", "x":12, "y":4},
|
||||
{"label":"Left", "x":13.25, "y":4.25},
|
||||
{"label":"Down", "x":14.25, "y":4.25},
|
||||
{"label":"Right", "x":15.25, "y":4.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -4,7 +4,79 @@
|
|||
"maintainer": "awkannan",
|
||||
"layouts": {
|
||||
"LAYOUT_default": {
|
||||
"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":"Backspace", "x":13, "y":0, "w":2}, {"label":"Del", "x":15.5, "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":"PgUp", "x":15.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":"Enter", "x":12.75, "y":2, "w":2.25}, {"label":"PgDn", "x":15.5, "y":2}, {"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":15.5, "y":3}, {"label":"Up", "x":14.25, "y":3.25}, {"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.5}, {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, {"label":"Left", "x":13.25, "y":4.25}, {"label":"Down", "x":14.25, "y":4.25}, {"label":"Right", "x":15.25, "y":4.25}]
|
||||
"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":"Backspace", "x":13, "y":0, "w":2},
|
||||
{"label":"Del", "x":15.5, "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":"PgUp", "x":15.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":"Enter", "x":12.75, "y":2, "w":2.25},
|
||||
{"label":"PgDn", "x":15.5, "y":2},
|
||||
|
||||
{"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":"Up", "x":14.25, "y":3.25},
|
||||
{"label":"Fn", "x":15.5, "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.5},
|
||||
{"label":"Ctrl", "x":11.5, "y":4, "w":1.5},
|
||||
{"label":"Left", "x":13.25, "y":4.25},
|
||||
{"label":"Down", "x":14.25, "y":4.25},
|
||||
{"label":"Right", "x":15.25, "y":4.25}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#include "quark_plus.h"
|
||||
|
||||
bool encoder_update_kb(uint8_t index, bool clockwise) {
|
||||
if (!encoder_update_kb(index, clockwise)) { return false; }
|
||||
if (!encoder_update_user(index, clockwise)) { return false; }
|
||||
if (index == 1) { /* left encoder*/
|
||||
if (clockwise){
|
||||
tap_code(KC_WH_U);
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright 2022 Vitaly Volkov (@vlkv)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "chocofly.h"
|
||||
|
||||
#ifdef ENCODER_ENABLE
|
||||
bool encoder_update_kb(uint8_t index, bool clockwise) {
|
||||
if (!encoder_update_user(index, clockwise)) { return false; }
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLU);
|
||||
} else {
|
||||
tap_code(KC_VOLD);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif
|
|
@ -0,0 +1,10 @@
|
|||
// Copyright 2022 Vitaly Volkov (@vlkv)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifdef KEYBOARD_chocofly_v1
|
||||
#include "v1.h"
|
||||
#endif
|
||||
|
||||
#include "quantum.h"
|
|
@ -0,0 +1,6 @@
|
|||
// Copyright 2022 Vitaly Volkov (@vlkv)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
|
@ -0,0 +1,23 @@
|
|||
# Chocofly
|
||||
|
||||
![Chocofly v1.0](https://github.com/vlkv/chocofly/blob/master/images/chocofly_v1-0.jpg)
|
||||
|
||||
An open source ergonomic monoblock 60% keyboard.
|
||||
|
||||
* Keyboard Maintainer: [Vitaly Volkov](https://github.com/vlkv)
|
||||
* Hardware Supported: Chocofly PCB v1, Pro Micro 5V/16MHz and compatible.
|
||||
* Hardware Availability: [github.com/vlkv/chocofly](https://github.com/vlkv/chocofly)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make chocofly/v1:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make chocofly/v1:default:flash
|
||||
|
||||
## Bootloader
|
||||
|
||||
Briefly press the button along the top edge of the PCB next to the microcontroller.
|
||||
|
||||
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).
|
|
@ -0,0 +1,22 @@
|
|||
// Copyright 2022 Vitaly Volkov (@vlkv)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define VENDOR_ID 0xCEE2
|
||||
#define PRODUCT_ID 0x1001
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER vitvlkv
|
||||
#define PRODUCT Chocofly
|
||||
|
||||
#define MATRIX_ROWS 8
|
||||
#define MATRIX_COLS 8
|
||||
|
||||
#define MATRIX_ROW_PINS { D1, D0, D4, C6, D7, E6, B4, B5 }
|
||||
#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6 }
|
||||
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define ENCODERS_PAD_A { D3 }
|
||||
#define ENCODERS_PAD_B { D2 }
|
||||
#define ENCODER_RESOLUTION 2
|
|
@ -0,0 +1,44 @@
|
|||
// Copyright 2022 Vitaly Volkov (@vlkv)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
_QWERTY,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
};
|
||||
|
||||
#define RS_SPC LT(_RAISE, KC_SPC)
|
||||
#define LW_LGUI LT(_LOWER, KC_LGUI)
|
||||
#define RS_LGUI LT(_RAISE, KC_LGUI)
|
||||
#define MT_LALT LALT_T(KC_ESC)
|
||||
#define MT_RALT RALT_T(KC_ENT)
|
||||
#define MT_LSFT LSFT_T(KC_EQL)
|
||||
#define MT_RSFT RSFT_T(KC_MINS)
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_QWERTY] = LAYOUT(
|
||||
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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
|
||||
KC_BSLS, KC_A, KC_S, KC_D, KC_F, KC_G, KC__MUTE, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
|
||||
KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_INS, KC_PSCR, KC_RBRC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RCTL,
|
||||
LW_LGUI, MT_LSFT, RS_SPC, MT_LALT, MT_RALT, MO(_LOWER),MT_RSFT, RS_LGUI
|
||||
),
|
||||
[_LOWER] = LAYOUT(
|
||||
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_MINS, KC_UNDS, KC_PLUS, KC_EQL,
|
||||
_______, KC_0, KC_1, KC_2, KC_3, KC_PCMM, XXXXXXX, KC_HOME, KC_UP, KC_END, XXXXXXX, XXXXXXX,
|
||||
_______, KC_0, KC_4, KC_5, KC_6, KC_DEL, _______, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX,
|
||||
_______, KC_0, KC_7, KC_8, KC_9, KC_0, _______, _______, _______, _______, XXXXXXX, KC_PGUP, KC_APP, KC_PGDN, XXXXXXX, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_RAISE] = LAYOUT(
|
||||
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_MINS, KC_UNDS, KC_PLUS, KC_EQL,
|
||||
_______, XXXXXXX, XXXXXXX, KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX, KC_EXLM, KC_AT, KC_HASH, XXXXXXX, XXXXXXX,
|
||||
_______, XXXXXXX, XXXXXXX, KC_LPRN, KC_RPRN, KC_DEL, _______, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, XXXXXXX, XXXXXXX,
|
||||
_______, XXXXXXX, XXXXXXX, KC_LCBR, KC_RCBR, XXXXXXX, _______, _______, _______, _______, XXXXXXX, KC_AMPR, KC_ASTR, KC_PCMM, XXXXXXX, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
};
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
// Copyright 2022 Will Winder (@winder)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
//
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layers {
|
||||
_QWERTY,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
};
|
||||
|
||||
#define FN_1 MO(_LOWER)
|
||||
#define FN_2 MO(_RAISE)
|
||||
#define TRMINAL LGUI(KC_ENT)
|
||||
#define RESIZE LGUI(KC_R)
|
||||
#define BROWSER LSG(KC_ENT) // Left Shift + GUI, ENT.
|
||||
|
||||
// required for my PC
|
||||
#undef KC_VOLU
|
||||
#undef KC_VOLD
|
||||
#define KC_VOLU KC__VOLUP
|
||||
#define KC_VOLD KC__VOLDOWN
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_QWERTY] = LAYOUT(
|
||||
KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL ,
|
||||
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_UNDS,
|
||||
KC_LCTL, KC_A , KC_S , KC_D , KC_F , KC_G , KC_MUTE, KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT,
|
||||
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , TRMINAL, BROWSER, RESIZE , KC_UNDS, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT,
|
||||
KC_LALT, KC_LGUI, FN_1 , KC_ENT , FN_2 , KC_SPC , KC_BSPC, KC_DEL
|
||||
),
|
||||
[_LOWER] = LAYOUT(
|
||||
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 ,
|
||||
KC_GRV , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL ,
|
||||
KC_TILD, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE,
|
||||
_______, KC_EQL , KC_MINS, KC_PLUS, KC_LCBR, KC_RCBR, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_SCLN, KC_COLN, KC_BSLS, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
[_RAISE] = LAYOUT(
|
||||
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
_______, KC_0, KC_1, KC_2, KC_3, KC_BSPC, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
|
||||
_______, KC_0, KC_4, KC_5, KC_6, KC_DEL, _______, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, XXXXXXX, XXXXXXX,
|
||||
_______, KC_0, KC_7, KC_8, KC_9, KC_DOT, _______, _______, _______, _______, KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______
|
||||
),
|
||||
};
|
||||
|
||||
#ifdef ENCODER_ENABLE
|
||||
bool encoder_update_user(uint8_t index, bool clockwise) {
|
||||
if (index == 0) {
|
||||
if (clockwise) {
|
||||
tap_code(KC_VOLD);
|
||||
} else {
|
||||
tap_code(KC_VOLU);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
#endif
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue