feat(extensions): most of the extensions implementation, by kdb424
This commit is contained in:
16
boards/keebio/nyquist/README.md
Normal file
16
boards/keebio/nyquist/README.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# Nyquist Rev 2
|
||||
|
||||
A split keyboard with a 5x6 layout
|
||||
|
||||
kb.py is designed to work with the nice!nano
|
||||
kb_converter.py is designed to work with an itsybitsy with converter board found [here](https://github.com/KMKfw/kmk_firmware/tree/master/hardware)
|
||||
|
||||
|
||||
Extentions enabled by default
|
||||
- [Layers](https://github.com/KMKfw/kmk_firmware/tree/master/docs/layers.md) Need more keys than switches? Use layers.
|
||||
- [RGB](https://github.com/KMKfw/kmk_firmware/tree/master/docs/rgb.md) Light it up
|
||||
- [BLE_Split](https://github.com/KMKfw/kmk_firmware/tree/master/docs/split.md) Connects halves without wires
|
||||
|
||||
Common Extentions
|
||||
- [Split](https://github.com/KMKfw/kmk_firmware/tree/master/docs/split.md) Connects halves using a wire
|
||||
- [Power](https://github.com/KMKfw/kmk_firmware/tree/master/docs/power.md) Powersaving features for battery life
|
23
boards/keebio/nyquist/kb.py
Normal file
23
boards/keebio/nyquist/kb.py
Normal file
@@ -0,0 +1,23 @@
|
||||
import board
|
||||
|
||||
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
|
||||
from kmk.matrix import DiodeOrientation
|
||||
|
||||
|
||||
class KMKKeyboard(_KMKKeyboard):
|
||||
row_pins = (board.P0_22, board.P1_00, board.P0_11, board.P1_04, board.P1_06)
|
||||
col_pins = (
|
||||
board.P0_08,
|
||||
board.P0_29,
|
||||
board.P0_02,
|
||||
board.P1_15,
|
||||
board.P1_13,
|
||||
board.P1_11,
|
||||
)
|
||||
diode_orientation = DiodeOrientation.COLUMNS
|
||||
rgb_pixel_pin = board.P0_06
|
||||
rgb_num_pixels = 12
|
||||
data_pin = board.P0_08
|
||||
led_pin = board.P0_09
|
||||
i2c = board.I2C
|
||||
powersave_pin = board.P0_13
|
17
boards/keebio/nyquist/kb_converter.py
Normal file
17
boards/keebio/nyquist/kb_converter.py
Normal file
@@ -0,0 +1,17 @@
|
||||
import board
|
||||
|
||||
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
|
||||
from kmk.matrix import DiodeOrientation
|
||||
|
||||
|
||||
class KMKKeyboard(_KMKKeyboard):
|
||||
col_pins = (board.RX, board.A1, board.A2, board.A3, board.A4, board.A5)
|
||||
row_pins = (board.D13, board.D11, board.D10, board.D9, board.D7)
|
||||
diode_orientation = DiodeOrientation.COLUMNS
|
||||
|
||||
split_type = 'UART'
|
||||
split_flip = True
|
||||
data_pin = board.SCL
|
||||
rgb_num_pixels = 12
|
||||
rgb_pixel_pin = board.TX
|
||||
data_pin2 = board.SDA
|
151
boards/keebio/nyquist/main.py
Normal file
151
boards/keebio/nyquist/main.py
Normal file
@@ -0,0 +1,151 @@
|
||||
from kb import KMKKeyboard
|
||||
from kmk.extensions.rgb import RGB
|
||||
from kmk.keys import KC
|
||||
from kmk.modules.layers import Layers
|
||||
from kmk.modules.split import Split, SplitSide, SplitType
|
||||
|
||||
keyboard = KMKKeyboard()
|
||||
|
||||
rgb_ext = RGB(pixel_pin=keyboard.rgb_pixel_pin, num_pixels=keyboard.rgb_num_pixels)
|
||||
layers_ext = Layers()
|
||||
|
||||
# TODO Comment one of these on each side
|
||||
split_side = SplitSide.LEFT
|
||||
split_side = SplitSide.RIGHT
|
||||
split = Split(split_type=SplitType.BLE, split_side=split_side)
|
||||
|
||||
keyboard.modules = [layers_ext, split]
|
||||
keyboard.extensions = [rgb_ext]
|
||||
|
||||
_______ = KC.TRNS
|
||||
XXXXXXX = KC.NO
|
||||
|
||||
LOWER = KC.MO(3)
|
||||
RAISE = KC.MO(4)
|
||||
ADJUST = KC.MO(5)
|
||||
|
||||
keyboard.keymap = [
|
||||
# Qwerty
|
||||
# ,-----------------------------------------------------------------------------------.
|
||||
# | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | Tab | Q | W | E | R | T | Y | U | I | O | P | Del |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | Esc | A | S | D | F | G | H | J | K | L | ; | " |
|
||||
# |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
# | Shift| Z | X | C | V | B | N | M | , | . | / |Enter |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
|
||||
# `-----------------------------------------------------------------------------------'
|
||||
[
|
||||
KC.GRV, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.BSPC,
|
||||
KC.TAB, KC.Q, KC.W, KC.E, KC.R, KC.T, KC.Y, KC.U, KC.I, KC.O, KC.P, KC.DEL,
|
||||
KC.ESC, KC.A, KC.S, KC.D, KC.F, KC.G, KC.H, KC.J, KC.K, KC.L, KC.SCLN, KC.QUOT,
|
||||
KC.LSFT, KC.Z, KC.X, KC.C, KC.V, KC.B, KC.N, KC.M, KC.COMM, KC.DOT, KC.SLSH, KC.ENT,
|
||||
ADJUST, KC.LCTL, KC.LALT, KC.LGUI, LOWER, KC.SPC, KC.SPC, RAISE, KC.LEFT, KC.DOWN, KC.UP, KC.RGHT,
|
||||
],
|
||||
|
||||
# Colemak
|
||||
# ,-----------------------------------------------------------------------------------.
|
||||
# | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | Tab | Q | W | F | P | G | J | L | U | Y | ; | Del |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | Esc | A | R | S | T | D | H | N | E | I | O | " |
|
||||
# |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
# | Shift| Z | X | C | V | B | K | M | , | . | / |Enter |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
|
||||
# `-----------------------------------------------------------------------------------'
|
||||
[
|
||||
KC.GRV, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.BSPC,
|
||||
KC.TAB, KC.Q, KC.W, KC.F, KC.P, KC.G, KC.J, KC.L, KC.U, KC.Y, KC.SCLN, KC.DEL,
|
||||
KC.ESC, KC.A, KC.R, KC.S, KC.T, KC.D, KC.H, KC.N, KC.E, KC.I, KC.O, KC.QUOT,
|
||||
KC.LSFT, KC.Z, KC.X, KC.C, KC.V, KC.B, KC.K, KC.M, KC.COMM, KC.DOT, KC.SLSH, KC.ENT,
|
||||
ADJUST, KC.LCTL, KC.LALT, KC.LGUI, LOWER, KC.SPC, KC.SPC, RAISE, KC.LEFT, KC.DOWN, KC.UP, KC.RGHT,
|
||||
],
|
||||
|
||||
# Dvorak
|
||||
# ,-----------------------------------------------------------------------------------.
|
||||
# | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | Tab | " | , | . | P | Y | F | G | C | R | L | Del |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | Esc | A | O | E | U | I | D | H | T | N | S | / |
|
||||
# |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
# | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# |Adjust| Ctrl | Alt | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right |
|
||||
# `-----------------------------------------------------------------------------------'
|
||||
[
|
||||
KC.GRV, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.BSPC,
|
||||
KC.TAB, KC.QUOT, KC.COMM, KC.DOT, KC.P, KC.Y, KC.F, KC.G, KC.C, KC.R, KC.L, KC.DEL,
|
||||
KC.ESC, KC.A, KC.O, KC.E, KC.U, KC.I, KC.D, KC.H, KC.T, KC.N, KC.S, KC.SLSH,
|
||||
KC.LSFT, KC.SCLN, KC.Q, KC.J, KC.K, KC.X, KC.B, KC.M, KC.W, KC.V, KC.Z, KC.ENT,
|
||||
ADJUST, KC.LCTL, KC.LALT, KC.LGUI, LOWER, KC.SPC, KC.SPC, RAISE, KC.LEFT, KC.DOWN, KC.UP, KC.RGHT,
|
||||
],
|
||||
|
||||
# Lower
|
||||
# ,-----------------------------------------------------------------------------------.
|
||||
# | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Del |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | Del | F1 | F2 | F3 | F4 | F5 | F6 | . | + | | \ | | |
|
||||
# |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
# | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
# `-----------------------------------------------------------------------------------'
|
||||
[
|
||||
KC.TILD, KC.EXLM, KC.AT, KC.HASH, KC.DLR, KC.PERC, KC.CIRC, KC.AMPR, KC.ASTR, KC.LPRN, KC.RPRN, KC.BSPC,
|
||||
KC.TILD, KC.EXLM, KC.AT, KC.HASH, KC.DLR, KC.PERC, KC.CIRC, KC.AMPR, KC.ASTR, KC.LPRN, KC.RPRN, KC.DEL,
|
||||
KC.DEL, KC.F1, KC.F2, KC.F3, KC.F4, KC.F5, KC.F6, KC.UNDS, KC.PLUS, KC.LCBR, KC.RCBR, KC.PIPE,
|
||||
_______, KC.F7, KC.F8, KC.F9, KC.F10, KC.F11, KC.F12, KC.NUHS, KC.NUBS, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC.MNXT, KC.VOLD, KC.VOLU, KC.MPLY,
|
||||
],
|
||||
|
||||
# Raise
|
||||
# ,-----------------------------------------------------------------------------------.
|
||||
# | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Del |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ |
|
||||
# |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
# | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | | |Enter |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | | | | | | | | Next | Vol- | Vol+ | Play |
|
||||
# `-----------------------------------------------------------------------------------'
|
||||
[
|
||||
KC.GRV, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.BSPC,
|
||||
KC.GRV, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.DEL,
|
||||
KC.DEL, KC.F1, KC.F2, KC.F3, KC.F4, KC.F5, KC.F6, KC.MINS, KC.EQL, KC.LBRC, KC.RBRC, KC.BSLS,
|
||||
_______, KC.F7, KC.F8, KC.F9, KC.F10, KC.F11, KC.F12, KC.NUHS, KC.NUBS, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC.MNXT, KC.VOLD, KC.VOLU, KC.MPLY,
|
||||
],
|
||||
|
||||
# Adjust
|
||||
# ,-----------------------------------------------------------------------------------.
|
||||
# | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | | Reset|RGB Tg|RGB Md|Hue Up|Hue Dn|Sat Up|Sat Dn|Val Up|Val Dn| | Del |
|
||||
# |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||
# | | | | | | | |Qwerty|Colemk|Dvorak| | |
|
||||
# |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||
# | | | | | | | | | | | | |
|
||||
# |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||
# | | | | | | | | | | | |
|
||||
# `-----------------------------------------------------------------------------------'
|
||||
[
|
||||
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.RGB.TOG, KC.RGB.MOD, KC.RGB.HUD, KC.RGB.HUI, KC.RGB.SAD, KC.RGB.SAI, KC.RGB.VAD, KC.RGB.VAI, _______, KC.DEL,
|
||||
_______, _______, _______, _______, _______, _______, _______, KC.DF(0), KC.DF(1), KC.DF(2), _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
],
|
||||
|
||||
]
|
||||
|
||||
if __name__ == '__main__':
|
||||
keyboard.go()
|
Reference in New Issue
Block a user