From db8cf0b872a1350f11d2de931f7b375feaec69c2 Mon Sep 17 00:00:00 2001 From: Walter Hanley Date: Thu, 6 Jan 2022 19:38:42 -0600 Subject: [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 --- keyboards/wren/wren.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 keyboards/wren/wren.c (limited to 'keyboards/wren/wren.c') diff --git a/keyboards/wren/wren.c b/keyboards/wren/wren.c new file mode 100644 index 0000000000..487c9d3070 --- /dev/null +++ b/keyboards/wren/wren.c @@ -0,0 +1,35 @@ +/* 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 . + */ + +#include "wren.h" + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { /* First encoder */ + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } else if (index == 1) { /* Second encoder */ + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + return true; +} -- cgit v1.2.3