summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/config.h48
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/giant_macro_pad.c17
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/giant_macro_pad.h72
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/keymaps/default/keymap.c453
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/keymaps/via/config.h19
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/keymaps/via/keymap.c43
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/keymaps/via/rules.mk1
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/readme.md13
-rwxr-xr-xkeyboards/cutie_club/giant_macro_pad/rules.mk19
9 files changed, 685 insertions, 0 deletions
diff --git a/keyboards/cutie_club/giant_macro_pad/config.h b/keyboards/cutie_club/giant_macro_pad/config.h
new file mode 100755
index 0000000000..c6ef81309d
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/config.h
@@ -0,0 +1,48 @@
+/* Copyright 2021 Cutie Club
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include "config_common.h"
+
+/* USB Device descriptor parameter */
+#define VENDOR_ID 0xFB9C
+#define PRODUCT_ID 0x74B6
+#define DEVICE_VER 0x0001
+#define MANUFACTURER Cutie Club
+#define PRODUCT Cupar19 Giant Macro Pad
+
+/* key matrix size */
+#define MATRIX_ROWS 20
+#define MATRIX_COLS 20
+
+/*
+ * Keyboard Matrix Assignments
+ */
+#define MATRIX_ROW_PINS { C10, C11, C12, D2, B3, B4, B5, B6, B7, B8, A3, B2, B1, B0, C5, C4, A7, A6, A5, A4 }
+#define MATRIX_COL_PINS { C9, C8, C7, C6, B15, B14, B13, B12, A8, A15, B9, A2, A1, A0, C3, C2, C1, C0, F1, F0 }
+#define UNUSED_PINS
+
+/* COL2ROW, ROW2COL*/
+#define DIODE_DIRECTION COL2ROW
+
+/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
+#define DEBOUNCE 5
+
+/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
+#define LOCKING_SUPPORT_ENABLE
+/* Locking resynchronize hack */
+#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/cutie_club/giant_macro_pad/giant_macro_pad.c b/keyboards/cutie_club/giant_macro_pad/giant_macro_pad.c
new file mode 100755
index 0000000000..934817aca2
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/giant_macro_pad.c
@@ -0,0 +1,17 @@
+/* Copyright 2021 Cutie Club
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include "giant_macro_pad.h"
diff --git a/keyboards/cutie_club/giant_macro_pad/giant_macro_pad.h b/keyboards/cutie_club/giant_macro_pad/giant_macro_pad.h
new file mode 100755
index 0000000000..8e0b612f3c
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/giant_macro_pad.h
@@ -0,0 +1,72 @@
+/* Copyright 2021 Cutie Club
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include "quantum.h"
+
+/* This is a shortcut to help you visually see your layout.
+ *
+ * The first section contains all of the arguments representing the physical
+ * layout of the board and position of the keys.
+ *
+ * The second converts the arguments into a two-dimensional array which
+ * represents the switch matrix.
+ */
+#define LAYOUT_all( \
+ k00_00, k00_01, k00_02, k00_03, k00_04, k00_05, k00_06, k00_07, k00_08, k00_09, k00_10, k00_11, k00_12, k00_13, k00_14, k00_15, k00_16, k00_17, k00_18, k00_19, \
+ k01_00, k01_01, k01_02, k01_03, k01_04, k01_05, k01_06, k01_07, k01_08, k01_09, k01_10, k01_11, k01_12, k01_13, k01_14, k01_15, k01_16, k01_17, k01_18, k01_19, \
+ k02_00, k02_01, k02_02, k02_03, k02_04, k02_05, k02_06, k02_07, k02_08, k02_09, k02_10, k02_11, k02_12, k02_13, k02_14, k02_15, k02_16, k02_17, k02_18, k02_19, \
+ k03_00, k03_01, k03_02, k03_03, k03_04, k03_05, k03_06, k03_07, k03_08, k03_09, k03_10, k03_11, k03_12, k03_13, k03_14, k03_15, k03_16, k03_17, k03_18, k03_19, \
+ k04_00, k04_01, k04_02, k04_03, k04_04, k04_05, k04_06, k04_07, k04_08, k04_09, k04_10, k04_11, k04_12, k04_13, k04_14, k04_15, k04_16, k04_17, k04_18, k04_19, \
+ k05_00, k05_01, k05_02, k05_03, k05_04, k05_05, k05_06, k05_07, k05_08, k05_09, k05_10, k05_11, k05_12, k05_13, k05_14, k05_15, k05_16, k05_17, k05_18, k05_19, \
+ k06_00, k06_01, k06_02, k06_03, k06_04, k06_05, k06_06, k06_07, k06_08, k06_09, k06_10, k06_11, k06_12, k06_13, k06_14, k06_15, k06_16, k06_17, k06_18, k06_19, \
+ k07_00, k07_01, k07_02, k07_03, k07_04, k07_05, k07_06, k07_07, k07_08, k07_09, k07_10, k07_11, k07_12, k07_13, k07_14, k07_15, k07_16, k07_17, k07_18, k07_19, \
+ k08_00, k08_01, k08_02, k08_03, k08_04, k08_05, k08_06, k08_07, k08_08, k08_09, k08_10, k08_11, k08_12, k08_13, k08_14, k08_15, k08_16, k08_17, k08_18, k08_19, \
+ k09_00, k09_01, k09_02, k09_03, k09_04, k09_05, k09_06, k09_07, k09_08, k09_09, k09_10, k09_11, k09_12, k09_13, k09_14, k09_15, k09_16, k09_17, k09_18, k09_19, \
+ k10_00, k10_01, k10_02, k10_03, k10_04, k10_05, k10_06, k10_07, k10_08, k10_09, k10_10, k10_11, k10_12, k10_13, k10_14, k10_15, k10_16, k10_17, k10_18, k10_19, \
+ k11_00, k11_01, k11_02, k11_03, k11_04, k11_05, k11_06, k11_07, k11_08, k11_09, k11_10, k11_11, k11_12, k11_13, k11_14, k11_15, k11_16, k11_17, k11_18, k11_19, \
+ k12_00, k12_01, k12_02, k12_03, k12_04, k12_05, k12_06, k12_07, k12_08, k12_09, k12_10, k12_11, k12_12, k12_13, k12_14, k12_15, k12_16, k12_17, k12_18, k12_19, \
+ k13_00, k13_01, k13_02, k13_03, k13_04, k13_05, k13_06, k13_07, k13_08, k13_09, k13_10, k13_11, k13_12, k13_13, k13_14, k13_15, k13_16, k13_17, k13_18, k13_19, \
+ k14_00, k14_01, k14_02, k14_03, k14_04, k14_05, k14_06, k14_07, k14_08, k14_09, k14_10, k14_11, k14_12, k14_13, k14_14, k14_15, k14_16, k14_17, k14_18, k14_19, \
+ k15_00, k15_01, k15_02, k15_03, k15_04, k15_05, k15_06, k15_07, k15_08, k15_09, k15_10, k15_11, k15_12, k15_13, k15_14, k15_15, k15_16, k15_17, k15_18, k15_19, \
+ k16_00, k16_01, k16_02, k16_03, k16_04, k16_05, k16_06, k16_07, k16_08, k16_09, k16_10, k16_11, k16_12, k16_13, k16_14, k16_15, k16_16, k16_17, k16_18, k16_19, \
+ k17_00, k17_01, k17_02, k17_03, k17_04, k17_05, k17_06, k17_07, k17_08, k17_09, k17_10, k17_11, k17_12, k17_13, k17_14, k17_15, k17_16, k17_17, k17_18, k17_19, \
+ k18_00, k18_01, k18_02, k18_03, k18_04, k18_05, k18_06, k18_07, k18_08, k18_09, k18_10, k18_11, k18_12, k18_13, k18_14, k18_15, k18_16, k18_17, k18_18, k18_19, \
+ k19_00, k19_01, k19_02, k19_03, k19_04, k19_05, k19_06, k19_07, k19_08, k19_09, k19_10, k19_11, k19_12, k19_13, k19_14, k19_15, k19_16, k19_17, k19_18, k19_19 \
+) \
+{ \
+ { k00_00, k00_01, k00_02, k00_03, k00_04, k00_05, k00_06, k00_07, k00_08, k00_09, k00_10, k00_11, k00_12, k00_13, k00_14, k00_15, k00_16, k00_17, k00_18, k00_19 }, \
+ { k01_00, k01_01, k01_02, k01_03, k01_04, k01_05, k01_06, k01_07, k01_08, k01_09, k01_10, k01_11, k01_12, k01_13, k01_14, k01_15, k01_16, k01_17, k01_18, k01_19 }, \
+ { k02_00, k02_01, k02_02, k02_03, k02_04, k02_05, k02_06, k02_07, k02_08, k02_09, k02_10, k02_11, k02_12, k02_13, k02_14, k02_15, k02_16, k02_17, k02_18, k02_19 }, \
+ { k03_00, k03_01, k03_02, k03_03, k03_04, k03_05, k03_06, k03_07, k03_08, k03_09, k03_10, k03_11, k03_12, k03_13, k03_14, k03_15, k03_16, k03_17, k03_18, k03_19 }, \
+ { k04_00, k04_01, k04_02, k04_03, k04_04, k04_05, k04_06, k04_07, k04_08, k04_09, k04_10, k04_11, k04_12, k04_13, k04_14, k04_15, k04_16, k04_17, k04_18, k04_19 }, \
+ { k05_00, k05_01, k05_02, k05_03, k05_04, k05_05, k05_06, k05_07, k05_08, k05_09, k05_10, k05_11, k05_12, k05_13, k05_14, k05_15, k05_16, k05_17, k05_18, k05_19 }, \
+ { k06_00, k06_01, k06_02, k06_03, k06_04, k06_05, k06_06, k06_07, k06_08, k06_09, k06_10, k06_11, k06_12, k06_13, k06_14, k06_15, k06_16, k06_17, k06_18, k06_19 }, \
+ { k07_00, k07_01, k07_02, k07_03, k07_04, k07_05, k07_06, k07_07, k07_08, k07_09, k07_10, k07_11, k07_12, k07_13, k07_14, k07_15, k07_16, k07_17, k07_18, k07_19 }, \
+ { k08_00, k08_01, k08_02, k08_03, k08_04, k08_05, k08_06, k08_07, k08_08, k08_09, k08_10, k08_11, k08_12, k08_13, k08_14, k08_15, k08_16, k08_17, k08_18, k08_19 }, \
+ { k09_00, k09_01, k09_02, k09_03, k09_04, k09_05, k09_06, k09_07, k09_08, k09_09, k09_10, k09_11, k09_12, k09_13, k09_14, k09_15, k09_16, k09_17, k09_18, k09_19 }, \
+ { k10_00, k10_01, k10_02, k10_03, k10_04, k10_05, k10_06, k10_07, k10_08, k10_09, k10_10, k10_11, k10_12, k10_13, k10_14, k10_15, k10_16, k10_17, k10_18, k10_19 }, \
+ { k11_00, k11_01, k11_02, k11_03, k11_04, k11_05, k11_06, k11_07, k11_08, k11_09, k11_10, k11_11, k11_12, k11_13, k11_14, k11_15, k11_16, k11_17, k11_18, k11_19 }, \
+ { k12_00, k12_01, k12_02, k12_03, k12_04, k12_05, k12_06, k12_07, k12_08, k12_09, k12_10, k12_11, k12_12, k12_13, k12_14, k12_15, k12_16, k12_17, k12_18, k12_19 }, \
+ { k13_00, k13_01, k13_02, k13_03, k13_04, k13_05, k13_06, k13_07, k13_08, k13_09, k13_10, k13_11, k13_12, k13_13, k13_14, k13_15, k13_16, k13_17, k13_18, k13_19 }, \
+ { k14_00, k14_01, k14_02, k14_03, k14_04, k14_05, k14_06, k14_07, k14_08, k14_09, k14_10, k14_11, k14_12, k14_13, k14_14, k14_15, k14_16, k14_17, k14_18, k14_19 }, \
+ { k15_00, k15_01, k15_02, k15_03, k15_04, k15_05, k15_06, k15_07, k15_08, k15_09, k15_10, k15_11, k15_12, k15_13, k15_14, k15_15, k15_16, k15_17, k15_18, k15_19 }, \
+ { k16_00, k16_01, k16_02, k16_03, k16_04, k16_05, k16_06, k16_07, k16_08, k16_09, k16_10, k16_11, k16_12, k16_13, k16_14, k16_15, k16_16, k16_17, k16_18, k16_19 }, \
+ { k17_00, k17_01, k17_02, k17_03, k17_04, k17_05, k17_06, k17_07, k17_08, k17_09, k17_10, k17_11, k17_12, k17_13, k17_14, k17_15, k17_16, k17_17, k17_18, k17_19 }, \
+ { k18_00, k18_01, k18_02, k18_03, k18_04, k18_05, k18_06, k18_07, k18_08, k18_09, k18_10, k18_11, k18_12, k18_13, k18_14, k18_15, k18_16, k18_17, k18_18, k18_19 }, \
+ { k19_00, k19_01, k19_02, k19_03, k19_04, k19_05, k19_06, k19_07, k19_08, k19_09, k19_10, k19_11, k19_12, k19_13, k19_14, k19_15, k19_16, k19_17, k19_18, k19_19 } \
+}
diff --git a/keyboards/cutie_club/giant_macro_pad/keymaps/default/keymap.c b/keyboards/cutie_club/giant_macro_pad/keymaps/default/keymap.c
new file mode 100755
index 0000000000..2db71e990c
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/keymaps/default/keymap.c
@@ -0,0 +1,453 @@
+/* Copyright 2021 Cutie Club
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+enum custom_keycodes {
+ NUM_0 = 0,
+ NUM_1,
+ NUM_2,
+ NUM_3,
+ NUM_4,
+ NUM_5,
+ NUM_6,
+ NUM_7,
+ NUM_8,
+ NUM_9,
+ NUM_10,
+ NUM_11,
+ NUM_12,
+ NUM_13,
+ NUM_14,
+ NUM_15,
+ NUM_16,
+ NUM_17,
+ NUM_18,
+ NUM_19,
+ NUM_20,
+ NUM_21,
+ NUM_22,
+ NUM_23,
+ NUM_24,
+ NUM_25,
+ NUM_26,
+ NUM_27,
+ NUM_28,
+ NUM_29,
+ NUM_30,
+ NUM_31,
+ NUM_32,
+ NUM_33,
+ NUM_34,
+ NUM_35,
+ NUM_36,
+ NUM_37,
+ NUM_38,
+ NUM_39,
+ NUM_40,
+ NUM_41,
+ NUM_42,
+ NUM_43,
+ NUM_44,
+ NUM_45,
+ NUM_46,
+ NUM_47,
+ NUM_48,
+ NUM_49,
+ NUM_50,
+ NUM_51,
+ NUM_52,
+ NUM_53,
+ NUM_54,
+ NUM_55,
+ NUM_56,
+ NUM_57,
+ NUM_58,
+ NUM_59,
+ NUM_60,
+ NUM_61,
+ NUM_62,
+ NUM_63,
+ NUM_64,
+ NUM_65,
+ NUM_66,
+ NUM_67,
+ NUM_68,
+ NUM_69,
+ NUM_70,
+ NUM_71,
+ NUM_72,
+ NUM_73,
+ NUM_74,
+ NUM_75,
+ NUM_76,
+ NUM_77,
+ NUM_78,
+ NUM_79,
+ NUM_80,
+ NUM_81,
+ NUM_82,
+ NUM_83,
+ NUM_84,
+ NUM_85,
+ NUM_86,
+ NUM_87,
+ NUM_88,
+ NUM_89,
+ NUM_90,
+ NUM_91,
+ NUM_92,
+ NUM_93,
+ NUM_94,
+ NUM_95,
+ NUM_96,
+ NUM_97,
+ NUM_98,
+ NUM_99,
+ NUM_100,
+ NUM_101,
+ NUM_102,
+ NUM_103,
+ NUM_104,
+ NUM_105,
+ NUM_106,
+ NUM_107,
+ NUM_108,
+ NUM_109,
+ NUM_110,
+ NUM_111,
+ NUM_112,
+ NUM_113,
+ NUM_114,
+ NUM_115,
+ NUM_116,
+ NUM_117,
+ NUM_118,
+ NUM_119,
+ NUM_120,
+ NUM_121,
+ NUM_122,
+ NUM_123,
+ NUM_124,
+ NUM_125,
+ NUM_126,
+ NUM_127,
+ NUM_128,
+ NUM_129,
+ NUM_130,
+ NUM_131,
+ NUM_132,
+ NUM_133,
+ NUM_134,
+ NUM_135,
+ NUM_136,
+ NUM_137,
+ NUM_138,
+ NUM_139,
+ NUM_140,
+ NUM_141,
+ NUM_142,
+ NUM_143,
+ NUM_144,
+ NUM_145,
+ NUM_146,
+ NUM_147,
+ NUM_148,
+ NUM_149,
+ NUM_150,
+ NUM_151,
+ NUM_152,
+ NUM_153,
+ NUM_154,
+ NUM_155,
+ NUM_156,
+ NUM_157,
+ NUM_158,
+ NUM_159,
+ NUM_160,
+ NUM_161,
+ NUM_162,
+ NUM_163,
+ NUM_164,
+ NUM_165,
+ NUM_166,
+ NUM_167,
+ NUM_168,
+ NUM_169,
+ NUM_170,
+ NUM_171,
+ NUM_172,
+ NUM_173,
+ NUM_174,
+ NUM_175,
+ NUM_176,
+ NUM_177,
+ NUM_178,
+ NUM_179,
+ NUM_180,
+ NUM_181,
+ NUM_182,
+ NUM_183,
+ NUM_184,
+ NUM_185,
+ NUM_186,
+ NUM_187,
+ NUM_188,
+ NUM_189,
+ NUM_190,
+ NUM_191,
+ NUM_192,
+ NUM_193,
+ NUM_194,
+ NUM_195,
+ NUM_196,
+ NUM_197,
+ NUM_198,
+ NUM_199,
+ NUM_200,
+ NUM_201,
+ NUM_202,
+ NUM_203,
+ NUM_204,
+ NUM_205,
+ NUM_206,
+ NUM_207,
+ NUM_208,
+ NUM_209,
+ NUM_210,
+ NUM_211,
+ NUM_212,
+ NUM_213,
+ NUM_214,
+ NUM_215,
+ NUM_216,
+ NUM_217,
+ NUM_218,
+ NUM_219,
+ NUM_220,
+ NUM_221,
+ NUM_222,
+ NUM_223,
+ NUM_224,
+ NUM_225,
+ NUM_226,
+ NUM_227,
+ NUM_228,
+ NUM_229,
+ NUM_230,
+ NUM_231,
+ NUM_232,
+ NUM_233,
+ NUM_234,
+ NUM_235,
+ NUM_236,
+ NUM_237,
+ NUM_238,
+ NUM_239,
+ NUM_240,
+ NUM_241,
+ NUM_242,
+ NUM_243,
+ NUM_244,
+ NUM_245,
+ NUM_246,
+ NUM_247,
+ NUM_248,
+ NUM_249,
+ NUM_250,
+ NUM_251,
+ NUM_252,
+ NUM_253,
+ NUM_254,
+ NUM_255,
+ NUM_256,
+ NUM_257,
+ NUM_258,
+ NUM_259,
+ NUM_260,
+ NUM_261,
+ NUM_262,
+ NUM_263,
+ NUM_264,
+ NUM_265,
+ NUM_266,
+ NUM_267,
+ NUM_268,
+ NUM_269,
+ NUM_270,
+ NUM_271,
+ NUM_272,
+ NUM_273,
+ NUM_274,
+ NUM_275,
+ NUM_276,
+ NUM_277,
+ NUM_278,
+ NUM_279,
+ NUM_280,
+ NUM_281,
+ NUM_282,
+ NUM_283,
+ NUM_284,
+ NUM_285,
+ NUM_286,
+ NUM_287,
+ NUM_288,
+ NUM_289,
+ NUM_290,
+ NUM_291,
+ NUM_292,
+ NUM_293,
+ NUM_294,
+ NUM_295,
+ NUM_296,
+ NUM_297,
+ NUM_298,
+ NUM_299,
+ NUM_300,
+ NUM_301,
+ NUM_302,
+ NUM_303,
+ NUM_304,
+ NUM_305,
+ NUM_306,
+ NUM_307,
+ NUM_308,
+ NUM_309,
+ NUM_310,
+ NUM_311,
+ NUM_312,
+ NUM_313,
+ NUM_314,
+ NUM_315,
+ NUM_316,
+ NUM_317,
+ NUM_318,
+ NUM_319,
+ NUM_320,
+ NUM_321,
+ NUM_322,
+ NUM_323,
+ NUM_324,
+ NUM_325,
+ NUM_326,
+ NUM_327,
+ NUM_328,
+ NUM_329,
+ NUM_330,
+ NUM_331,
+ NUM_332,
+ NUM_333,
+ NUM_334,
+ NUM_335,
+ NUM_336,
+ NUM_337,
+ NUM_338,
+ NUM_339,
+ NUM_340,
+ NUM_341,
+ NUM_342,
+ NUM_343,
+ NUM_344,
+ NUM_345,
+ NUM_346,
+ NUM_347,
+ NUM_348,
+ NUM_349,
+ NUM_350,
+ NUM_351,
+ NUM_352,
+ NUM_353,
+ NUM_354,
+ NUM_355,
+ NUM_356,
+ NUM_357,
+ NUM_358,
+ NUM_359,
+ NUM_360,
+ NUM_361,
+ NUM_362,
+ NUM_363,
+ NUM_364,
+ NUM_365,
+ NUM_366,
+ NUM_367,
+ NUM_368,
+ NUM_369,
+ NUM_370,
+ NUM_371,
+ NUM_372,
+ NUM_373,
+ NUM_374,
+ NUM_375,
+ NUM_376,
+ NUM_377,
+ NUM_378,
+ NUM_379,
+ NUM_380,
+ NUM_381,
+ NUM_382,
+ NUM_383,
+ NUM_384,
+ NUM_385,
+ NUM_386,
+ NUM_387,
+ NUM_388,
+ NUM_389,
+ NUM_390,
+ NUM_391,
+ NUM_392,
+ NUM_393,
+ NUM_394,
+ NUM_395,
+ NUM_396,
+ NUM_397,
+ NUM_398,
+ NUM_399,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Base */
+ [0] = LAYOUT_all(
+ NUM_0, NUM_1, NUM_2, NUM_3, NUM_4, NUM_5, NUM_6, NUM_7, NUM_8, NUM_9, NUM_10, NUM_11, NUM_12, NUM_13, NUM_14, NUM_15, NUM_16, NUM_17, NUM_18, NUM_19,
+ NUM_20, NUM_21, NUM_22, NUM_23, NUM_24, NUM_25, NUM_26, NUM_27, NUM_28, NUM_29, NUM_30, NUM_31, NUM_32, NUM_33, NUM_34, NUM_35, NUM_36, NUM_37, NUM_38, NUM_39,
+ NUM_40, NUM_41, NUM_42, NUM_43, NUM_44, NUM_45, NUM_46, NUM_47, NUM_48, NUM_49, NUM_50, NUM_51, NUM_52, NUM_53, NUM_54, NUM_55, NUM_56, NUM_57, NUM_58, NUM_59,
+ NUM_60, NUM_61, NUM_62, NUM_63, NUM_64, NUM_65, NUM_66, NUM_67, NUM_68, NUM_69, NUM_70, NUM_71, NUM_72, NUM_73, NUM_74, NUM_75, NUM_76, NUM_77, NUM_78, NUM_79,
+ NUM_80, NUM_81, NUM_82, NUM_83, NUM_84, NUM_85, NUM_86, NUM_87, NUM_88, NUM_89, NUM_90, NUM_91, NUM_92, NUM_93, NUM_94, NUM_95, NUM_96, NUM_97, NUM_98, NUM_99,
+ NUM_100,NUM_101,NUM_102,NUM_103,NUM_104,NUM_105,NUM_106,NUM_107,NUM_108,NUM_109,NUM_110,NUM_111,NUM_112,NUM_113,NUM_114,NUM_115,NUM_116,NUM_117,NUM_118,NUM_119,
+ NUM_120,NUM_121,NUM_122,NUM_123,NUM_124,NUM_125,NUM_126,NUM_127,NUM_128,NUM_129,NUM_130,NUM_131,NUM_132,NUM_133,NUM_134,NUM_135,NUM_136,NUM_137,NUM_138,NUM_139,
+ NUM_140,NUM_141,NUM_142,NUM_143,NUM_144,NUM_145,NUM_146,NUM_147,NUM_148,NUM_149,NUM_150,NUM_151,NUM_152,NUM_153,NUM_154,NUM_155,NUM_156,NUM_157,NUM_158,NUM_159,
+ NUM_160,NUM_161,NUM_162,NUM_163,NUM_164,NUM_165,NUM_166,NUM_167,NUM_168,NUM_169,NUM_170,NUM_171,NUM_172,NUM_173,NUM_174,NUM_175,NUM_176,NUM_177,NUM_178,NUM_179,
+ NUM_180,NUM_181,NUM_182,NUM_183,NUM_184,NUM_185,NUM_186,NUM_187,NUM_188,NUM_189,NUM_190,NUM_191,NUM_192,NUM_193,NUM_194,NUM_195,NUM_196,NUM_197,NUM_198,NUM_199,
+ NUM_200,NUM_201,NUM_202,NUM_203,NUM_204,NUM_205,NUM_206,NUM_207,NUM_208,NUM_209,NUM_210,NUM_211,NUM_212,NUM_213,NUM_214,NUM_215,NUM_216,NUM_217,NUM_218,NUM_219,
+ NUM_220,NUM_221,NUM_222,NUM_223,NUM_224,NUM_225,NUM_226,NUM_227,NUM_228,NUM_229,NUM_230,NUM_231,NUM_232,NUM_233,NUM_234,NUM_235,NUM_236,NUM_237,NUM_238,NUM_239,
+ NUM_240,NUM_241,NUM_242,NUM_243,NUM_244,NUM_245,NUM_246,NUM_247,NUM_248,NUM_249,NUM_250,NUM_251,NUM_252,NUM_253,NUM_254,NUM_255,NUM_256,NUM_257,NUM_258,NUM_259,
+ NUM_260,NUM_261,NUM_262,NUM_263,NUM_264,NUM_265,NUM_266,NUM_267,NUM_268,NUM_269,NUM_270,NUM_271,NUM_272,NUM_273,NUM_274,NUM_275,NUM_276,NUM_277,NUM_278,NUM_279,
+ NUM_280,NUM_281,NUM_282,NUM_283,NUM_284,NUM_285,NUM_286,NUM_287,NUM_288,NUM_289,NUM_290,NUM_291,NUM_292,NUM_293,NUM_294,NUM_295,NUM_296,NUM_297,NUM_298,NUM_299,
+ NUM_300,NUM_301,NUM_302,NUM_303,NUM_304,NUM_305,NUM_306,NUM_307,NUM_308,NUM_309,NUM_310,NUM_311,NUM_312,NUM_313,NUM_314,NUM_315,NUM_316,NUM_317,NUM_318,NUM_319,
+ NUM_320,NUM_321,NUM_322,NUM_323,NUM_324,NUM_325,NUM_326,NUM_327,NUM_328,NUM_329,NUM_330,NUM_331,NUM_332,NUM_333,NUM_334,NUM_335,NUM_336,NUM_337,NUM_338,NUM_339,
+ NUM_340,NUM_341,NUM_342,NUM_343,NUM_344,NUM_345,NUM_346,NUM_347,NUM_348,NUM_349,NUM_350,NUM_351,NUM_352,NUM_353,NUM_354,NUM_355,NUM_356,NUM_357,NUM_358,NUM_359,
+ NUM_360,NUM_361,NUM_362,NUM_363,NUM_364,NUM_365,NUM_366,NUM_367,NUM_368,NUM_369,NUM_370,NUM_371,NUM_372,NUM_373,NUM_374,NUM_375,NUM_376,NUM_377,NUM_378,NUM_379,
+ NUM_380,NUM_381,NUM_382,NUM_383,NUM_384,NUM_385,NUM_386,NUM_387,NUM_388,NUM_389,NUM_390,NUM_391,NUM_392,NUM_393,NUM_394,NUM_395,NUM_396,NUM_397,NUM_398,NUM_399
+ )
+};
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ char numString[5];
+ itoa(keycode, numString, 10);
+ SEND_STRING(numString);
+ return false;
+};
diff --git a/keyboards/cutie_club/giant_macro_pad/keymaps/via/config.h b/keyboards/cutie_club/giant_macro_pad/keymaps/via/config.h
new file mode 100755
index 0000000000..d7f8524d00
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/keymaps/via/config.h
@@ -0,0 +1,19 @@
+/* Copyright 2021 Cutie Club
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#define DYNAMIC_KEYMAP_LAYER_COUNT 1
diff --git a/keyboards/cutie_club/giant_macro_pad/keymaps/via/keymap.c b/keyboards/cutie_club/giant_macro_pad/keymaps/via/keymap.c
new file mode 100755
index 0000000000..64b3f2b530
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/keymaps/via/keymap.c
@@ -0,0 +1,43 @@
+/* Copyright 2021 Cutie Club
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ /* Base */
+ [0] = LAYOUT_all(
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9,
+ KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9
+ )
+};
diff --git a/keyboards/cutie_club/giant_macro_pad/keymaps/via/rules.mk b/keyboards/cutie_club/giant_macro_pad/keymaps/via/rules.mk
new file mode 100755
index 0000000000..74edb2bf0d
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/keymaps/via/rules.mk
@@ -0,0 +1 @@
+VIA_ENABLE=yes
diff --git a/keyboards/cutie_club/giant_macro_pad/readme.md b/keyboards/cutie_club/giant_macro_pad/readme.md
new file mode 100755
index 0000000000..313f1e1a86
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/readme.md
@@ -0,0 +1,13 @@
+# Cupar19 Giant Macro Pad
+
+![Cupar19 Giant Macro Pad](https://user-images.githubusercontent.com/15253132/118325863-0135e680-b4fc-11eb-99f2-754b155b0acd.png)
+
+* Keyboard Maintainer: [Cutie Club](https://github.com/cutie-club/)
+* Hardware Supported: STM32F072 based giant 20x20 macro pad
+* Hardware Availability: N/A (one-off)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make cutie_club/giant_macro_pad:default
+
+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/cutie_club/giant_macro_pad/rules.mk b/keyboards/cutie_club/giant_macro_pad/rules.mk
new file mode 100755
index 0000000000..4430f2419c
--- /dev/null
+++ b/keyboards/cutie_club/giant_macro_pad/rules.mk
@@ -0,0 +1,19 @@
+# MCU name
+MCU = STM32F072
+
+# Build Options
+# change yes to no to disable
+#
+BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
+MOUSEKEY_ENABLE = yes # Mouse keys
+EXTRAKEY_ENABLE = yes # Audio control and System control
+CONSOLE_ENABLE = no # Console for debug
+COMMAND_ENABLE = no # 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 = no # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
+BLUETOOTH_ENABLE = no # Enable Bluetooth
+AUDIO_ENABLE = no # Audio output