Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
fauxpark committed Feb 21, 2022
2 parents a5901a6 + 31f5900 commit 145dca0
Show file tree
Hide file tree
Showing 97 changed files with 1,879 additions and 1,141 deletions.
10 changes: 5 additions & 5 deletions docs/feature_leader_key.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ void matrix_scan_user(void) {
}
```
As you can see, you have a few function. You can use `SEQ_ONE_KEY` for single-key sequences (Leader followed by just one key), and `SEQ_TWO_KEYS`, `SEQ_THREE_KEYS` up to `SEQ_FIVE_KEYS` for longer sequences.
As you can see, you have a few functions. You can use `SEQ_ONE_KEY` for single-key sequences (Leader followed by just one key), and `SEQ_TWO_KEYS`, `SEQ_THREE_KEYS` up to `SEQ_FIVE_KEYS` for longer sequences.
Each of these accepts one or more keycodes as arguments. This is an important point: You can use keycodes from **any layer on your keyboard**. That layer would need to be active for the leader macro to fire, obviously.
Expand Down Expand Up @@ -74,9 +74,9 @@ SEQ_THREE_KEYS(KC_C, KC_C, KC_C) {

## Infinite Leader key timeout

Sometimes your leader key is not on a comfortable places as the rest of keys on your sequence. Imagine that your leader key is one of your outer top right keys, you may need to reposition your hand just to reach your leader key.
Sometimes your leader key is not on a comfortable place as the rest of keys on your sequence. Imagine that your leader key is one of your outer top right keys, you may need to reposition your hand just to reach your leader key.
This can make typing the entire sequence on time hard even if you are able to type most of the sequence fast. For example, if your sequence is `Leader + asd` typing `asd` fast is very easy once you have your hands in your home row. However starting the sequence in time after moving your hand out of the home row to reach the leader key and back is not.
To remove the stress this situation produces to your hands you can enable an infinite timeout just for the leader key. This mean that, after you hit the leader key you will have an infinite amount of time to start the rest of the sequence, allowing you to proper position your hands on the best position to type the rest of the sequence comfortably.
To remove the stress this situation produces to your hands you can enable an infinite timeout just for the leader key. This means that after you hit the leader key you will have an infinite amount of time to start the rest of the sequence, allowing you to proper position your hands on the best position to type the rest of the sequence comfortably.
This infinite timeout only affects the leader key, so in our previous example of `Leader + asd` you will have an infinite amount of time between `Leader` and `a`, but once you start the sequence the timeout you have configured (global or per key) will work normally.
This way you can configure a very short `LEADER_TIMEOUT` but still have plenty of time to position your hands.

Expand All @@ -89,11 +89,11 @@ In order to enable this, place this in your `config.h`:

By default, the Leader Key feature will filter the keycode out of [`Mod-Tap`](mod_tap.md) and [`Layer Tap`](feature_layers.md#switching-and-toggling-layers) functions when checking for the Leader sequences. That means if you're using `LT(3, KC_A)`, it will pick this up as `KC_A` for the sequence, rather than `LT(3, KC_A)`, giving a more expected behavior for newer users.

While, this may be fine for most, if you want to specify the whole keycode (eg, `LT(3, KC_A)` from the example above) in the sequence, you can enable this by added `#define LEADER_KEY_STRICT_KEY_PROCESSING` to your `config.h` file. This will then disable the filtering, and you'll need to specify the whole keycode.
While, this may be fine for most, if you want to specify the whole keycode (eg, `LT(3, KC_A)` from the example above) in the sequence, you can enable this by adding `#define LEADER_KEY_STRICT_KEY_PROCESSING` to your `config.h` file. This will then disable the filtering, and you'll need to specify the whole keycode.

## Customization

The Leader Key feature has some additional customization to how the Leader Key feature works. It has two functions that can be called at certain parts of the process. Namely `leader_start()` and `leader_end()`.
The Leader Key feature has some additional customization to how the Leader Key feature works. It has two functions that can be called at certain parts of the process. Namely `leader_start()` and `leader_end()`.

The `leader_start()` function is called when you tap the `KC_LEAD` key, and the `leader_end()` function is called when either the leader sequence is completed, or the leader timeout is hit.

