summaryrefslogtreecommitdiff
path: root/keyboards/handwired/hillside/0_1
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/handwired/hillside/0_1')
-rw-r--r--keyboards/handwired/hillside/0_1/0_1.c4
-rw-r--r--keyboards/handwired/hillside/0_1/0_1.h34
-rw-r--r--keyboards/handwired/hillside/0_1/config.h35
-rw-r--r--keyboards/handwired/hillside/0_1/info.json13
-rw-r--r--keyboards/handwired/hillside/0_1/rules.mk8
5 files changed, 94 insertions, 0 deletions
diff --git a/keyboards/handwired/hillside/0_1/0_1.c b/keyboards/handwired/hillside/0_1/0_1.c
new file mode 100644
index 0000000000..ee096f18a7
--- /dev/null
+++ b/keyboards/handwired/hillside/0_1/0_1.c
@@ -0,0 +1,4 @@
+// Copyright 2021 Michael McCoyd (@mmccoyd)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "0_1.h"
diff --git a/keyboards/handwired/hillside/0_1/0_1.h b/keyboards/handwired/hillside/0_1/0_1.h
new file mode 100644
index 0000000000..0aeefdf630
--- /dev/null
+++ b/keyboards/handwired/hillside/0_1/0_1.h
@@ -0,0 +1,34 @@
+// Copyright 2021 Michael McCoyd (@mmccoyd)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#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 those identifiers into a two-dimensional array which
+ * represents the switch matrix.
+ */
+
+// clang-format off
+#define LAYOUT( \
+ L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
+ L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
+ L20, L21, L22, L23, L24, L25, LT4, RT4, R20, R21, R22, R23, R24, R25, \
+ L30, LT0, LT1, LT2, LT3, RT3, RT2, RT1, RT0, R30 \
+ ) \
+ { \
+ { L00, L01, L02, L03, L04, L05 }, \
+ { L10, L11, L12, L13, L14, L15 }, \
+ { L20, L21, L22, L23, L24, L25 }, \
+ { L30, LT0, LT1, LT2, LT3, LT4 }, \
+ { R05, R04, R03, R02, R01, R00 }, \
+ { R15, R14, R13, R12, R11, R10 }, \
+ { R25, R24, R23, R22, R21, R20 }, \
+ { R30, RT0, RT1, RT2, RT3, RT4 } \
+ }
+// clang-format on
diff --git a/keyboards/handwired/hillside/0_1/config.h b/keyboards/handwired/hillside/0_1/config.h
new file mode 100644
index 0000000000..c83b23d0e8
--- /dev/null
+++ b/keyboards/handwired/hillside/0_1/config.h
@@ -0,0 +1,35 @@
+// Copyright 2021 Michael McCoyd (@mmccoyd)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include "config_common.h"
+
+/* key matrix size */
+// Rows are doubled-up
+#define MATRIX_ROWS 8
+#define MATRIX_COLS 6
+
+/* Encoder */
+#define ENCODERS_PAD_A { F5 }
+#define ENCODERS_PAD_B { F4 }
+#define ENCODERS_PAD_A_RIGHT { F4 }
+#define ENCODERS_PAD_B_RIGHT { F5 }
+
+#define RGBLIGHT_SLEEP
+
+/* Haptic hardware */
+// The Pimoroni is the likely hardware, for which these settings work
+#define FB_ERM_LRA 1
+#define FB_BRAKEFACTOR 3 /* 1x:0, 2x:1, 3x:2, 4x:3, 6:4, 8:5, 16:6, Disable:7 */
+#define FB_LOOPGAIN 1 /* For Low:0, Medium:1, High:2, Very High:3 */
+/* Please refer to your datasheet for optimal setting for your specific motor.*/
+#define RATED_VOLTAGE 2
+#define V_PEAK 2.8
+#define V_RMS 2.0
+#define F_LRA 205 /* resonance freq */
+
+/* Haptic waveforms */
+// Two mild waveforms
+#define DRV_GREETING alert_750ms
+#define DRV_MODE_DEFAULT sharp_tick3_60
diff --git a/keyboards/handwired/hillside/0_1/info.json b/keyboards/handwired/hillside/0_1/info.json
new file mode 100644
index 0000000000..e45e4571f5
--- /dev/null
+++ b/keyboards/handwired/hillside/0_1/info.json
@@ -0,0 +1,13 @@
+{
+ "matrix_pins": {
+ "rows": ["D7", "E6", "B4", "B5"],
+ "cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
+ },
+ "diode_direction": "COL2ROW",
+
+ "usb": {
+ "vid": "0xFEED",
+ "pid": "0x67C0",
+ "device_ver": "0x0001"
+ },
+}
diff --git a/keyboards/handwired/hillside/0_1/rules.mk b/keyboards/handwired/hillside/0_1/rules.mk
new file mode 100644
index 0000000000..2501147ea8
--- /dev/null
+++ b/keyboards/handwired/hillside/0_1/rules.mk
@@ -0,0 +1,8 @@
+SPLIT_KEYBOARD = yes # Use shared split_common code
+LTO_ENABLE = yes # Use link time optimization for smaller firmware
+
+# If you add a haptic board,
+# enable it and set its driver here or in your keymap folder
+# The Pimoroni board's driver is DRV2605L
+# HAPTIC_ENABLE = yes # Enable haptic driver
+# HAPTIC_DRIVER = DRV2605L