From 48172c68823a83ae2f20da7a673d1388c14c72f2 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Wed, 11 Oct 2023 16:09:36 -0400 Subject: [PATCH 01/15] Initial commit of Iris CE Rev. 1 --- keyboards/keebio/iris_ce/info.json | 8 + .../keebio/iris_ce/keymaps/default/keymap.c | 115 +++++++++ keyboards/keebio/iris_ce/keymaps/via/keymap.c | 79 ++++++ keyboards/keebio/iris_ce/keymaps/via/rules.mk | 4 + keyboards/keebio/iris_ce/readme.md | 21 ++ keyboards/keebio/iris_ce/rev1/config.h | 23 ++ keyboards/keebio/iris_ce/rev1/info.json | 241 ++++++++++++++++++ keyboards/keebio/iris_ce/rev1/rev1.c | 36 +++ keyboards/keebio/iris_ce/rev1/rules.mk | 1 + 9 files changed, 528 insertions(+) create mode 100644 keyboards/keebio/iris_ce/info.json create mode 100644 keyboards/keebio/iris_ce/keymaps/default/keymap.c create mode 100644 keyboards/keebio/iris_ce/keymaps/via/keymap.c create mode 100644 keyboards/keebio/iris_ce/keymaps/via/rules.mk create mode 100644 keyboards/keebio/iris_ce/readme.md create mode 100644 keyboards/keebio/iris_ce/rev1/config.h create mode 100644 keyboards/keebio/iris_ce/rev1/info.json create mode 100644 keyboards/keebio/iris_ce/rev1/rev1.c create mode 100644 keyboards/keebio/iris_ce/rev1/rules.mk diff --git a/keyboards/keebio/iris_ce/info.json b/keyboards/keebio/iris_ce/info.json new file mode 100644 index 000000000000..669038aff1fe --- /dev/null +++ b/keyboards/keebio/iris_ce/info.json @@ -0,0 +1,8 @@ +{ + "manufacturer": "Keebio", + "url": "https://keeb.io", + "maintainer": "Keebio", + "usb": { + "vid": "0xCB10" + } +} diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c new file mode 100644 index 000000000000..e1e050ab1d34 --- /dev/null +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -0,0 +1,115 @@ +// Copyright 2023 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define _QWERTY 0 +#define _LOWER 1 +#define _RAISE 2 +#define _ADJUST 3 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE, + ADJUST, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_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_LCTL, 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_HOME, KC_END, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + KC_LGUI, LOWER, KC_ENT, KC_SPC, RAISE, KC_RALT + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_LOWER] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + BL_STEP, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, KC_DEL, KC_DEL, _______, KC_P0 + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_RAISE] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, KC_LPRN, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_ADJUST] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case ADJUST: + if (record->event.pressed) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + return false; + break; + } + return true; +} diff --git a/keyboards/keebio/iris_ce/keymaps/via/keymap.c b/keyboards/keebio/iris_ce/keymaps/via/keymap.c new file mode 100644 index 000000000000..5493dffc8316 --- /dev/null +++ b/keyboards/keebio/iris_ce/keymaps/via/keymap.c @@ -0,0 +1,79 @@ +// Copyright 2023 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum custom_layer { + _MAIN, + _FN1, + _FN2, + _FN3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_MAIN] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LCTL, 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_HOME, KC_END, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + KC_LGUI, TL_LOWR, KC_ENT, KC_SPC, TL_UPPR, KC_RALT + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_FN1] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + BL_STEP, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, KC_DEL, KC_DEL, _______, KC_P0 + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_FN2] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, KC_LPRN, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_FN3] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ) +}; + +#ifdef ENCODER_MAP_ENABLE +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_MAIN] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_FN1] = { ENCODER_CCW_CW(KC_HOME, KC_END), ENCODER_CCW_CW(KC_MPRV, KC_MNXT) }, + [_FN2] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, + [_FN3] = { ENCODER_CCW_CW(RGB_SPD, RGB_SPI), ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } +}; +#endif diff --git a/keyboards/keebio/iris_ce/keymaps/via/rules.mk b/keyboards/keebio/iris_ce/keymaps/via/rules.mk new file mode 100644 index 000000000000..873ff6cdfc2f --- /dev/null +++ b/keyboards/keebio/iris_ce/keymaps/via/rules.mk @@ -0,0 +1,4 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes +ENCODER_MAP_ENABLE = yes +CONSOLE_ENABLE = no diff --git a/keyboards/keebio/iris_ce/readme.md b/keyboards/keebio/iris_ce/readme.md new file mode 100644 index 000000000000..cdc7ed0fa3ba --- /dev/null +++ b/keyboards/keebio/iris_ce/readme.md @@ -0,0 +1,21 @@ +Iris CE (Compact Edition) +========================= + +A split ergo 4x6 keyboard with 3 or 4 thumb keys made and sold by Keebio. [More info at Keebio](https://keeb.io). + +Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) +Hardware Supported: RP2040 +Hardware Availability: [Keebio](https://keeb.io) + +Make example for this keyboard (after setting up your build environment): + + make keebio/iris_ce/rev1:default + +Example of flashing this keyboard: + + make keebio/iris_ce/rev1:default:flash + +See [build environment setup](https://docs.qmk.fm/#/newbs_getting_started) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. + +A build guide for this keyboard can be found here: [Iris Build Guide](https://docs.keeb.io/iris-rev6-build-guide) + diff --git a/keyboards/keebio/iris_ce/rev1/config.h b/keyboards/keebio/iris_ce/rev1/config.h new file mode 100644 index 000000000000..1cc272db1931 --- /dev/null +++ b/keyboards/keebio/iris_ce/rev1/config.h @@ -0,0 +1,23 @@ +// Copyright 2023 Danny Nguyen (danny@keeb.io) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SPLIT_HAND_PIN GP4 +#define USB_VBUS_PIN GP0 +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP12 +#define SERIAL_USART_RX_PIN GP13 +#define SERIAL_USART_PIN_SWAP +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U +#define I2C_DRIVER I2CD2 +#define I2C1_SDA_PIN GP10 +#define I2C1_SCL_PIN GP11 + +// RGB Matrix +#define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS +#define RGB_MATRIX_LED_COUNT 68 +#define RGB_DISABLE_WHEN_USB_SUSPENDED +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/keebio/iris_ce/rev1/info.json b/keyboards/keebio/iris_ce/rev1/info.json new file mode 100644 index 000000000000..e844ee153260 --- /dev/null +++ b/keyboards/keebio/iris_ce/rev1/info.json @@ -0,0 +1,241 @@ +{ + "keyboard_name": "Iris CE Rev. 1", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "extrakey": true, + "mousekey": true, + "rgb_matrix": true + }, + "encoder": { + "enabled": true, + "rotary": [ + {"pin_a": "GP16", "pin_b": "GP17"} + ] + }, + "ws2812": { + "driver": "vendor", + "pin": "GP25" + }, + "matrix_pins": { + "cols": ["GP29", "GP28", "GP27", "GP2", "GP3", "GP14"], + "rows": ["GP18", "GP19", "GP20", "GP7", "GP26"] + }, + "split": { + "enabled": true, + "matrix_pins": { + "right": { + "cols": ["GP29", "GP28", "GP27", "GP2", "GP3", "GP14"], + "rows": ["GP18", "GP19", "GP20", "GP7", "GP26"] + } + }, + "transport": { + "sync_matrix_state": true + } + }, + "processor": "RP2040", + "usb": { + "device_version": "1.0.0", + "pid": "0x1556" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.375}, + {"matrix": [0, 1], "x": 1, "y": 0.375}, + {"matrix": [0, 2], "x": 2, "y": 0.125}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.125}, + {"matrix": [0, 5], "x": 5, "y": 0.25}, + + {"matrix": [5, 5], "x": 9, "y": 0.25}, + {"matrix": [5, 4], "x": 10, "y": 0.125}, + {"matrix": [5, 3], "x": 11, "y": 0}, + {"matrix": [5, 2], "x": 12, "y": 0.125}, + {"matrix": [5, 1], "x": 13, "y": 0.375}, + {"matrix": [5, 0], "x": 14, "y": 0.375}, + + {"matrix": [1, 0], "x": 0, "y": 1.375}, + {"matrix": [1, 1], "x": 1, "y": 1.375}, + {"matrix": [1, 2], "x": 2, "y": 1.125}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.125}, + {"matrix": [1, 5], "x": 5, "y": 1.25}, + + {"matrix": [6, 5], "x": 9, "y": 1.25}, + {"matrix": [6, 4], "x": 10, "y": 1.125}, + {"matrix": [6, 3], "x": 11, "y": 1}, + {"matrix": [6, 2], "x": 12, "y": 1.125}, + {"matrix": [6, 1], "x": 13, "y": 1.375}, + {"matrix": [6, 0], "x": 14, "y": 1.375}, + + {"matrix": [2, 0], "x": 0, "y": 2.375}, + {"matrix": [2, 1], "x": 1, "y": 2.375}, + {"matrix": [2, 2], "x": 2, "y": 2.125}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.125}, + {"matrix": [2, 5], "x": 5, "y": 2.25}, + + {"matrix": [7, 5], "x": 9, "y": 2.25}, + {"matrix": [7, 4], "x": 10, "y": 2.125}, + {"matrix": [7, 3], "x": 11, "y": 2}, + {"matrix": [7, 2], "x": 12, "y": 2.125}, + {"matrix": [7, 1], "x": 13, "y": 2.375}, + {"matrix": [7, 0], "x": 14, "y": 2.375}, + + {"matrix": [3, 0], "x": 0, "y": 3.375}, + {"matrix": [3, 1], "x": 1, "y": 3.375}, + {"matrix": [3, 2], "x": 2, "y": 3.125}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3.125}, + {"matrix": [3, 5], "x": 5, "y": 3.25}, + {"matrix": [4, 5], "x": 6.15, "y": 3.75}, + + {"matrix": [9, 5], "x": 7.85, "y": 3.75}, + {"matrix": [8, 5], "x": 9, "y": 3.25}, + {"matrix": [8, 4], "x": 10, "y": 3.125}, + {"matrix": [8, 3], "x": 11, "y": 3}, + {"matrix": [8, 2], "x": 12, "y": 3.125}, + {"matrix": [8, 1], "x": 13, "y": 3.375}, + {"matrix": [8, 0], "x": 14, "y": 3.375}, + + {"matrix": [4, 2], "x": 3.5, "y": 4.25}, + {"matrix": [4, 3], "x": 4.5, "y": 4.375}, + {"matrix": [4, 4], "x": 5.6, "y": 4.75}, + + {"matrix": [9, 4], "x": 8.4, "y": 4.75}, + {"matrix": [9, 3], "x": 9.5, "y": 4.375}, + {"matrix": [9, 2], "x": 10.5, "y": 4.25} + ] + } + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "gradient_up_down": true, + "gradient_left_right": true, + "breathing": true, + "band_sat": true, + "band_val": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_up_down": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "rainbow_moving_chevron": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "dual_beacon": true, + "rainbow_beacon": true, + "rainbow_pinwheels": true, + "raindrops": true, + "jellybean_raindrops": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "pixel_fractal": true, + "pixel_flow": true, + "pixel_rain": true, + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "driver": "ws2812", + "split_count": [34, 34], + "max_brightness": 120, + "layout": [ + {"matrix": [0,0], "flags":4, "x":0, "y":5}, + {"flags":2, "x":8, "y":5}, + {"matrix": [0,1], "flags":4, "x":16, "y":5}, + {"matrix": [0,2], "flags":4, "x":32, "y":2}, + {"flags":2, "x":40, "y":1}, + {"matrix": [0,3], "flags":4, "x":48, "y":0}, + {"matrix": [0,4], "flags":4, "x":64, "y":5}, + {"flags":2, "x":72, "y":3}, + {"matrix": [0,5], "flags":4, "x":80, "y":3}, + + {"matrix": [1,5], "flags":4, "x":80, "y":17}, + {"matrix": [1,4], "flags":4, "x":64, "y":15}, + {"matrix": [1,3], "flags":4, "x":48, "y":13}, + {"matrix": [1,2], "flags":4, "x":32, "y":15}, + {"matrix": [1,1], "flags":4, "x":16, "y":18}, + {"matrix": [1,0], "flags":4, "x":0, "y":18}, + + {"matrix": [2,0], "flags":4, "x":0, "y":32}, + {"matrix": [2,1], "flags":4, "x":16, "y":32}, + {"matrix": [2,2], "flags":4, "x":32, "y":28}, + {"matrix": [2,3], "flags":4, "x":48, "y":27}, + {"matrix": [2,4], "flags":4, "x":64, "y":28}, + {"matrix": [2,5], "flags":4, "x":80, "y":30}, + + {"matrix": [3,5], "flags":4, "x":80, "y":43}, + {"matrix": [3,4], "flags":4, "x":64, "y":42}, + {"matrix": [3,3], "flags":4, "x":48, "y":40}, + {"matrix": [3,2], "flags":4, "x":32, "y":42}, + {"matrix": [3,1], "flags":4, "x":16, "y":45}, + {"matrix": [3,0], "flags":4, "x":0, "y":45}, + {"flags":2, "x":8, "y":43}, + {"flags":2, "x":40, "y":50}, + + {"matrix": [4,2], "flags":4, "x":56, "y":47}, + {"matrix": [4,3], "flags":4, "x":72, "y":58}, + {"flags":2, "x":80, "y":58}, + {"matrix": [4,4], "flags":4, "x":90, "y":64}, + {"matrix": [4,5], "flags":4, "x":98, "y":52}, + + {"matrix": [5,0], "flags":4, "x":224, "y":5}, + {"flags":2, "x":216, "y":5}, + {"matrix": [5,1], "flags":4, "x":208, "y":5}, + {"matrix": [5,2], "flags":4, "x":192, "y":2}, + {"flags":2, "x":184, "y":1}, + {"matrix": [5,3], "flags":4, "x":176, "y":0}, + {"matrix": [5,4], "flags":4, "x":160, "y":5}, + {"flags":2, "x":152, "y":3}, + {"matrix": [5,5], "flags":4, "x":144, "y":3}, + + {"matrix": [6,5], "flags":4, "x":144, "y":17}, + {"matrix": [6,4], "flags":4, "x":160, "y":15}, + {"matrix": [6,3], "flags":4, "x":176, "y":13}, + {"matrix": [6,2], "flags":4, "x":192, "y":15}, + {"matrix": [6,1], "flags":4, "x":208, "y":18}, + {"matrix": [6,0], "flags":4, "x":224, "y":18}, + + {"matrix": [7,0], "flags":4, "x":224, "y":32}, + {"matrix": [7,1], "flags":4, "x":208, "y":32}, + {"matrix": [7,2], "flags":4, "x":192, "y":28}, + {"matrix": [7,3], "flags":4, "x":176, "y":27}, + {"matrix": [7,4], "flags":4, "x":160, "y":28}, + {"matrix": [7,5], "flags":4, "x":144, "y":30}, + + {"matrix": [8,5], "flags":4, "x":144, "y":43}, + {"matrix": [8,4], "flags":4, "x":160, "y":42}, + {"matrix": [8,3], "flags":4, "x":176, "y":40}, + {"flags":2, "x":184, "y":50}, + {"matrix": [8,2], "flags":4, "x":192, "y":42}, + {"matrix": [8,1], "flags":4, "x":208, "y":45}, + {"flags":2, "x":216, "y":43}, + {"matrix": [8,0], "flags":4, "x":224, "y":45}, + + {"matrix": [9,2], "flags":4, "x":168, "y":47}, + {"matrix": [9,3], "flags":4, "x":152, "y":58}, + {"flags":2, "x":144, "y":58}, + {"matrix": [9,4], "flags":4, "x":134, "y":64}, + {"matrix": [9,5], "flags":4, "x":126, "y":52}, + ] + } +} diff --git a/keyboards/keebio/iris_ce/rev1/rev1.c b/keyboards/keebio/iris_ce/rev1/rev1.c new file mode 100644 index 000000000000..a6f0ac00a0fd --- /dev/null +++ b/keyboards/keebio/iris_ce/rev1/rev1.c @@ -0,0 +1,36 @@ +// Copyright 2023 Danny Nguyen (danny@keeb.io) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "quantum.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } else if (index == 1) { + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } else if (index == 2) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } else if (index == 3) { + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } + return false; +} +#endif diff --git a/keyboards/keebio/iris_ce/rev1/rules.mk b/keyboards/keebio/iris_ce/rev1/rules.mk new file mode 100644 index 000000000000..161ec22b16e2 --- /dev/null +++ b/keyboards/keebio/iris_ce/rev1/rules.mk @@ -0,0 +1 @@ +SERIAL_DRIVER = vendor From cc169d2fc3ff7c18b9f84efcc26edc01a8b5f083 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Wed, 22 Nov 2023 16:14:06 -0500 Subject: [PATCH 02/15] Set pins for right half --- keyboards/keebio/iris_ce/rev1/info.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/keebio/iris_ce/rev1/info.json b/keyboards/keebio/iris_ce/rev1/info.json index e844ee153260..ad3d9fd9a85e 100644 --- a/keyboards/keebio/iris_ce/rev1/info.json +++ b/keyboards/keebio/iris_ce/rev1/info.json @@ -25,8 +25,8 @@ "enabled": true, "matrix_pins": { "right": { - "cols": ["GP29", "GP28", "GP27", "GP2", "GP3", "GP14"], - "rows": ["GP18", "GP19", "GP20", "GP7", "GP26"] + "cols": ["GP29", "GP28", "GP2", "GP27", "GP18", "GP7"], + "rows": ["GP26", "GP24", "GP23", "GP21", "GP3"] } }, "transport": { From 27fd8707c45385fd3a0e078d974f8853794c1546 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Wed, 22 Nov 2023 16:30:47 -0500 Subject: [PATCH 03/15] Remove encoder pins --- keyboards/keebio/iris_ce/rev1/info.json | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/keyboards/keebio/iris_ce/rev1/info.json b/keyboards/keebio/iris_ce/rev1/info.json index ad3d9fd9a85e..4bd46d76ca21 100644 --- a/keyboards/keebio/iris_ce/rev1/info.json +++ b/keyboards/keebio/iris_ce/rev1/info.json @@ -7,12 +7,6 @@ "mousekey": true, "rgb_matrix": true }, - "encoder": { - "enabled": true, - "rotary": [ - {"pin_a": "GP16", "pin_b": "GP17"} - ] - }, "ws2812": { "driver": "vendor", "pin": "GP25" @@ -235,7 +229,7 @@ {"matrix": [9,3], "flags":4, "x":152, "y":58}, {"flags":2, "x":144, "y":58}, {"matrix": [9,4], "flags":4, "x":134, "y":64}, - {"matrix": [9,5], "flags":4, "x":126, "y":52}, + {"matrix": [9,5], "flags":4, "x":126, "y":52} ] } } From f463f29c23f7f362f9b841b54e09f42dcd7a7a5c Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Wed, 22 Nov 2023 16:44:34 -0500 Subject: [PATCH 04/15] Edit keymap --- keyboards/keebio/iris_ce/keymaps/default/keymap.c | 4 ++-- keyboards/keebio/iris_ce/keymaps/via/keymap.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index e1e050ab1d34..5347be8be305 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - BL_STEP, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, + RGB_MOD, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, KC_DEL, KC_DEL, _______, KC_P0 // └────────┴────────┴────────┘ └────────┴────────┴────────┘ @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, QK_BOOT, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/keebio/iris_ce/keymaps/via/keymap.c b/keyboards/keebio/iris_ce/keymaps/via/keymap.c index 5493dffc8316..d3e31f1b279f 100644 --- a/keyboards/keebio/iris_ce/keymaps/via/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - BL_STEP, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, + RGB_MOD, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, KC_DEL, KC_DEL, _______, KC_P0 // └────────┴────────┴────────┘ └────────┴────────┴────────┘ @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + RGB_TOG, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, QK_BOOT, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ From 97521a8164db8e200bb251f2282fc7a619e8be14 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Tue, 16 Jan 2024 19:00:50 -0500 Subject: [PATCH 05/15] Remove build guide link --- keyboards/keebio/iris_ce/readme.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/keyboards/keebio/iris_ce/readme.md b/keyboards/keebio/iris_ce/readme.md index cdc7ed0fa3ba..2df9934cbd3b 100644 --- a/keyboards/keebio/iris_ce/readme.md +++ b/keyboards/keebio/iris_ce/readme.md @@ -16,6 +16,3 @@ Example of flashing this keyboard: make keebio/iris_ce/rev1:default:flash See [build environment setup](https://docs.qmk.fm/#/newbs_getting_started) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. - -A build guide for this keyboard can be found here: [Iris Build Guide](https://docs.keeb.io/iris-rev6-build-guide) - From 68422b6d0489b7ca7af80568e326f08a53cc20bd Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Tue, 16 Jan 2024 19:01:07 -0500 Subject: [PATCH 06/15] Update config --- keyboards/keebio/iris_ce/keymaps/via/rules.mk | 1 - keyboards/keebio/iris_ce/rev1/config.h | 1 - 2 files changed, 2 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/via/rules.mk b/keyboards/keebio/iris_ce/keymaps/via/rules.mk index 873ff6cdfc2f..e2a844ab40f1 100644 --- a/keyboards/keebio/iris_ce/keymaps/via/rules.mk +++ b/keyboards/keebio/iris_ce/keymaps/via/rules.mk @@ -1,4 +1,3 @@ VIA_ENABLE = yes LTO_ENABLE = yes -ENCODER_MAP_ENABLE = yes CONSOLE_ENABLE = no diff --git a/keyboards/keebio/iris_ce/rev1/config.h b/keyboards/keebio/iris_ce/rev1/config.h index 1cc272db1931..ebb2fccd155f 100644 --- a/keyboards/keebio/iris_ce/rev1/config.h +++ b/keyboards/keebio/iris_ce/rev1/config.h @@ -16,7 +16,6 @@ #define I2C1_SCL_PIN GP11 // RGB Matrix -#define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS #define RGB_MATRIX_LED_COUNT 68 #define RGB_DISABLE_WHEN_USB_SUSPENDED #define RGB_MATRIX_FRAMEBUFFER_EFFECTS From 909ac121ca3f75a1cbd08e4a6146dbf8b93dabfb Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Tue, 16 Jan 2024 19:01:25 -0500 Subject: [PATCH 07/15] Update keymap --- .../keebio/iris_ce/keymaps/default/keymap.c | 12 +++++------ keyboards/keebio/iris_ce/keymaps/via/keymap.c | 21 ++++++------------- 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index 5347be8be305..91b83aaaf6c1 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ @@ -33,13 +33,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_GRV, _______, KC_UP, _______, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, + KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - RGB_MOD, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, + RGB_MOD, EE_CLR, _______, _______, _______, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, KC_DEL, KC_DEL, _______, KC_P0 // └────────┴────────┴────────┘ └────────┴────────┴────────┘ @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, KC_LPRN, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, _______, + KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, KC_LPRN, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, EE_CLR, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, _______, _______, _______, _______ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ diff --git a/keyboards/keebio/iris_ce/keymaps/via/keymap.c b/keyboards/keebio/iris_ce/keymaps/via/keymap.c index d3e31f1b279f..aac096406b7c 100644 --- a/keyboards/keebio/iris_ce/keymaps/via/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/via/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_MAIN] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + QK_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ @@ -28,13 +28,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_GRV, _______, KC_UP, _______, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, + KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - RGB_MOD, _______, _______, _______, KC_DOWN, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, + RGB_MOD, EE_CLR, _______, _______, _______, KC_LCBR, KC_LPRN, KC_RPRN, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_MINS, _______, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, KC_DEL, KC_DEL, _______, KC_P0 // └────────┴────────┴────────┘ └────────┴────────┴────────┘ @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ RGB_MOD, KC_MPRV, KC_MNXT, KC_VOLU, KC_PGUP, KC_UNDS, KC_EQL, KC_HOME, RGB_HUI, RGB_SAI, RGB_VAI, KC_BSLS, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, KC_LPRN, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, _______, + KC_MUTE, KC_MSTP, KC_MPLY, KC_VOLD, KC_PGDN, KC_MINS, KC_LPRN, _______, KC_PLUS, KC_END, RGB_HUD, RGB_SAD, RGB_VAD, EE_CLR, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, _______, _______, _______, _______ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ @@ -68,12 +68,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ) }; - -#ifdef ENCODER_MAP_ENABLE -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { - [_MAIN] = { ENCODER_CCW_CW(KC_PGUP, KC_PGDN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [_FN1] = { ENCODER_CCW_CW(KC_HOME, KC_END), ENCODER_CCW_CW(KC_MPRV, KC_MNXT) }, - [_FN2] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, - [_FN3] = { ENCODER_CCW_CW(RGB_SPD, RGB_SPI), ENCODER_CCW_CW(RGB_VAD, RGB_VAI) } -}; -#endif From 5a1ab06ca81e8c67213246867272ac9f24a9faa4 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Thu, 18 Jan 2024 18:30:11 -0500 Subject: [PATCH 08/15] Cleanup README and old encoder code --- keyboards/keebio/iris_ce/readme.md | 2 +- keyboards/keebio/iris_ce/rev1/rev1.c | 36 ---------------------------- 2 files changed, 1 insertion(+), 37 deletions(-) delete mode 100644 keyboards/keebio/iris_ce/rev1/rev1.c diff --git a/keyboards/keebio/iris_ce/readme.md b/keyboards/keebio/iris_ce/readme.md index 2df9934cbd3b..7d0e4f25e956 100644 --- a/keyboards/keebio/iris_ce/readme.md +++ b/keyboards/keebio/iris_ce/readme.md @@ -1,7 +1,7 @@ Iris CE (Compact Edition) ========================= -A split ergo 4x6 keyboard with 3 or 4 thumb keys made and sold by Keebio. [More info at Keebio](https://keeb.io). +A split ergo 4x6 keyboard with 4 thumb keys made and sold by Keebio. [More info at Keebio](https://keeb.io). Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) Hardware Supported: RP2040 diff --git a/keyboards/keebio/iris_ce/rev1/rev1.c b/keyboards/keebio/iris_ce/rev1/rev1.c deleted file mode 100644 index a6f0ac00a0fd..000000000000 --- a/keyboards/keebio/iris_ce/rev1/rev1.c +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2023 Danny Nguyen (danny@keeb.io) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "quantum.h" - -#ifdef ENCODER_ENABLE -bool encoder_update_kb(uint8_t index, bool clockwise) { - if (!encoder_update_user(index, clockwise)) { return false; } - if (index == 0) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - } else if (index == 1) { - if (clockwise) { - tap_code(KC_PGDN); - } else { - tap_code(KC_PGUP); - } - } else if (index == 2) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - } else if (index == 3) { - if (clockwise) { - tap_code(KC_PGDN); - } else { - tap_code(KC_PGUP); - } - } - return false; -} -#endif From bc0720711ff558552d954924eb66dc058ef7d227 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Thu, 18 Jan 2024 18:31:36 -0500 Subject: [PATCH 09/15] Update keymap --- keyboards/keebio/iris_ce/keymaps/default/keymap.c | 4 ++-- keyboards/keebio/iris_ce/keymaps/via/keymap.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index 91b83aaaf6c1..e6bceffa5875 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -33,9 +33,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PGUP, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - KC_GRV, _______, KC_UP, _______, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, _______, + KC_GRV, _______, KC_UP, _______, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, KC_PGDN, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/keebio/iris_ce/keymaps/via/keymap.c b/keyboards/keebio/iris_ce/keymaps/via/keymap.c index aac096406b7c..21d0bcdd6dbd 100644 --- a/keyboards/keebio/iris_ce/keymaps/via/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/via/keymap.c @@ -28,9 +28,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PGUP, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - KC_GRV, _______, KC_UP, _______, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, _______, + KC_GRV, _______, KC_UP, _______, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, KC_P0, KC_PGDN, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ From 2e77f965810f6d290d6858685f08bc2cbd9b8f5a Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Thu, 18 Jan 2024 18:36:08 -0500 Subject: [PATCH 10/15] Run format-json on info.json files --- keyboards/keebio/iris_ce/info.json | 2 +- keyboards/keebio/iris_ce/rev1/info.json | 270 +++++++++++------------- 2 files changed, 127 insertions(+), 145 deletions(-) diff --git a/keyboards/keebio/iris_ce/info.json b/keyboards/keebio/iris_ce/info.json index 669038aff1fe..64fa5a05cafd 100644 --- a/keyboards/keebio/iris_ce/info.json +++ b/keyboards/keebio/iris_ce/info.json @@ -1,7 +1,7 @@ { "manufacturer": "Keebio", - "url": "https://keeb.io", "maintainer": "Keebio", + "url": "https://keeb.io", "usb": { "vid": "0xCB10" } diff --git a/keyboards/keebio/iris_ce/rev1/info.json b/keyboards/keebio/iris_ce/rev1/info.json index 4bd46d76ca21..374f4ae84b72 100644 --- a/keyboards/keebio/iris_ce/rev1/info.json +++ b/keyboards/keebio/iris_ce/rev1/info.json @@ -7,14 +7,131 @@ "mousekey": true, "rgb_matrix": true }, - "ws2812": { - "driver": "vendor", - "pin": "GP25" - }, "matrix_pins": { "cols": ["GP29", "GP28", "GP27", "GP2", "GP3", "GP14"], "rows": ["GP18", "GP19", "GP20", "GP7", "GP26"] }, + "processor": "RP2040", + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_sat": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "band_val": true, + "breathing": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "cycle_up_down": true, + "digital_rain": true, + "dual_beacon": true, + "gradient_left_right": true, + "gradient_up_down": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "jellybean_raindrops": true, + "multisplash": true, + "pixel_flow": true, + "pixel_fractal": true, + "pixel_rain": true, + "rainbow_beacon": true, + "rainbow_moving_chevron": true, + "rainbow_pinwheels": true, + "raindrops": true, + "solid_multisplash": true, + "solid_reactive": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_multinexus": true, + "solid_reactive_multiwide": true, + "solid_reactive_nexus": true, + "solid_reactive_simple": true, + "solid_reactive_wide": true, + "solid_splash": true, + "splash": true, + "typing_heatmap": true + }, + "driver": "ws2812", + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 5, "flags": 4}, + {"x": 8, "y": 5, "flags": 2}, + {"matrix": [0, 1], "x": 16, "y": 5, "flags": 4}, + {"matrix": [0, 2], "x": 32, "y": 2, "flags": 4}, + {"x": 40, "y": 1, "flags": 2}, + {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 64, "y": 5, "flags": 4}, + {"x": 72, "y": 3, "flags": 2}, + {"matrix": [0, 5], "x": 80, "y": 3, "flags": 4}, + {"matrix": [1, 5], "x": 80, "y": 17, "flags": 4}, + {"matrix": [1, 4], "x": 64, "y": 15, "flags": 4}, + {"matrix": [1, 3], "x": 48, "y": 13, "flags": 4}, + {"matrix": [1, 2], "x": 32, "y": 15, "flags": 4}, + {"matrix": [1, 1], "x": 16, "y": 18, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 18, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4}, + {"matrix": [2, 1], "x": 16, "y": 32, "flags": 4}, + {"matrix": [2, 2], "x": 32, "y": 28, "flags": 4}, + {"matrix": [2, 3], "x": 48, "y": 27, "flags": 4}, + {"matrix": [2, 4], "x": 64, "y": 28, "flags": 4}, + {"matrix": [2, 5], "x": 80, "y": 30, "flags": 4}, + {"matrix": [3, 5], "x": 80, "y": 43, "flags": 4}, + {"matrix": [3, 4], "x": 64, "y": 42, "flags": 4}, + {"matrix": [3, 3], "x": 48, "y": 40, "flags": 4}, + {"matrix": [3, 2], "x": 32, "y": 42, "flags": 4}, + {"matrix": [3, 1], "x": 16, "y": 45, "flags": 4}, + {"matrix": [3, 0], "x": 0, "y": 45, "flags": 4}, + {"x": 8, "y": 43, "flags": 2}, + {"x": 40, "y": 50, "flags": 2}, + {"matrix": [4, 2], "x": 56, "y": 47, "flags": 4}, + {"matrix": [4, 3], "x": 72, "y": 58, "flags": 4}, + {"x": 80, "y": 58, "flags": 2}, + {"matrix": [4, 4], "x": 90, "y": 64, "flags": 4}, + {"matrix": [4, 5], "x": 98, "y": 52, "flags": 4}, + {"matrix": [5, 0], "x": 224, "y": 5, "flags": 4}, + {"x": 216, "y": 5, "flags": 2}, + {"matrix": [5, 1], "x": 208, "y": 5, "flags": 4}, + {"matrix": [5, 2], "x": 192, "y": 2, "flags": 4}, + {"x": 184, "y": 1, "flags": 2}, + {"matrix": [5, 3], "x": 176, "y": 0, "flags": 4}, + {"matrix": [5, 4], "x": 160, "y": 5, "flags": 4}, + {"x": 152, "y": 3, "flags": 2}, + {"matrix": [5, 5], "x": 144, "y": 3, "flags": 4}, + {"matrix": [6, 5], "x": 144, "y": 17, "flags": 4}, + {"matrix": [6, 4], "x": 160, "y": 15, "flags": 4}, + {"matrix": [6, 3], "x": 176, "y": 13, "flags": 4}, + {"matrix": [6, 2], "x": 192, "y": 15, "flags": 4}, + {"matrix": [6, 1], "x": 208, "y": 18, "flags": 4}, + {"matrix": [6, 0], "x": 224, "y": 18, "flags": 4}, + {"matrix": [7, 0], "x": 224, "y": 32, "flags": 4}, + {"matrix": [7, 1], "x": 208, "y": 32, "flags": 4}, + {"matrix": [7, 2], "x": 192, "y": 28, "flags": 4}, + {"matrix": [7, 3], "x": 176, "y": 27, "flags": 4}, + {"matrix": [7, 4], "x": 160, "y": 28, "flags": 4}, + {"matrix": [7, 5], "x": 144, "y": 30, "flags": 4}, + {"matrix": [8, 5], "x": 144, "y": 43, "flags": 4}, + {"matrix": [8, 4], "x": 160, "y": 42, "flags": 4}, + {"matrix": [8, 3], "x": 176, "y": 40, "flags": 4}, + {"x": 184, "y": 50, "flags": 2}, + {"matrix": [8, 2], "x": 192, "y": 42, "flags": 4}, + {"matrix": [8, 1], "x": 208, "y": 45, "flags": 4}, + {"x": 216, "y": 43, "flags": 2}, + {"matrix": [8, 0], "x": 224, "y": 45, "flags": 4}, + {"matrix": [9, 2], "x": 168, "y": 47, "flags": 4}, + {"matrix": [9, 3], "x": 152, "y": 58, "flags": 4}, + {"x": 144, "y": 58, "flags": 2}, + {"matrix": [9, 4], "x": 134, "y": 64, "flags": 4}, + {"matrix": [9, 5], "x": 126, "y": 52, "flags": 4} + ], + "max_brightness": 120, + "split_count": [34, 34] + }, "split": { "enabled": true, "matrix_pins": { @@ -27,11 +144,14 @@ "sync_matrix_state": true } }, - "processor": "RP2040", "usb": { "device_version": "1.0.0", "pid": "0x1556" }, + "ws2812": { + "driver": "vendor", + "pin": "GP25" + }, "layouts": { "LAYOUT": { "layout": [ @@ -41,42 +161,36 @@ {"matrix": [0, 3], "x": 3, "y": 0}, {"matrix": [0, 4], "x": 4, "y": 0.125}, {"matrix": [0, 5], "x": 5, "y": 0.25}, - {"matrix": [5, 5], "x": 9, "y": 0.25}, {"matrix": [5, 4], "x": 10, "y": 0.125}, {"matrix": [5, 3], "x": 11, "y": 0}, {"matrix": [5, 2], "x": 12, "y": 0.125}, {"matrix": [5, 1], "x": 13, "y": 0.375}, {"matrix": [5, 0], "x": 14, "y": 0.375}, - {"matrix": [1, 0], "x": 0, "y": 1.375}, {"matrix": [1, 1], "x": 1, "y": 1.375}, {"matrix": [1, 2], "x": 2, "y": 1.125}, {"matrix": [1, 3], "x": 3, "y": 1}, {"matrix": [1, 4], "x": 4, "y": 1.125}, {"matrix": [1, 5], "x": 5, "y": 1.25}, - {"matrix": [6, 5], "x": 9, "y": 1.25}, {"matrix": [6, 4], "x": 10, "y": 1.125}, {"matrix": [6, 3], "x": 11, "y": 1}, {"matrix": [6, 2], "x": 12, "y": 1.125}, {"matrix": [6, 1], "x": 13, "y": 1.375}, {"matrix": [6, 0], "x": 14, "y": 1.375}, - {"matrix": [2, 0], "x": 0, "y": 2.375}, {"matrix": [2, 1], "x": 1, "y": 2.375}, {"matrix": [2, 2], "x": 2, "y": 2.125}, {"matrix": [2, 3], "x": 3, "y": 2}, {"matrix": [2, 4], "x": 4, "y": 2.125}, {"matrix": [2, 5], "x": 5, "y": 2.25}, - {"matrix": [7, 5], "x": 9, "y": 2.25}, {"matrix": [7, 4], "x": 10, "y": 2.125}, {"matrix": [7, 3], "x": 11, "y": 2}, {"matrix": [7, 2], "x": 12, "y": 2.125}, {"matrix": [7, 1], "x": 13, "y": 2.375}, {"matrix": [7, 0], "x": 14, "y": 2.375}, - {"matrix": [3, 0], "x": 0, "y": 3.375}, {"matrix": [3, 1], "x": 1, "y": 3.375}, {"matrix": [3, 2], "x": 2, "y": 3.125}, @@ -84,7 +198,6 @@ {"matrix": [3, 4], "x": 4, "y": 3.125}, {"matrix": [3, 5], "x": 5, "y": 3.25}, {"matrix": [4, 5], "x": 6.15, "y": 3.75}, - {"matrix": [9, 5], "x": 7.85, "y": 3.75}, {"matrix": [8, 5], "x": 9, "y": 3.25}, {"matrix": [8, 4], "x": 10, "y": 3.125}, @@ -92,144 +205,13 @@ {"matrix": [8, 2], "x": 12, "y": 3.125}, {"matrix": [8, 1], "x": 13, "y": 3.375}, {"matrix": [8, 0], "x": 14, "y": 3.375}, - {"matrix": [4, 2], "x": 3.5, "y": 4.25}, {"matrix": [4, 3], "x": 4.5, "y": 4.375}, {"matrix": [4, 4], "x": 5.6, "y": 4.75}, - {"matrix": [9, 4], "x": 8.4, "y": 4.75}, {"matrix": [9, 3], "x": 9.5, "y": 4.375}, {"matrix": [9, 2], "x": 10.5, "y": 4.25} ] } - }, - "rgb_matrix": { - "animations": { - "alphas_mods": true, - "gradient_up_down": true, - "gradient_left_right": true, - "breathing": true, - "band_sat": true, - "band_val": true, - "band_pinwheel_sat": true, - "band_pinwheel_val": true, - "band_spiral_sat": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "rainbow_moving_chevron": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "rainbow_pinwheels": true, - "raindrops": true, - "jellybean_raindrops": true, - "hue_breathing": true, - "hue_pendulum": true, - "hue_wave": true, - "pixel_fractal": true, - "pixel_flow": true, - "pixel_rain": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive": true, - "solid_reactive_wide": true, - "solid_reactive_multiwide": true, - "solid_reactive_cross": true, - "solid_reactive_multicross": true, - "solid_reactive_nexus": true, - "solid_reactive_multinexus": true, - "splash": true, - "multisplash": true, - "solid_splash": true, - "solid_multisplash": true - }, - "driver": "ws2812", - "split_count": [34, 34], - "max_brightness": 120, - "layout": [ - {"matrix": [0,0], "flags":4, "x":0, "y":5}, - {"flags":2, "x":8, "y":5}, - {"matrix": [0,1], "flags":4, "x":16, "y":5}, - {"matrix": [0,2], "flags":4, "x":32, "y":2}, - {"flags":2, "x":40, "y":1}, - {"matrix": [0,3], "flags":4, "x":48, "y":0}, - {"matrix": [0,4], "flags":4, "x":64, "y":5}, - {"flags":2, "x":72, "y":3}, - {"matrix": [0,5], "flags":4, "x":80, "y":3}, - - {"matrix": [1,5], "flags":4, "x":80, "y":17}, - {"matrix": [1,4], "flags":4, "x":64, "y":15}, - {"matrix": [1,3], "flags":4, "x":48, "y":13}, - {"matrix": [1,2], "flags":4, "x":32, "y":15}, - {"matrix": [1,1], "flags":4, "x":16, "y":18}, - {"matrix": [1,0], "flags":4, "x":0, "y":18}, - - {"matrix": [2,0], "flags":4, "x":0, "y":32}, - {"matrix": [2,1], "flags":4, "x":16, "y":32}, - {"matrix": [2,2], "flags":4, "x":32, "y":28}, - {"matrix": [2,3], "flags":4, "x":48, "y":27}, - {"matrix": [2,4], "flags":4, "x":64, "y":28}, - {"matrix": [2,5], "flags":4, "x":80, "y":30}, - - {"matrix": [3,5], "flags":4, "x":80, "y":43}, - {"matrix": [3,4], "flags":4, "x":64, "y":42}, - {"matrix": [3,3], "flags":4, "x":48, "y":40}, - {"matrix": [3,2], "flags":4, "x":32, "y":42}, - {"matrix": [3,1], "flags":4, "x":16, "y":45}, - {"matrix": [3,0], "flags":4, "x":0, "y":45}, - {"flags":2, "x":8, "y":43}, - {"flags":2, "x":40, "y":50}, - - {"matrix": [4,2], "flags":4, "x":56, "y":47}, - {"matrix": [4,3], "flags":4, "x":72, "y":58}, - {"flags":2, "x":80, "y":58}, - {"matrix": [4,4], "flags":4, "x":90, "y":64}, - {"matrix": [4,5], "flags":4, "x":98, "y":52}, - - {"matrix": [5,0], "flags":4, "x":224, "y":5}, - {"flags":2, "x":216, "y":5}, - {"matrix": [5,1], "flags":4, "x":208, "y":5}, - {"matrix": [5,2], "flags":4, "x":192, "y":2}, - {"flags":2, "x":184, "y":1}, - {"matrix": [5,3], "flags":4, "x":176, "y":0}, - {"matrix": [5,4], "flags":4, "x":160, "y":5}, - {"flags":2, "x":152, "y":3}, - {"matrix": [5,5], "flags":4, "x":144, "y":3}, - - {"matrix": [6,5], "flags":4, "x":144, "y":17}, - {"matrix": [6,4], "flags":4, "x":160, "y":15}, - {"matrix": [6,3], "flags":4, "x":176, "y":13}, - {"matrix": [6,2], "flags":4, "x":192, "y":15}, - {"matrix": [6,1], "flags":4, "x":208, "y":18}, - {"matrix": [6,0], "flags":4, "x":224, "y":18}, - - {"matrix": [7,0], "flags":4, "x":224, "y":32}, - {"matrix": [7,1], "flags":4, "x":208, "y":32}, - {"matrix": [7,2], "flags":4, "x":192, "y":28}, - {"matrix": [7,3], "flags":4, "x":176, "y":27}, - {"matrix": [7,4], "flags":4, "x":160, "y":28}, - {"matrix": [7,5], "flags":4, "x":144, "y":30}, - - {"matrix": [8,5], "flags":4, "x":144, "y":43}, - {"matrix": [8,4], "flags":4, "x":160, "y":42}, - {"matrix": [8,3], "flags":4, "x":176, "y":40}, - {"flags":2, "x":184, "y":50}, - {"matrix": [8,2], "flags":4, "x":192, "y":42}, - {"matrix": [8,1], "flags":4, "x":208, "y":45}, - {"flags":2, "x":216, "y":43}, - {"matrix": [8,0], "flags":4, "x":224, "y":45}, - - {"matrix": [9,2], "flags":4, "x":168, "y":47}, - {"matrix": [9,3], "flags":4, "x":152, "y":58}, - {"flags":2, "x":144, "y":58}, - {"matrix": [9,4], "flags":4, "x":134, "y":64}, - {"matrix": [9,5], "flags":4, "x":126, "y":52} - ] } -} +} \ No newline at end of file From 4e1f8434cce999533946d0997a979ea2466d7acb Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Fri, 19 Jan 2024 18:53:58 -0500 Subject: [PATCH 11/15] Switch to using Tri Layer feature --- .../keebio/iris_ce/keymaps/default/keymap.c | 42 +------------------ .../keebio/iris_ce/keymaps/default/rules.mk | 1 + 2 files changed, 2 insertions(+), 41 deletions(-) create mode 100644 keyboards/keebio/iris_ce/keymaps/default/rules.mk diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index e6bceffa5875..113dc2e5f1d6 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_HOME, KC_END, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - KC_LGUI, LOWER, KC_ENT, KC_SPC, RAISE, KC_RALT + KC_LGUI, TL_LOWR, KC_ENT, KC_SPC, TL_UPPR, KC_RALT // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ), @@ -73,43 +73,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ) }; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QWERTY: - if (record->event.pressed) { - set_single_persistent_default_layer(_QWERTY); - } - return false; - break; - case LOWER: - if (record->event.pressed) { - layer_on(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_LOWER); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case RAISE: - if (record->event.pressed) { - layer_on(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } else { - layer_off(_RAISE); - update_tri_layer(_LOWER, _RAISE, _ADJUST); - } - return false; - break; - case ADJUST: - if (record->event.pressed) { - layer_on(_ADJUST); - } else { - layer_off(_ADJUST); - } - return false; - break; - } - return true; -} diff --git a/keyboards/keebio/iris_ce/keymaps/default/rules.mk b/keyboards/keebio/iris_ce/keymaps/default/rules.mk new file mode 100644 index 000000000000..7c9bf212a6f5 --- /dev/null +++ b/keyboards/keebio/iris_ce/keymaps/default/rules.mk @@ -0,0 +1 @@ +TRI_LAYER_ENABLE = yes From a60276fa747470ab66795f693428f9e7d99b0289 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Fri, 19 Jan 2024 18:55:12 -0500 Subject: [PATCH 12/15] Update README to set bootloader info --- keyboards/keebio/iris_ce/readme.md | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/keyboards/keebio/iris_ce/readme.md b/keyboards/keebio/iris_ce/readme.md index 7d0e4f25e956..7b3ea32dd1ff 100644 --- a/keyboards/keebio/iris_ce/readme.md +++ b/keyboards/keebio/iris_ce/readme.md @@ -1,11 +1,10 @@ -Iris CE (Compact Edition) -========================= +# Iris CE (Compact Edition) A split ergo 4x6 keyboard with 4 thumb keys made and sold by Keebio. [More info at Keebio](https://keeb.io). -Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) -Hardware Supported: RP2040 -Hardware Availability: [Keebio](https://keeb.io) +* Keyboard Maintainer: [Bakingpy/nooges](https://github.com/nooges) +* Hardware Supported: Iris CE PCBs w/RP2040 microcontroller +* Hardware Availability: [Keebio](https://keeb.io) Make example for this keyboard (after setting up your build environment): @@ -15,4 +14,12 @@ Example of flashing this keyboard: make keebio/iris_ce/rev1:default:flash -See [build environment setup](https://docs.qmk.fm/#/newbs_getting_started) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. +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 the top left and plug in the keyboard +* **Physical reset button**: Press and hold the button on the back of the PCB for at least 1 second and let go +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From 8aeb27d0120d5c89f46d8657cde7e1f7ca18b16f Mon Sep 17 00:00:00 2001 From: Danny Date: Fri, 19 Jan 2024 22:19:41 -0500 Subject: [PATCH 13/15] Apply suggestions from code review Co-authored-by: Joel Challis --- keyboards/keebio/iris_ce/keymaps/default/keymap.c | 7 ------- keyboards/keebio/iris_ce/rev1/config.h | 6 ------ keyboards/keebio/iris_ce/rev1/info.json | 3 ++- 3 files changed, 2 insertions(+), 14 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index 113dc2e5f1d6..6a8f9802165d 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -8,13 +8,6 @@ #define _RAISE 2 #define _ADJUST 3 -enum custom_keycodes { - QWERTY = SAFE_RANGE, - LOWER, - RAISE, - ADJUST, -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT( diff --git a/keyboards/keebio/iris_ce/rev1/config.h b/keyboards/keebio/iris_ce/rev1/config.h index ebb2fccd155f..e5f43f001e21 100644 --- a/keyboards/keebio/iris_ce/rev1/config.h +++ b/keyboards/keebio/iris_ce/rev1/config.h @@ -14,9 +14,3 @@ #define I2C_DRIVER I2CD2 #define I2C1_SDA_PIN GP10 #define I2C1_SCL_PIN GP11 - -// RGB Matrix -#define RGB_MATRIX_LED_COUNT 68 -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define RGB_MATRIX_FRAMEBUFFER_EFFECTS -#define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/keebio/iris_ce/rev1/info.json b/keyboards/keebio/iris_ce/rev1/info.json index 374f4ae84b72..c9fc160001ad 100644 --- a/keyboards/keebio/iris_ce/rev1/info.json +++ b/keyboards/keebio/iris_ce/rev1/info.json @@ -130,7 +130,8 @@ {"matrix": [9, 5], "x": 126, "y": 52, "flags": 4} ], "max_brightness": 120, - "split_count": [34, 34] + "split_count": [34, 34], + "sleep": true }, "split": { "enabled": true, From 278306ca0637b127669d6f20981b0eb7d0ce3b34 Mon Sep 17 00:00:00 2001 From: Danny Date: Sat, 20 Jan 2024 09:07:41 -0500 Subject: [PATCH 14/15] Replace defines for layer names with enum Co-authored-by: Drashna Jaelre --- keyboards/keebio/iris_ce/keymaps/default/keymap.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index 6a8f9802165d..127c9c32d14e 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -3,10 +3,12 @@ #include QMK_KEYBOARD_H -#define _QWERTY 0 -#define _LOWER 1 -#define _RAISE 2 -#define _ADJUST 3 +enum custom_layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { From bdbd1e9d32107f95f99a24e4c115cec870cdefc2 Mon Sep 17 00:00:00 2001 From: Danny Date: Sat, 20 Jan 2024 11:28:50 -0500 Subject: [PATCH 15/15] Remove empty layer Co-authored-by: jack <0x6a73@protonmail.com> --- .../keebio/iris_ce/keymaps/default/keymap.c | 17 +---------------- keyboards/keebio/iris_ce/keymaps/via/keymap.c | 17 +---------------- 2 files changed, 2 insertions(+), 32 deletions(-) diff --git a/keyboards/keebio/iris_ce/keymaps/default/keymap.c b/keyboards/keebio/iris_ce/keymaps/default/keymap.c index 127c9c32d14e..d5021d647d4b 100644 --- a/keyboards/keebio/iris_ce/keymaps/default/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/default/keymap.c @@ -6,8 +6,7 @@ enum custom_layers { _QWERTY, _LOWER, - _RAISE, - _ADJUST + _RAISE }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -52,19 +51,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, _______, _______, _______, _______ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ - ), - - [_ADJUST] = LAYOUT( - //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - _______, _______, _______, _______, _______, _______ - // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ) }; diff --git a/keyboards/keebio/iris_ce/keymaps/via/keymap.c b/keyboards/keebio/iris_ce/keymaps/via/keymap.c index 21d0bcdd6dbd..7d2a182ad6a3 100644 --- a/keyboards/keebio/iris_ce/keymaps/via/keymap.c +++ b/keyboards/keebio/iris_ce/keymaps/via/keymap.c @@ -6,8 +6,7 @@ enum custom_layer { _MAIN, _FN1, - _FN2, - _FN3, + _FN2 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -52,19 +51,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ _______, _______, _______, _______, _______, _______ // └────────┴────────┴────────┘ └────────┴────────┴────────┘ - ), - - [_FN3] = LAYOUT( - //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ - _______, _______, _______, _______, _______, _______ - // └────────┴────────┴────────┘ └────────┴────────┴────────┘ ) };