Init: Corne-only zmk-config
Extracted from zmk-config-archive (multi-board repo). Corne 42-key with nice_nano_v2, nice_oled, RGB, ZMK Studio, Javelin steno.
This commit is contained in:
commit
9d21b8ff1e
35 changed files with 3830 additions and 0 deletions
2
.gitattributes
vendored
Normal file
2
.gitattributes
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
*.dtsi linguist-language=C++
|
||||
*.keymap linguist-language=C++
|
||||
5
.github/workflows/build.yml
vendored
Normal file
5
.github/workflows/build.yml
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
on: [push, pull_request, workflow_dispatch]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@v0.3.0
|
||||
25
.github/workflows/keymap-drawer.yaml
vendored
Normal file
25
.github/workflows/keymap-drawer.yaml
vendored
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# keymap -c config/config_keymap-drawer.yaml parse -c 12 -z config/corne.keymap > keymap-drawer/corne.yaml
|
||||
# keymap -c config/config_keymap-drawer.yaml draw keymap-drawer/corne.yaml > keymap-drawer/corne.svg
|
||||
|
||||
# Example for using the keymap-drawer ZMK user config workflow
|
||||
name: Draw ZMK keymaps
|
||||
on:
|
||||
workflow_dispatch: # can be triggered manually
|
||||
push: # automatically run on changes to following paths
|
||||
paths:
|
||||
- "config/*.keymap"
|
||||
- "config/config_keymap-drawer.yaml"
|
||||
- .github/workflows/keymap-drawer.yaml
|
||||
|
||||
jobs:
|
||||
draw:
|
||||
uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@main
|
||||
permissions:
|
||||
contents: write # allow workflow to commit to the repo
|
||||
with:
|
||||
amend_commit: true
|
||||
keymap_patterns: "config/*.keymap" # path to the keymaps to parse
|
||||
config_path: "config/config_keymap-drawer.yaml" # config file, ignored if not exists
|
||||
output_folder: "keymap-drawer" # path to save produced SVG and keymap YAML files
|
||||
parse_args: "" # map of extra args to pass to `keymap parse`, e.g. "corne:'-l Def Lwr Rse' cradio:''"
|
||||
draw_args: "" # map of extra args to pass to `keymap draw`, e.g. "corne:'-k corne_rotated' cradio:'-k paroxysm'"
|
||||
91
.gitignore
vendored
Normal file
91
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
# zmk
|
||||
zmk/
|
||||
|
||||
# sketchybar
|
||||
sketchybar/dotfiles/
|
||||
sketchybar/dotfiles
|
||||
sketchybar/dotfiles/*
|
||||
|
||||
# MacOS
|
||||
.DS_Store
|
||||
vim-tools_notiz.vim
|
||||
.DS_Store
|
||||
./*/.DS_Store
|
||||
.vscode
|
||||
# .vimspector.json
|
||||
push.sh
|
||||
/test
|
||||
test/
|
||||
|
||||
# c, cpp
|
||||
*.x
|
||||
*.d
|
||||
*.dSYM
|
||||
*.o
|
||||
*.out
|
||||
|
||||
# firmware build output
|
||||
*.uf2
|
||||
*.hex
|
||||
*.bin
|
||||
|
||||
# log
|
||||
*.log
|
||||
|
||||
# cache
|
||||
*.cache
|
||||
cache/
|
||||
|
||||
# Windows
|
||||
Thumbs.db
|
||||
Desktop.ini
|
||||
|
||||
# Tags
|
||||
#TAGS
|
||||
#!TAGS/
|
||||
#tags
|
||||
doc/tags
|
||||
tags-cn
|
||||
!tags/
|
||||
.tags
|
||||
.tags1
|
||||
tags.lock
|
||||
tags.temp
|
||||
gtags.files
|
||||
GTAGS
|
||||
GRTAGS
|
||||
GPATH
|
||||
cscope.files
|
||||
cscope.out
|
||||
cscope.in.out
|
||||
cscope.po.out
|
||||
|
||||
# Vim
|
||||
[._]*.s[a-w][a-z]
|
||||
[._]s[a-w][a-z]
|
||||
*.un~
|
||||
Session.vim
|
||||
.netrwhist
|
||||
*~
|
||||
|
||||
# Test % Tmp
|
||||
test.*
|
||||
tmp.*
|
||||
temp.*
|
||||
|
||||
# Java
|
||||
*.class
|
||||
|
||||
# JavaScript
|
||||
node_modules
|
||||
|
||||
# Python
|
||||
*.pyc
|
||||
.idea/
|
||||
/.idea
|
||||
# build/
|
||||
__pycache__
|
||||
|
||||
# Rust
|
||||
target/
|
||||
**/*.rs.bk
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2020 The ZMK Contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
47
boards/nice_nano.overlay
Normal file
47
boards/nice_nano.overlay
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
#include <dt-bindings/led/led.h>
|
||||
|
||||
&pinctrl {
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <10>; /* arbitrary; change at will */
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
};
|
||||
// vim: filetype=dts fdm=marker:
|
||||
75
boards/nice_nano_v2.overlay
Normal file
75
boards/nice_nano_v2.overlay
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
#include <dt-bindings/led/led.h>
|
||||
|
||||
&pinctrl {
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <10>; /* arbitrary; change at will */
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
};
|
||||
|
||||
/* Override flash size for build testing — actual hardware may differ */
|
||||
&flash0 {
|
||||
reg = <0x00000000 DT_SIZE_M(4)>;
|
||||
|
||||
partitions {
|
||||
/delete-node/ partition@0;
|
||||
/delete-node/ partition@26000;
|
||||
/delete-node/ partition@ec000;
|
||||
/delete-node/ partition@f4000;
|
||||
|
||||
sd_partition: partition@0 {
|
||||
reg = <0x00000000 0x00026000>;
|
||||
};
|
||||
|
||||
code_partition: partition@26000 {
|
||||
reg = <0x00026000 0x003c8000>;
|
||||
};
|
||||
|
||||
storage_partition: partition@3ee000 {
|
||||
reg = <0x003ee000 0x00008000>;
|
||||
};
|
||||
|
||||
boot_partition: partition@3f6000 {
|
||||
reg = <0x003f6000 0x0000a000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
// vim: filetype=dts fdm=marker:
|
||||
58
boards/shields/corne/Kconfig.defconfig
Normal file
58
boards/shields/corne/Kconfig.defconfig
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
if SHIELD_CORNE_LEFT || SHIELD_CORNE_DONGLE_XIAO || SHIELD_CORNE_DONGLE_PRO_MICRO
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "Corne"
|
||||
|
||||
config ZMK_SPLIT_ROLE_CENTRAL
|
||||
default y
|
||||
|
||||
# if SHIELD_CORNE_DONGLE_XIAO || SHIELD_CORNE_DONGLE_PRO_MICRO
|
||||
|
||||
# config ZMK_USB
|
||||
# default y
|
||||
|
||||
# endif
|
||||
|
||||
endif
|
||||
|
||||
if SHIELD_CORNE_LEFT || SHIELD_CORNE_RIGHT || SHIELD_CORNE_LEFT_PERIPHERAL || SHIELD_CORNE_DONGLE_XIAO || SHIELD_CORNE_DONGLE_PRO_MICRO
|
||||
|
||||
config ZMK_SPLIT
|
||||
default y
|
||||
|
||||
if ZMK_DISPLAY
|
||||
|
||||
config I2C
|
||||
default y
|
||||
|
||||
config SSD1306
|
||||
default y
|
||||
|
||||
if SHIELD_CORNE_DONGLE_XIAO || SHIELD_CORNE_DONGLE_PRO_MICRO
|
||||
|
||||
choice ZMK_DISPLAY_WORK_QUEUE
|
||||
default ZMK_DISPLAY_WORK_QUEUE_DEDICATED
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
endif # ZMK_DISPLAY
|
||||
|
||||
if LVGL
|
||||
|
||||
config LV_Z_VDB_SIZE
|
||||
default 64
|
||||
|
||||
config LV_DPI_DEF
|
||||
default 148
|
||||
|
||||
config LV_Z_BITS_PER_PIXEL
|
||||
default 1
|
||||
|
||||
choice LV_COLOR_DEPTH
|
||||
default LV_COLOR_DEPTH_1
|
||||
endchoice
|
||||
|
||||
endif # LVGL
|
||||
|
||||
endif
|
||||
17
boards/shields/corne/Kconfig.shield
Normal file
17
boards/shields/corne/Kconfig.shield
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# Copyright (c) 2020 Pete Johanson
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config SHIELD_CORNE_LEFT
|
||||
def_bool $(shields_list_contains,corne_left)
|
||||
|
||||
config SHIELD_CORNE_RIGHT
|
||||
def_bool $(shields_list_contains,corne_right)
|
||||
|
||||
config SHIELD_CORNE_DONGLE_XIAO
|
||||
def_bool $(shields_list_contains,corne_dongle_xiao)
|
||||
|
||||
config SHIELD_CORNE_LEFT_PERIPHERAL
|
||||
def_bool $(shields_list_contains,corne_left_peripheral)
|
||||
|
||||
config SHIELD_CORNE_DONGLE_PRO_MICRO
|
||||
def_bool $(shields_list_contains,corne_dongle_pro_micro)
|
||||
46
boards/shields/corne/boards/nice_nano.overlay
Normal file
46
boards/shields/corne/boards/nice_nano.overlay
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
#include <dt-bindings/led/led.h>
|
||||
|
||||
&pinctrl {
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <10>; /* arbitrary; change at will */
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
};
|
||||
46
boards/shields/corne/boards/nice_nano_v2.overlay
Normal file
46
boards/shields/corne/boards/nice_nano_v2.overlay
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
#include <dt-bindings/led/led.h>
|
||||
|
||||
&pinctrl {
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 0, 6)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <10>; /* arbitrary; change at will */
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
};
|
||||
6
boards/shields/corne/corne.conf
Normal file
6
boards/shields/corne/corne.conf
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# Uncomment the following lines to enable the Corne RGB Underglow
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
# CONFIG_WS2812_STRIP=y
|
||||
|
||||
# Uncomment the following line to enable the Corne OLED Display
|
||||
# CONFIG_ZMK_DISPLAY=y
|
||||
94
boards/shields/corne/corne.dtsi
Normal file
94
boards/shields/corne/corne.dtsi
Normal file
|
|
@ -0,0 +1,94 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Pete Johanson
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/foostan/corne/5column.dtsi>
|
||||
#include <layouts/foostan/corne/6column.dtsi>
|
||||
|
||||
&foostan_corne_6col_layout {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
&foostan_corne_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zephyr,display = &oled;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,physical-layout = &foostan_corne_6col_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <4>;
|
||||
// | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 | SW1 |
|
||||
// | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 | SW7 |
|
||||
// | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 | SW13 |
|
||||
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
five_column_transform: keymap_transform_1 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <10>;
|
||||
rows = <4>;
|
||||
// | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 |
|
||||
// | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 |
|
||||
// | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 |
|
||||
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||
map = <
|
||||
RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10)
|
||||
RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10)
|
||||
RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
wakeup-source;
|
||||
|
||||
diode-direction = "col2row";
|
||||
row-gpios
|
||||
= <&pro_micro 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&pro_micro 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&pro_micro 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&pro_micro 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
;
|
||||
|
||||
};
|
||||
|
||||
// TODO: per-key RGB node(s)?
|
||||
};
|
||||
|
||||
&pro_micro_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <32>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <31>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
com-sequential;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
58
boards/shields/corne/corne.keymap
Normal file
58
boards/shields/corne/corne.keymap
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
// #include "../../../corne.keymap"
|
||||
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
|
||||
/ {
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | TAB | Q | W | E | R | T | | Y | U | I | O | P | BKSP |
|
||||
// | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
|
||||
// | SHFT | Z | X | C | V | B | | N | M | , | . | / | ESC |
|
||||
// | GUI | LWR | SPC | | ENT | RSE | ALT |
|
||||
bindings = <
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC
|
||||
&kp LCTRL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC
|
||||
&kp LGUI &mo 1 &kp SPACE &kp RET &mo 2 &kp RALT
|
||||
>;
|
||||
};
|
||||
lower_layer {
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | TAB | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BKSP |
|
||||
// | BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | LFT | DWN | UP | RGT | | |
|
||||
// | SHFT | | | | | | | | | | | | |
|
||||
// | GUI | | SPC | | ENT | | ALT |
|
||||
bindings = <
|
||||
&kp TAB &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans &trans
|
||||
&kp LSHFT &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
&kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
|
||||
>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | TAB | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BKSP |
|
||||
// | CTRL | | | | | | | - | = | [ | ] | \ | ` |
|
||||
// | SHFT | | | | | | | _ | + | { | } | "|" | ~ |
|
||||
// | GUI | | SPC | | ENT | | ALT |
|
||||
bindings = <
|
||||
&kp TAB &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp BSPC
|
||||
&kp LCTRL &trans &trans &trans &trans &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE
|
||||
&kp LSHFT &trans &trans &trans &trans &trans &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE
|
||||
&kp LGUI &trans &kp SPACE &kp RET &trans &kp RALT
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
18
boards/shields/corne/corne.zmk.yml
Normal file
18
boards/shields/corne/corne.zmk.yml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
file_format: "1"
|
||||
id: corne
|
||||
name: Corne
|
||||
type: shield
|
||||
url: https://github.com/foostan/crkbd/
|
||||
requires: [pro_micro]
|
||||
exposes: [i2c_oled]
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
- underglow
|
||||
- studio
|
||||
siblings:
|
||||
- corne_left
|
||||
- corne_right
|
||||
- corne_left_peripheral
|
||||
- corne_dongle_xiao
|
||||
- corne_dongle_pro_micro
|
||||
30
boards/shields/corne/corne_dongle_pro_micro.conf
Normal file
30
boards/shields/corne/corne_dongle_pro_micro.conf
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# MC:
|
||||
# compatible con todas las versiones de nrf52840 (pro_micro):
|
||||
# - nice_nano (no probado)
|
||||
# - nice_nano_v2 (probado)
|
||||
# - nice_nano_v2 (super mini -> nice_nano_v2 clon) (probado)
|
||||
# - nrfmicro_11 (no probado)
|
||||
# - nrfmicro_11_flipped (no probado)
|
||||
# - nrfmicro_13 (no probado)
|
||||
# - puchi_ble_v1 (probado)
|
||||
|
||||
### DONGLE MODE
|
||||
CONFIG_ZMK_SPLIT_BLE_CENTRAL_PERIPHERALS=2
|
||||
|
||||
### DONGLE OPTIONS
|
||||
# 3 profiles (n+2)
|
||||
CONFIG_BT_MAX_CONN=5
|
||||
CONFIG_BT_MAX_PAIRED=5
|
||||
|
||||
### DISPLAY DONGLE OPTIONS
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
CONFIG_BT_BAS=n
|
||||
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_FETCHING=y
|
||||
|
||||
### POWER OPTIONS
|
||||
# La unidad del intervalo del informe de energía de la batería es segundos
|
||||
CONFIG_ZMK_BATTERY_REPORT_INTERVAL=60
|
||||
|
||||
### DEBUG OPTIONS
|
||||
# CONFIG_ZMK_USB_LOGGING=y
|
||||
# CONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000
|
||||
182
boards/shields/corne/corne_dongle_pro_micro.overlay
Normal file
182
boards/shields/corne/corne_dongle_pro_micro.overlay
Normal file
|
|
@ -0,0 +1,182 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Pete Johanson
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/foostan/corne/5column.dtsi>
|
||||
#include <layouts/foostan/corne/6column.dtsi>
|
||||
|
||||
&foostan_corne_6col_layout {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
&foostan_corne_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zephyr,display = &oled;
|
||||
zmk,kscan = &mock_kscan;
|
||||
zmk,physical-layout = &foostan_corne_6col_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <4>;
|
||||
// | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 | SW1 |
|
||||
// | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 | SW7 |
|
||||
// | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 | SW13 |
|
||||
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
five_column_transform: keymap_transform_1 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <10>;
|
||||
rows = <4>;
|
||||
// | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 |
|
||||
// | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 |
|
||||
// | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 |
|
||||
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||
map = <
|
||||
RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10)
|
||||
RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10)
|
||||
RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
/*
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-direct";
|
||||
|
||||
input-gpios
|
||||
= <&xiao_d 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
, <&xiao_d 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
, <&xiao_d 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
, <&xiao_d 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
;
|
||||
};
|
||||
*/
|
||||
|
||||
mock_kscan: kscan_0 {
|
||||
compatible = "zmk,kscan-mock";
|
||||
// wakeup-source;
|
||||
columns = <0>;
|
||||
rows = <0>;
|
||||
events = <0>;
|
||||
};
|
||||
// TODO: per-key RGB node(s)?
|
||||
};
|
||||
|
||||
&pro_micro_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <64>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <63>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
// 128x64 OLED
|
||||
&pro_micro_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <64>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <63>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
// 128x32 OLED
|
||||
&pro_micro_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <32>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <31>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
com-sequential;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
// 128x64 OLED model sh1106
|
||||
|
||||
&pro_micro_i2c {
|
||||
status = "okay";
|
||||
oled: sh1106@3c {
|
||||
compatible = "sinowealth,sh1106";
|
||||
reg = <0x3c>;
|
||||
width = <129>;
|
||||
height = <64>;
|
||||
segment-offset = <1>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <63>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
// 128x128 OLED model sh1107
|
||||
&pro_micro_i2c {
|
||||
status = "okay";
|
||||
oled: sh1106@3c {
|
||||
compatible = "sinowealth,sh1106";
|
||||
reg = <0x3c>;
|
||||
width = <120>;
|
||||
height = <128>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <119>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
*/
|
||||
// vim: filetype=dts fdm=marker:
|
||||
24
boards/shields/corne/corne_dongle_xiao.conf
Normal file
24
boards/shields/corne/corne_dongle_xiao.conf
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# MC:
|
||||
# compatible con todas las versiones de nrf52840 (xiao):
|
||||
# - seeeduino_xiao_ble (probado)
|
||||
|
||||
### DONGLE MODE
|
||||
CONFIG_ZMK_SPLIT_BLE_CENTRAL_PERIPHERALS=2
|
||||
|
||||
### DONGLE OPTIONS
|
||||
# 3 profiles (n+2)
|
||||
CONFIG_BT_MAX_CONN=5
|
||||
CONFIG_BT_MAX_PAIRED=5
|
||||
|
||||
### DISPLAY DONGLE OPTIONS
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
CONFIG_BT_BAS=n
|
||||
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_FETCHING=y
|
||||
|
||||
### POWER OPTIONS
|
||||
# La unidad del intervalo del informe de energía de la batería es segundos
|
||||
CONFIG_ZMK_BATTERY_REPORT_INTERVAL=60
|
||||
|
||||
### DEBUG OPTIONS
|
||||
# CONFIG_ZMK_USB_LOGGING=y
|
||||
# CONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000
|
||||
220
boards/shields/corne/corne_dongle_xiao.overlay
Normal file
220
boards/shields/corne/corne_dongle_xiao.overlay
Normal file
|
|
@ -0,0 +1,220 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Pete Johanson
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include <layouts/foostan/corne/5column.dtsi>
|
||||
#include <layouts/foostan/corne/6column.dtsi>
|
||||
|
||||
&foostan_corne_6col_layout {
|
||||
transform = <&default_transform>;
|
||||
};
|
||||
|
||||
&foostan_corne_5col_layout {
|
||||
transform = <&five_column_transform>;
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zephyr,display = &oled;
|
||||
zmk,kscan = &mock_kscan;
|
||||
zmk,physical-layout = &foostan_corne_6col_layout;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <4>;
|
||||
// | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 | SW1 |
|
||||
// | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 | SW7 |
|
||||
// | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 | SW13 |
|
||||
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
five_column_transform: keymap_transform_1 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <10>;
|
||||
rows = <4>;
|
||||
// | SW2 | SW3 | SW4 | SW5 | SW6 | | SW6 | SW5 | SW4 | SW3 | SW2 |
|
||||
// | SW8 | SW9 | SW10 | SW11 | SW12 | | SW12 | SW11 | SW10 | SW9 | SW8 |
|
||||
// | SW14 | SW15 | SW16 | SW17 | SW18 | | SW18 | SW17 | SW16 | SW15 | SW14 |
|
||||
// | SW19 | SW20 | SW21 | | SW21 | SW20 | SW19 |
|
||||
map = <
|
||||
RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10)
|
||||
RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10)
|
||||
RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
/*
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-direct";
|
||||
|
||||
input-gpios
|
||||
= <&xiao_d 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
, <&xiao_d 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
, <&xiao_d 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
, <&xiao_d 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>
|
||||
;
|
||||
};
|
||||
*/
|
||||
|
||||
mock_kscan: kscan_0 {
|
||||
compatible = "zmk,kscan-mock";
|
||||
// wakeup-source;
|
||||
columns = <0>;
|
||||
rows = <0>;
|
||||
events = <0>;
|
||||
};
|
||||
// TODO: per-key RGB node(s)?
|
||||
};
|
||||
|
||||
// 128x64 OLED
|
||||
&xiao_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <64>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <63>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
// 128x64 OLED
|
||||
&xiao_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <64>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <63>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
// 128x32 OLED
|
||||
&xiao_i2c {
|
||||
status = "okay";
|
||||
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
width = <128>;
|
||||
height = <32>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <31>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
com-sequential;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
// 128x64 OLED model sh1106
|
||||
|
||||
&xiao_i2c {
|
||||
status = "okay";
|
||||
oled: sh1106@3c {
|
||||
compatible = "sinowealth,sh1106";
|
||||
reg = <0x3c>;
|
||||
width = <129>;
|
||||
height = <64>;
|
||||
segment-offset = <1>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <63>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
// 128x128 OLED model sh1107
|
||||
&xiao_i2c {
|
||||
status = "okay";
|
||||
oled: sh1106@3c {
|
||||
compatible = "sinowealth,sh1106";
|
||||
reg = <0x3c>;
|
||||
width = <120>;
|
||||
height = <128>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <119>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
inversion-on;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
// ################# niceview working fine START #################
|
||||
// doc: https://wiki.seeedstudio.com/XIAO-SAMD21-Zephyr-RTOS/
|
||||
// @bravekarma nice Discord server
|
||||
// The &gpioX Y and NRF_PSEL(..., X, Y) uses the PX.Y notation (underlying nRF
|
||||
// pin numbers), &xiao_d x uses the unified pinout Dx
|
||||
|
||||
&pinctrl {
|
||||
spi0_default: spi0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 1, 13)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 1, 15)>,
|
||||
<NRF_PSEL(SPIM_MISO, 1, 14)>;
|
||||
};
|
||||
};
|
||||
spi0_sleep: spi0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 1, 13)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 1, 15)>,
|
||||
<NRF_PSEL(SPIM_MISO, 1, 14)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nice_view_spi: &spi0 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
pinctrl-0 = <&spi0_default>;
|
||||
pinctrl-1 = <&spi0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
cs-gpios = <&xiao_d 6 GPIO_ACTIVE_HIGH>; // Pin D6 as CS
|
||||
};
|
||||
|
||||
&xiao_i2c {
|
||||
status = "disabled";
|
||||
};
|
||||
// ################# niceview working fine END #################
|
||||
*/
|
||||
// vim: filetype=dts fdm=marker:
|
||||
0
boards/shields/corne/corne_left.conf
Normal file
0
boards/shields/corne/corne_left.conf
Normal file
20
boards/shields/corne/corne_left.overlay
Normal file
20
boards/shields/corne/corne_left.overlay
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Pete Johanson
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "corne.dtsi"
|
||||
|
||||
&kscan0 {
|
||||
col-gpios
|
||||
= <&pro_micro 21 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 20 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 19 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 18 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 15 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 14 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
// vim: filetype=dts fdm=marker:
|
||||
0
boards/shields/corne/corne_left_peripheral.conf
Normal file
0
boards/shields/corne/corne_left_peripheral.conf
Normal file
20
boards/shields/corne/corne_left_peripheral.overlay
Normal file
20
boards/shields/corne/corne_left_peripheral.overlay
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Pete Johanson
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "corne.dtsi"
|
||||
|
||||
&kscan0 {
|
||||
col-gpios
|
||||
= <&pro_micro 21 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 20 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 19 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 18 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 15 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 14 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
// vim: filetype=dts fdm=marker:
|
||||
0
boards/shields/corne/corne_right.conf
Normal file
0
boards/shields/corne/corne_right.conf
Normal file
28
boards/shields/corne/corne_right.overlay
Normal file
28
boards/shields/corne/corne_right.overlay
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Copyright (c) 2020 Pete Johanson
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "corne.dtsi"
|
||||
|
||||
&default_transform {
|
||||
col-offset = <6>;
|
||||
};
|
||||
|
||||
&five_column_transform {
|
||||
col-offset = <6>;
|
||||
};
|
||||
|
||||
&kscan0 {
|
||||
col-gpios
|
||||
= <&pro_micro 14 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 15 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 18 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 19 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 20 GPIO_ACTIVE_HIGH>
|
||||
, <&pro_micro 21 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
// vim: filetype=dts fdm=marker:
|
||||
20
build.yaml
Normal file
20
build.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
include:
|
||||
|
||||
### CORNE START ###
|
||||
- board: nice_nano_v2
|
||||
shield: corne_left nice_oled
|
||||
artifact-name: nice_corne_left_oled_rgb
|
||||
snippet: rgb-config studio-rpc-usb-uart
|
||||
- board: nice_nano_v2
|
||||
shield: corne_right nice_oled
|
||||
cmake-args: -DCONFIG_NICE_OLED_WIDGET_ANIMATION_PERIPHERAL_CAT=n -DCONFIG_NICE_OLED_WIDGET_ANIMATION_PERIPHERAL_KM=y
|
||||
artifact-name: nice_corne_right_oled_rgb
|
||||
snippet: rgb-config
|
||||
### CORNE END ###
|
||||
|
||||
### SETTINGS_RESET START ###
|
||||
- board: nice_nano_v2
|
||||
shield: settings_reset
|
||||
artifact-name: nice_settings_reset
|
||||
### SETTINGS_RESET END ###
|
||||
433
config/config_keymap-drawer.yaml
Normal file
433
config/config_keymap-drawer.yaml
Normal file
|
|
@ -0,0 +1,433 @@
|
|||
# configuration for https://github.com/caksoylar/keymap-drawer
|
||||
draw_config:
|
||||
footer_text: 'Keymap View: <a href="https://github.com/caksoylar/keymap-drawer">keymap-drawer</a>'
|
||||
# dark_mode: auto
|
||||
n_columns: 1
|
||||
# draw_key_sides: true # draw a square in the middle of the keys
|
||||
key_w: 60.0
|
||||
key_h: 56.0
|
||||
split_gap: 30.0
|
||||
combo_w: 28.0
|
||||
combo_h: 26.0
|
||||
key_rx: 6.0
|
||||
key_ry: 6.0
|
||||
inner_pad_w: 2.0
|
||||
inner_pad_h: 2.0
|
||||
outer_pad_w: 40.0
|
||||
outer_pad_h: 56.0
|
||||
line_spacing: 1.2
|
||||
arc_radius: 6.0
|
||||
append_colon_to_layer_header: true
|
||||
small_pad: 2.0
|
||||
svg_extra_style: |
|
||||
/* For default sytles, see https://github.com/caksoylar/keymap-drawer/blob/main/keymap_drawer/config.py#L85 */
|
||||
|
||||
svg.keymap {
|
||||
font-family: Ubuntu Mono, Inconsolata, Consolas, Liberation Mono, Menlo, monospace;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
text-rendering: optimizeLegibility;
|
||||
}
|
||||
|
||||
/* Color accent for held keys
|
||||
red = #f00
|
||||
green = #0f0
|
||||
blue = #00f
|
||||
yellow = #ff0
|
||||
cyan = #0ff
|
||||
magenta = #f0f
|
||||
white = #fff
|
||||
black = #000
|
||||
grey = #888
|
||||
light grey = #ccc
|
||||
#ffc
|
||||
*/
|
||||
rect.held, rect.combo.held {
|
||||
fill: #f00;
|
||||
}
|
||||
|
||||
/* Technique borrowed and extended from https://github.com/englmaxi/zmk-config/blob/master/keymap-drawer/config.yaml */
|
||||
.sym_sub_text.tap {
|
||||
translate: -5px 2px;
|
||||
font-size: 20px;
|
||||
}
|
||||
.sym_sub_text.shifted {
|
||||
translate: 10px 13px;
|
||||
font-size: 10px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
.combo.sym_sub_text.tap {
|
||||
translate: -1px 1px;
|
||||
}
|
||||
.combo.sym_sub_text.shifted {
|
||||
translate: 7px 5px;
|
||||
font-size: 10px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
/* Toggle */
|
||||
.toggle.shifted {
|
||||
translate: -10px 12px;
|
||||
}
|
||||
|
||||
.toggle.hold {
|
||||
translate: 13px -23px;
|
||||
}
|
||||
|
||||
/* Variant for tap-dances */
|
||||
.tap_dance.tap {
|
||||
translate: -7px 0px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.tap_dance.shifted {
|
||||
translate: 7px 17px;
|
||||
font-size: 12px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
/* Variant for symbol next to symbol */
|
||||
.sym_by_sym.tap {
|
||||
translate: -6px 0px;
|
||||
}
|
||||
.sym_by_sym.shifted {
|
||||
translate: 10px 12px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
.combo.sym_by_sym.tap {
|
||||
translate: -35px 0px;
|
||||
}
|
||||
.combo.sym_by_sym.shifted {
|
||||
translate: 35px 20px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
.combo.sym_by_sym.hold {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
/* hide hold box for combo sym_by_sym */
|
||||
.combo.sym_by_sym.hold > path[stroke="none"][fill="none"] {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
shrink_wide_legends: 6
|
||||
glyph_tap_size: 18
|
||||
glyph_hold_size: 15
|
||||
glyph_shifted_size: 15
|
||||
glyphs: {}
|
||||
glyph_urls:
|
||||
tabler: https://unpkg.com/@tabler/icons/icons/outline/{}.svg
|
||||
tablerf: https://unpkg.com/@tabler/icons/icons/filled/{}.svg
|
||||
mdi: https://raw.githubusercontent.com/Templarian/MaterialDesign-SVG/master/svg/{}.svg
|
||||
mdil: https://raw.githubusercontent.com/Pictogrammers/MaterialDesignLight/master/svg/{}.svg
|
||||
material: https://fonts.gstatic.com/s/i/short-term/release/materialsymbolsoutlined/{}/default/48px.svg
|
||||
use_local_cache: true
|
||||
parse_config:
|
||||
raw_binding_map:
|
||||
'&sys_reset': Reset
|
||||
'&bootloader': Boot
|
||||
'&swapper': Win Next
|
||||
'&caps_word': Caps Word
|
||||
'&inv_qm': ¿
|
||||
|
||||
'&kp LC(LG(LEFT))': Desk Left
|
||||
'&kp LC(LG(RIGHT))': Desk Right
|
||||
'&kp LC(TAB)': Tab Right
|
||||
'&kp LC(LS(TAB))': Tab Left
|
||||
'&kp LA(F4)': Win Close
|
||||
'&kp LC(F4)': Tab Close
|
||||
'&kp LS(TAB)': Win Prev
|
||||
'&kp LS(INS)': Paste
|
||||
'&kp LG(L)': Lock
|
||||
|
||||
'&out OUT_USB': Out USB
|
||||
'&out OUT_BLE': Out BLE
|
||||
|
||||
'&bt BT_SEL 0': BT 1
|
||||
'&bt BT_SEL 1': BT 2
|
||||
'&bt BT_SEL 2': BT 3
|
||||
'&bt BT_SEL 3': BT 4
|
||||
'&bt BT_SEL 4': BT 5
|
||||
|
||||
# Display
|
||||
'DISPLAY_UP': {t: $$mdi:television-classic$$, h: $$mdi:arrow-up$$, type: tap_dance}
|
||||
'DISPLAY_DOWN': {t: $$mdi:television-classic$$, h: $$mdi:arrow-down$$, type: tap_dance}
|
||||
'DISPLAY_LEFT': {t: $$mdi:television-classic$$, h: $$mdi:arrow-left$$, type: tap_dance}
|
||||
'DISPLAY_RIGHT': {t: $$mdi:television-classic$$, h: $$mdi:arrow-right$$, type: tap_dance}
|
||||
'DISPLAY_SPACE': {t: $$mdi:television-classic$$, h: $$mdi:keyboard-space$$, type: tap_dance}
|
||||
|
||||
|
||||
# Rgb
|
||||
'&rgb_ug RGB_TOG': {t: $$mdi:led-on$$, h: $$mdi:toggle-switch$$, s: $$mdi:led-outline$$, type: toggle}
|
||||
'&rgb_ug RGB_VAI': {t: $$mdi:led-on$$, s: $$tabler:brightness-up$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_VAD': {t: $$mdi:led-outline$$, s: $$tabler:brightness-down$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_BRD': {t: $$mdi:led-on$$, s: $$tabler:brightness-up$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_BRI': {t: $$mdi:led-outline$$, s: $$tabler:brightness-down$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_SAI': {t: $$mdi:led-outline$$, s: $$mdi:eyedropper$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_SAD': {t: $$mdi:led-on$$, s: $$mdi:eyedropper$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_HUI': {t: $$mdi:led-on$$, s: $$mdi:palette$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_HUD': {t: $$mdi:led-outline$$, s: $$mdi:palette$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_RMOD': {t: $$mdi:led-on$$, h: $$mdi:page-previous-outline$$, type: tap_dance}
|
||||
'&rgb_ug RGB_MOD': {t: $$mdi:led-on$$, h: $$mdi:page-next-outline$$, type: tap_dance}
|
||||
'&rgb_ug RGB_EFF': {t: $$mdi:led-on$$, h: $$mdi:page-previous-outline$$, type: tap_dance}
|
||||
'&rgb_ug RGB_EFR': {t: $$mdi:led-on$$, h: $$mdi:page-next-outline$$, type: tap_dance}
|
||||
'&rgb_ug RGB_SPI': {t: $$mdi:led-on$$, h: $$mdi:speedometer$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_SPD': {t: $$mdi:led-on$$, h: $$mdi:speedometer-slow$$, type: sym_by_sym}
|
||||
'&rgb_ug RGB_UP': {t: $$mdi:led-on$$, h: $$mdi:arrow-up$$, type: tap_dance}
|
||||
'&rgb_ug RGB_DOWN': {t: $$mdi:led-on$$, h: $$mdi:arrow-down$$, type: tap_dance}
|
||||
'&rgb_ug RGB_LEFT': {t: $$mdi:led-on$$, h: $$mdi:arrow-left$$, type: tap_dance}
|
||||
'&rgb_ug RGB_RIGHT': {t: $$mdi:led-on$$, h: $$mdi:arrow-right$$, type: tap_dance}
|
||||
'&rgb_ug RGB_SPACE': {t: $$mdi:led-on$$, h: $$mdi:keyboard-space$$, type: tap_dance}
|
||||
'&rgb_ug RGB_COLOR_HSB(0,0,100)': {t: $$mdi:led-on$$, h: $$mdi:palette$$, type: tap_dance}
|
||||
'&rgb_ug RGB_COLOR_HSB(224,100,100)': {t: $$mdi:led-on$$, h: $$mdi:palette$$, type: tap_dance}
|
||||
|
||||
# Mouse
|
||||
'U_WH_L': {t: $$mdi:mouse-outline$$, h: $$mdi:arrow-left$$, type: tap_dance}
|
||||
'U_WH_R': {t: $$mdi:mouse-outline$$, h: $$mdi:arrow-right$$, type: tap_dance}
|
||||
'U_WH_U': {t: $$mdi:mouse-outline$$, h: $$mdi:arrow-up$$, type: tap_dance}
|
||||
'U_WH_D': {t: $$mdi:mouse-outline$$, h: $$mdi:arrow-down$$, type: tap_dance}
|
||||
'U_MS_L': {t: $$mdi:mouse$$, h: $$mdi:arrow-left$$, type: tap_dance}
|
||||
'U_MS_D': {t: $$mdi:mouse$$, h: $$mdi:arrow-down$$, type: tap_dance}
|
||||
'U_MS_R': {t: $$mdi:mouse$$, h: $$mdi:arrow-right$$, type: tap_dance}
|
||||
'U_MS_U': {t: $$mdi:mouse$$, h: $$mdi:arrow-up$$, type: tap_dance}
|
||||
'CLICK_LEFT': $$mdi:cursor-default-click$$
|
||||
'CLICK_RIGHT': $$mdi:cursor-default-click-outline$$
|
||||
'CLICK_MIDDLE': $$mdi:cursor-default-click-outline$$
|
||||
# '&mmv MOVE_UP': Mouse ↑
|
||||
# '&mmv MOVE_DOWN': Mouse ↓
|
||||
# '&mmv MOVE_LEFT': Mouse ←
|
||||
# '&mmv MOVE_RIGHT': Mouse →
|
||||
|
||||
# '&msc SCRL_UP': Scroll ↑
|
||||
# '&msc SCRL_DOWN': Scroll ↓
|
||||
# '&msc SCRL_LEFT': Scroll ←
|
||||
# '&msc SCRL_RIGHT': Scroll →
|
||||
|
||||
# '&mkp MCLK': Middle Click
|
||||
# '&mkp MB4': Back Click
|
||||
# '&mkp MB5': Forward Click
|
||||
|
||||
|
||||
# layers
|
||||
'MEDIA_ESC': {t: $$mdi:keyboard-esc$$, h: $$mdi:music-note$$}
|
||||
'MOUSE_TAB': {t: $$mdi:keyboard-tab$$, h: $$mdi:mouse$$}
|
||||
'NUMBER_SPACE': {t: $$mdi:keyboard-space$$, h: $$mdi:numeric$$}
|
||||
'&mo _FUNCTION': $$mdi:function-variant$$
|
||||
'&mo _CONFIG': $$mdi:cog$$
|
||||
'&mo _LOCK': $$mdi:lock$$
|
||||
'&mo _SYMBOL': $$mdi:symbol$$
|
||||
'&mo _DISPLAY': $$mdi:television-classic$$
|
||||
'&mo _OLED': $$mdi:television-classic$$
|
||||
'&mo _LINUX': $$mdi:linux$$
|
||||
'&mo _RGB': $$mdi:led-on$$
|
||||
'DE_CAPS': $$mdi:keyboard-caps$$
|
||||
'TAB': $$mdi:keyboard-tab$$
|
||||
'&mt LSHFT COMMA': {t: $$mdi:google-downasaur$$, h: $$mdi:apple-keyboard-shift$$, type: tap_dance}
|
||||
|
||||
# CONTROL CMD/WINDOWS SHIFT ALT/META/OPTION
|
||||
'&kp LSHFT': $$mdi:apple-keyboard-shift$$
|
||||
'&kp LCTRL': $$mdi:apple-keyboard-control$$
|
||||
'&kp RCTRL': $$mdi:apple-keyboard-control$$
|
||||
'&kp LGUI': $$mdi:apple-keyboard-command$$
|
||||
'&kp RGUI': $$mdi:apple-keyboard-command$$
|
||||
'&kp LALT': $$mdi:apple-keyboard-option$$
|
||||
'&kp RALT': $$mdi:apple-keyboard-option$$
|
||||
'&kp RSHFT': $$mdi:apple-keyboard-shift$$
|
||||
'&kp BSPC': $$mdi:backspace-outline$$
|
||||
|
||||
qmk_keycode_map:
|
||||
XXXXXXX: ''
|
||||
'NO': ''
|
||||
MINUS: '-'
|
||||
MINS: '-'
|
||||
EQUAL: '='
|
||||
EQL: '='
|
||||
LEFT_BRACKET: '['
|
||||
LBRC: '['
|
||||
RIGHT_BRACKET: ']'
|
||||
RBRC: ']'
|
||||
BACKSLASH: \
|
||||
BSLS: \
|
||||
NONUS_HASH: '#'
|
||||
NUHS: '#'
|
||||
SEMICOLON: ;
|
||||
SCLN: ;
|
||||
QUOTE: ''''
|
||||
QUOT: ''''
|
||||
GRAVE: '`'
|
||||
GRV: '`'
|
||||
COMMA: ','
|
||||
COMM: ','
|
||||
DOT: .
|
||||
SLASH: /
|
||||
SLSH: /
|
||||
TILDE: '~'
|
||||
TILD: '~'
|
||||
EXCLAIM: '!'
|
||||
EXLM: '!'
|
||||
AT: '@'
|
||||
HASH: '#'
|
||||
DOLLAR: $
|
||||
DLR: $
|
||||
PERCENT: '%'
|
||||
PERC: '%'
|
||||
CIRCUMFLEX: ^
|
||||
CIRC: ^
|
||||
AMPERSAND: '&'
|
||||
AMPR: '&'
|
||||
ASTERISK: '*'
|
||||
ASTR: '*'
|
||||
LEFT_PAREN: (
|
||||
LPRN: (
|
||||
RIGHT_PAREN: )
|
||||
RPRN: )
|
||||
UNDERSCORE: _
|
||||
UNDS: _
|
||||
PLUS: +
|
||||
LEFT_CURLY_BRACE: '{'
|
||||
LCBR: '{'
|
||||
RIGHT_CURLY_BRACE: '}'
|
||||
RCBR: '}'
|
||||
PIPE: '|'
|
||||
COLON: ':'
|
||||
COLN: ':'
|
||||
DOUBLE_QUOTE: '"'
|
||||
DQUO: '"'
|
||||
DQT: '"'
|
||||
LEFT_ANGLE_BRACKET: <
|
||||
LABK: <
|
||||
LT: <
|
||||
RIGHT_ANGLE_BRACKET: '>'
|
||||
RABK: '>'
|
||||
GT: '>'
|
||||
QUESTION: '?'
|
||||
QUES: '?'
|
||||
|
||||
zmk_combos:
|
||||
combo_tab: {align: top, o: 0.15}
|
||||
combo_del: {align: top, o: 0.15}
|
||||
combo_f12: {align: bottom}
|
||||
combo_btclr: {align: bottom}
|
||||
combo_play: {align: right}
|
||||
combo_capswd: {draw_separate: true}
|
||||
combo_semi: {draw_separate: true}
|
||||
combo_grave: {draw_separate: true}
|
||||
combo_lpar: {draw_separate: true}
|
||||
combo_rpar: {draw_separate: true}
|
||||
combo_lbkt: {draw_separate: true}
|
||||
combo_rbkt: {draw_separate: true}
|
||||
combo_tab: {draw_separate: true}
|
||||
combo_del: {draw_separate: true}
|
||||
combo_esc: {draw_separate: true}
|
||||
combo_ret: {draw_separate: true}
|
||||
combo_lock: {draw_separate: true}
|
||||
combo_bslh: {draw_separate: true}
|
||||
combo_slsh: {draw_separate: true}
|
||||
|
||||
zmk_keycode_map:
|
||||
|
||||
# custom mappings
|
||||
C_VOL_UP: Vol Up
|
||||
C_VOL_DN: Vol Down
|
||||
C_AL_CALC: Calc
|
||||
# C_PP: Play Pause
|
||||
|
||||
LCTRL: Ctrl
|
||||
RCTRL: Ctrl
|
||||
LALT: Alt
|
||||
RALT: Alt
|
||||
LGUI: Gui
|
||||
RGUI: Gui
|
||||
LSHFT: Shift
|
||||
RSHFT: Shift
|
||||
ESC: Esc
|
||||
SPACE: ␣
|
||||
BSPC: ⌫
|
||||
RET: ⏎
|
||||
TAB: ↹
|
||||
DEL: ⌦
|
||||
|
||||
PG_UP: Page Up
|
||||
PG_DN: Page Down
|
||||
INS: Insert
|
||||
HOME: Home
|
||||
END: End
|
||||
CAPS: Caps Lock
|
||||
PSCRN: Print Scrn
|
||||
PAUSE_BREAK: Pause Break
|
||||
|
||||
UP: ↑
|
||||
DOWN: ↓
|
||||
LEFT: ←
|
||||
RIGHT: →
|
||||
|
||||
C_PP: ⏯
|
||||
C_NEXT: ⏭️
|
||||
C_PREV: ⏮️
|
||||
|
||||
# defaults
|
||||
# AMPERSAND: '&'
|
||||
# AMPS: '&'
|
||||
APOS: "'"
|
||||
APOSTROPHE: "'"
|
||||
ASTERISK: '*'
|
||||
ASTRK: '*'
|
||||
AT: '@'
|
||||
AT_SIGN: '@'
|
||||
BACKSLASH: \
|
||||
BSLH: \
|
||||
CARET: ^
|
||||
COLON: ':'
|
||||
COMMA: ','
|
||||
DLLR: $
|
||||
DOLLAR: $
|
||||
DOT: .
|
||||
DOUBLE_QUOTES: '"'
|
||||
DQT: '"'
|
||||
EQUAL: '='
|
||||
EXCL: '!'
|
||||
EXCLAMATION: '!'
|
||||
FSLH: /
|
||||
GRAVE: '`'
|
||||
GREATER_THAN: '>'
|
||||
GT: '>'
|
||||
HASH: '#'
|
||||
LBKT: '['
|
||||
LBRC: '{'
|
||||
LEFT_BRACE: '{'
|
||||
LEFT_BRACKET: '['
|
||||
LEFT_PARENTHESIS: (
|
||||
LESS_THAN: <
|
||||
LPAR: (
|
||||
LT: <
|
||||
MINUS: '-'
|
||||
NON_US_BACKSLASH: \
|
||||
NON_US_BSLH: '|'
|
||||
NON_US_HASH: '#'
|
||||
NUHS: '#'
|
||||
PERCENT: '%'
|
||||
PERIOD: .
|
||||
PIPE: '|'
|
||||
PIPE2: '|'
|
||||
PLUS: +
|
||||
POUND: '#'
|
||||
PRCNT: '%'
|
||||
QMARK: '?'
|
||||
QUESTION: '?'
|
||||
RBKT: ']'
|
||||
RBRC: '}'
|
||||
RIGHT_BRACE: '}'
|
||||
RIGHT_BRACKET: ']'
|
||||
RIGHT_PARENTHESIS: )
|
||||
RPAR: )
|
||||
SEMI: ;
|
||||
SEMICOLON: ;
|
||||
SINGLE_QUOTE: ''''
|
||||
SLASH: /
|
||||
SQT: ''''
|
||||
STAR: '*'
|
||||
TILDE: '~'
|
||||
TILDE2: '~'
|
||||
UNDER: _
|
||||
UNDERSCORE: _
|
||||
139
config/corne.conf
Normal file
139
config/corne.conf
Normal file
|
|
@ -0,0 +1,139 @@
|
|||
# ========================================
|
||||
# FileName: corne.conf
|
||||
# Date: 07.06.2023
|
||||
# Author: Marcos Chow Castro
|
||||
# Email: mctechnology170318@gmail.com
|
||||
# GitHub: https://github.com/mctechnology17
|
||||
# Brief: configuration file for ZMK firmware
|
||||
# Board: nice_nano_v2 and puchi_ble_v1
|
||||
# ╔═╦═╦═╗
|
||||
# ╔════╗ ║║║║║╔╝
|
||||
# ║╔╗╔╗║ ║║║║║╚╗
|
||||
# ╚╝║║╚╝ ║╠═╩╩═╝
|
||||
# ║╠═╦═╣╚╦═╦╦═╦╗╔═╦═╦╦╗
|
||||
# ║║╩╣═╣║║║║║╬║╚╣╬║╬║║║
|
||||
# ╚╩═╩═╩╩╩╩═╩═╩═╩═╬╗╠╗║
|
||||
# ╚═╩═╝
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
# =========================================
|
||||
# on config_zmk.h file enable/disable the following options, if you want to
|
||||
# use CONFIG_ZMK_MOUSE=y, CONFIG_ZMK_RGB_UNDERGLOW=y, CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
# mouse config, 1 = enable, 0 = disable, default = 1
|
||||
# 2 = enable, but with rgb matrix
|
||||
# #define MC_TECHNOLOGY_MOUSE_ENABLE 1
|
||||
# rgb matrix config, 1 = enable, 0 = disable, default = 0
|
||||
# #define MC_TECHNOLOGY_RGB_ENABLE 0
|
||||
# define macros on for .dtsi file 1 = enable, 0 = disable default = 1
|
||||
# #define MC_TECHNOLOGY_MACROS_ENABLE 1
|
||||
|
||||
### Turn of pin code pairing
|
||||
CONFIG_ZMK_BLE_PASSKEY_ENTRY=n
|
||||
CONFIG_ZMK_BLE_EXPERIMENTAL_SEC=n
|
||||
CONFIG_ZMK_BLE_EXPERIMENTAL_FEATURES=n
|
||||
|
||||
### Keyboard name
|
||||
CONFIG_ZMK_KEYBOARD_NAME="Afiq Zudin Corne42"
|
||||
CONFIG_BT_DEVICE_NAME_MAX=28
|
||||
|
||||
### Boost Bluetooth TX power, also make Bluetooth stronger
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
CONFIG_ZMK_BLE_EXPERIMENTAL_FEATURES=y
|
||||
# Tune bluetooth profiles for quick select
|
||||
# CONFIG_BT_MAX_CONN=3
|
||||
# Uncomment the following line if you facing issue on win 11 connection
|
||||
# Enables a combination of settings that are planned to be default in future
|
||||
# versions of ZMK to improve connection stability. This includes changes to
|
||||
# timing on BLE pairing initiation, restores use of the updated/new LLCP
|
||||
# implementation, and disables 2M PHY support.
|
||||
CONFIG_ZMK_BLE_EXPERIMENTAL_CONN=y
|
||||
|
||||
### POWER OPTIONS
|
||||
CONFIG_ZMK_SLEEP=y
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
# 15 min (15*60*1000ms)
|
||||
# CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=900000
|
||||
# 1 min Número de milisegundos de inactividad antes de entrar en estado inactivo
|
||||
# CONFIG_ZMK_IDLE_TIMEOUT=60000
|
||||
# 30 min (30*60*1000ms)
|
||||
# CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=1800000
|
||||
# CONFIG_ZMK_IDLE_TIMEOUT=120000
|
||||
# Disable external power when not connected to USB
|
||||
# CONFIG_ZMK_EXT_POWER_USB_ONLY=y
|
||||
|
||||
### MOUSE
|
||||
# https://github.com/zmkfirmware/zmk/blob/main/docs/docs/keymaps/behaviors/mouse-emulation.md
|
||||
# CONFIG_ZMK_MOUSE=y
|
||||
|
||||
### ZMK STUDIO
|
||||
# MC: 2. zmk-studio test START
|
||||
# https://github.com/zmkfirmware/zmk/blob/main/docs/docs/config/studio.md
|
||||
CONFIG_ZMK_STUDIO=y
|
||||
CONFIG_ZMK_STUDIO_LOCKING=n
|
||||
# MC: zmk-studio test END
|
||||
|
||||
### RGB UNDERGLOW
|
||||
# uncomment to enable RGB Underglow or backlight
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
# CONFIG_WS2812_STRIP=y
|
||||
# apaga si no se usa el teclado
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
# 0 Solid color 1 Breathe 2 Spectrum 3 Swirl
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=3
|
||||
# nivel de brillo en porcentaje, el valor por defecto es 10 por ciento
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_BRT_STEP=1
|
||||
# Turn off RGB underglow when keyboard goes into idle state
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
|
||||
# # Hue step in degrees (0-359) used by RGB actions default 10
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_HUE_STEP=30
|
||||
|
||||
# # Brightness step in percent used by RGB actions default 10
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_SAT_STEP=2
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=240
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_SAT_START=10
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_BRT_START=15
|
||||
|
||||
# Uncomment the line below to disable external power toggling by the underglow.
|
||||
# By default toggling the underglow on and off also toggles external power
|
||||
# on and off. This also causes the display to turn off.
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n
|
||||
|
||||
### OLED DISPLAY
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y
|
||||
# esto creo que ya no es necesario
|
||||
# CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y
|
||||
# CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN=y
|
||||
|
||||
### WIDGET SETTINGS
|
||||
# No Widget configurations added since nice!view has its own custom widgets
|
||||
# activar solo estos dos widgets
|
||||
# CONFIG_ZMK_WIDGET_WPM_STATUS=n
|
||||
# CONFIG_ZMK_WIDGET_BATTERY_STATUS_SHOW_PERCENTAGE=y
|
||||
# CONFIG_ZMK_WIDGET_LAYER_STATUS=y
|
||||
# CONFIG_ZMK_WIDGET_BATTERY_STATUS=y
|
||||
# CONFIG_ZMK_WIDGET_OUTPUT_STATUS=y
|
||||
|
||||
### HID para nice!view ePaperDisplay
|
||||
# Enable eager debouncing
|
||||
# "Eager Debouncing"
|
||||
# Trying to lower the input lag.
|
||||
CONFIG_ZMK_KSCAN_DEBOUNCE_PRESS_MS=1
|
||||
CONFIG_ZMK_KSCAN_DEBOUNCE_RELEASE_MS=5
|
||||
|
||||
### Improves compatibility with iPad
|
||||
# ref: https://zmk.dev/docs/config/system#hid
|
||||
CONFIG_ZMK_HID_CONSUMER_REPORT_USAGES_BASIC=y
|
||||
|
||||
### JAVELIN STENO ENGINE
|
||||
CONFIG_ZMK_JAVELIN_STENO=y
|
||||
CONFIG_ZMK_JAVELIN_STENO_DICT_PLOVER=n
|
||||
CONFIG_ZMK_JAVELIN_STENO_DICT_LAPWING=y
|
||||
CONFIG_CPLUSPLUS=y
|
||||
CONFIG_LIB_CPLUSPLUS=y
|
||||
CONFIG_HEAP_MEM_POOL_SIZE=32768
|
||||
|
||||
### DEBUG OPTIONS
|
||||
# CONFIG_ZMK_USB_LOGGING=y
|
||||
# CONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000
|
||||
126
config/corne.keymap
Normal file
126
config/corne.keymap
Normal file
|
|
@ -0,0 +1,126 @@
|
|||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
#include <dt-bindings/zmk/ext_power.h>
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <dt-bindings/zmk/backlight.h>
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
#include <dt-bindings/zmk/reset.h>
|
||||
#include <dt-bindings/zmk/javelin_steno.h>
|
||||
#include <behaviors/javelin_steno.dtsi>
|
||||
|
||||
&led_strip {
|
||||
chain-length = <27>;
|
||||
};
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
ht_mute_pp: ht_mute_pp {
|
||||
compatible = "zmk,behavior-hold-tap";
|
||||
#binding-cells = <2>;
|
||||
tapping-term-ms = <200>;
|
||||
bindings = <&kp>, <&kp>;
|
||||
};
|
||||
td_rgb: td_rgb {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
#binding-cells = <0>;
|
||||
tapping-term-ms = <300>;
|
||||
bindings = <&rgb_ug RGB_TOG>, <&rgb_ug RGB_EFF>, <&rgb_ug RGB_EFR>;
|
||||
};
|
||||
td_colors: td_colors {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
#binding-cells = <0>;
|
||||
tapping-term-ms = <400>;
|
||||
bindings = <&rgb_ug RGB_COLOR_HSB(270,89,90)>,
|
||||
<&rgb_ug RGB_COLOR_HSB(0,0,100)>,
|
||||
<&rgb_ug RGB_COLOR_HSB(0,100,100)>,
|
||||
<&rgb_ug RGB_COLOR_HSB(240,100,100)>,
|
||||
<&rgb_ug RGB_COLOR_HSB(120,100,100)>;
|
||||
};
|
||||
};
|
||||
|
||||
combos {
|
||||
compatible = "zmk,combos";
|
||||
// Top + home row combos = numbers (like ecosteno)
|
||||
combo_1 { key-positions = <1 13>; bindings = <&kp N1>; layers = <0 1>; };
|
||||
combo_2 { key-positions = <2 14>; bindings = <&kp N2>; layers = <0 1>; };
|
||||
combo_3 { key-positions = <3 15>; bindings = <&kp N3>; layers = <0 1>; };
|
||||
combo_4 { key-positions = <4 16>; bindings = <&kp N4>; layers = <0 1>; };
|
||||
combo_5 { key-positions = <5 17>; bindings = <&kp N5>; layers = <0 1>; };
|
||||
combo_6 { key-positions = <6 18>; bindings = <&kp N6>; layers = <0 1>; };
|
||||
combo_7 { key-positions = <7 19>; bindings = <&kp N7>; layers = <0 1>; };
|
||||
combo_8 { key-positions = <8 20>; bindings = <&kp N8>; layers = <0 1>; };
|
||||
combo_9 { key-positions = <9 21>; bindings = <&kp N9>; layers = <0 1>; };
|
||||
combo_0 { key-positions = <10 22>; bindings = <&kp N0>; layers = <0 1>; };
|
||||
// I+O (QWRT) / U+B (CARP) = BSPC
|
||||
combo_bspc { key-positions = <8 9>; bindings = <&kp BSPC>; layers = <0 1>; };
|
||||
// K+L (QWRT) / E+O (CARP) = ENTER
|
||||
combo_enter { key-positions = <20 21>; bindings = <&kp RET>; layers = <0 1>; };
|
||||
// W+E (QWRT) / G+M (CARP) = ESC
|
||||
combo_esc { key-positions = <2 3>; bindings = <&kp ESC>; layers = <0 1>; };
|
||||
// S+D (QWRT) / S+T (CARP) = TAB
|
||||
combo_tab { key-positions = <14 15>; bindings = <&kp TAB>; layers = <0 1>; };
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
carpalx_layer {
|
||||
display-name = "CARP";
|
||||
bindings = <
|
||||
&kp GRAVE &kp Q &kp G &kp M &kp L &kp W &kp Y &kp F &kp U &kp B &kp SEMI &to 4
|
||||
&mo 4 &kp D &kp S &kp T &kp N &kp R &kp I &kp A &kp E &kp O &kp H &kp SQT
|
||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp J &kp K &kp P &kp COMMA &kp DOT &kp FSLH &kp RSHFT
|
||||
&td_rgb &kp LCTRL &kp LGUI &kp SPACE &kp RALT &ht_mute_pp C_PLAY_PAUSE C_MUTE
|
||||
>;
|
||||
};
|
||||
|
||||
qwerty_layer {
|
||||
display-name = "QWRT";
|
||||
bindings = <
|
||||
&kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &to 4
|
||||
&mo 4 &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT
|
||||
&td_rgb &kp LCTRL &kp LGUI &kp SPACE &kp RALT &ht_mute_pp C_PLAY_PAUSE C_MUTE
|
||||
>;
|
||||
};
|
||||
|
||||
steno_layer {
|
||||
display-name = "STEN";
|
||||
bindings = <
|
||||
&none &javsteno STENO_NUM1 &javsteno STENO_NUM2 &javsteno STENO_NUM3 &javsteno STENO_NUM4 &javsteno STENO_NUM5 &javsteno STENO_NUM6 &javsteno STENO_NUM7 &javsteno STENO_NUM8 &javsteno STENO_NUM9 &javsteno STENO_NUM10 &to 4
|
||||
&mo 4 &javsteno STENO_S1 &javsteno STENO_TL &javsteno STENO_PL &javsteno STENO_HL &javsteno STENO_STAR1 &javsteno STENO_STAR3 &javsteno STENO_FR &javsteno STENO_PR &javsteno STENO_LR &javsteno STENO_TR &javsteno STENO_DR
|
||||
&none &javsteno STENO_S2 &javsteno STENO_KL &javsteno STENO_WL &javsteno STENO_RL &javsteno STENO_STAR2 &javsteno STENO_STAR4 &javsteno STENO_RR &javsteno STENO_BR &javsteno STENO_GR &javsteno STENO_SR &javsteno STENO_ZR
|
||||
&none &javsteno STENO_A &javsteno STENO_O &javsteno STENO_E &javsteno STENO_U &none
|
||||
>;
|
||||
};
|
||||
|
||||
fps_layer {
|
||||
display-name = "FPS";
|
||||
bindings = <
|
||||
&mt ESC N1 &kp N2 &kp Q &kp W &mt N3 E &mt N4 R &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &to 4
|
||||
&kp TAB &kp LSHFT &kp A &kp S &kp D &kp F &none &none &none &none &none &none
|
||||
&mt LALT M &kp Z &kp X &kp C &kp V &kp G &none &none &none &none &none &none
|
||||
&kp T &kp LCTRL &kp SPACE &none &none &none
|
||||
>;
|
||||
};
|
||||
|
||||
hub_layer {
|
||||
display-name = "HUB";
|
||||
bindings = <
|
||||
&bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &kp PLUS &kp LBKT &kp UP &kp RBKT &kp ASTRK &kp EQUAL
|
||||
&out OUT_TOG &rgb_ug RGB_HUI &rgb_ug RGB_SAI &rgb_ug RGB_BRI &kp C_BRI_UP &kp C_VOL_UP &kp MINUS &kp LEFT &kp DOWN &kp RIGHT &kp FSLH &kp BSLH
|
||||
&kp LSHFT &rgb_ug RGB_HUD &rgb_ug RGB_SAD &rgb_ug RGB_BRD &kp C_BRI_DN &kp C_VOL_DN &to 0 &to 1 &to 2 &to 3 &td_colors &kp RSHFT
|
||||
&td_rgb &kp LCTRL &kp LGUI &kp SPACE &kp RALT &ht_mute_pp C_PLAY_PAUSE C_MUTE
|
||||
>;
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
55
config/west.yml
Normal file
55
config/west.yml
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
manifest:
|
||||
remotes:
|
||||
- name: zmkfirmware
|
||||
url-base: https://github.com/zmkfirmware
|
||||
# dongle_display
|
||||
- name: englmaxi
|
||||
url-base: https://github.com/englmaxi
|
||||
# nice_oled - nice_epaper - dongle_display!view - oled Adapter
|
||||
- name: mctechnology17
|
||||
url-base: https://github.com/mctechnology17
|
||||
# fork of zmk-nice-oled with custom KM medal animation
|
||||
- name: KeebMaker
|
||||
url-base: https://github.com/KeebMaker
|
||||
# javelin steno engine module
|
||||
- name: afiqzudinhadi
|
||||
url-base: https://github.com/afiqzudinhadi
|
||||
# javelin steno engine source
|
||||
- name: jthlim
|
||||
url-base: https://github.com/jthlim
|
||||
projects:
|
||||
# Pinned to v0.3.0 instead of `main`: ZMK main tracks Zephyr 4.1, whose
|
||||
# board-model rewrite renamed `nice_nano_v2` (now `nice_nano//zmk`) and
|
||||
# split the `WS2812_STRIP` Kconfig symbol per-driver. Bumping this back to
|
||||
# `main` will break every build.yaml entry below until those are updated.
|
||||
- name: zmk
|
||||
remote: zmkfirmware
|
||||
revision: v0.3.0
|
||||
import: app/west.yml
|
||||
# dongle_display
|
||||
- name: zmk-dongle-display
|
||||
remote: englmaxi
|
||||
revision: v0.3
|
||||
# nice_oled - nice_epaper (fork with custom KM medal animation)
|
||||
- name: zmk-nice-oled
|
||||
remote: KeebMaker
|
||||
revision: km-medal-animation
|
||||
# dongle_display!view
|
||||
- name: zmk-dongle-display-view
|
||||
remote: mctechnology17
|
||||
revision: main
|
||||
# oled Adapter
|
||||
- name: zmk-oled-adapter
|
||||
remote: mctechnology17
|
||||
revision: main
|
||||
# javelin steno engine module
|
||||
- name: zmk-javelin-steno
|
||||
remote: afiqzudinhadi
|
||||
revision: main
|
||||
# javelin steno engine source (fetched into module's javelin/ dir)
|
||||
- name: javelin-steno
|
||||
remote: jthlim
|
||||
revision: main
|
||||
path: zmk-javelin-steno/javelin
|
||||
self:
|
||||
path: config
|
||||
1634
keymap-drawer/corne.svg
Normal file
1634
keymap-drawer/corne.svg
Normal file
File diff suppressed because it is too large
Load diff
|
After Width: | Height: | Size: 72 KiB |
262
keymap-drawer/corne.yaml
Normal file
262
keymap-drawer/corne.yaml
Normal file
|
|
@ -0,0 +1,262 @@
|
|||
layout: {zmk_keyboard: corne}
|
||||
layers:
|
||||
CARP:
|
||||
- '`'
|
||||
- Q
|
||||
- G
|
||||
- M
|
||||
- L
|
||||
- W
|
||||
- Y
|
||||
- F
|
||||
- U
|
||||
- B
|
||||
- ;
|
||||
- {t: HUB, h: toggle}
|
||||
- HUB
|
||||
- D
|
||||
- S
|
||||
- T
|
||||
- N
|
||||
- R
|
||||
- I
|
||||
- A
|
||||
- E
|
||||
- O
|
||||
- H
|
||||
- ''''
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- Z
|
||||
- X
|
||||
- C
|
||||
- V
|
||||
- J
|
||||
- K
|
||||
- P
|
||||
- ','
|
||||
- .
|
||||
- /
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- '&td_rgb'
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
- $$mdi:apple-keyboard-command$$
|
||||
- ␣
|
||||
- $$mdi:apple-keyboard-option$$
|
||||
- {t: MUTE, h: PLAY PAUSE}
|
||||
QWRT:
|
||||
- '`'
|
||||
- Q
|
||||
- W
|
||||
- E
|
||||
- R
|
||||
- T
|
||||
- Y
|
||||
- U
|
||||
- I
|
||||
- O
|
||||
- P
|
||||
- {t: HUB, h: toggle}
|
||||
- HUB
|
||||
- A
|
||||
- S
|
||||
- D
|
||||
- F
|
||||
- G
|
||||
- H
|
||||
- J
|
||||
- K
|
||||
- L
|
||||
- ;
|
||||
- ''''
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- Z
|
||||
- X
|
||||
- C
|
||||
- V
|
||||
- B
|
||||
- N
|
||||
- M
|
||||
- ','
|
||||
- .
|
||||
- /
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- '&td_rgb'
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
- $$mdi:apple-keyboard-command$$
|
||||
- ␣
|
||||
- $$mdi:apple-keyboard-option$$
|
||||
- {t: MUTE, h: PLAY PAUSE}
|
||||
STEN:
|
||||
- ''
|
||||
- '&javsteno STENO_NUM1'
|
||||
- '&javsteno STENO_NUM2'
|
||||
- '&javsteno STENO_NUM3'
|
||||
- '&javsteno STENO_NUM4'
|
||||
- '&javsteno STENO_NUM5'
|
||||
- '&javsteno STENO_NUM6'
|
||||
- '&javsteno STENO_NUM7'
|
||||
- '&javsteno STENO_NUM8'
|
||||
- '&javsteno STENO_NUM9'
|
||||
- '&javsteno STENO_NUM10'
|
||||
- {t: HUB, h: toggle}
|
||||
- HUB
|
||||
- '&javsteno STENO_S1'
|
||||
- '&javsteno STENO_TL'
|
||||
- '&javsteno STENO_PL'
|
||||
- '&javsteno STENO_HL'
|
||||
- '&javsteno STENO_STAR1'
|
||||
- '&javsteno STENO_STAR3'
|
||||
- '&javsteno STENO_FR'
|
||||
- '&javsteno STENO_PR'
|
||||
- '&javsteno STENO_LR'
|
||||
- '&javsteno STENO_TR'
|
||||
- '&javsteno STENO_DR'
|
||||
- ''
|
||||
- '&javsteno STENO_S2'
|
||||
- '&javsteno STENO_KL'
|
||||
- '&javsteno STENO_WL'
|
||||
- '&javsteno STENO_RL'
|
||||
- '&javsteno STENO_STAR2'
|
||||
- '&javsteno STENO_STAR4'
|
||||
- '&javsteno STENO_RR'
|
||||
- '&javsteno STENO_BR'
|
||||
- '&javsteno STENO_GR'
|
||||
- '&javsteno STENO_SR'
|
||||
- '&javsteno STENO_ZR'
|
||||
- ''
|
||||
- '&javsteno STENO_A'
|
||||
- '&javsteno STENO_O'
|
||||
- '&javsteno STENO_E'
|
||||
- '&javsteno STENO_U'
|
||||
- ''
|
||||
FPS:
|
||||
- {t: '1', h: Esc}
|
||||
- '2'
|
||||
- Q
|
||||
- W
|
||||
- {t: E, h: '3'}
|
||||
- {t: R, h: '4'}
|
||||
- '5'
|
||||
- '6'
|
||||
- '7'
|
||||
- '8'
|
||||
- '9'
|
||||
- {t: HUB, h: toggle}
|
||||
- ↹
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- A
|
||||
- S
|
||||
- D
|
||||
- F
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- {t: M, h: '$$mdi:apple-keyboard-option$$'}
|
||||
- Z
|
||||
- X
|
||||
- C
|
||||
- V
|
||||
- G
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
- T
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
- ␣
|
||||
- ''
|
||||
- ''
|
||||
- ''
|
||||
HUB:
|
||||
- BT CLR
|
||||
- BT 1
|
||||
- BT 2
|
||||
- BT 3
|
||||
- BT 4
|
||||
- BT 5
|
||||
- +
|
||||
- '['
|
||||
- ↑
|
||||
- ']'
|
||||
- '*'
|
||||
- '='
|
||||
- {t: OUT TOG, type: held}
|
||||
- {t: '$$mdi:led-on$$', s: '$$mdi:palette$$', type: sym_by_sym}
|
||||
- {t: '$$mdi:led-outline$$', s: '$$mdi:eyedropper$$', type: sym_by_sym}
|
||||
- {t: '$$mdi:led-outline$$', s: '$$tabler:brightness-down$$', type: sym_by_sym}
|
||||
- BRI UP
|
||||
- Vol Up
|
||||
- '-'
|
||||
- ←
|
||||
- ↓
|
||||
- →
|
||||
- /
|
||||
- \
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- {t: '$$mdi:led-outline$$', s: '$$mdi:palette$$', type: sym_by_sym}
|
||||
- {t: '$$mdi:led-on$$', s: '$$mdi:eyedropper$$', type: sym_by_sym}
|
||||
- {t: '$$mdi:led-on$$', s: '$$tabler:brightness-up$$', type: sym_by_sym}
|
||||
- BRI DN
|
||||
- Vol Down
|
||||
- {t: CARP, h: toggle}
|
||||
- {t: QWRT, h: toggle}
|
||||
- {t: STEN, h: toggle}
|
||||
- {t: FPS, h: toggle}
|
||||
- '&td_colors'
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- '&td_rgb'
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
- $$mdi:apple-keyboard-command$$
|
||||
- ␣
|
||||
- $$mdi:apple-keyboard-option$$
|
||||
- {t: MUTE, h: PLAY PAUSE}
|
||||
combos:
|
||||
- p: [1, 13]
|
||||
k: '1'
|
||||
l: [CARP, QWRT]
|
||||
- p: [2, 14]
|
||||
k: '2'
|
||||
l: [CARP, QWRT]
|
||||
- p: [3, 15]
|
||||
k: '3'
|
||||
l: [CARP, QWRT]
|
||||
- p: [4, 16]
|
||||
k: '4'
|
||||
l: [CARP, QWRT]
|
||||
- p: [5, 17]
|
||||
k: '5'
|
||||
l: [CARP, QWRT]
|
||||
- p: [6, 18]
|
||||
k: '6'
|
||||
l: [CARP, QWRT]
|
||||
- p: [7, 19]
|
||||
k: '7'
|
||||
l: [CARP, QWRT]
|
||||
- p: [8, 20]
|
||||
k: '8'
|
||||
l: [CARP, QWRT]
|
||||
- p: [9, 21]
|
||||
k: '9'
|
||||
l: [CARP, QWRT]
|
||||
- p: [10, 22]
|
||||
k: '0'
|
||||
l: [CARP, QWRT]
|
||||
- p: [8, 9]
|
||||
k: $$mdi:backspace-outline$$
|
||||
l: [CARP, QWRT]
|
||||
- p: [20, 21]
|
||||
k: ⏎
|
||||
l: [CARP, QWRT]
|
||||
- p: [2, 3]
|
||||
k: Esc
|
||||
l: [CARP, QWRT]
|
||||
draw_separate: true
|
||||
- p: [14, 15]
|
||||
k: ↹
|
||||
l: [CARP, QWRT]
|
||||
draw_separate: true
|
||||
21
snippets/rgb-config/rgb-config.conf
Normal file
21
snippets/rgb-config/rgb-config.conf
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
### RGB UNDERGLOW
|
||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||
CONFIG_WS2812_STRIP=y
|
||||
# 0 Solid color 1 Breathe 2 Spectrum 3 Swirl
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=3
|
||||
# brightness level in percentage, the default value is 10 percent
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_BRT_STEP=1
|
||||
# Turn off RGB underglow when keyboard goes into idle state
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
# # Hue step in degrees (0-359) used by RGB actions default 10
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_HUE_STEP=30
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_SAT_STEP=2
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=240
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_SAT_START=10
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_BRT_START=15
|
||||
|
||||
# Uncomment the line below to disable external power toggling by the underglow.
|
||||
# By default toggling the underglow on and off also toggles external power
|
||||
# on and off. This also causes the display to turn off.
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n
|
||||
3
snippets/rgb-config/snippet.yml
Normal file
3
snippets/rgb-config/snippet.yml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
name: rgb-config
|
||||
append:
|
||||
EXTRA_CONF_FILE: rgb-config.conf
|
||||
4
zephyr/module.yml
Normal file
4
zephyr/module.yml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
build:
|
||||
settings:
|
||||
board_root: .
|
||||
snippet_root: .
|
||||
Loading…
Add table
Add a link
Reference in a new issue