summary refs log tree commit diff
diff options
context:
space:
mode:
authorevanmcook <42785294+evanmcook@users.noreply.github.com>2022-02-21 12:11:23 -0500
committerGitHub <noreply@github.com>2022-02-21 09:11:23 -0800
commit0b21fbc37b784db576adfa46aea6ef7237c7b62e (patch)
tree9af069aba4e6bca5d14ff8d055a771871aa649fc
parent7e4f74d6897c5c34be084317a3647f974fdd4e71 (diff)
[Keyboard] add evancookaudio sleepingdinosaur (#16320)
Co-authored-by: Joel Challis <git@zvecr.com>
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/config.h44
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/info.json44
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/keymaps/default/keymap.c40
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/readme.md17
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/rules.mk18
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.c17
-rw-r--r--keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.h41
7 files changed, 221 insertions, 0 deletions
diff --git a/keyboards/evancookaudio/sleepingdinosaur/config.h b/keyboards/evancookaudio/sleepingdinosaur/config.h
new file mode 100644
index 0000000000..4412e9eb60
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/config.h
@@ -0,0 +1,44 @@
+/* Copyright 2022 evan cook <evan@evancook.audio>
+ *
+ * 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       0x636F
+#define PRODUCT_ID      0x0002
+#define DEVICE_VER      0x0000
+#define MANUFACTURER    evancook.audio
+#define PRODUCT         sleepingdinosaur
+
+/* COL2ROW or ROW2COL */
+#define DIODE_DIRECTION COL2ROW
+
+/* Set 0 if debouncing isn't needed */
+#define DEBOUNCE 5
+
+/* key matrix size */
+#define MATRIX_ROWS 5
+#define MATRIX_COLS 6
+
+/* key matrix pins */
+
+#define MATRIX_ROW_PINS {D0, D1, D4, C6, D7}
+#define MATRIX_COL_PINS {F4, F5, F6, F7, B1, B3}
+
+#define UNUSED_PINS {B2, B6, B7, D5, C7, F1, F0, B4, E6}
+
diff --git a/keyboards/evancookaudio/sleepingdinosaur/info.json b/keyboards/evancookaudio/sleepingdinosaur/info.json
new file mode 100644
index 0000000000..2c21777d49
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/info.json
@@ -0,0 +1,44 @@
+{
+    "keyboard_name": "evancook.audio sleepingdinosaur",
+    "url": "https://evancook.audio/",
+    "maintainer": "evanmcook",
+    "layouts": {
+        "LAYOUT": {
+            "layout": [
+                {"label":"1", "x":0, "y":0}, 
+                {"label":"2", "x":1, "y":0}, 
+                {"label":"3", "x":2, "y":0}, 
+                {"label":"4", "x":3, "y":0}, 
+                {"label":"5", "x":4, "y":0}, 
+                {"label":"-", "x":5, "y":0}, 
+
+                {"label":"6", "x":0, "y":1}, 
+                {"label":"7", "x":1, "y":1}, 
+                {"label":"8", "x":2, "y":1}, 
+                {"label":"9", "x":3, "y":1}, 
+                {"label":"0", "x":4, "y":1}, 
+                {"label":"R", "x":5, "y":1}, 
+
+                {"label":"/", "x":0, "y":2}, 
+                {"label":"Q", "x":1, "y":2}, 
+                {"label":"W", "x":2, "y":2}, 
+                {"label":"E", "x":3, "y":2}, 
+                {"label":"U", "x":4, "y":2}, 
+                {"label":"V", "x":5, "y":2},
+
+                {"label":"Enter", "x":0, "y":3, "h":2}, 
+                {"label":"A", "x":1, "y":3}, 
+                {"label":"S", "x":2, "y":3}, 
+                {"label":"D", "x":3, "y":3}, 
+                {"label":"Space", "x":4, "y":3, "h":2}, 
+                {"label":"O", "x":5, "y":3}, 
+                
+                {"label":"Z", "x":1, "y":4}, 
+                {"label":"X", "x":2, "y":4}, 
+                {"label":"C", "x":3, "y":4}, 
+                {"label":"N", "x":5, "y":4}
+                
+            ]
+        }
+    }
+}
\ No newline at end of file
diff --git a/keyboards/evancookaudio/sleepingdinosaur/keymaps/default/keymap.c b/keyboards/evancookaudio/sleepingdinosaur/keymaps/default/keymap.c
new file mode 100644
index 0000000000..94cbc390df
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/keymaps/default/keymap.c
@@ -0,0 +1,40 @@
+/* Copyright 2022 evan cook <evan@evancook.audio>
+ *
+ * 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] = {
+
+/* LAYER 0
+ * ,-----------------------------------------------.
+ * |   1   |   2   |   3   |   4   |   5   |   -   |
+ * |-------+-------+-------|-------|-------|-------|
+ * |   6   |   7   |   8   |   9   |   0   |   R   |
+ * |-------+-------+-------|-------|-------|-------|
+ * |   /   |   Q   |   W   |   E   |   U   |   V   |
+ *  -------+-------+-------|-------|-------|-------|
+ * | ENTER |   A   |   S   |   D   | SPACE |   O   |
+ * |       |-------+-------+-------|       |-------|
+ * |       |   Z   |   X   |   C   |       |   N   |
+ * ,-----------------------------------------------.
+ */
+[0] = LAYOUT(
+  KC_1,       KC_2,      KC_3,      KC_4,      KC_5,      KC_MINS,
+  KC_6,       KC_7,      KC_8,      KC_9,      KC_0,      KC_R,
+  KC_SLSH,    KC_Q,      KC_W,      KC_E,      KC_U,      KC_V,
+  KC_ENT,     KC_A,      KC_S,      KC_D,      KC_SPC,    KC_O,
+              KC_Z,      KC_X,      KC_C,                 KC_N     
+)
+};
diff --git a/keyboards/evancookaudio/sleepingdinosaur/readme.md b/keyboards/evancookaudio/sleepingdinosaur/readme.md
new file mode 100644
index 0000000000..064e4981fe
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/readme.md
@@ -0,0 +1,17 @@
+# tenpad macropad
+
+A 28 button macropad, in a format that is closest to a 5x6 grid, designed by evan cook
+[Default Layout](https://raw.githubusercontent.com/evanmcook/sleepingdinosaur/main/images/layouts/sleepingdinosaurdefault.jpg)
+
+* Keyboard Maintainer: [evan cook](https://github.com/evanmcook/)
+* Hardware Supported: sleepingdinosaur Macropad PCB
+* Hardware Availability: [tenpad Github](https://github.com/evanmcook/sleepingdinosaur)
+
+Make example for this keyboard (after setting up your build environment):
+
+    make evancookaudio/sleepingdinosaur: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).
+
+## Enter the bootloader: 
+* **Physical reset button**: On the underside of the board, near the USB connector and microcontroller, press and hold the small button labeled reset for more than one second to enter the bootloader.
\ No newline at end of file
diff --git a/keyboards/evancookaudio/sleepingdinosaur/rules.mk b/keyboards/evancookaudio/sleepingdinosaur/rules.mk
new file mode 100644
index 0000000000..6cf6d9358b
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/rules.mk
@@ -0,0 +1,18 @@
+# MCU name
+MCU = atmega32u4
+
+# Bootloader selection
+BOOTLOADER = caterina
+
+# Build Options
+#   change yes to no to disable
+#
+BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
+MOUSEKEY_ENABLE = no        # Mouse keys
+EXTRAKEY_ENABLE = no        # Audio control and System control
+CONSOLE_ENABLE = yes        # Console for debug
+COMMAND_ENABLE = yes        # Commands for debug and configuration
+NKRO_ENABLE = no            # Enable N-Key Rollover
+BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
+AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.c b/keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.c
new file mode 100644
index 0000000000..814275e3f0
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.c
@@ -0,0 +1,17 @@
+/* Copyright 2022 evan cook <evan@evancook.audio>
+ *
+ * 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 "sleepingdinosaur.h"
diff --git a/keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.h b/keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.h
new file mode 100644
index 0000000000..9672fca289
--- /dev/null
+++ b/keyboards/evancookaudio/sleepingdinosaur/sleepingdinosaur.h
@@ -0,0 +1,41 @@
+/* Copyright 2022 evan cook <evan@evancook.audio>
+ *
+ * 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(\
+    k00, k01, k02, k03, k04, k05, \
+    k06, k07, k08, k09, k10, k11, \
+    k12, k13, k14, k15, k16, k17, \
+    k18, k19, k20, k21, k22, k23, \
+         k24, k25, k26,      k27  \
+    ) \
+    { \
+        {k00,   k01, k02, k03, k04,   k05},\
+        {k06,   k07, k08, k09, k10,   k11},\
+        {k12,   k13, k14, k15, k16,   k17},\
+        {k18,   k19, k20, k21, k22,   k23},\
+        {KC_NO, k24, k25, k26, KC_NO, k27},\
+    }