aboutsummaryrefslogtreecommitdiff
path: root/keyboards/rart
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-02-16 23:10:57 +0000
committerQMK Bot <hello@qmk.fm>2021-02-16 23:10:57 +0000
commit842a8b35dd3211bc8c0b9aa00b7a3fc8abe9321f (patch)
tree5b41fa9f77b0b7cc62c1dc40537391ab51e316a1 /keyboards/rart
parent3345ce268610edbca8f53bc2909c547485531603 (diff)
parente43ead8e96380808b725bc6b1bd468b9313c6fc2 (diff)
downloadqmk_firmware-842a8b35dd3211bc8c0b9aa00b7a3fc8abe9321f.tar.gz
qmk_firmware-842a8b35dd3211bc8c0b9aa00b7a3fc8abe9321f.zip
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'keyboards/rart')
-rw-r--r--keyboards/rart/rart45/info.json2
-rw-r--r--keyboards/rart/rartand/config.h47
-rw-r--r--keyboards/rart/rartand/info.json68
-rw-r--r--keyboards/rart/rartand/keymaps/default/keymap.c78
-rw-r--r--keyboards/rart/rartand/keymaps/via/keymap.c78
-rw-r--r--keyboards/rart/rartand/keymaps/via/rules.mk1
-rw-r--r--keyboards/rart/rartand/rartand.c15
-rw-r--r--keyboards/rart/rartand/rartand.h34
-rw-r--r--keyboards/rart/rartand/readme.md23
-rw-r--r--keyboards/rart/rartand/rules.mk23
10 files changed, 368 insertions, 1 deletions
diff --git a/keyboards/rart/rart45/info.json b/keyboards/rart/rart45/info.json
index d3fc5aa7c..3be536562 100644
--- a/keyboards/rart/rart45/info.json
+++ b/keyboards/rart/rart45/info.json
@@ -1,5 +1,5 @@
1{ 1{
2 "keyboard_name": "Rartlice", 2 "keyboard_name": "Rart45",
3 "url": "", 3 "url": "",
4 "maintainer": "Alabahuy", 4 "maintainer": "Alabahuy",
5 "width": 13, 5 "width": 13,
diff --git a/keyboards/rart/rartand/config.h b/keyboards/rart/rartand/config.h
new file mode 100644
index 000000000..841b63b63
--- /dev/null
+++ b/keyboards/rart/rartand/config.h
@@ -0,0 +1,47 @@
1/* Copyright 2021 Alabahuy
2 * This program is free software: you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation, either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
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#pragma once
17
18#include "config_common.h"
19
20/* USB Device descriptor parameter */
21#define VENDOR_ID 0x414C
22#define PRODUCT_ID 0x5050
23#define DEVICE_VER 0x0001
24#define MANUFACTURER Alabahuy
25#define PRODUCT Rartand
26
27/* key matrix size */
28#define MATRIX_ROWS 8
29#define MATRIX_COLS 7
30
31#define MATRIX_ROW_PINS { C3, B2, C2, B1, C1, D7, C0, B0 }
32#define MATRIX_COL_PINS { D0, D1, B4, B5, B3, D4, D6 }
33#define UNUSED_PINS
34
35/* COL2ROW, ROW2COL*/
36#define DIODE_DIRECTION COL2ROW
37
38#define LED_CAPS_LOCK_PIN D5
39#define LED_PIN_ON_STATE 0
40
41/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
42#define DEBOUNCE 5
43
44/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
45#define LOCKING_SUPPORT_ENABLE
46/* Locking resynchronize hack */
47#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/rart/rartand/info.json b/keyboards/rart/rartand/info.json
new file mode 100644
index 000000000..34ca66072
--- /dev/null
+++ b/keyboards/rart/rartand/info.json
@@ -0,0 +1,68 @@
1{
2 "keyboard_name": "Rartand",
3 "url": "",
4 "maintainer": "Alabahuy",
5 "width": 15,
6 "height": 4,
7 "layouts": {
8 "LAYOUT_all": {
9 "layout": [
10 { "x": 0, "y": 0, "w":1.5 },
11 { "x": 1.5, "y": 0 },
12 { "x": 2.5, "y": 0 },
13 { "x": 3.5, "y": 0 },
14 { "x": 4.5, "y": 0 },
15 { "x": 5.5, "y": 0 },
16 { "x": 6.5, "y": 0 },
17 { "x": 7.5, "y": 0 },
18 { "x": 8.5, "y": 0 },
19 { "x": 9.5, "y": 0 },
20 { "x": 10.5, "y": 0 },
21 { "x": 11.5, "y": 0 },
22 { "x": 12.5, "y": 0 },
23 { "x": 13.5, "y": 0, "w":1.5 },
24
25 {"x": 0, "y": 1, "w":1.75 },
26 {"x": 1.75, "y": 1 },
27 {"x": 2.75, "y": 1 },
28 {"x": 3.75, "y": 1 },
29 {"x": 4.75, "y": 1 },
30 {"x": 5.75, "y": 1 },
31 {"x": 6.75, "y": 1 },
32 {"x": 7.75, "y": 1 },
33 {"x": 8.75, "y": 1 },
34 {"x": 9.75, "y": 1 },
35 {"x": 10.75, "y": 1 },
36 {"x": 11.75, "y": 1 },
37 {"x": 12.75, "y": 1, "w":2.25 },
38
39 {"x": 0, "y": 2, "w":1.25 },
40 {"x": 1.25, "y": 2 },
41 {"x": 2.25, "y": 2 },
42 {"x": 3.25, "y": 2 },
43 {"x": 4.25, "y": 2 },
44 {"x": 5.25, "y": 2 },
45 {"x": 6.25, "y": 2 },
46 {"x": 7.25, "y": 2 },
47 {"x": 8.25, "y": 2 },
48 {"x": 9.25, "y": 2 },
49 {"x": 10.25, "y": 2 },
50 {"x": 11.25, "y": 2, "w":1.75 },
51 {"x": 13, "y": 2 },
52 {"x": 14, "y": 2 },
53
54 {"x": 0, "y": 3, "w":1.25 },
55 {"x": 1.25, "y": 3, "w":1.25 },
56 {"x": 2.5, "y": 3, "w":1.25 },
57 {"x": 3.75, "y": 3, "w":2.25 },
58 {"x": 6, "y": 3, "w":1.25 },
59 {"x": 7.25, "y": 3, "w":2.75 },
60 {"x": 10, "y": 3 },
61 {"x": 11, "y": 3 },
62 {"x": 12, "y": 3 },
63 {"x": 13, "y": 3 },
64 {"x": 14, "y": 3 }
65 ]
66 }
67 }
68}
diff --git a/keyboards/rart/rartand/keymaps/default/keymap.c b/keyboards/rart/rartand/keymaps/default/keymap.c
new file mode 100644
index 000000000..1b3c7c6af
--- /dev/null
+++ b/keyboards/rart/rartand/keymaps/default/keymap.c
@@ -0,0 +1,78 @@
1/* Copyright 2021 Alabahuy
2 * This program is free software: you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation, either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
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#include QMK_KEYBOARD_H
16
17const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
18
19 [0] = LAYOUT_all(
20 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
21 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
22 KC_LSFT, KC_SLSH, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_BSLS,
23 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_SPC, MO(2), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
24 ),
25
26 [1] = LAYOUT_all(
27 KC_TAB, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
28 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
29 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
30 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
31 ),
32
33 [2] = LAYOUT_all(
34 RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_DEL,
35 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
36 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
37 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
38 ),
39
40 [3] = LAYOUT_all(
41 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
42 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
43 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
44 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
45 )
46
47};
48
49#ifdef OLED_DRIVER_ENABLE
50void oled_task_user(void) {
51 // Host Keyboard Layer Status
52 oled_write_P(PSTR("* R A R T A N D *\n Powered by QMK\nLayer: "), false);
53
54 switch (get_highest_layer(layer_state)) {
55 case 0:
56 oled_write_P(PSTR("Default\n"), false);
57 break;
58 case 1:
59 oled_write_P(PSTR("Fn row\n"), false);
60 break;
61 case 2:
62 oled_write_P(PSTR("Number row\n"), false);
63 break;
64 case 3:
65 oled_write_P(PSTR("Layer 4\n"), false);
66 break;
67 default:
68 // Or use the write_ln shortcut over adding '\n' to the end of your string
69 oled_write_ln_P(PSTR("Undifined\n"), false);
70 }
71
72 // Host Keyboard LED Status
73 led_t led_state = host_keyboard_led_state();
74 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
75 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
76 oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
77}
78#endif
diff --git a/keyboards/rart/rartand/keymaps/via/keymap.c b/keyboards/rart/rartand/keymaps/via/keymap.c
new file mode 100644
index 000000000..1b3c7c6af
--- /dev/null
+++ b/keyboards/rart/rartand/keymaps/via/keymap.c
@@ -0,0 +1,78 @@
1/* Copyright 2021 Alabahuy
2 * This program is free software: you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation, either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
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#include QMK_KEYBOARD_H
16
17const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
18
19 [0] = LAYOUT_all(
20 KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,
21 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
22 KC_LSFT, KC_SLSH, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_BSLS,
23 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_SPC, MO(2), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
24 ),
25
26 [1] = LAYOUT_all(
27 KC_TAB, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL,
28 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
29 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
30 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
31 ),
32
33 [2] = LAYOUT_all(
34 RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_DEL,
35 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
36 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
37 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
38 ),
39
40 [3] = LAYOUT_all(
41 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
42 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
43 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
44 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
45 )
46
47};
48
49#ifdef OLED_DRIVER_ENABLE
50void oled_task_user(void) {
51 // Host Keyboard Layer Status
52 oled_write_P(PSTR("* R A R T A N D *\n Powered by QMK\nLayer: "), false);
53
54 switch (get_highest_layer(layer_state)) {
55 case 0:
56 oled_write_P(PSTR("Default\n"), false);
57 break;
58 case 1:
59 oled_write_P(PSTR("Fn row\n"), false);
60 break;
61 case 2:
62 oled_write_P(PSTR("Number row\n"), false);
63 break;
64 case 3:
65 oled_write_P(PSTR("Layer 4\n"), false);
66 break;
67 default:
68 // Or use the write_ln shortcut over adding '\n' to the end of your string
69 oled_write_ln_P(PSTR("Undifined\n"), false);
70 }
71
72 // Host Keyboard LED Status
73 led_t led_state = host_keyboard_led_state();
74 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
75 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
76 oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
77}
78#endif
diff --git a/keyboards/rart/rartand/keymaps/via/rules.mk b/keyboards/rart/rartand/keymaps/via/rules.mk
new file mode 100644
index 000000000..1e5b99807
--- /dev/null
+++ b/keyboards/rart/rartand/keymaps/via/rules.mk
@@ -0,0 +1 @@
VIA_ENABLE = yes
diff --git a/keyboards/rart/rartand/rartand.c b/keyboards/rart/rartand/rartand.c
new file mode 100644
index 000000000..e9cff88ba
--- /dev/null
+++ b/keyboards/rart/rartand/rartand.c
@@ -0,0 +1,15 @@
1/* Copyright 2021 Alabahuy
2 * This program is free software: you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation, either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
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#include "rartand.h"
diff --git a/keyboards/rart/rartand/rartand.h b/keyboards/rart/rartand/rartand.h
new file mode 100644
index 000000000..c2750822e
--- /dev/null
+++ b/keyboards/rart/rartand/rartand.h
@@ -0,0 +1,34 @@
1/* Copyright 2021 Alabahuy
2 * This program is free software: you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation, either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
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#pragma once
16
17#include "quantum.h"
18
19#define LAYOUT_all( \
20 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16, \
21 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, \
22 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56, \
23 K60, K70, K61, K62, K63, K64, K74, K65, K75, K66, K76 \
24) \
25{ \
26 { K00, K01, K02, K03, K04, K05, K06 }, \
27 { K10, K11, K12, K13, K14, K15, K16 }, \
28 { K20, K21, K22, K23, K24, K25, KC_NO }, \
29 { K30, K31, K32, K33, K34, K35, K36 }, \
30 { K40, K41, K42, K43, K44, K45, K46 }, \
31 { K50, K51, K52, K53, K54, K55, K56 }, \
32 { K60, K61, K62, K63, K64, K65, K66 }, \
33 { K70, KC_NO, KC_NO, KC_NO, K74, K75, K76 }, \
34}
diff --git a/keyboards/rart/rartand/readme.md b/keyboards/rart/rartand/readme.md
new file mode 100644
index 000000000..69fe845fb
--- /dev/null
+++ b/keyboards/rart/rartand/readme.md
@@ -0,0 +1,23 @@
1# Rartand
2
3![Top](https://user-images.githubusercontent.com/30220306/107148148-4b9b4a80-6984-11eb-9e2b-d0f6be4419de.png)
4
5A 50% Mechanical Keyboard ( 60% exclude number row ) with Atmega328p with trough hole component, based on [IMKG](https://www.facebook.com/groups/indomechanicalkeyboard/) (Indonesia Mechanical Keyboard Group).
6
7* Keyboard Maintainer: [Alabahuy](https://github.com/alabahuy)
8* Hardware Supported: RARTAND PCB, Mini USB, OLED, ATMEGA328p with vusb
9* Hardware Availability: Private GB
10
11Make example for this keyboard (after setting up your build environment):
12
13 make rart/rartand:default
14
15Flashing example for this keyboard:
16
17 make rart/rartand:default:flash
18
19## Bootloader
20use usbasploader in hgsw repository.
21https://github.com/hsgw/USBaspLoader/tree/plaid
22
23See 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/rart/rartand/rules.mk b/keyboards/rart/rartand/rules.mk
new file mode 100644
index 000000000..0d494fa6b
--- /dev/null
+++ b/keyboards/rart/rartand/rules.mk
@@ -0,0 +1,23 @@
1# MCU name
2MCU = atmega328p
3
4# Bootloader selection
5BOOTLOADER = USBasp
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
11MOUSEKEY_ENABLE = yes # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = no # 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 = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output
23OLED_DRIVER_ENABLE = yes