Expand Down
2 changes: 1 addition & 1 deletion docs/newbs_building_firmware.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Building Your First Firmware

Now that you have setup your build environment you are ready to start building custom firmware. For this section of the guide we will bounce between 3 programs- your file manager, your text editor, and your terminal window. Keep all 3 open until you are done and happy with your keyboard firmware.
Now that you have set up your build environment you are ready to start building custom firmware. For this section of the guide we will bounce between 3 programs- your file manager, your text editor, and your terminal window. Keep all 3 open until you are done and happy with your keyboard firmware.

## Configure Your Build Environment Defaults (Optional)

Expand Down
126 changes: 126 additions & 0 deletions keyboards/ada/infinity81/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
// Copyright 2022 peepeetee (@peepeetee)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID 0xADA0
#define PRODUCT_ID 0x0081
#define DEVICE_VER 0x0001
#define MANUFACTURER Ada
#define PRODUCT infinity81

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 15

/*
* Keyboard Matrix Assignments
*
* Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
#define MATRIX_ROW_PINS { B3, B2, B1, B0, F6, B7 }
#define MATRIX_COL_PINS { D1, D2, D3, D5, D4, D6, D7, B4, B5, B6, C6, C7, F5, F1, F4 }
#define UNUSED_PINS

/* COL2ROW, ROW2COL */
#define DIODE_DIRECTION COL2ROW


//#define LED_NUM_LOCK_PIN B0
//#define LED_CAPS_LOCK_PIN B1
//#define LED_SCROLL_LOCK_PIN B2
//#define LED_COMPOSE_PIN B3
//#define LED_KANA_PIN B4

//#define BACKLIGHT_PIN B7
//#define BACKLIGHT_LEVELS 3
//#define BACKLIGHT_BREATHING

#define RGB_DI_PIN D0
#ifdef RGB_DI_PIN
# define RGBLED_NUM 107
# define RGBLIGHT_HUE_STEP 8
# define RGBLIGHT_SAT_STEP 8
# define RGBLIGHT_VAL_STEP 8
# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
#define RGBLIGHT_EFFECT_SNAKE
#define RGBLIGHT_EFFECT_KNIGHT
#define RGBLIGHT_EFFECT_CHRISTMAS
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
#define RGBLIGHT_EFFECT_RGB_TEST
#define RGBLIGHT_EFFECT_ALTERNATING
#define RGBLIGHT_EFFECT_TWINKLE
#endif

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE

/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is useful for the Windows task manager shortcut (ctrl+shift+esc).
*/
//#define GRAVE_ESC_CTRL_OVERRIDE

/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*
*/
//#define FORCE_NKRO

/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/

/* disable debug print */
//#define NO_DEBUG

/* disable print */
//#define NO_PRINT

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

/* disable these deprecated features by default */
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION

/* Bootmagic Lite key configuration */
//#define BOOTMAGIC_LITE_ROW 0
//#define BOOTMAGIC_LITE_COLUMN 0
4 changes: 4 additions & 0 deletions keyboards/ada/infinity81/infinity81.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// Copyright 2022 peepeetee (@peepeetee)
// SPDX-License-Identifier: GPL-2.0-or-later

#include "infinity81.h"
30 changes: 30 additions & 0 deletions keyboards/ada/infinity81/infinity81.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
// Copyright 2022 peepeetee (@peepeetee)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include "quantum.h"

