diff options
author | Akshay <[email protected]> | 2022-04-10 12:13:40 +0100 |
---|---|---|
committer | Akshay <[email protected]> | 2022-04-10 12:13:40 +0100 |
commit | dc90387ce7d8ba7b607d9c48540bf6d8b560f14d (patch) | |
tree | 4ccb8fa5886b66fa9d480edef74236c27f035e16 /keyboards/aeboards/ext65/rev1 |
Diffstat (limited to 'keyboards/aeboards/ext65/rev1')
-rw-r--r-- | keyboards/aeboards/ext65/rev1/.noci | 0 | ||||
-rw-r--r-- | keyboards/aeboards/ext65/rev1/config.h | 47 | ||||
-rw-r--r-- | keyboards/aeboards/ext65/rev1/rev1.c | 32 | ||||
-rw-r--r-- | keyboards/aeboards/ext65/rev1/rev1.h | 41 | ||||
-rw-r--r-- | keyboards/aeboards/ext65/rev1/rules.mk | 17 |
5 files changed, 137 insertions, 0 deletions
diff --git a/keyboards/aeboards/ext65/rev1/.noci b/keyboards/aeboards/ext65/rev1/.noci new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/keyboards/aeboards/ext65/rev1/.noci | |||
diff --git a/keyboards/aeboards/ext65/rev1/config.h b/keyboards/aeboards/ext65/rev1/config.h new file mode 100644 index 000000000..cd9c24006 --- /dev/null +++ b/keyboards/aeboards/ext65/rev1/config.h | |||
@@ -0,0 +1,47 @@ | |||
1 | /* Copyright 2018 Jason Williams (Wilba) | ||
2 | * | ||
3 | * This program is free software: you can redistribute it and/or modify | ||
4 | * it under the terms of the GNU General Public License as published by | ||
5 | * the Free Software Foundation, either version 2 of the License, or | ||
6 | * (at your option) any later version. | ||
7 | * | ||
8 | * This program is distributed in the hope that it will be useful, | ||
9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
11 | * GNU General Public License for more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
15 | */ | ||
16 | |||
17 | #pragma once | ||
18 | |||
19 | #include "config_common.h" | ||
20 | |||
21 | /* USB Device descriptor parameter */ | ||
22 | #define VENDOR_ID 0x4145 // "AE" | ||
23 | #define PRODUCT_ID 0xAE65 // AEboards EXT65 | ||
24 | #define DEVICE_VER 0x0001 | ||
25 | #define MANUFACTURER AEBoards | ||
26 | #define PRODUCT AEBoards Ext65 | ||
27 | |||
28 | /* key matrix size */ | ||
29 | #define MATRIX_ROWS 10 | ||
30 | #define MATRIX_COLS 10 | ||
31 | |||
32 | /* key matrix pins */ | ||
33 | #define MATRIX_ROW_PINS { C6, C7, B5, B6, D7, B4, D4, D6, B7, E6 } | ||
34 | #define MATRIX_COL_PINS { B2, B3, B1, B0, F7, F0, F1, F4, F5, F6 } | ||
35 | #define UNUSED_PINS | ||
36 | |||
37 | /* COL2ROW or ROW2COL */ | ||
38 | #define DIODE_DIRECTION COL2ROW | ||
39 | |||
40 | /* Set 0 if debouncing isn't needed */ | ||
41 | #define DEBOUNCE 5 | ||
42 | |||
43 | /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ | ||
44 | #define LOCKING_SUPPORT_ENABLE | ||
45 | |||
46 | /* Locking resynchronize hack */ | ||
47 | #define LOCKING_RESYNC_ENABLE | ||
diff --git a/keyboards/aeboards/ext65/rev1/rev1.c b/keyboards/aeboards/ext65/rev1/rev1.c new file mode 100644 index 000000000..1d69a6897 --- /dev/null +++ b/keyboards/aeboards/ext65/rev1/rev1.c | |||
@@ -0,0 +1,32 @@ | |||
1 | #include "rev1.h" | ||
2 | |||
3 | void keyboard_pre_init_user(void) { | ||
4 | // Call the keyboard pre init code. | ||
5 | // Set our LED pins as output | ||
6 | setPinOutput(D5); | ||
7 | setPinOutput(D3); | ||
8 | setPinOutput(D2); | ||
9 | setPinOutput(D1); | ||
10 | } | ||
11 | |||
12 | bool led_update_kb(led_t led_state) { | ||
13 | bool res = led_update_user(led_state); | ||
14 | if(res) { | ||
15 | writePin(D5, led_state.num_lock); | ||
16 | writePin(D3, led_state.caps_lock); | ||
17 | writePin(D2, led_state.scroll_lock); | ||
18 | } | ||
19 | return res; | ||
20 | } | ||
21 | |||
22 | layer_state_t layer_state_set_kb(layer_state_t state) { | ||
23 | switch (get_highest_layer(state)) { | ||
24 | case 1: | ||
25 | writePinHigh(D1); | ||
26 | break; | ||
27 | default: // for any other layers, or the default layer | ||
28 | writePinLow(D1); | ||
29 | break; | ||
30 | } | ||
31 | return layer_state_set_user(state); | ||
32 | } | ||
diff --git a/keyboards/aeboards/ext65/rev1/rev1.h b/keyboards/aeboards/ext65/rev1/rev1.h new file mode 100644 index 000000000..a8efc48ac --- /dev/null +++ b/keyboards/aeboards/ext65/rev1/rev1.h | |||
@@ -0,0 +1,41 @@ | |||
1 | /* Copyright 2020 Harrison Chan (Xelus) | ||
2 | * | ||
3 | * This program is free software: you can redistribute it and/or modify | ||
4 | * it under the terms of the GNU General Public License as published by | ||
5 | * the Free Software Foundation, either version 2 of the License, or | ||
6 | * (at your option) any later version. | ||
7 | * | ||
8 | * This program is distributed in the hope that it will be useful, | ||
9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
11 | * GNU General Public License for more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
15 | */ | ||
16 | |||
17 | #pragma once | ||
18 | |||
19 | #include "ext65.h" | ||
20 | #include "quantum.h" | ||
21 | |||
22 | #define ____ KC_NO | ||
23 | |||
24 | #define LAYOUT_ext65( \ | ||
25 | K000, K100, K001, K101, K002, K102, K003, K103, K004, K104, K005, K105, K006, K106, K007, K107, K008, K108, K508, K009, \ | ||
26 | K200, K300, K201, K301, K202, K302, K203, K303, K204, K304, K205, K305, K206, K306, K207, K307, K208, K308, K209, \ | ||
27 | K400, K500, K401, K501, K402, K502, K403, K503, K404, K504, K405, K505, K406, K506, K407, K507, K408, K409, \ | ||
28 | K600, K700, K601, K701, K602, K702, K603, K703, K604, K704, K605, K705, K606, K706, K607, K708, K608, K709, \ | ||
29 | K800, K900, K801, K901, K802, K902, K803, K805, K906, K807, K908, K808, K909 \ | ||
30 | ) { \ | ||
31 | { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009 }, \ | ||
32 | { K100, K101, K102, K103, K104, K105, K106, K107, K108, ____ }, \ | ||
33 | { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209 }, \ | ||
34 | { K300, K301, K302, K303, K304, K305, K306, K307, K308, ____ }, \ | ||
35 | { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 }, \ | ||
36 | { K500, K501, K502, K503, K504, K505, K506, K507, K508, ____ }, \ | ||
37 | { K600, K601, K602, K603, K604, K605, K606, K607, K608, ____ }, \ | ||
38 | { K700, K701, K702, K703, K704, K705, K706, ____, K708, K709 }, \ | ||
39 | { K800, K801, K802, K803, ____, K805, ____, K807, K808, ____ }, \ | ||
40 | { K900, K901, K902, ____, ____, ____, K906, ____, K908, K909 } \ | ||
41 | } | ||
diff --git a/keyboards/aeboards/ext65/rev1/rules.mk b/keyboards/aeboards/ext65/rev1/rules.mk new file mode 100644 index 000000000..2e24be64b --- /dev/null +++ b/keyboards/aeboards/ext65/rev1/rules.mk | |||
@@ -0,0 +1,17 @@ | |||
1 | # MCU name | ||
2 | MCU = atmega32u4 | ||
3 | |||
4 | # Bootloader selection | ||
5 | BOOTLOADER = atmel-dfu | ||
6 | |||
7 | # Build Options | ||
8 | # change yes to no to disable | ||
9 | # | ||
10 | BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite | ||
11 | MOUSEKEY_ENABLE = no # Mouse keys | ||
12 | EXTRAKEY_ENABLE = yes # Audio control and System control | ||
13 | CONSOLE_ENABLE = no # Console for debug | ||
14 | COMMAND_ENABLE = no # Commands for debug and configuration | ||
15 | NKRO_ENABLE = yes # Enable N-Key Rollover | ||
16 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
17 | AUDIO_ENABLE = no # Audio output | ||