diff options
Diffstat (limited to 'keyboards/claw44')
-rw-r--r-- | keyboards/claw44/.noci | 0 | ||||
-rw-r--r-- | keyboards/claw44/claw44.c | 1 | ||||
-rw-r--r-- | keyboards/claw44/claw44.h | 5 | ||||
-rw-r--r-- | keyboards/claw44/config.h | 24 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/default/config.h | 21 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/default/keymap.c | 72 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/oled/config.h | 22 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/oled/keymap.c | 166 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/oled/rules.mk | 2 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/via/config.h | 21 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/via/keymap.c | 84 | ||||
-rw-r--r-- | keyboards/claw44/keymaps/via/rules.mk | 1 | ||||
-rw-r--r-- | keyboards/claw44/lib/glcdfont.c | 232 | ||||
-rw-r--r-- | keyboards/claw44/readme.md | 15 | ||||
-rw-r--r-- | keyboards/claw44/rev1/.noci | 0 | ||||
-rw-r--r-- | keyboards/claw44/rev1/config.h | 74 | ||||
-rw-r--r-- | keyboards/claw44/rev1/info.json | 55 | ||||
-rw-r--r-- | keyboards/claw44/rev1/readme.md | 15 | ||||
-rw-r--r-- | keyboards/claw44/rev1/rev1.c | 1 | ||||
-rw-r--r-- | keyboards/claw44/rev1/rev1.h | 20 | ||||
-rw-r--r-- | keyboards/claw44/rev1/rules.mk | 14 | ||||
-rw-r--r-- | keyboards/claw44/rules.mk | 20 |
22 files changed, 865 insertions, 0 deletions
diff --git a/keyboards/claw44/.noci b/keyboards/claw44/.noci new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/keyboards/claw44/.noci | |||
diff --git a/keyboards/claw44/claw44.c b/keyboards/claw44/claw44.c new file mode 100644 index 000000000..d87103065 --- /dev/null +++ b/keyboards/claw44/claw44.c | |||
@@ -0,0 +1 @@ | |||
#include "claw44.h" | |||
diff --git a/keyboards/claw44/claw44.h b/keyboards/claw44/claw44.h new file mode 100644 index 000000000..4ca25fcb2 --- /dev/null +++ b/keyboards/claw44/claw44.h | |||
@@ -0,0 +1,5 @@ | |||
1 | #pragma once | ||
2 | |||
3 | #ifdef KEYBOARD_claw44_rev1 | ||
4 | #include "rev1.h" | ||
5 | #endif | ||
diff --git a/keyboards/claw44/config.h b/keyboards/claw44/config.h new file mode 100644 index 000000000..0bd74ff83 --- /dev/null +++ b/keyboards/claw44/config.h | |||
@@ -0,0 +1,24 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | |||
5 | This program is free software: you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published by | ||
7 | the Free Software Foundation, either version 2 of the License, or | ||
8 | (at your option) any later version. | ||
9 | |||
10 | This program is distributed in the hope that it will be useful, | ||
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | GNU General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
17 | */ | ||
18 | |||
19 | #pragma once | ||
20 | |||
21 | #include "config_common.h" | ||
22 | |||
23 | #define NO_ACTION_MACRO | ||
24 | #define NO_ACTION_FUNCTION | ||
diff --git a/keyboards/claw44/keymaps/default/config.h b/keyboards/claw44/keymaps/default/config.h new file mode 100644 index 000000000..98469e4cc --- /dev/null +++ b/keyboards/claw44/keymaps/default/config.h | |||
@@ -0,0 +1,21 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | |||
5 | This program is free software: you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published by | ||
7 | the Free Software Foundation, either version 2 of the License, or | ||
8 | (at your option) any later version. | ||
9 | |||
10 | This program is distributed in the hope that it will be useful, | ||
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | GNU General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
17 | */ | ||
18 | |||
19 | #pragma once | ||
20 | |||
21 | #define MASTER_LEFT | ||
diff --git a/keyboards/claw44/keymaps/default/keymap.c b/keyboards/claw44/keymaps/default/keymap.c new file mode 100644 index 000000000..204c0c94e --- /dev/null +++ b/keyboards/claw44/keymaps/default/keymap.c | |||
@@ -0,0 +1,72 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | This program is free software: you can redistribute it and/or modify | ||
5 | it under the terms of the GNU General Public License as published by | ||
6 | the Free Software Foundation, either version 2 of the License, or | ||
7 | (at your option) any later version. | ||
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 | You should have received a copy of the GNU General Public License | ||
13 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
14 | */ | ||
15 | |||
16 | #include QMK_KEYBOARD_H | ||
17 | |||
18 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
19 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
20 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
21 | // entirely and just use numbers. | ||
22 | |||
23 | enum layer_number { | ||
24 | _QWERTY = 0, | ||
25 | _RAISE, | ||
26 | _LOWER, | ||
27 | }; | ||
28 | |||
29 | #define KC_L_SPC LT(_LOWER, KC_SPC) // lower | ||
30 | #define KC_R_ENT LT(_RAISE, KC_ENT) // raise | ||
31 | #define KC_G_JA LGUI_T(KC_LANG1) // cmd or win | ||
32 | #define KC_G_EN LGUI_T(KC_LANG2) // cmd or win | ||
33 | #define KC_C_BS LCTL_T(KC_BSPC) // ctrl | ||
34 | #define KC_A_DEL ALT_T(KC_DEL) // alt | ||
35 | |||
36 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
37 | [_QWERTY] = LAYOUT( | ||
38 | //,--------+--------+---------+--------+---------+--------. ,--------+---------+--------+---------+--------+--------. | ||
39 | KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, | ||
40 | //|--------+--------+---------+--------+---------+--------| |--------+---------+--------+---------+--------+--------| | ||
41 | KC_TAB , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, | ||
42 | //|--------+--------+---------+--------+---------+--------| |--------+---------+--------+---------+--------+--------| | ||
43 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, | ||
44 | //`--------+--------+---------+--------+---------+--------/ \--------+---------+--------+---------+--------+--------' | ||
45 | KC_A_DEL, KC_G_EN, KC_L_SPC, KC_C_BS, KC_C_BS, KC_R_ENT, KC_G_JA, KC_A_DEL | ||
46 | // `----------+--------+---------+--------' `--------+---------+--------+---------' | ||
47 | ), | ||
48 | |||
49 | [_RAISE] = LAYOUT( | ||
50 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
51 | _______, KC_BSLS, KC_CIRC, KC_EXLM, KC_AMPR, KC_PIPE, KC_AT , KC_EQL , KC_PLUS, KC_ASTR, KC_PERC, KC_MINS, | ||
52 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
53 | KC_LPRN, KC_HASH, KC_DLR , KC_DQT , KC_QUOT, KC_TILD, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_GRV , KC_RPRN, | ||
54 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
55 | _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, | ||
56 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
57 | _______, _______, _______, _______, _______, _______, _______, RESET | ||
58 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
59 | ), | ||
60 | |||
61 | [_LOWER] = LAYOUT( | ||
62 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
63 | KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , _______, KC_EQL , KC_PLUS, KC_ASTR, KC_PERC, KC_MINS, | ||
64 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
65 | _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______, | ||
66 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
67 | KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, | ||
68 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
69 | RESET , _______, _______, _______, _______, _______, _______, _______ | ||
70 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
71 | ), | ||
72 | }; | ||
diff --git a/keyboards/claw44/keymaps/oled/config.h b/keyboards/claw44/keymaps/oled/config.h new file mode 100644 index 000000000..5379ce677 --- /dev/null +++ b/keyboards/claw44/keymaps/oled/config.h | |||
@@ -0,0 +1,22 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | |||
5 | This program is free software: you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published by | ||
7 | the Free Software Foundation, either version 2 of the License, or | ||
8 | (at your option) any later version. | ||
9 | |||
10 | This program is distributed in the hope that it will be useful, | ||
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | GNU General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
17 | */ | ||
18 | |||
19 | #pragma once | ||
20 | |||
21 | #define MASTER_LEFT | ||
22 | #define OLED_FONT_H "keyboards/claw44/lib/glcdfont.c" | ||
diff --git a/keyboards/claw44/keymaps/oled/keymap.c b/keyboards/claw44/keymaps/oled/keymap.c new file mode 100644 index 000000000..1778ac616 --- /dev/null +++ b/keyboards/claw44/keymaps/oled/keymap.c | |||
@@ -0,0 +1,166 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | This program is free software: you can redistribute it and/or modify | ||
5 | it under the terms of the GNU General Public License as published by | ||
6 | the Free Software Foundation, either version 2 of the License, or | ||
7 | (at your option) any later version. | ||
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 | You should have received a copy of the GNU General Public License | ||
13 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
14 | */ | ||
15 | |||
16 | #include QMK_KEYBOARD_H | ||
17 | #include <stdio.h> | ||
18 | |||
19 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
20 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
21 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
22 | // entirely and just use numbers. | ||
23 | |||
24 | enum layer_number { | ||
25 | _QWERTY = 0, | ||
26 | _RAISE, | ||
27 | _LOWER, | ||
28 | _ADJUST, | ||
29 | }; | ||
30 | |||
31 | #define KC_L_SPC LT(_LOWER, KC_SPC) // lower | ||
32 | #define KC_R_ENT LT(_RAISE, KC_ENT) // raise | ||
33 | #define KC_G_JA LGUI_T(KC_LANG1) // cmd or win | ||
34 | #define KC_G_EN LGUI_T(KC_LANG2) // cmd or win | ||
35 | #define KC_C_BS LCTL_T(KC_BSPC) // ctrl | ||
36 | #define KC_A_DEL ALT_T(KC_DEL) // alt | ||
37 | |||
38 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
39 | [_QWERTY] = LAYOUT( \ | ||
40 | //,--------+--------+---------+--------+---------+--------. ,--------+---------+--------+---------+--------+--------. | ||
41 | KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, | ||
42 | //|--------+--------+---------+--------+---------+--------| |--------+---------+--------+---------+--------+--------| | ||
43 | KC_TAB , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, | ||
44 | //|--------+--------+---------+--------+---------+--------| |--------+---------+--------+---------+--------+--------| | ||
45 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, | ||
46 | //`--------+--------+---------+--------+---------+--------/ \--------+---------+--------+---------+--------+--------' | ||
47 | KC_A_DEL, KC_G_EN, KC_L_SPC, KC_C_BS, KC_C_BS, KC_R_ENT, KC_G_JA, KC_A_DEL | ||
48 | // `----------+--------+---------+--------' `--------+---------+--------+---------' | ||
49 | ), | ||
50 | |||
51 | [_RAISE] = LAYOUT( \ | ||
52 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
53 | _______, KC_BSLS, KC_CIRC, KC_EXLM, KC_AMPR, KC_PIPE, KC_AT , KC_EQL , KC_PLUS, KC_ASTR, KC_PERC, KC_MINS, | ||
54 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
55 | KC_LPRN, KC_HASH, KC_DLR , KC_DQT , KC_QUOT, KC_TILD, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_GRV , KC_RPRN, | ||
56 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
57 | _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, | ||
58 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
59 | _______, _______, _______, _______, _______, _______, _______, RESET | ||
60 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
61 | ), | ||
62 | |||
63 | [_LOWER] = LAYOUT( \ | ||
64 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
65 | KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , _______, KC_EQL , KC_PLUS, KC_ASTR, KC_PERC, KC_MINS, | ||
66 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
67 | _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______, | ||
68 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
69 | KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, | ||
70 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
71 | RESET , _______, _______, _______, _______, _______, _______, _______ | ||
72 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
73 | ), | ||
74 | [_ADJUST] = LAYOUT( | ||
75 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
76 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
77 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
78 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
79 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
80 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
81 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
82 | KC_TRNS, KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||
83 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
84 | ), | ||
85 | }; | ||
86 | |||
87 | #ifdef OLED_ENABLE | ||
88 | |||
89 | void render_layer_state(void) { | ||
90 | switch (get_highest_layer(layer_state)) { | ||
91 | case _QWERTY: | ||
92 | oled_write_ln_P(PSTR("Layer: Default"), false); | ||
93 | break; | ||
94 | case _RAISE: | ||
95 | oled_write_ln_P(PSTR("Layer: Raise"), false); | ||
96 | break; | ||
97 | case _LOWER: | ||
98 | oled_write_ln_P(PSTR("Layer: Lower"), false); | ||
99 | break; | ||
100 | case _ADJUST: | ||
101 | oled_write_ln_P(PSTR("Layer: Adjust"), false); | ||
102 | break; | ||
103 | default: | ||
104 | oled_write_ln_P(PSTR("Layer: Undefined"), false); | ||
105 | } | ||
106 | } | ||
107 | |||
108 | void render_logo(void) { | ||
109 | static const char PROGMEM logo[] = {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0}; | ||
110 | oled_write_P(logo, false); | ||
111 | } | ||
112 | |||
113 | char keylog_str[24] = {}; | ||
114 | char keylogs_str[21] = {}; | ||
115 | int keylogs_str_idx = 0; | ||
116 | |||
117 | const char code_to_name[60] = {' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', 'R', 'E', 'B', 'T', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ';', '\'', ' ', ',', '.', '/', ' ', ' ', ' '}; | ||
118 | |||
119 | void set_keylog(uint16_t keycode, keyrecord_t *record) { | ||
120 | char name = ' '; | ||
121 | if (keycode < 60) { | ||
122 | name = code_to_name[keycode]; | ||
123 | } | ||
124 | |||
125 | // update keylog | ||
126 | snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c", record->event.key.row, record->event.key.col, keycode, name); | ||
127 | |||
128 | // update keylogs | ||
129 | if (keylogs_str_idx == sizeof(keylogs_str) - 1) { | ||
130 | keylogs_str_idx = 0; | ||
131 | for (int i = 0; i < sizeof(keylogs_str) - 1; i++) { | ||
132 | keylogs_str[i] = ' '; | ||
133 | } | ||
134 | } | ||
135 | |||
136 | keylogs_str[keylogs_str_idx] = name; | ||
137 | keylogs_str_idx++; | ||
138 | } | ||
139 | |||
140 | const char *read_keylog(void) { return keylog_str; } | ||
141 | const char *read_keylogs(void) { return keylogs_str; } | ||
142 | |||
143 | bool oled_task_user(void) { | ||
144 | if (is_keyboard_master()) { | ||
145 | render_layer_state(); | ||
146 | oled_write_ln(read_keylog(), false); | ||
147 | oled_write_ln(read_keylogs(), false); | ||
148 | } else { | ||
149 | render_logo(); | ||
150 | } | ||
151 | return false; | ||
152 | } | ||
153 | |||
154 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
155 | if (record->event.pressed) { | ||
156 | set_keylog(keycode, record); | ||
157 | } | ||
158 | return true; | ||
159 | } | ||
160 | |||
161 | oled_rotation_t oled_init_user(oled_rotation_t rotation) { | ||
162 | if (!is_keyboard_master()) return OLED_ROTATION_180; | ||
163 | return rotation; | ||
164 | } | ||
165 | |||
166 | #endif | ||
diff --git a/keyboards/claw44/keymaps/oled/rules.mk b/keyboards/claw44/keymaps/oled/rules.mk new file mode 100644 index 000000000..d34d066de --- /dev/null +++ b/keyboards/claw44/keymaps/oled/rules.mk | |||
@@ -0,0 +1,2 @@ | |||
1 | OLED_ENABLE = yes | ||
2 | OLED_DRIVER = SSD1306 | ||
diff --git a/keyboards/claw44/keymaps/via/config.h b/keyboards/claw44/keymaps/via/config.h new file mode 100644 index 000000000..98469e4cc --- /dev/null +++ b/keyboards/claw44/keymaps/via/config.h | |||
@@ -0,0 +1,21 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | |||
5 | This program is free software: you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published by | ||
7 | the Free Software Foundation, either version 2 of the License, or | ||
8 | (at your option) any later version. | ||
9 | |||
10 | This program is distributed in the hope that it will be useful, | ||
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | GNU General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
17 | */ | ||
18 | |||
19 | #pragma once | ||
20 | |||
21 | #define MASTER_LEFT | ||
diff --git a/keyboards/claw44/keymaps/via/keymap.c b/keyboards/claw44/keymaps/via/keymap.c new file mode 100644 index 000000000..5373b7687 --- /dev/null +++ b/keyboards/claw44/keymaps/via/keymap.c | |||
@@ -0,0 +1,84 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | This program is free software: you can redistribute it and/or modify | ||
5 | it under the terms of the GNU General Public License as published by | ||
6 | the Free Software Foundation, either version 2 of the License, or | ||
7 | (at your option) any later version. | ||
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 | You should have received a copy of the GNU General Public License | ||
13 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
14 | */ | ||
15 | |||
16 | #include QMK_KEYBOARD_H | ||
17 | |||
18 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
19 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
20 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
21 | // entirely and just use numbers. | ||
22 | |||
23 | enum layer_number { | ||
24 | _QWERTY = 0, | ||
25 | _RAISE, | ||
26 | _LOWER, | ||
27 | _ADJUST, | ||
28 | }; | ||
29 | |||
30 | #define KC_L_SPC LT(_LOWER, KC_SPC) // lower | ||
31 | #define KC_R_ENT LT(_RAISE, KC_ENT) // raise | ||
32 | #define KC_G_JA LGUI_T(KC_LANG1) // cmd or win | ||
33 | #define KC_G_EN LGUI_T(KC_LANG2) // cmd or win | ||
34 | #define KC_C_BS LCTL_T(KC_BSPC) // ctrl | ||
35 | #define KC_A_DEL ALT_T(KC_DEL) // alt | ||
36 | |||
37 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
38 | [_QWERTY] = LAYOUT( | ||
39 | //,--------+--------+---------+--------+---------+--------. ,--------+---------+--------+---------+--------+--------. | ||
40 | KC_ESC , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, | ||
41 | //|--------+--------+---------+--------+---------+--------| |--------+---------+--------+---------+--------+--------| | ||
42 | KC_TAB , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, | ||
43 | //|--------+--------+---------+--------+---------+--------| |--------+---------+--------+---------+--------+--------| | ||
44 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, | ||
45 | //`--------+--------+---------+--------+---------+--------/ \--------+---------+--------+---------+--------+--------' | ||
46 | KC_A_DEL, KC_G_EN, KC_L_SPC, KC_C_BS, KC_C_BS, KC_R_ENT, KC_G_JA, KC_A_DEL | ||
47 | // `----------+--------+---------+--------' `--------+---------+--------+---------' | ||
48 | ), | ||
49 | |||
50 | [_RAISE] = LAYOUT( | ||
51 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
52 | _______, KC_BSLS, KC_CIRC, KC_EXLM, KC_AMPR, KC_PIPE, KC_AT , KC_EQL , KC_PLUS, KC_ASTR, KC_PERC, KC_MINS, | ||
53 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
54 | KC_LPRN, KC_HASH, KC_DLR , KC_DQT , KC_QUOT, KC_TILD, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, KC_GRV , KC_RPRN, | ||
55 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
56 | _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, | ||
57 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
58 | _______, _______, _______, _______, _______, _______, _______, RESET | ||
59 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
60 | ), | ||
61 | |||
62 | [_LOWER] = LAYOUT( | ||
63 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
64 | KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , _______, KC_EQL , KC_PLUS, KC_ASTR, KC_PERC, KC_MINS, | ||
65 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
66 | _______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , _______, | ||
67 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
68 | KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, | ||
69 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
70 | RESET , _______, _______, _______, _______, _______, _______, _______ | ||
71 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
72 | ), | ||
73 | [_ADJUST] = LAYOUT( | ||
74 | //,--------+--------+--------+--------+--------+--------. ,--------+--------+--------+--------+--------+--------. | ||
75 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
76 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
77 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
78 | //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| | ||
79 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
80 | //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' | ||
81 | KC_TRNS, KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||
82 | // `--------+--------+--------+--------' `--------+--------+--------+--------' | ||
83 | ), | ||
84 | }; | ||
diff --git a/keyboards/claw44/keymaps/via/rules.mk b/keyboards/claw44/keymaps/via/rules.mk new file mode 100644 index 000000000..1e5b99807 --- /dev/null +++ b/keyboards/claw44/keymaps/via/rules.mk | |||
@@ -0,0 +1 @@ | |||
VIA_ENABLE = yes | |||
diff --git a/keyboards/claw44/lib/glcdfont.c b/keyboards/claw44/lib/glcdfont.c new file mode 100644 index 000000000..9fa1c806a --- /dev/null +++ b/keyboards/claw44/lib/glcdfont.c | |||
@@ -0,0 +1,232 @@ | |||
1 | // This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. | ||
2 | // See gfxfont.h for newer custom bitmap font info. | ||
3 | |||
4 | #include "progmem.h" | ||
5 | |||
6 | // Standard ASCII 5x7 font | ||
7 | const unsigned char font[] PROGMEM = { | ||
8 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
9 | 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, | ||
10 | 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, | ||
11 | 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, | ||
12 | 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, | ||
13 | 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, | ||
14 | 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, | ||
15 | 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, | ||
16 | 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, | ||
17 | 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, | ||
18 | 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, | ||
19 | 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, | ||
20 | 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, | ||
21 | 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, | ||
22 | 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, | ||
23 | 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, | ||
24 | 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, | ||
25 | 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, | ||
26 | 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, | ||
27 | 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, | ||
28 | 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, | ||
29 | 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, | ||
30 | 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, | ||
31 | 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, | ||
32 | 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, | ||
33 | 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, | ||
34 | 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, | ||
35 | 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, | ||
36 | 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, | ||
37 | 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, | ||
38 | 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, | ||
39 | 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, | ||
40 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
41 | 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, | ||
42 | 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, | ||
43 | 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, | ||
44 | 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, | ||
45 | 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, | ||
46 | 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, | ||
47 | 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, | ||
48 | 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, | ||
49 | 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, | ||
50 | 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, | ||
51 | 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, | ||
52 | 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, | ||
53 | 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, | ||
54 | 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, | ||
55 | 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, | ||
56 | 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, | ||
57 | 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, | ||
58 | 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, | ||
59 | 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, | ||
60 | 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, | ||
61 | 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, | ||
62 | 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, | ||
63 | 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, | ||
64 | 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, | ||
65 | 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, | ||
66 | 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, | ||
67 | 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, | ||
68 | 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, | ||
69 | 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, | ||
70 | 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, | ||
71 | 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, | ||
72 | 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, | ||
73 | 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, | ||
74 | 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, | ||
75 | 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, | ||
76 | 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, | ||
77 | 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, | ||
78 | 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, | ||
79 | 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, | ||
80 | 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, | ||
81 | 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, | ||
82 | 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, | ||
83 | 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, | ||
84 | 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, | ||
85 | 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, | ||
86 | 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, | ||
87 | 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, | ||
88 | 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, | ||
89 | 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, | ||
90 | 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, | ||
91 | 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, | ||
92 | 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, | ||
93 | 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, | ||
94 | 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, | ||
95 | 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, | ||
96 | 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, | ||
97 | 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, | ||
98 | 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, | ||
99 | 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, | ||
100 | 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, | ||
101 | 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, | ||
102 | 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, | ||
103 | 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, | ||
104 | 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, | ||
105 | 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, | ||
106 | 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, | ||
107 | 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, | ||
108 | 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, | ||
109 | 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, | ||
110 | 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, | ||
111 | 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00, | ||
112 | 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, | ||
113 | 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, | ||
114 | 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, | ||
115 | 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, | ||
116 | 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, | ||
117 | 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, | ||
118 | 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, | ||
119 | 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, | ||
120 | 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, | ||
121 | 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, | ||
122 | 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, | ||
123 | 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, | ||
124 | 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, | ||
125 | 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, | ||
126 | 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, | ||
127 | 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, | ||
128 | 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, | ||
129 | 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, | ||
130 | 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, | ||
131 | 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, | ||
132 | 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, | ||
133 | 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, | ||
134 | 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, | ||
135 | 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, | ||
136 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
137 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
138 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
139 | 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, | ||
140 | 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
141 | 0x00, 0xFC, 0xFC, 0xFC, 0xFC, 0x00, | ||
142 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
143 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, | ||
144 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, | ||
145 | 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, | ||
146 | 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, | ||
147 | 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, | ||
148 | 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, | ||
149 | 0x00, 0x80, 0xC0, 0xF0, 0xF8, 0xF8, | ||
150 | 0xF8, 0xF8, 0xF8, 0x00, 0x00, 0x00, | ||
151 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, | ||
152 | 0xE0, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, | ||
153 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
154 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
155 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
156 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
157 | 0xE0, 0xF0, 0xF0, 0xF0, 0xE0, 0xEC, | ||
158 | 0xEE, 0xF7, 0xF3, 0x70, 0x20, 0x00, | ||
159 | 0x7C, 0x7C, 0x7C, 0x7E, 0x00, 0x7E, | ||
160 | 0x7E, 0x7E, 0x7F, 0x7F, 0x7F, 0x00, | ||
161 | 0x00, 0x80, 0xC0, 0xE0, 0x7E, 0x5B, | ||
162 | 0x4F, 0x5B, 0xFE, 0xC0, 0x00, 0x00, | ||
163 | 0xC0, 0x00, 0xDC, 0xD7, 0xDE, 0xDE, | ||
164 | 0xDE, 0xD7, 0xDC, 0x00, 0xC0, 0x00, | ||
165 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
166 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
167 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
168 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
169 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
170 | 0x00, 0x00, 0x00, 0xF8, 0xFC, 0xFE, | ||
171 | 0xFF, 0x1F, 0x07, 0x07, 0x07, 0x07, | ||
172 | 0x1F, 0x1F, 0x1F, 0x1E, 0x18, 0x00, | ||
173 | 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, | ||
174 | 0x00, 0x00, 0x00, 0x9E, 0xDF, 0xDF, | ||
175 | 0xCF, 0xC7, 0xE7, 0xE7, 0xE7, 0xFF, | ||
176 | 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x03, | ||
177 | 0x3F, 0xFF, 0xFF, 0xFE, 0xC0, 0x00, | ||
178 | 0xF0, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, | ||
179 | 0xF0, 0x00, 0xC0, 0xFC, 0xFF, 0xFF, | ||
180 | 0x3F, 0x03, 0x00, 0xC0, 0xF0, 0xF8, | ||
181 | 0xFE, 0x9F, 0x87, 0x83, 0x80, 0xFF, | ||
182 | 0xFF, 0xFF, 0xFF, 0x80, 0x80, 0x00, | ||
183 | 0x00, 0xE0, 0xF8, 0xFC, 0xBF, 0x8F, | ||
184 | 0x83, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, | ||
185 | 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, | ||
186 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
187 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
188 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
189 | 0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0x7F, | ||
190 | 0x7F, 0x7F, 0x3F, 0x1E, 0x0C, 0x00, | ||
191 | 0x1F, 0x1F, 0x1F, 0x3F, 0x00, 0x3F, | ||
192 | 0x3F, 0x3F, 0x7F, 0x7F, 0x7F, 0x00, | ||
193 | 0x30, 0x7B, 0x7F, 0x78, 0x30, 0x20, | ||
194 | 0x20, 0x30, 0x78, 0x7F, 0x3B, 0x00, | ||
195 | 0x03, 0x00, 0x0F, 0x7F, 0x0F, 0x0F, | ||
196 | 0x0F, 0x7F, 0x0F, 0x00, 0x03, 0x00, | ||
197 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
198 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
199 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
200 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
201 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
202 | 0x00, 0x00, 0x00, 0x07, 0x1F, 0x3F, | ||
203 | 0x7F, 0x7C, 0x78, 0x70, 0x70, 0x78, | ||
204 | 0x7E, 0x3E, 0x3E, 0x0E, 0x06, 0x00, | ||
205 | 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, | ||
206 | 0x00, 0x00, 0x1F, 0x3F, 0x7F, 0x7F, | ||
207 | 0x79, 0x71, 0x70, 0x30, 0x38, 0x3F, | ||
208 | 0x7F, 0x7F, 0x7F, 0x60, 0x00, 0x00, | ||
209 | 0x00, 0x01, 0x1F, 0x7F, 0x7F, 0x7E, | ||
210 | 0x7F, 0x1F, 0x01, 0x00, 0x01, 0x3F, | ||
211 | 0x7F, 0x7E, 0x7F, 0x7F, 0x0F, 0x01, | ||
212 | 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, | ||
213 | 0x03, 0x03, 0x03, 0x03, 0x03, 0x7F, | ||
214 | 0x7F, 0x7F, 0x7F, 0x03, 0x03, 0x00, | ||
215 | 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, | ||
216 | 0x03, 0x03, 0x7F, 0x7F, 0x7F, 0x7F, | ||
217 | 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, | ||
218 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
219 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
220 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
221 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
222 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
223 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
224 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
225 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
226 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
227 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
228 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
229 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
230 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
231 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
232 | }; | ||
diff --git a/keyboards/claw44/readme.md b/keyboards/claw44/readme.md new file mode 100644 index 000000000..7e72e0897 --- /dev/null +++ b/keyboards/claw44/readme.md | |||
@@ -0,0 +1,15 @@ | |||
1 | # Claw44 | ||
2 | |||
3 |  | ||
4 | |||
5 | A split keyboard with 3x6 vertically staggered keys and 4 thumb keys. | ||
6 | |||
7 | Keyboard Maintainer: [@yfuku_](https://twitter.com/yfuku_) | ||
8 | Hardware Supported: Claw44 PCB, ProMicro | ||
9 | Hardware Availability: https://yfuku.booth.pm/ | ||
10 | |||
11 | Make example for this keyboard (after setting up your build environment): | ||
12 | |||
13 | make claw44:default | ||
14 | |||
15 | 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). | ||
diff --git a/keyboards/claw44/rev1/.noci b/keyboards/claw44/rev1/.noci new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/keyboards/claw44/rev1/.noci | |||
diff --git a/keyboards/claw44/rev1/config.h b/keyboards/claw44/rev1/config.h new file mode 100644 index 000000000..8116b605c --- /dev/null +++ b/keyboards/claw44/rev1/config.h | |||
@@ -0,0 +1,74 @@ | |||
1 | /* | ||
2 | Copyright 2012 Jun Wako <[email protected]> | ||
3 | Copyright 2015 Jack Humbert | ||
4 | |||
5 | This program is free software: you can redistribute it and/or modify | ||
6 | it under the terms of the GNU General Public License as published by | ||
7 | the Free Software Foundation, either version 2 of the License, or | ||
8 | (at your option) any later version. | ||
9 | |||
10 | This program is distributed in the hope that it will be useful, | ||
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | GNU General Public License for more details. | ||
14 | |||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
17 | */ | ||
18 | |||
19 | #pragma once | ||
20 | |||
21 | /* USB Device descriptor parameter */ | ||
22 | #define VENDOR_ID 0x5946 // YF | ||
23 | #define PRODUCT_ID 0x0001 | ||
24 | #define DEVICE_VER 0x0001 | ||
25 | #define MANUFACTURER yfuku | ||
26 | #define PRODUCT claw44 | ||
27 | |||
28 | /* key matrix size */ | ||
29 | #define MATRIX_ROWS 8 | ||
30 | #define MATRIX_COLS 6 | ||
31 | #define MATRIX_ROW_PINS { D4, C6, D7, E6 } | ||
32 | #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } | ||
33 | #define UNUSED_PINS | ||
34 | #define DIODE_DIRECTION COL2ROW | ||
35 | #define SOFT_SERIAL_PIN D2 | ||
36 | |||
37 | /* define if matrix has ghost */ | ||
38 | //#define MATRIX_HAS_GHOST | ||
39 | |||
40 | /* number of backlight levels */ | ||
41 | // #define BACKLIGHT_LEVELS 3 | ||
42 | |||
43 | /* Set 0 if debouncing isn't needed */ | ||
44 | #define DEBOUNCE 5 | ||
45 | |||
46 | /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ | ||
47 | //#define LOCKING_SUPPORT_ENABLE | ||
48 | /* Locking resynchronize hack */ | ||
49 | //#define LOCKING_RESYNC_ENABLE | ||
50 | |||
51 | /* ws2812 RGB LED */ | ||
52 | /* | ||
53 | #define RGB_DI_PIN D3 | ||
54 | |||
55 | #define RGBLED_NUM 12 // Number of LEDs | ||
56 | */ | ||
57 | |||
58 | /* | ||
59 | * Feature disable options | ||
60 | * These options are also useful to firmware size reduction. | ||
61 | */ | ||
62 | |||
63 | /* disable debug print */ | ||
64 | // #define NO_DEBUG | ||
65 | |||
66 | /* disable print */ | ||
67 | // #define NO_PRINT | ||
68 | |||
69 | /* disable action features */ | ||
70 | //#define NO_ACTION_LAYER | ||
71 | //#define NO_ACTION_TAPPING | ||
72 | //#define NO_ACTION_ONESHOT | ||
73 | //#define NO_ACTION_MACRO | ||
74 | //#define NO_ACTION_FUNCTION | ||
diff --git a/keyboards/claw44/rev1/info.json b/keyboards/claw44/rev1/info.json new file mode 100644 index 000000000..3301e7d2e --- /dev/null +++ b/keyboards/claw44/rev1/info.json | |||
@@ -0,0 +1,55 @@ | |||
1 | { | ||
2 | "keyboard_name": "Claw44 rev1", | ||
3 | "url": "", | ||
4 | "maintainer": "yfuku", | ||
5 | "layouts": { | ||
6 | "LAYOUT": { | ||
7 | "layout": [ | ||
8 | {"label":"L00", "x":0, "y":1.18}, | ||
9 | {"label":"L01", "x":1, "y":1.03}, | ||
10 | {"label":"L02", "x":2, "y":0.35}, | ||
11 | {"label":"L03", "x":3, "y":0}, | ||
12 | {"label":"L04", "x":4, "y":0.05}, | ||
13 | {"label":"L05", "x":5, "y":0.10}, | ||
14 | {"label":"R00", "x":11.5, "y":0.10}, | ||
15 | {"label":"R01", "x":12.5, "y":0.05}, | ||
16 | {"label":"R02", "x":13.5, "y":0}, | ||
17 | {"label":"R03", "x":14.5, "y":0.35}, | ||
18 | {"label":"R04", "x":15.5, "y":1.08}, | ||
19 | {"label":"R05", "x":16.5, "y":1.18}, | ||
20 | {"label":"L10", "x":0, "y":2.18}, | ||
21 | {"label":"L11", "x":1, "y":2.03}, | ||
22 | {"label":"L12", "x":2, "y":1.35}, | ||
23 | {"label":"L13", "x":3, "y":1}, | ||
24 | {"label":"L14", "x":4, "y":1.05}, | ||
25 | {"label":"L15", "x":5, "y":1.10}, | ||
26 | {"label":"R10", "x":11.5, "y":1.10}, | ||
27 | {"label":"R11", "x":12.5, "y":1.05}, | ||
28 | {"label":"R12", "x":13.5, "y":1}, | ||
29 | {"label":"R13", "x":14.5, "y":1.35}, | ||
30 | {"label":"R14", "x":15.5, "y":2.03}, | ||
31 | {"label":"R15", "x":16.5, "y":2.18}, | ||
32 | {"label":"L20", "x":0, "y":3.18}, | ||
33 | {"label":"L21", "x":1, "y":3.03}, | ||
34 | {"label":"L22", "x":2, "y":2.35}, | ||
35 | {"label":"L23", "x":3, "y":2}, | ||
36 | {"label":"L24", "x":4, "y":2.05}, | ||
37 | {"label":"L25", "x":5, "y":2.10}, | ||
38 | {"label":"R20", "x":11.5, "y":2.10}, | ||
39 | {"label":"R21", "x":12.5, "y":2.05}, | ||
40 | {"label":"R22", "x":13.5, "y":2}, | ||
41 | {"label":"R23", "x":14.5, "y":2.35}, | ||
42 | {"label":"R24", "x":15.5, "y":3.03}, | ||
43 | {"label":"R25", "x":16.5, "y":3.18}, | ||
44 | {"label":"L30", "x":4, "y":3.05}, | ||
45 | {"label":"L31", "x":5, "y":3.10}, | ||
46 | {"label":"L32", "x":6, "y":3.20, "w":1.25}, | ||
47 | {"label":"L33", "x":7.25, "y":3.50}, | ||
48 | {"label":"R30", "x":9.25, "y":3.50}, | ||
49 | {"label":"R31", "x":10.25, "y":3.20, "w":1.25}, | ||
50 | {"label":"R32", "x":11.5, "y":3.10}, | ||
51 | {"label":"R33", "x":12.5, "y":3.05} | ||
52 | ] | ||
53 | } | ||
54 | } | ||
55 | } | ||
diff --git a/keyboards/claw44/rev1/readme.md b/keyboards/claw44/rev1/readme.md new file mode 100644 index 000000000..5ad967af8 --- /dev/null +++ b/keyboards/claw44/rev1/readme.md | |||
@@ -0,0 +1,15 @@ | |||
1 | # Claw44 | ||
2 | |||
3 |  | ||
4 | |||
5 | A split keyboard with 3x6 vertically staggered keys and 4 thumb keys. | ||
6 | |||
7 | * Keyboard Maintainer: [@yfuku_](https://twitter.com/yfuku_) | ||
8 | * Hardware Supported: Claw44 PCB, ProMicro | ||
9 | * Hardware Availability: https://yfuku.booth.pm/ | ||
10 | |||
11 | Make example for this keyboard (after setting up your build environment): | ||
12 | |||
13 | make claw44/rev1:default | ||
14 | |||
15 | 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). | ||
diff --git a/keyboards/claw44/rev1/rev1.c b/keyboards/claw44/rev1/rev1.c new file mode 100644 index 000000000..520a869e5 --- /dev/null +++ b/keyboards/claw44/rev1/rev1.c | |||
@@ -0,0 +1 @@ | |||
#include "rev1.h" | |||
diff --git a/keyboards/claw44/rev1/rev1.h b/keyboards/claw44/rev1/rev1.h new file mode 100644 index 000000000..9a0597715 --- /dev/null +++ b/keyboards/claw44/rev1/rev1.h | |||
@@ -0,0 +1,20 @@ | |||
1 | #pragma once | ||
2 | |||
3 | #include "quantum.h" | ||
4 | |||
5 | #define LAYOUT( \ | ||
6 | L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ | ||
7 | L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ | ||
8 | L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ | ||
9 | L30, L31, L32, L33, R30, R31, R32, R33 \ | ||
10 | ) \ | ||
11 | { \ | ||
12 | { L00, L01, L02, L03, L04, L05 }, \ | ||
13 | { L10, L11, L12, L13, L14, L15 }, \ | ||
14 | { L20, L21, L22, L23, L24, L25 }, \ | ||
15 | { KC_NO, KC_NO, L30, L31, L32, L33 }, \ | ||
16 | { R05, R04, R03, R02, R01, R00 }, \ | ||
17 | { R15, R14, R13, R12, R11, R10 }, \ | ||
18 | { R25, R24, R23, R22, R21, R20 }, \ | ||
19 | { KC_NO, KC_NO, R33, R32, R31, R30 } \ | ||
20 | } | ||
diff --git a/keyboards/claw44/rev1/rules.mk b/keyboards/claw44/rev1/rules.mk new file mode 100644 index 000000000..a66eb7d35 --- /dev/null +++ b/keyboards/claw44/rev1/rules.mk | |||
@@ -0,0 +1,14 @@ | |||
1 | # Build Options | ||
2 | BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite | ||
3 | MOUSEKEY_ENABLE = no # Mouse keys | ||
4 | EXTRAKEY_ENABLE = no # Audio control and System control | ||
5 | CONSOLE_ENABLE = no # Console for debug | ||
6 | COMMAND_ENABLE = no # Commands for debug and configuration | ||
7 | NKRO_ENABLE = no # Enable N-Key Rollover | ||
8 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
9 | AUDIO_ENABLE = no # Audio output | ||
10 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. | ||
11 | SWAP_HANDS_ENABLE = no # Enable one-hand typing | ||
12 | |||
13 | OLED_ENABLE = no # Add OLED displays support | ||
14 | SPLIT_KEYBOARD = yes | ||
diff --git a/keyboards/claw44/rules.mk b/keyboards/claw44/rules.mk new file mode 100644 index 000000000..6ba5e853f --- /dev/null +++ b/keyboards/claw44/rules.mk | |||
@@ -0,0 +1,20 @@ | |||
1 | # MCU name | ||
2 | MCU = atmega32u4 | ||
3 | |||
4 | # Bootloader selection | ||
5 | BOOTLOADER = caterina | ||
6 | |||
7 | # Build Options | ||
8 | # change yes to no to disable | ||
9 | # | ||
10 | BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite | ||
11 | MOUSEKEY_ENABLE = no # Mouse keys | ||
12 | EXTRAKEY_ENABLE = no # Audio control and System control | ||
13 | CONSOLE_ENABLE = no # Console for debug | ||
14 | COMMAND_ENABLE = no # Commands for debug and configuration | ||
15 | NKRO_ENABLE = no # Enable N-Key Rollover | ||
16 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
17 | AUDIO_ENABLE = no # Audio output | ||
18 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. | ||
19 | |||
20 | DEFAULT_FOLDER = claw44/rev1 | ||