/* This is a shortcut to help you visually see your layout.
*
* The first section contains all of the arguments representing the physical
* layout of the board and position of the keys.
*
* The second converts the arguments into a two-dimensional array which
* represents the switch matrix.
*/
#define LAYOUT( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, \
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \
K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \
K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, \
K500, K501, K502, K505, K510, K511, K512, K513, K514 \
) { \
{ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, KC_NO, KC_NO }, \
{ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \
{ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \
{ K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \
{ K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414 }, \
{ K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514 } \
}
92 changes: 92 additions & 0 deletions keyboards/ada/infinity81/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
{
"keyboard_name": "infinity81",
"url": "",
"maintainer": "qmk",
"layouts": {
"LAYOUT": {
"layout": [
{ "label": "K00 (B3,D1)", "x": 0, "y": 0 },
{ "label": "K01 (B3,D2)", "x": 1.25, "y": 0 },
{ "label": "K02 (B3,D3)", "x": 2.25, "y": 0 },
{ "label": "K03 (B3,D5)", "x": 3.25, "y": 0 },
{ "label": "K04 (B3,D4)", "x": 4.25, "y": 0 },
{ "label": "K05 (B3,D6)", "x": 5.5, "y": 0 },
{ "label": "K06 (B3,D7)", "x": 6.5, "y": 0 },
{ "label": "K07 (B3,B4)", "x": 7.5, "y": 0 },
{ "label": "K08 (B3,B5)", "x": 8.5, "y": 0 },
{ "label": "K09 (B3,B6)", "x": 9.75, "y": 0 },
{ "label": "K0A (B3,C6)", "x": 10.75, "y": 0 },
{ "label": "K0B (B3,C7)", "x": 11.75, "y": 0 },
{ "label": "K0C (B3,F5)", "x": 12.75, "y": 0 },
{ "label": "K10 (B2,D1)", "x": 0, "y": 1.25 },
{ "label": "K11 (B2,D2)", "x": 1, "y": 1.25 },
{ "label": "K12 (B2,D3)", "x": 2, "y": 1.25 },
{ "label": "K13 (B2,D5)", "x": 3, "y": 1.25 },
{ "label": "K14 (B2,D4)", "x": 4, "y": 1.25 },
{ "label": "K15 (B2,D6)", "x": 5, "y": 1.25 },
{ "label": "K16 (B2,D7)", "x": 6, "y": 1.25 },
{ "label": "K17 (B2,B4)", "x": 7, "y": 1.25 },
{ "label": "K18 (B2,B5)", "x": 8, "y": 1.25 },
{ "label": "K19 (B2,B6)", "x": 9, "y": 1.25 },
{ "label": "K1A (B2,C6)", "x": 10, "y": 1.25 },
{ "label": "K1B (B2,C7)", "x": 11, "y": 1.25 },
{ "label": "K1C (B2,F5)", "x": 12, "y": 1.25 },
{ "label": "K1D (B2,F1)", "x": 13, "y": 1.25, "w": 2 },
{ "label": "K1E (B2,F4)", "x": 15, "y": 1.25 },
{ "label": "K20 (B1,D1)", "x": 0, "y": 2.25, "w": 1.5 },
{ "label": "K21 (B1,D2)", "x": 1.5, "y": 2.25 },
{ "label": "K22 (B1,D3)", "x": 2.5, "y": 2.25 },
{ "label": "K23 (B1,D5)", "x": 3.5, "y": 2.25 },
{ "label": "K24 (B1,D4)", "x": 4.5, "y": 2.25 },
{ "label": "K25 (B1,D6)", "x": 5.5, "y": 2.25 },
{ "label": "K26 (B1,D7)", "x": 6.5, "y": 2.25 },
{ "label": "K27 (B1,B4)", "x": 7.5, "y": 2.25 },
{ "label": "K28 (B1,B5)", "x": 8.5, "y": 2.25 },
{ "label": "K29 (B1,B6)", "x": 9.5, "y": 2.25 },
{ "label": "K2A (B1,C6)", "x": 10.5, "y": 2.25 },
{ "label": "K2B (B1,C7)", "x": 11.5, "y": 2.25 },
{ "label": "K2C (B1,F5)", "x": 12.5, "y": 2.25 },
{ "label": "K2D (B1,F1)", "x": 13.5, "y": 2.25, "w": 1.5 },
{ "label": "K2E (B1,F4)", "x": 15, "y": 2.25 },
{ "label": "K30 (B0,D1)", "x": 0, "y": 3.25, "w": 1.75 },
{ "label": "K31 (B0,D2)", "x": 1.75, "y": 3.25 },
{ "label": "K32 (B0,D3)", "x": 2.75, "y": 3.25 },
{ "label": "K33 (B0,D5)", "x": 3.75, "y": 3.25 },
{ "label": "K34 (B0,D4)", "x": 4.75, "y": 3.25 },
{ "label": "K35 (B0,D6)", "x": 5.75, "y": 3.25 },
{ "label": "K36 (B0,D7)", "x": 6.75, "y": 3.25 },
{ "label": "K37 (B0,B4)", "x": 7.75, "y": 3.25 },
{ "label": "K38 (B0,B5)", "x": 8.75, "y": 3.25 },
{ "label": "K39 (B0,B6)", "x": 9.75, "y": 3.25 },
{ "label": "K3A (B0,C6)", "x": 10.75, "y": 3.25 },
{ "label": "K3B (B0,C7)", "x": 11.75, "y": 3.25 },
{ "label": "K3D (B0,F1)", "x": 12.75, "y": 3.25, "w": 2.25 },
{ "label": "K3E (B0,F4)", "x": 15, "y": 3.25 },
{ "label": "K40 (F6,D1)", "x": 0, "y": 4.25, "w": 2.25 },
{ "label": "K41 (F6,D2)", "x": 2.25, "y": 4.25 },
{ "label": "K42 (F6,D3)", "x": 3.25, "y": 4.25 },
{ "label": "K43 (F6,D5)", "x": 4.25, "y": 4.25 },
{ "label": "K44 (F6,D4)", "x": 5.25, "y": 4.25 },
{ "label": "K45 (F6,D6)", "x": 6.25, "y": 4.25 },
{ "label": "K46 (F6,D7)", "x": 7.25, "y": 4.25 },
{ "label": "K47 (F6,B4)", "x": 8.25, "y": 4.25 },
{ "label": "K48 (F6,B5)", "x": 9.25, "y": 4.25 },
{ "label": "K49 (F6,B6)", "x": 10.25, "y": 4.25 },
{ "label": "K4A (F6,C6)", "x": 11.25, "y": 4.25 },
{ "label": "K4B (F6,C7)", "x": 12.25, "y": 4.25, "w": 1.75 },
{ "label": "K4D (F6,F1)", "x": 14, "y": 4.25 },
{ "label": "K4E (F6,F4)", "x": 15, "y": 4.25 },
{ "label": "K50 (B7,D1)", "x": 0, "y": 5.25, "w": 1.25 },
{ "label": "K51 (B7,D2)", "x": 1.25, "y": 5.25, "w": 1.25 },
{ "label": "K52 (B7,D3)", "x": 2.5, "y": 5.25, "w": 1.25 },
{ "label": "K55 (B7,D6)", "x": 3.75, "y": 5.25, "w": 6.25 },
{ "label": "K5A (B7,C6)", "x": 10, "y": 5.25, "w": 1.25 },
{ "label": "K5B (B7,C7)", "x": 11.25, "y": 5.25, "w": 1.25 },
{ "label": "K5C (B7,F5)", "x": 13, "y": 5.25 },
{ "label": "K5D (B7,F1)", "x": 14, "y": 5.25 },
{ "label": "K5E (B7,F4)", "x": 15, "y": 5.25 }
]
}
}
,"meta": "https://noroadsleft.github.io/kbf_qmk_converter/"
}
23 changes: 23 additions & 0 deletions keyboards/ada/infinity81/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// Copyright 2022 peepeetee (@peepeetee)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H



const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_DEL,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, MO(1),
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT),
[1] = LAYOUT(
RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
};
1 change: 1 addition & 0 deletions keyboards/ada/infinity81/keymaps/default/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# The default keymap for infinity81
27 changes: 27 additions & 0 deletions keyboards/ada/infinity81/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# infinity81

![infinity81](https://i.imgur.com/9d6IcuA.jpg)

A per key RGB 75% with blocker keyboard

* Keyboard Maintainer: [peepeetee](https://github.com/peepeetee)
* Hardware Supported: infinity81
* Hardware Availability: no longer avaliable - future groupbuy possible

Make example for this keyboard (after setting up your build environment):

make ada/infinity81:default

Flashing example for this keyboard:

make ada/infinity81:default:flash

See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

## Bootloader

Enter the bootloader in 3 ways:

* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB
* **Keycode in layout**: Press the key mapped to `RESET` if it is available
18 changes: 18 additions & 0 deletions keyboards/ada/infinity81/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# MCU name
MCU = atmega32u4

# Bootloader selection
BOOTLOADER = atmel-dfu

# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
Loading

0 comments on commit 145dca0

Please sign in to comment.