From 27f9f3196d39ab0ce1b72665ea4b57ff741e6dd8 Mon Sep 17 00:00:00 2001 From: Jakob Date: Mon, 5 Oct 2020 00:19:34 +0200 Subject: [Keyboard] add support for ymd75 rev3 (#10483) * add support for ymd75 rev3 * Update keyboards/ymd75/rev3/rules.mk Co-authored-by: Ryan * Update keyboards/ymd75/rev3/rules.mk Co-authored-by: Ryan * remove DESCRIPTION * only apply offset for rev3 Co-authored-by: Ryan --- keyboards/ymd75/rev3/config.h | 9 ++++ keyboards/ymd75/rev3/rev3.c | 32 ++++++++++++ keyboards/ymd75/rev3/rev3.h | 117 ++++++++++++++++++++++++++++++++++++++++++ keyboards/ymd75/rev3/rules.mk | 23 +++++++++ 4 files changed, 181 insertions(+) create mode 100644 keyboards/ymd75/rev3/config.h create mode 100644 keyboards/ymd75/rev3/rev3.c create mode 100644 keyboards/ymd75/rev3/rev3.h create mode 100644 keyboards/ymd75/rev3/rules.mk (limited to 'keyboards/ymd75/rev3') diff --git a/keyboards/ymd75/rev3/config.h b/keyboards/ymd75/rev3/config.h new file mode 100644 index 0000000000..6118b96b8b --- /dev/null +++ b/keyboards/ymd75/rev3/config.h @@ -0,0 +1,9 @@ +#pragma once + +#define MATRIX_ROWS 12 +#define MATRIX_COLS 9 +#define MATRIX_ROW_PINS { B7, B3, B2, B1, B0, E6, F0, F1, F4, F5, F6, F7 } +#define MATRIX_COL_PINS { D0, D1, D2, D3, D5, D4, D6, D7, B4 } +#define DIODE_DIRECTION ROW2COL +#define DEVICE_VER 0x0300 +#define RGBLIGHT_EFFECT_KNIGHT_OFFSET 4 diff --git a/keyboards/ymd75/rev3/rev3.c b/keyboards/ymd75/rev3/rev3.c new file mode 100644 index 0000000000..96e1a47549 --- /dev/null +++ b/keyboards/ymd75/rev3/rev3.c @@ -0,0 +1,32 @@ +/* +Copyright 2017 Luiz Ribeiro + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include "ymd75.h" + +void keyboard_pre_init_kb(void) { + led_init_ports(); + keyboard_pre_init_user(); +} + +void led_init_ports(void) { setPinOutput(D1); } + +bool led_update_kb(led_t led_state) { + if (led_update_user(led_state)) { + writePin(D1, led_state.caps_lock); + } + return true; +} diff --git a/keyboards/ymd75/rev3/rev3.h b/keyboards/ymd75/rev3/rev3.h new file mode 100644 index 0000000000..d25579eabb --- /dev/null +++ b/keyboards/ymd75/rev3/rev3.h @@ -0,0 +1,117 @@ +#pragma once +#include "quantum.h" + + +/* LAYOUT + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │Esc│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Psc│Pse│Del│ + * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┴───┼───┤ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │0 │ - │ = │BckSpc │Hm │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │End│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │PgU│ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │RShift│ ↑ │PgD│ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + * │Ctrl│Sup │Alt │ Space │Alt│Sup│Ctl│ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + */ + +#define LAYOUT( \ + K50, K51, K52, K53, K54, K55, K56, K57, K58, KB8, KB7, KB5, KB4, KB3, KB6, KB2, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, KA8, KA7, KA5, KA4, KA6, KA2, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K98, K97, K95, K94, K84, K96, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K88, K87, K85, K93, K86, \ + K10, K12, K13, K14, K15, K16, K17, K18, K78, K77, K75, K74, K73, K76, \ + K00, K01, K02, K06, K08, K07, K05, K04, K03, K66 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K10, KC_NO, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57, K58 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K66, KC_NO, KC_NO }, \ + { KC_NO, KC_NO, KC_NO, K73, K74, K75, K76, K77, K78 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, K84, K85, K86, K87, K88 }, \ + { KC_NO, KC_NO, KC_NO, K93, K94, K95, K96, K97, K98 }, \ + { KC_NO, KC_NO, KA2, KC_NO, KA4, KA5, KA6, KA7, KA8 }, \ + { KC_NO, KC_NO, KB2, KB3, KB4, KB5, KB6, KB7, KB8 }, \ +} + +/* LAYOUT_75_iso + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │Esc│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Psc│Pse│Del│ + * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┴───┼───┤ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │0 │ - │ = │BckSpc │Hm │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ │End│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐Ent ├───┤ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │ │PgU│ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │Shft│ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │Shift │ ↑ │PgD│ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + * │Ctrl│Sup │Alt │ Space │Alt│Mo │Ctl│ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + */ + +#define LAYOUT_75_iso( \ + K50, K51, K52, K53, K54, K55, K56, K57, K58, KB8, KB7, KB5, KB4, KB3, KB6, KB2, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, KA8, KA7, KA5, KA4, KA6, KA2, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K98, K97, K95, K94, K96, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K88, K87, K85, K93, K84, K86, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K78, K77, K75, K74, K73, K76, \ + K00, K01, K02, K06, K08, K07, K05, K04, K03, K66 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57, K58 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K66, KC_NO, KC_NO }, \ + { KC_NO, KC_NO, KC_NO, K73, K74, K75, K76, K77, K78 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, K93, K85, K86, K87, K88 }, \ + { KC_NO, KC_NO, KC_NO, K84, K94, K95, K96, K97, K98 }, \ + { KC_NO, KC_NO, KA2, KC_NO, KA4, KA5, KA6, KA7, KA8 }, \ + { KC_NO, KC_NO, KB2, KB3, KB4, KB5, KB6, KB7, KB8 }, \ +} + +/* LAYOUT_75_iso_rwkl + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │Esc│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Psc│Pse│Del│ + * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┴───┼───┤ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │0 │ - │ = │BckSpc │Hm │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ │End│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐Ent ├───┤ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │ │PgU│ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │Shft│ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │Shift │ ↑ │PgD│ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │Ctrl│Sup │Alt │ Space │ Alt │ Ctl │ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_75_iso_rwkl( \ + K50, K51, K52, K53, K54, K55, K56, K57, K58, KB8, KB7, KB5, KB4, KB3, KB6, KB2, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, KA8, KA7, KA5, KA4, KA6, KA2, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K98, K97, K95, K94, K96, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K88, K87, K85, K93, K84, K86, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K78, K77, K75, K74, K73, K76, \ + K00, K01, K02, K06, K08, K05, K04, K03, K66 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, KC_NO, K08 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38 }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57, K58 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K66, KC_NO, KC_NO }, \ + { KC_NO, KC_NO, KC_NO, K73, K74, K75, K76, K77, K78 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, K93, K85, K86, K87, K88 }, \ + { KC_NO, KC_NO, KC_NO, K84, K94, K95, K96, K97, K98 }, \ + { KC_NO, KC_NO, KA2, KC_NO, KA4, KA5, KA6, KA7, KA8 }, \ + { KC_NO, KC_NO, KB2, KB3, KB4, KB5, KB6, KB7, KB8 }, \ +} diff --git a/keyboards/ymd75/rev3/rules.mk b/keyboards/ymd75/rev3/rules.mk new file mode 100644 index 0000000000..9506e636d2 --- /dev/null +++ b/keyboards/ymd75/rev3/rules.mk @@ -0,0 +1,23 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = full # Virtual DIP switch configuration +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +NKRO_ENABLE = no # USB Nkey Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +BLUETOOTH_ENABLE = no # Enable Bluetooth +AUDIO_ENABLE = no # Audio output +KEY_LOCK_ENABLE = yes # Enable KC_LOCK support -- cgit v1.2.3