aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny <nooges@users.noreply.github.com>2021-08-30 14:49:46 -0400
committerGitHub <noreply@github.com>2021-08-30 11:49:46 -0700
commit2dc07391bd61e266ac2410ba7c0413c19eea5db5 (patch)
treef7a51a45b843c2d7c555ff9be3fb211d6f2b79ee
parent27aebba1b1eadedf2ce25efc081aef3bdbbaab7a (diff)
downloadqmk_firmware-2dc07391bd61e266ac2410ba7c0413c19eea5db5.tar.gz
qmk_firmware-2dc07391bd61e266ac2410ba7c0413c19eea5db5.zip
[Keyboard] Add Iris Rev. 5 (#13934)
Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Ryan <fauxpark@gmail.com>
-rw-r--r--keyboards/keebio/iris/iris.h12
-rw-r--r--keyboards/keebio/iris/rev5/config.h83
-rw-r--r--keyboards/keebio/iris/rev5/rev5.c14
-rw-r--r--keyboards/keebio/iris/rev5/rev5.h42
-rw-r--r--keyboards/keebio/iris/rev5/rules.mk24
5 files changed, 170 insertions, 5 deletions
diff --git a/keyboards/keebio/iris/iris.h b/keyboards/keebio/iris/iris.h
index a02158e36..2f3b08d22 100644
--- a/keyboards/keebio/iris/iris.h
+++ b/keyboards/keebio/iris/iris.h
@@ -1,15 +1,17 @@
1#pragma once 1#pragma once
2 2
3#ifdef KEYBOARD_keebio_iris_rev1 3#if defined(KEYBOARD_keebio_iris_rev1)
4 #include "rev1.h" 4 #include "rev1.h"
5#elif KEYBOARD_keebio_iris_rev1_led 5#elif defined(KEYBOARD_keebio_iris_rev1_led)
6 #include "rev1_led.h" 6 #include "rev1_led.h"
7#elif KEYBOARD_keebio_iris_rev2 7#elif defined(KEYBOARD_keebio_iris_rev2)
8 #include "rev2.h" 8 #include "rev2.h"
9#elif KEYBOARD_keebio_iris_rev3 9#elif defined(KEYBOARD_keebio_iris_rev3)
10 #include "rev3.h" 10 #include "rev3.h"
11#elif KEYBOARD_keebio_iris_rev4 11#elif defined(KEYBOARD_keebio_iris_rev4)
12 #include "rev4.h" 12 #include "rev4.h"
13#elif defined(KEYBOARD_keebio_iris_rev5)
14 #include "rev5.h"
13#endif 15#endif
14 16
15#include "quantum.h" 17#include "quantum.h"
diff --git a/keyboards/keebio/iris/rev5/config.h b/keyboards/keebio/iris/rev5/config.h
new file mode 100644
index 000000000..15eed8349
--- /dev/null
+++ b/keyboards/keebio/iris/rev5/config.h
@@ -0,0 +1,83 @@
1/*
2Copyright 2019 Danny Nguyen <danny@keeb.io>
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20/* USB Device descriptor parameter */
21#define VENDOR_ID 0xCB10
22#define PRODUCT_ID 0x5256
23#define DEVICE_VER 0x0500
24#define MANUFACTURER Keebio
25#define PRODUCT Iris Rev. 5
26
27/* key matrix size */
28// Rows are doubled-up
29#define MATRIX_ROWS 10
30#define MATRIX_COLS 6
31
32// wiring of each half
33#define MATRIX_ROW_PINS { B1, F0, F5, F6, F7 }
34#define MATRIX_COL_PINS { F1, F4, D3, D2, B7, D4 }
35#define MATRIX_ROW_PINS_RIGHT { B1, B2, D2, F1, F4 }
36#define MATRIX_COL_PINS_RIGHT { D4, D7, D3, B7, F0, B3 }
37#define SPLIT_HAND_PIN D5
38#define QMK_ESC_OUTPUT F1
39#define QMK_ESC_INPUT B1
40#define QMK_LED B0
41#define QMK_SPEAKER C6
42
43#define ENCODERS_PAD_A { B2 }
44#define ENCODERS_PAD_B { B3 }
45#define ENCODERS_PAD_A_RIGHT { F7 }
46#define ENCODERS_PAD_B_RIGHT { F6 }
47
48/* COL2ROW or ROW2COL */
49#define DIODE_DIRECTION COL2ROW
50
51/* define if matrix has ghost */
52//#define MATRIX_HAS_GHOST
53
54/* number of backlight levels */
55// #define BACKLIGHT_LEVELS 3
56
57/* Set 0 if debouncing isn't needed */
58#define DEBOUNCE 5
59
60/* serial.c configuration for split keyboard */
61#define SOFT_SERIAL_PIN D0
62
63
64#define BACKLIGHT_PIN B5
65#define BACKLIGHT_LEVELS 5
66#define BACKLIGHT_DEFAULT_LEVEL 3
67
68/* ws2812 RGB LED */
69#define RGB_DI_PIN D6
70#define RGBLED_NUM 12 // Number of LEDs
71#define RGBLED_SPLIT { 6, 6 }
72#define RGBLIGHT_EFFECT_BREATHING
73#define RGBLIGHT_EFFECT_RAINBOW_MOOD
74#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
75#define RGBLIGHT_EFFECT_SNAKE
76#define RGBLIGHT_EFFECT_KNIGHT
77#define RGBLIGHT_EFFECT_CHRISTMAS
78#define RGBLIGHT_EFFECT_STATIC_GRADIENT
79#define RGBLIGHT_EFFECT_RGB_TEST
80#define RGBLIGHT_EFFECT_ALTERNATING
81#define RGBLIGHT_EFFECT_TWINKLE
82#define RGBLIGHT_DEFAULT_VAL 128
83#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2)
diff --git a/keyboards/keebio/iris/rev5/rev5.c b/keyboards/keebio/iris/rev5/rev5.c
new file mode 100644
index 000000000..a4191719c
--- /dev/null
+++ b/keyboards/keebio/iris/rev5/rev5.c
@@ -0,0 +1,14 @@
1/*
2Copyright 2021 Danny Nguyen <danny@keeb.io>
3This program is free software: you can redistribute it and/or modify
4it under the terms of the GNU General Public License as published by
5the Free Software Foundation, either version 2 of the License, or
6(at your option) any later version.
7This program is distributed in the hope that it will be useful,
8but WITHOUT ANY WARRANTY; without even the implied warranty of
9MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10GNU General Public License for more details.
11You should have received a copy of the GNU General Public License
12along with this program. If not, see <http://www.gnu.org/licenses/>.
13*/
14#include "rev5.h"
diff --git a/keyboards/keebio/iris/rev5/rev5.h b/keyboards/keebio/iris/rev5/rev5.h
new file mode 100644
index 000000000..d13e24410
--- /dev/null
+++ b/keyboards/keebio/iris/rev5/rev5.h
@@ -0,0 +1,42 @@
1/*
2Copyright 2021 Danny Nguyen <danny@keeb.io>
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20#include "iris.h"
21#include "quantum.h"
22
23
24#define LAYOUT( \
25 LA1, LA2, LA3, LA4, LA5, LA6, RA6, RA5, RA4, RA3, RA2, RA1, \
26 LB1, LB2, LB3, LB4, LB5, LB6, RB6, RB5, RB4, RB3, RB2, RB1, \
27 LC1, LC2, LC3, LC4, LC5, LC6, RC6, RC5, RC4, RC3, RC2, RC1, \
28 LD1, LD2, LD3, LD4, LD5, LD6, LE6, RE6, RD6, RD5, RD4, RD3, RD2, RD1, \
29 LE3, LE4, LE5, RE5, RE4, RE3 \
30 ) \
31 { \
32 { LA1, LA2, LA3, LA4, LA5, LA6 }, \
33 { LB1, LB2, LB3, LB4, LB5, LB6 }, \
34 { LC1, LC2, LC3, LC4, LC5, LC6 }, \
35 { LD1, LD2, LD3, LD4, LD5, LD6 }, \
36 { KC_NO, KC_NO, LE3, LE4, LE5, LE6 }, \
37 { RA1, RA2, RA3, RA4, RA5, RA6 }, \
38 { RB1, RB2, RB3, RB4, RB5, RB6 }, \
39 { RC1, RC2, RC3, RC4, RC5, RC6 }, \
40 { RD1, RD2, RD3, RD4, RD5, RD6 }, \
41 { KC_NO, KC_NO, RE3, RE4, RE5, RE6 } \
42 }
diff --git a/keyboards/keebio/iris/rev5/rules.mk b/keyboards/keebio/iris/rev5/rules.mk
new file mode 100644
index 000000000..b77e9ce72
--- /dev/null
+++ b/keyboards/keebio/iris/rev5/rules.mk
@@ -0,0 +1,24 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = qmk-dfu
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
11MOUSEKEY_ENABLE = no # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = yes # Console for debug
14COMMAND_ENABLE = no # Commands for debug and configuration
15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
18NKRO_ENABLE = no # USB Nkey Rollover
19BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output
23SPLIT_KEYBOARD = yes
24ENCODER_ENABLE = yes