Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4f60caf483 | ||
|
|
e718dc9e47 | ||
|
|
9f1c9b748d | ||
|
|
c9d8c3b12e | ||
|
|
bf9689889d | ||
|
|
c94b963e51 | ||
|
|
ccd55a102f | ||
|
|
08f9538d3c | ||
|
|
322fe07e5b | ||
|
|
6370fecbf9 | ||
|
|
b165e8ca75 | ||
|
|
878c891225 | ||
|
|
2574861987 | ||
|
|
c3eec66c0e | ||
|
|
b9bce2ada9 | ||
|
|
106eb1ccaa | ||
|
|
b2e2a01ba5 | ||
|
|
71b05fc252 | ||
|
|
63a8a22e56 | ||
|
|
e06d061ed0 | ||
|
|
8041a5fe42 | ||
|
|
ed2332a0a9 | ||
|
|
f0b29f8aea | ||
|
|
995995b64e | ||
|
|
df40cfa698 | ||
|
|
77581cd8de | ||
|
|
a11b9f47a5 | ||
|
|
ca1e47f4f0 | ||
|
|
eeb0504086 |
@@ -2,4 +2,4 @@ on: [push, pull_request, workflow_dispatch]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: petejohanson/zmk/.github/workflows/build-user-config.yml@core/zephyr-3.5-update
|
||||
uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@main
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
result
|
||||
@@ -0,0 +1,3 @@
|
||||
[This guy](https://nickcoutsos.github.io/keymap-editor/) has a pretty decent GUI editor on the web that integrates with your Git repository.
|
||||
|
||||
And [this pr](https://github.com/zmkfirmware/zmk/pull/2027) is where the experimental mouse support comes from.
|
||||
+12
-9
@@ -1,8 +1,9 @@
|
||||
# This file generates the GitHub Actions matrix
|
||||
# For simple board + shield combinations, add them
|
||||
# to the top level board and shield arrays, for more
|
||||
# control, add individual board + shield combinations to
|
||||
# the `include` property, e.g:
|
||||
# This file generates the GitHub Actions matrix.
|
||||
# For simple board + shield combinations, add them to the top level board and
|
||||
# shield arrays, for more control, add individual board + shield combinations
|
||||
# to the `include` property. You can also use the `cmake-args` property to
|
||||
# pass flags to the build command and `artifact-name` to assign a name to
|
||||
# distinguish build outputs from each other:
|
||||
#
|
||||
# board: [ "nice_nano_v2" ]
|
||||
# shield: [ "corne_left", "corne_right" ]
|
||||
@@ -10,12 +11,14 @@
|
||||
# - board: bdn9_rev2
|
||||
# - board: nice_nano_v2
|
||||
# shield: reviung41
|
||||
# - board: nice_nano_v2
|
||||
# shield: corne_left
|
||||
# cmake-args: -DCONFIG_ZMK_USB_LOGGING=y
|
||||
# artifact-name: corne_left_with_logging
|
||||
#
|
||||
---
|
||||
include:
|
||||
- board: nice_nano_v2
|
||||
shield: wyld_dm_right nice_view
|
||||
shield: lily58_left
|
||||
- board: nice_nano_v2
|
||||
shield: wyld_dm_left
|
||||
- board: nice_nano_v2
|
||||
shield: settings_reset
|
||||
shield: lily58_right
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
#include <dt-bindings/led/led.h>
|
||||
|
||||
&pinctrl {
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 25)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 11)>;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 25)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 11)>;
|
||||
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 = <62>; /* number of LEDs */
|
||||
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;
|
||||
};
|
||||
};
|
||||
|
||||
&pro_micro_i2c {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pro_micro_serial {
|
||||
status = "disabled";
|
||||
};
|
||||
@@ -1,45 +0,0 @@
|
||||
#include <dt-bindings/led/led.h>
|
||||
|
||||
|
||||
&spi0 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi0_default>;
|
||||
pinctrl-1 = <&spi0_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 = <40>; /* number of LEDs */
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
color-mapping = <LED_COLOR_ID_GREEN
|
||||
LED_COLOR_ID_RED
|
||||
LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
&blackpill_i2c {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&blackpill_serial {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
if SHIELD_WYLD_DM_RIGHT
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "Wyld DM"
|
||||
|
||||
config ZMK_SPLIT_ROLE_CENTRAL
|
||||
default y
|
||||
|
||||
endif
|
||||
|
||||
if SHIELD_WYLD_DM_LEFT || SHIELD_WYLD_DM_RIGHT
|
||||
|
||||
config ZMK_SPLIT
|
||||
default y
|
||||
|
||||
endif
|
||||
@@ -1,10 +0,0 @@
|
||||
# config SHIELD_WYLD_DM
|
||||
# bool
|
||||
|
||||
config SHIELD_WYLD_DM_LEFT
|
||||
def_bool $(shields_list_contains,wyld_dm_left)
|
||||
# select SHIELD_WYLD_DM
|
||||
|
||||
config SHIELD_WYLD_DM_RIGHT
|
||||
def_bool $(shields_list_contains,wyld_dm_right)
|
||||
# select SHIELD_WYLD_DM
|
||||
@@ -1,137 +0,0 @@
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
#include <dt-bindings/led/led.h>
|
||||
|
||||
|
||||
//wyld_dm_6x6 = <
|
||||
// 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(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(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11)
|
||||
// RC(5,2) RC(5,3) RC(5,4) RC(5,5) RC(5,6) RC(5,7) RC(5,8) RC(5,9)
|
||||
// RC(6,2) RC(6,3) RC(6,4) RC(6,5) RC(6,6) RC(6,7) RC(6,8) RC(6,9)
|
||||
// >;
|
||||
//
|
||||
//wyld_dm_5x7 = <
|
||||
// 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(0,12) RC(0,13)
|
||||
// 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(0,12) RC(0,13)
|
||||
// RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(5,1) RC(5, 10) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
||||
// 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(2,12) RC(2,13)
|
||||
// RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,9) RC(4,10) RC(4,11) RC(4,12) RC(4,13)
|
||||
// RC(5,2) RC(5,3) RC(5,4) RC(5,7) RC(5,8) RC(5,9)
|
||||
// RC(5,5) RC(5,6)
|
||||
// >;
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix_transform = &default_transform;
|
||||
// zephyr,display = &oled;
|
||||
zmk,underglow = &led_strip;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <12>;
|
||||
rows = <5>;
|
||||
// | SW6 | SW5 | SW4 | SW3 | SW2 | SW1 | | SW1 | SW2 | SW3 | SW4 | SW5 | SW6 |
|
||||
// | SW12 | SW11 | SW10 | SW9 | SW8 | SW7 | | SW7 | SW8 | SW9 | SW10 | SW11 | SW12 |
|
||||
// | SW18 | SW17 | SW16 | SW15 | SW14 | SW13 | | SW13 | SW14 | SW15 | SW16 | SW17 | SW18 |
|
||||
// | SW24 | SW23 | SW22 | SW21 | SW20 | SW19 | | SW19 | SW20 | SW21 | SW22 | SW23 | SW24 |
|
||||
// | SW30 | SW29 | SW28 | SW27 | SW26 | SW25 | | SW25 | SW26 | SW27 | SW28 | SW29 | SW30 |
|
||||
|
||||
//# 5x7 with encoders
|
||||
// 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(0,12) RC(0,13)
|
||||
// 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(0,12) RC(0,13)
|
||||
// RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(5,1) RC(5, 10) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
||||
// 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(2,12) RC(2,13)
|
||||
// RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,9) RC(4,10) RC(4,11) RC(4,12) RC(4,13)
|
||||
// RC(5,2) RC(5,3) RC(5,4) RC(5,7) RC(5,8) RC(5,9)
|
||||
// RC(5,5) RC(5,6)
|
||||
// >;
|
||||
|
||||
// map = <
|
||||
//
|
||||
// RC(1,5) RC(1,4) RC(1,3) RC(1,2) RC(1,1) RC(1,0) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12)
|
||||
// RC(2,5) RC(2,4) RC(2,3) RC(2,2) RC(2,1) RC(2,0) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12)
|
||||
// RC(3,5) RC(3,4) RC(3,3) RC(3,2) RC(3,1) RC(3,0) RC(0,6) RC(0,13) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12)
|
||||
// RC(4,5) RC(4,4) RC(4,3) RC(4,2) RC(4,1) RC(4,0) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12)
|
||||
// RC(0,0) RC(0,1) RC(0,7)
|
||||
// RC(0,5) RC(0,2) RC(0,8)
|
||||
// RC(0,4) RC(0,3) RC(0,10) RC(0,9)
|
||||
// >;
|
||||
|
||||
|
||||
// RC(4,5) IS THE ENCODER!
|
||||
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,2) RC(3,3) RC(3,4) RC(3,5) RC(3,8) RC(3,9)
|
||||
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9)
|
||||
|
||||
>;
|
||||
};
|
||||
|
||||
|
||||
kscan0: kscan_0 {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
label = "KSCAN";
|
||||
diode-direction = "col2row";
|
||||
|
||||
// PILLBUG PINS
|
||||
// row-gpios
|
||||
// = <&gpio1 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PB1 / 1.11
|
||||
// , <&gpio0 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PB0 / 1.09
|
||||
// , <&gpio1 15 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PA4 / 1.11
|
||||
// , <&gpio0 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PA3 / 0.31
|
||||
// , <&gpio0 31 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PA2 / 1.15
|
||||
// , <&gpio0 29 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PA1 / 0.29
|
||||
// ;
|
||||
|
||||
// NANO V2 PINS
|
||||
row-gpios
|
||||
= <&gpio0 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 0.9
|
||||
, <&gpio0 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 0.9
|
||||
, <&gpio1 7 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 1.07
|
||||
, <&gpio1 02 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 1.02
|
||||
, <&gpio1 01 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 1.01
|
||||
;
|
||||
|
||||
// // NANO V2 PINS
|
||||
// row-gpios
|
||||
// = <&gpio1 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 1.13
|
||||
// , <&gpio1 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 1.11
|
||||
// , <&gpio0 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 0.10
|
||||
// , <&gpio0 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // 0.9
|
||||
//// , <&gpio0 31 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PA2 / 1.15
|
||||
//// , <&gpio0 29 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> // PA1 / 0.29
|
||||
// ;
|
||||
|
||||
};
|
||||
|
||||
left_encoder: encoder_left {
|
||||
compatible = "alps,ec11";
|
||||
label = "LEFT_ENCODER";
|
||||
a-gpios = <&gpio1 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
b-gpios = <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
steps = <60>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
// right_encoder: encoder_right {
|
||||
// compatible = "alps,ec11";
|
||||
// label = "RIGHT_ENCODER";
|
||||
// a-gpios = <&gpio0 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
// b-gpios = <&gpio1 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
// steps = <60>;
|
||||
// status = "disabled";
|
||||
// };
|
||||
|
||||
sensors: sensors {
|
||||
compatible = "zmk,keymap-sensors";
|
||||
sensors = <&left_encoder>;
|
||||
triggers-per-rotation = <15>;
|
||||
};
|
||||
};
|
||||
@@ -1,6 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
#include "../../../wyld_dm.keymap"
|
||||
@@ -1,17 +0,0 @@
|
||||
file_format: "1"
|
||||
id: wyld_dm
|
||||
Name: wyld_dm
|
||||
type: shield
|
||||
url: https://github.com/bullwinkle3000/zmk-config-xiao/
|
||||
requires:
|
||||
- nice_nano_v2
|
||||
exposes:
|
||||
- i2c_oled
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
- encoders
|
||||
- pointer
|
||||
siblings:
|
||||
- wyld_dm_left
|
||||
- wyld_dm_right
|
||||
@@ -1,19 +0,0 @@
|
||||
# CONFIG_SPI=y
|
||||
# # CONFIG_INPUT=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
# CONFIG_WS2812_STRIP=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n
|
||||
#
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=2
|
||||
|
||||
# CONFIG_ZMK_USB_LOGGING=y
|
||||
#
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
# CONFIG_WS2812_STRIP=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n
|
||||
#
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=0
|
||||
@@ -1,37 +0,0 @@
|
||||
// wyld_dm_left.overlay
|
||||
|
||||
#include "wyld_dm.dtsi"
|
||||
#include <dt-bindings/led/led.h>
|
||||
|
||||
/// PILLBUG PINS
|
||||
|
||||
//&kscan0 {
|
||||
// col-gpios
|
||||
// = <&gpio0 22 GPIO_ACTIVE_HIGH> // 0.22
|
||||
// , <&gpio0 24 GPIO_ACTIVE_HIGH> // 0.24
|
||||
// , <&gpio1 0 GPIO_ACTIVE_HIGH> // 1.00
|
||||
// , <&gpio0 11 GPIO_ACTIVE_HIGH> // 0.11
|
||||
// , <&gpio1 4 GPIO_ACTIVE_HIGH> // 1.04
|
||||
//// , <&gpio1 6 GPIO_ACTIVE_HIGH> // 1.06
|
||||
//// , <&gpio1 04 GPIO_ACTIVE_HIGH> // PB13 / 1.04
|
||||
// ;
|
||||
//};
|
||||
|
||||
&left_encoder {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&kscan0 {
|
||||
col-gpios
|
||||
= <&gpio0 31 GPIO_ACTIVE_HIGH> // 0.31
|
||||
, <&gpio0 29 GPIO_ACTIVE_HIGH> // 0.29
|
||||
, <&gpio0 2 GPIO_ACTIVE_HIGH> // 0.02
|
||||
, <&gpio1 15 GPIO_ACTIVE_HIGH> // 1.15
|
||||
, <&gpio1 13 GPIO_ACTIVE_HIGH> // 1.13
|
||||
, <&gpio1 11 (GPIO_ACTIVE_HIGH )> // 1.11
|
||||
;
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
# #enable mouse emulation
|
||||
CONFIG_ZMK_MOUSE=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_INPUT=y
|
||||
|
||||
CONFIG_PMW3610=y
|
||||
CONFIG_PMW3610_CPI=2400
|
||||
CONFIG_PMW3610_CPI_DIVIDOR=4
|
||||
CONFIG_PMW3610_ORIENTATION_90=y
|
||||
CONFIG_PMW3610_SNIPE_CPI=800
|
||||
CONFIG_PMW3610_SNIPE_CPI_DIVIDOR=4
|
||||
CONFIG_PMW3610_SCROLL_TICK=32
|
||||
CONFIG_PMW3610_INVERT_X=y
|
||||
CONFIG_PMW3610_AUTOMOUSE_TIMEOUT_MS=750
|
||||
|
||||
CONFIG_PMW3610_POLLING_RATE_125_SW=y
|
||||
|
||||
CONFIG_PMW3610_SMART_ALGORITHM=y
|
||||
|
||||
|
||||
|
||||
@@ -1,95 +0,0 @@
|
||||
// wyld_dm_right.overlay
|
||||
|
||||
#include "wyld_dm.dtsi"
|
||||
#include <dt-bindings/led/led.h>
|
||||
|
||||
&default_transform {
|
||||
col-offset = <6>;
|
||||
};
|
||||
|
||||
&kscan0 {
|
||||
col-gpios
|
||||
= <&gpio0 31 GPIO_ACTIVE_HIGH> // 0.31
|
||||
, <&gpio0 29 GPIO_ACTIVE_HIGH> // 0.29
|
||||
, <&gpio0 2 GPIO_ACTIVE_HIGH> // 0.02
|
||||
, <&gpio1 15 GPIO_ACTIVE_HIGH> // 1.15
|
||||
, <&gpio1 13 GPIO_ACTIVE_HIGH> // 1.13
|
||||
, <&gpio1 11 (GPIO_ACTIVE_HIGH )> // 1.11
|
||||
;
|
||||
};
|
||||
|
||||
//&right_encoder {
|
||||
// status = "okay";
|
||||
//};
|
||||
|
||||
&pinctrl {
|
||||
spi0_default: spi0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>;
|
||||
};
|
||||
};
|
||||
spi0_sleep: spi0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
spi1_default: spi1_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 6)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 8)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 8)>;
|
||||
};
|
||||
};
|
||||
spi1_sleep: sp10_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 6)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 8)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 8)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi1 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi1_default>;
|
||||
pinctrl-1 = <&spi1_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
cs-gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
|
||||
trackball: trackball@0 {
|
||||
status = "okay";
|
||||
compatible = "pixart,pmw3610";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <2000000>;
|
||||
irq-gpios = <&gpio0 24 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
|
||||
snipe-layers = <2>;
|
||||
scroll-layers = <1>;
|
||||
automouse-layer = <3>;
|
||||
};
|
||||
};
|
||||
|
||||
nice_view_spi: &spi0 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
pinctrl-0 = <&spi0_default>;
|
||||
pinctrl-1 = <&spi0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
cs-gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
/ {
|
||||
pmw3610_listener {
|
||||
compatible = "zmk,input-listener";
|
||||
device = <&trackball>;
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zephyr,display = &nice_view;
|
||||
};
|
||||
};
|
||||
@@ -1,77 +0,0 @@
|
||||
{
|
||||
"id": "wyld_dm_4x6",
|
||||
"name": "wyld_dm_4x6",
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"autoGenerated": "true",
|
||||
"description": "This layout was automatically generated by the Keymap Editor. It may require manual changes to display properly.",
|
||||
"layout": [
|
||||
|
||||
{ "row": 0, "col": 0, "x": 0, "y": 0.5, "label": "0,0" },
|
||||
{ "row": 0, "col": 1, "x": 1, "y": 0.5, "label": "0,1" },
|
||||
{ "row": 0, "col": 2, "x": 2, "y": 0, "label": "0,2" },
|
||||
{ "row": 0, "col": 3, "x": 3, "y": 0, "label": "0,3" },
|
||||
{ "row": 0, "col": 4, "x": 4, "y": 0, "label": "0,4" },
|
||||
{ "row": 0, "col": 5, "x": 5, "y": 0, "label": "0,5" },
|
||||
{ "row": 0, "col": 7, "x": 13, "y": 0, "label": "5,0" },
|
||||
{ "row": 0, "col": 8, "x": 14, "y": 0, "label": "5,1" },
|
||||
{ "row": 0, "col": 9, "x": 15, "y": 0, "label": "5,2" },
|
||||
{ "row": 0, "col": 10, "x": 16, "y": 0, "label": "5,3" },
|
||||
{ "row": 0, "col": 11, "x": 17, "y": 0.5, "label": "5,4" },
|
||||
{ "row": 0, "col": 12, "x": 18, "y": 0.5, "label": "5,5" },
|
||||
|
||||
{ "row": 1, "col": 0, "x": 0, "y": 1.5, "label": "1,0" },
|
||||
{ "row": 1, "col": 1, "x": 1, "y": 1.5, "label": "1,1" },
|
||||
{ "row": 1, "col": 2, "x": 2, "y": 1, "label": "1,2" },
|
||||
{ "row": 1, "col": 3, "x": 3, "y": 1, "label": "1,3" },
|
||||
{ "row": 1, "col": 4, "x": 4, "y": 1, "label": "1,4" },
|
||||
{ "row": 1, "col": 5, "x": 5, "y": 1, "label": "1,5" },
|
||||
{ "row": 1, "col": 7, "x": 13, "y": 1, "label": "6,0" },
|
||||
{ "row": 1, "col": 8, "x": 14, "y": 1, "label": "6,1" },
|
||||
{ "row": 1, "col": 9, "x": 15, "y": 1, "label": "6,2" },
|
||||
{ "row": 1, "col": 10, "x": 16, "y": 1, "label": "6,3" },
|
||||
{ "row": 1, "col": 11, "x": 17, "y": 1.5, "label": "6,4" },
|
||||
{ "row": 1, "col": 12, "x": 18, "y": 1.5, "label": "6,5" },
|
||||
|
||||
{ "row": 2, "col": 0, "x": 0, "y": 2.5, "label": "2,0" },
|
||||
{ "row": 2, "col": 1, "x": 1, "y": 2.5, "label": "2,1" },
|
||||
{ "row": 2, "col": 2, "x": 2, "y": 2, "label": "2,2" },
|
||||
{ "row": 2, "col": 3, "x": 3, "y": 2, "label": "2,3" },
|
||||
{ "row": 2, "col": 4, "x": 4, "y": 2, "label": "2,4" },
|
||||
{ "row": 2, "col": 5, "x": 5, "y": 2, "label": "2,5" },
|
||||
{ "row": 2, "col": 7, "x": 13, "y": 2, "label": "7,0" },
|
||||
{ "row": 2, "col": 8, "x": 14, "y": 2, "label": "7,1" },
|
||||
{ "row": 2, "col": 9, "x": 15, "y": 2, "label": "7,2" },
|
||||
{ "row": 2, "col": 10, "x": 16, "y": 2, "label": "7,3" },
|
||||
{ "row": 2, "col": 11, "x": 17, "y": 2.5, "label": "7,4" },
|
||||
{ "row": 2, "col": 12, "x": 18, "y": 2.5, "label": "7,5" },
|
||||
|
||||
{ "row": 3, "col": 2, "x": 2, "y": 3, "label": "3,2" },
|
||||
{ "row": 3, "col": 3, "x": 3, "y": 3, "label": "3,3" },
|
||||
{ "row": 3, "col": 4, "x": 4.25, "y": 3.5, "label": "3,4" },
|
||||
{ "row": 3, "col": 5, "x": 5.25, "y": 3.5, "label": "3,5" },
|
||||
{ "row": 3, "col": 10, "x": 15, "y": 3, "label": "8,2" },
|
||||
{ "row": 3, "col": 11, "x": 16, "y": 3, "label": "8,3" },
|
||||
|
||||
{ "row": 4, "col": 0, "x": 4.75, "y": 4.5, "label": "4,0" },
|
||||
{ "row": 4, "col": 1, "x": 5.25, "y": 5.5, "label": "4,1" },
|
||||
{ "row": 4, "col": 2, "x": 6.25, "y": 5.5, "label": "4,2" },
|
||||
{ "row": 4, "col": 3, "x": 5.75, "y": 4.5, "label": "4,3" },
|
||||
{ "row": 4, "col": 5, "x": 6.75 , "y": 2, "label": "4,5" },
|
||||
{ "row": 4, "col": 6, "x": 11.5, "y": 3.5, "label": "9,0" },
|
||||
{ "row": 4, "col": 7, "x": 11.5, "y": 4.5, "label": "9,1" },
|
||||
{ "row": 4, "col": 8, "x": 10.5, "y": 5.5, "label": "9,2" },
|
||||
{ "row": 4, "col": 9, "x": 11.5, "y": 5.5, "label": "9,3" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"sensors": [
|
||||
{
|
||||
"ref": "left_encoder",
|
||||
"name": "encoder_left",
|
||||
"identifier": "encoder_left",
|
||||
"compatible": "alps,ec11",
|
||||
"label": "LEFT_ENCODER"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
# Uncomment to enable encoder
|
||||
# CONFIG_EC11=y
|
||||
# CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
|
||||
|
||||
# Uncomment the following line to enable the Lily58 OLED Display
|
||||
# CONFIG_ZMK_DISPLAY=y
|
||||
CONFIG_ZMK_MOUSE=y
|
||||
@@ -0,0 +1,146 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <dt-bindings/zmk/mouse.h>
|
||||
#include <dt-bindings/zmk/mouse.h>
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
#include <dt-bindings/zmk/pointing.h>
|
||||
|
||||
&mt {
|
||||
flavor = "tap-preferred";
|
||||
tapping-term-ms = <150>;
|
||||
quick-tap-ms = <0>;
|
||||
};
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
tap_layer_2: tap_layer_2 {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
label = "TAP_LAYER_2";
|
||||
#binding-cells = <0>;
|
||||
bindings = <&sl 2>, <&tog 2>;
|
||||
};
|
||||
|
||||
tap_layer_1: tap_layer_1 {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
label = "TAP_LAYER_1";
|
||||
#binding-cells = <0>;
|
||||
bindings = <&sl 1>, <&tog 1>;
|
||||
};
|
||||
|
||||
hm: hm {
|
||||
compatible = "zmk,behavior-hold-tap";
|
||||
label = "Home row mods for left";
|
||||
bindings = <&kp>, <&kp>;
|
||||
|
||||
#binding-cells = <2>;
|
||||
tapping-term-ms = <200>;
|
||||
flavor = "balanced";
|
||||
quick-tap-ms = <0>;
|
||||
hold-trigger-key-positions = <48 49 6 7 8 9 10 11 18 19 20 21 22 23 30 31 32 33 34 35 43 44 45 46 47 48 49 54 55 56 57 40 39 38>;
|
||||
hold-trigger-on-release;
|
||||
};
|
||||
|
||||
hm_right: hm_right {
|
||||
compatible = "zmk,behavior-hold-tap";
|
||||
label = "Home row mods for right";
|
||||
bindings = <&kp>, <&kp>;
|
||||
|
||||
#binding-cells = <2>;
|
||||
tapping-term-ms = <200>;
|
||||
flavor = "balanced";
|
||||
quick-tap-ms = <0>;
|
||||
hold-trigger-key-positions = <0 1 2 4 5 12 13 14 15 16 17 24 25 26 27 28 29 36 37 38 39 40 41 42 50 51 52 53 3>;
|
||||
hold-trigger-on-release;
|
||||
};
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
// ------------------------------------------------------------------------------------------------------------
|
||||
// | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
|
||||
// | TAB | Q | W | E | R | T | | Y | U | I | O | P | - |
|
||||
// | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
|
||||
// | SHIFT | Z | X | C | V | B | "[" | | "]" | N | M | , | . | / | SHIFT |
|
||||
// | ALT | GUI | LOWER| SPACE | | ENTER | RAISE| BSPC | GUI |
|
||||
|
||||
bindings = <
|
||||
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DELETE
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BACKSLASH
|
||||
&kp CAPSLOCK &hm LCTRL A &hm LEFT_GUI S &hm LEFT_ALT D &hm LEFT_SHIFT F &kp G &kp H &hm_right RIGHT_SHIFT J &hm_right RIGHT_ALT K &hm_right RIGHT_GUI L &hm_right RIGHT_CONTROL SEMICOLON &kp SQT
|
||||
&mo 3 &kp Z &kp X &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp EQUAL
|
||||
&tog 0 &tog 4 < 1 ESCAPE &kp ENTER &kp SPACE < 2 BACKSPACE &kp MINUS &tog 0
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
|
||||
numbers {
|
||||
// ------------------------------------------------------------------------------------------------------------
|
||||
// | BTCLR | BT1 | BT2 | BT3 | BT4 | BT5 | | | | | | | |
|
||||
// | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
// | ` | ! | @ | # | $ | % | | ^ | & | * | ( | ) | ~ |
|
||||
// | | | | | | | | | | | _ | + | { | } | "|" |
|
||||
// | | | | | | | | | |
|
||||
|
||||
bindings = <
|
||||
&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12
|
||||
&trans &trans &trans &trans &trans &trans &kp STAR &kp N7 &kp N8 &kp N9 &kp MINUS &trans
|
||||
&trans &trans &trans &trans &trans &trans &kp KP_DIVIDE &kp NUMBER_4 &kp N5 &kp N6 &kp PLUS &trans
|
||||
&trans &trans &trans &trans &trans &trans &kp LEFT_PARENTHESIS &kp RIGHT_PARENTHESIS &kp CARET &kp NUMBER_1 &kp NUMBER_2 &kp NUMBER_3 &kp ENTER &trans
|
||||
&trans &trans &tap_layer_1 &trans &kp N0 &kp PERIOD &trans &to 0
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
|
||||
nav_symbols {
|
||||
// ------------------------------------------------------------------------------------------------------------
|
||||
// | | | | | | | | | | | | | |
|
||||
// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
|
||||
// | F1 | F2 | F3 | F4 | F5 | F6 | | | <- | v | ^ | -> | |
|
||||
// | F7 | F8 | F9 | F10 | F11 | F12 | | | | + | - | = | [ | ] | \ |
|
||||
// | | | | | | | | | |
|
||||
|
||||
bindings = <
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
&trans &trans &msc SCRL_UP &mmv MOVE_UP &msc SCRL_DOWN &trans &trans &kp HOME &kp PAGE_UP &trans &trans &trans
|
||||
&trans &trans &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_RIGHT &trans &kp LEFT &kp DOWN &kp UP_ARROW &kp RIGHT &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &mkp LCLK &mkp RCLK &trans &kp END &kp PAGE_DOWN &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &trans &to 0
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
|
||||
bt_layer {
|
||||
bindings = <
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &bt BT_CLR
|
||||
&trans &trans &trans &trans &trans &trans &out OUT_USB &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &out OUT_TOG &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &out OUT_BLE &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &trans &to 0
|
||||
>;
|
||||
};
|
||||
|
||||
game {
|
||||
bindings = <
|
||||
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DELETE
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BACKSLASH
|
||||
&kp LEFT_SHIFT &kp A &kp S &kp D &kp F &kp G &kp H &hm_right RIGHT_SHIFT J &hm_right RIGHT_ALT K &hm_right RIGHT_GUI L &hm_right RIGHT_CONTROL SEMICOLON &kp SQT
|
||||
&kp F1 &kp Z &kp X &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESCAPE
|
||||
&kp J &kp H &kp Y &kp ENTER &kp SPACE < 2 BACKSPACE &kp MINUS &to 0
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN>;
|
||||
};
|
||||
};
|
||||
};
|
||||
+7
-20
@@ -1,28 +1,15 @@
|
||||
#manifest:
|
||||
# remotes:
|
||||
# - name: zmkfirmware
|
||||
# url-base: https://github.com/zmkfirmware
|
||||
# projects:
|
||||
# - name: zmk
|
||||
# remote: zmkfirmware
|
||||
# revision: main
|
||||
# import: app/west.yml
|
||||
# self:
|
||||
# path: config
|
||||
|
||||
manifest:
|
||||
remotes:
|
||||
- name: zmkfirmware
|
||||
url-base: https://github.com/zmkfirmware
|
||||
- name: pete
|
||||
url-base: https://github.com/petejohanson
|
||||
- name: inorichi
|
||||
url-base: https://github.com/inorichi
|
||||
# Additional modules containing boards/shields/custom code can be listed here as well
|
||||
# See https://docs.zephyrproject.org/3.2.0/develop/west/manifest.html#projects
|
||||
projects:
|
||||
- name: zmk
|
||||
remote: zmkfirmware
|
||||
revision: feat/pointers-move-scroll
|
||||
remote: pete
|
||||
revision: feat/pointers-with-input-processors
|
||||
import: app/west.yml
|
||||
- name: zmk-pmw3610-driver
|
||||
remote: inorichi
|
||||
revision: main
|
||||
self:
|
||||
path: config
|
||||
path: config
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
CONFIG_ZMK_KEYBOARD_NAME="wyld_4x6"
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
# CONFIG_BT_LL_SW_LLCP_LEGACY=y
|
||||
|
||||
CONFIG_BT_PERIPHERAL_PREF_MAX_INT=9
|
||||
CONFIG_BT_PERIPHERAL_PREF_LATENCY=16
|
||||
CONFIG_BT_BUF_ACL_TX_COUNT=32
|
||||
CONFIG_BT_L2CAP_TX_BUF_COUNT=32
|
||||
|
||||
CONFIG_ZMK_BLE=y
|
||||
CONFIG_ZMK_USB=y
|
||||
|
||||
CONFIG_ZMK_MOUSE=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_INPUT=y
|
||||
|
||||
#enable deep sleep
|
||||
CONFIG_ZMK_SLEEP=n
|
||||
CONFIG_ZMK_IDLE_TIMEOUT=20000
|
||||
CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=180000
|
||||
|
||||
#wait time in macros
|
||||
# CONFIG_ZMK_MACRO_DEFAULT_WAIT_MS=0
|
||||
#
|
||||
# CONFIG_BT_PERIPHERAL_PREF_MAX_INT=9
|
||||
# CONFIG_BT_PERIPHERAL_PREF_LATENCY=16
|
||||
# CONFIG_BT_BUF_ACL_TX_COUNT=32
|
||||
# CONFIG_BT_L2CAP_TX_BUF_COUNT=32
|
||||
|
||||
# CONFIG_ZMK_USB_LOGGING=y
|
||||
#
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
# CONFIG_WS2812_STRIP=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n
|
||||
#
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y
|
||||
# CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=0
|
||||
|
||||
# CONFIG_SSD1306_REVERSE_MODE=y
|
||||
|
||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_WS2812_STRIP=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n
|
||||
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=2
|
||||
# #
|
||||
CONFIG_EC11=y
|
||||
CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
|
||||
|
||||
#enable displays
|
||||
# CONFIG_ZMK_DISPLAY=y
|
||||
# CONFIG_I2C=y
|
||||
# CONFIG_SSD1306=y
|
||||
# CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN=y
|
||||
# CONFIG_ZMK_WIDGET_LAYER_STATUS=y
|
||||
# CONFIG_ZMK_WIDGET_BATTERY_STATUS_SHOW_PERCENTAGE=y
|
||||
# CONFIG_ZMK_DISPLAY_WORK_QUEUE_SYSTEM=y
|
||||
# CONFIG_ZMK_DISPLAY_INVERT=y
|
||||
@@ -1,130 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <behaviors/mouse_keys.dtsi>
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/ext_power.h>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/mouse.h>
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
|
||||
// triggering build
|
||||
|
||||
#define QWERTY 0
|
||||
#define LOWER 1
|
||||
#define RAISE 2
|
||||
|
||||
//# 4x6 with encoders
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
rgb_encoder_bright: rgb_encoder_bright {
|
||||
compatible = "zmk,behavior-sensor-rotate";
|
||||
#sensor-binding-cells = <0>;
|
||||
bindings = <&rgb_ug RGB_BRI>, <&rgb_ug RGB_BRD>;
|
||||
};
|
||||
|
||||
hm_left: hm_left {
|
||||
compatible = "zmk,behavior-hold-tap";
|
||||
label = "HM_LEFT";
|
||||
bindings = <&kp>, <&kp>;
|
||||
|
||||
#binding-cells = <2>;
|
||||
tapping-term-ms = <200>;
|
||||
flavor = "tap-preferred";
|
||||
hold-trigger-key-positions = <6 7 8 9 10 11 18 19 20 21 22 23 30 31 32 33 34 35 40 41>;
|
||||
hold-trigger-on-release;
|
||||
};
|
||||
|
||||
hm_right: hm_right {
|
||||
compatible = "zmk,behavior-hold-tap";
|
||||
label = "HM_RIGHT";
|
||||
bindings = <&kp>, <&kp>;
|
||||
|
||||
#binding-cells = <2>;
|
||||
tapping-term-ms = <200>;
|
||||
flavor = "tap-preferred";
|
||||
hold-trigger-key-positions = <0 1 2 3 4 5 12 13 14 15 16 17 24 25 26 27 28 29 36 37>;
|
||||
hold-trigger-on-release;
|
||||
};
|
||||
|
||||
// rgb_encoder_hue: rgb_encoder_hue {
|
||||
// compatible = "zmk,behavior-sensor-rotate";
|
||||
// #sensor-binding-cells = <0>;
|
||||
// bindings = <&rgb_ug RGB_HUI>, <&rgb_ug RGB_HUD>;
|
||||
// };
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
display-name = "QWERTY";
|
||||
bindings = <
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BACKSLASH
|
||||
&kp CAPS &hm_left LCTRL A &hm_left LEFT_GUI S &hm_left LEFT_ALT D &hm_left LEFT_SHIFT F &kp G &kp H &hm_right RIGHT_SHIFT J &hm_right RIGHT_ALT K &hm_right RIGHT_GUI L &hm_right RCTRL SEMICOLON &kp SQT
|
||||
&mo 4 &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp EQUAL
|
||||
&kp LEFT_BRACKET &kp RIGHT_BRACKET < 1 ESCAPE &kp ENTER &kp MINUS &kp GRAVE
|
||||
&kp BACKSPACE &mkp LCLK &mkp RCLK &kp TAB &kp K_MUTE < 2 SPACE &none &kp DELETE &none
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp PG_UP PG_DN>;
|
||||
};
|
||||
|
||||
lower_layer {
|
||||
display-name = "LOWER";
|
||||
bindings = <
|
||||
&ext_power EP_ON &kp F12 &kp F11 &kp F10 &kp F9 &rgb_ug RGB_EFF &trans &kp N7 &kp N8 &kp N9 &trans &trans
|
||||
&ext_power EP_OFF &kp F8 &kp F7 &kp F6 &kp F5 &rgb_ug RGB_ON &trans &kp NUMBER_4 &kp NUMBER_5 &kp NUMBER_6 &trans &trans
|
||||
&bootloader &kp F4 &kp F3 &kp F2 &kp F1 &rgb_ug RGB_OFF &kp NUMBER_0 &kp NUMBER_1 &kp NUMBER_2 &kp NUMBER_3 &trans &bootloader
|
||||
&kp LEFT_SHIFT &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &rgb_ug RGB_TOG &trans &trans &trans &trans
|
||||
>;
|
||||
|
||||
sensor-bindings = <&rgb_encoder_bright>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
display-name = "RAISE";
|
||||
bindings = <
|
||||
&kp GRAVE &trans &trans &trans &trans &kp LBKT &kp RBKT &kp HOME &kp PAGE_UP &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans &trans
|
||||
&trans &trans &trans &trans &trans &kp LEFT_PARENTHESIS &kp RIGHT_PARENTHESIS &kp END &kp PAGE_DOWN &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &kp HOME &trans &trans &trans &trans
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_DN C_VOL_UP>;
|
||||
};
|
||||
|
||||
mouse_layer {
|
||||
display-name = "MOUSE";
|
||||
bindings = <
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &mkp LCLK &mkp RCLK &trans &trans &mkp LCLK &mkp RCLK &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
&trans &mkp LCLK &mkp RCLK &trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOL_DN C_VOL_UP>;
|
||||
};
|
||||
|
||||
bluetooth {
|
||||
bindings = <
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &trans &trans &trans &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
&trans &trans &trans &trans &bt BT_CLR &trans
|
||||
&trans &trans &trans &trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&led_strip { chain-length = <62>; };
|
||||
Generated
+48
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1764915887,
|
||||
"narHash": "sha256-CeBCJ9BMsuzVgn8GVfuSRZ6xeau7szzG0Xn6O/OxP9M=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "42e29df35be6ef54091d3a3b4e97056ce0a98ce8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs",
|
||||
"zmk-nix": "zmk-nix"
|
||||
}
|
||||
},
|
||||
"zmk-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764463362,
|
||||
"narHash": "sha256-5tp/ldKhQjQA4x3PkxcKs2X7nZH6yel983jE6612bWs=",
|
||||
"owner": "lilyinstarlight",
|
||||
"repo": "zmk-nix",
|
||||
"rev": "a067029e5447d211b933179cb25bba12bbc1a8fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lilyinstarlight",
|
||||
"repo": "zmk-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
|
||||
zmk-nix = {
|
||||
url = "github:lilyinstarlight/zmk-nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, zmk-nix }: let
|
||||
forAllSystems = nixpkgs.lib.genAttrs (nixpkgs.lib.attrNames zmk-nix.packages);
|
||||
in {
|
||||
packages = forAllSystems (system: rec {
|
||||
default = firmware;
|
||||
|
||||
firmware = zmk-nix.legacyPackages.${system}.buildSplitKeyboard {
|
||||
name = "firmware";
|
||||
|
||||
src = nixpkgs.lib.sourceFilesBySuffices self [ ".board" ".cmake" ".conf" ".defconfig" ".dts" ".dtsi" ".json" ".keymap" ".overlay" ".shield" ".yml" "_defconfig" ];
|
||||
|
||||
board = "nice_nano_v2";
|
||||
shield = "lily58_%PART%";
|
||||
|
||||
zephyrDepsHash = "sha256-GO8lfSqZwc8yLc+cyFc+EA3163tBrYLVP9dFacytZTg=";
|
||||
|
||||
meta = {
|
||||
description = "ZMK firmware";
|
||||
license = nixpkgs.lib.licenses.mit;
|
||||
platforms = nixpkgs.lib.platforms.all;
|
||||
};
|
||||
};
|
||||
|
||||
flash = zmk-nix.packages.${system}.flash.override { inherit firmware; };
|
||||
update = zmk-nix.packages.${system}.update;
|
||||
});
|
||||
|
||||
apps = forAllSystems (system: {
|
||||
default = {
|
||||
type = "app";
|
||||
program = "${nixpkgs.lib.getExe self.packages.${system}.flash}";
|
||||
};
|
||||
});
|
||||
|
||||
devShells = forAllSystems (system: {
|
||||
default = zmk-nix.devShells.${system}.default;
|
||||
});
|
||||
};
|
||||
}
|
||||
@@ -1,166 +0,0 @@
|
||||
[
|
||||
{
|
||||
"name": "Wylderbuilds 4x6 Standard Default Wyld Track Encoder"
|
||||
},
|
||||
[
|
||||
{
|
||||
"x": 3
|
||||
},
|
||||
"0,2",
|
||||
"0,3",
|
||||
"0,4",
|
||||
"0,5",
|
||||
{
|
||||
"x": 5.75
|
||||
},
|
||||
"5,0",
|
||||
"5,1",
|
||||
"5,2",
|
||||
"5,3"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 1
|
||||
},
|
||||
"0,0",
|
||||
"0,1",
|
||||
{
|
||||
"x": 13.75
|
||||
},
|
||||
"5,4",
|
||||
"5,5"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 3
|
||||
},
|
||||
"1,2",
|
||||
"1,3",
|
||||
"1,4",
|
||||
"1,5",
|
||||
{
|
||||
"x": 0.25
|
||||
},
|
||||
"0,0\n\n\n\n\n\n\n\n\ne",
|
||||
"0,1\n\n\n\n\n\n\n\n\ne",
|
||||
{
|
||||
"x": 3.5
|
||||
},
|
||||
"6,0",
|
||||
"6,1",
|
||||
"6,2",
|
||||
"6,3"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 1
|
||||
},
|
||||
"1,0",
|
||||
"1,1",
|
||||
{
|
||||
"x": 13.75
|
||||
},
|
||||
"6,4",
|
||||
"6,5"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 3
|
||||
},
|
||||
"2,2",
|
||||
"2,3",
|
||||
{
|
||||
"n": true
|
||||
},
|
||||
"2,4",
|
||||
"2,5",
|
||||
{
|
||||
"x": 0.75
|
||||
},
|
||||
"4,5",
|
||||
{
|
||||
"x": 4
|
||||
},
|
||||
"7,0",
|
||||
{
|
||||
"n": true
|
||||
},
|
||||
"7,1",
|
||||
"7,2",
|
||||
"7,3"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 1
|
||||
},
|
||||
"2,0",
|
||||
"2,1",
|
||||
{
|
||||
"x": 13.75
|
||||
},
|
||||
"7,4",
|
||||
"7,5"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 3
|
||||
},
|
||||
"3,2",
|
||||
"3,3",
|
||||
{
|
||||
"x": 9.75
|
||||
},
|
||||
"8,2",
|
||||
"8,3"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.75,
|
||||
"x": 13
|
||||
},
|
||||
"9,2"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.75,
|
||||
"x": 5.25
|
||||
},
|
||||
"3,4",
|
||||
"3,5"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.75,
|
||||
"x": 12
|
||||
},
|
||||
"9,1"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.5,
|
||||
"x": 11
|
||||
},
|
||||
"9,0"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.75,
|
||||
"x": 5.5
|
||||
},
|
||||
"4,2",
|
||||
"4,3"
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 6
|
||||
},
|
||||
"4,0",
|
||||
"4,1"
|
||||
]
|
||||
]
|
||||
@@ -0,0 +1,3 @@
|
||||
build:
|
||||
settings:
|
||||
board_root: .
|
||||
Reference in New Issue
Block a user