summaryrefslogtreecommitdiff
path: root/keyboards/wren/wren.h
diff options
context:
space:
mode:
authorWalter Hanley <walterphanley@gmail.com>2022-01-06 19:38:42 -0600
committerGitHub <noreply@github.com>2022-01-06 17:38:42 -0800
commitdb8cf0b872a1350f11d2de931f7b375feaec69c2 (patch)
tree0bb81fa745f3dcf0c310dd1308a3ded6e3aa45aa /keyboards/wren/wren.h
parent845529782ef13a3d3f86443cf74082832eb71d9d (diff)
[Keyboard] Add Support for Wren Keyboard (#14570)
* initial prime_o commit * Cleaned up comments, other things. * Updated keymap to use standard seven-underscore KC_TRNS notation * initial prime_o commit * Cleaned up comments, other things. * Updated keymap to use standard seven-underscore KC_TRNS notation * Initial Code for Wren Keyboard This is the initial hardware test commit for the wren. More detailed keymaps will be added soon. * Update layout and add author * Add PCB Image and Clarify Bootloader Instructions * Update config.h Updating config.h to remove mentions to LED backlighting (not supported on this PCB) * Update wren.h to match PR checklist * Roll back addition of code that should have been in wren.h * Update /default/keymap.c Make keyboard.c "pristine" to the best of my ability and add information about configuring a "non-standard" layout. * Update readme.md * Update keymap readmes to match PR checklist * Update readme.md * Final touches before PR * Un-delete non-wren files * Create rules.mk * Create config.h * Update keyboards/wren/keymaps/walterhanley/keymap.c * Update keyboards/wren/keymaps/walterhanley/keymap.c * Update keyboards/wren/wren.c As per feedback, move encoder definition to wren.c from keymap.c. * Update keyboards/wren/keymaps/walterhanley/keymap.c As per feedback, move encoder definition to wren.c from keymap.c * Update keyboards/wren/keymaps/default/keymap.c As per feedback, move encoder definition to wren.c from keymap.c * Create Keymap-Level config.h I've been dealing with some issues with this board over-drawing power on certain devices; this should fix that issue on my build without affecting other users. * Add bells and whistles to personal keymap This update adds bells and whistles to my personal keymap. I couldn't figure out how to modify rotary encoder functionality for just my personal layout with the definition in wren.c, so I moved it back into the individual keymaps. Please let me know if this is an issue and I can look into possible alternative implementations. * Update to match drashna's requested changes * Update keymap.c This update refines drashna's requested changes. * Update keymap.c Fix typo
Diffstat (limited to 'keyboards/wren/wren.h')
-rw-r--r--keyboards/wren/wren.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/keyboards/wren/wren.h b/keyboards/wren/wren.h
new file mode 100644
index 0000000000..ee589fe23c
--- /dev/null
+++ b/keyboards/wren/wren.h
@@ -0,0 +1,46 @@
+/* Copyright 2021 Walter Hanley
+ *
+ * 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( \
+ L00, L01, L02, L03, L04, L05, L06, L07, L08, L09, R00, R01, R02, R03, R04, R05, R06, R07, R08, R09, \
+ L10, L11, L12, L13, L14, L15, L16, L17, L18, L19, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, \
+ L20, L21, L22, L23, L24, L25, L26, L27, L28, L29, R20, R21, R22, R23, R24, R25, R26, R27, R28, R29, \
+ L30, L31, L32, L33, L34, L35, L36, L37, L38, L39, R30, R31, R32, R33, R34, R35, R36, R37, R38, R39, \
+ LT0, LT1, LT2, LT3, LT4, RT0, RT1, RT2, RT3, RT4 \
+) { \
+ { L09, L08, L07, L06, L05, L04, L03, L02, L01, L00 }, \
+ { L19, L18, L17, L16, L15, L14, L13, L12, L11, L10 }, \
+ { L29, L28, L27, L26, L25, L24, L23, L22, L21, L20 }, \
+ { L39, L38, L37, L36, L35, L34, L33, L32, L31, L30 }, \
+ { LT4, LT3, LT2, LT1, LT0, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \
+ { R00, R01, R02, R03, R04, R05, R06, R07, R08, R09 }, \
+ { R10, R11, R12, R13, R14, R15, R16, R17, R18, R19 }, \
+ { R20, R21, R22, R23, R24, R25, R26, R27, R28, R29 }, \
+ { R30, R31, R32, R33, R34, R35, R36, R37, R38, R39 }, \
+ { RT0, RT1, RT2, RT3, RT4, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \
+}