From 9b07098dbd63fcd7b69eadfa91b5b01724e80e78 Mon Sep 17 00:00:00 2001 From: nrtkbb Date: Thu, 17 Oct 2019 02:42:06 +0900 Subject: [Keyboard] Add uzu42 keyboard (#6842) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * initial commit * OLEDに表示するロゴをuzuのものに差し替えた * delete undefault keymaps * delete info.json * delete pro_micro.h * remove USE_Link_Time_Optimization check * Moved constant defined for each keymap.c to rev1.h * update layer_state_reader.c * Rename Uzu42 to uzu42 * remove bootloader.h include * LAYOUT_kc to LAYOUT * delete keymap level rules.mk * update readme.md * remove persistent_default_layer_set function. * try refactor to use split_common and use OLED driver * Revert "try refactor to use split_common and use OLED driver" This reverts commit 5a9afceacb450ca9eca8a146b64c24d0e0925dd8. * Update keyboards/uzu42/rev1/config.h Co-Authored-By: fauxpark * Update keyboards/uzu42/rev1/rev1.h Co-Authored-By: fauxpark * Update keyboards/uzu42/rev1/rev1.h Co-Authored-By: fauxpark * Update keyboards/uzu42/rules.mk Co-Authored-By: fauxpark * Remove lines already defined in QMK * Update keyboards/uzu42/rules.mk Co-Authored-By: fauxpark * Update keyboards/uzu42/rules.mk Co-Authored-By: fauxpark * Update keyboards/uzu42/rules.mk Co-Authored-By: fauxpark * replaced comment block * Update keyboards/uzu42/config.h Co-Authored-By: Drashna Jaelre * Revert "Revert "try refactor to use split_common and use OLED driver"" This reverts commit a7849216f49a411558d4cfdcfbf3e202defe892a. * fix setting for RGBLED * The default of OLED_DRIVER_ENABLE has been changed to no. * Delete unuse block. * Remove unnecessary keycode definitions. * Remove unuse custom keycode. * Remove not needed code. * Remove not called code. * Remove code overwritten by the core. * Remove LAYOUT_kc macro. * Moved the definition of the layer block to keymap.c. * Removed unuse variable. * Remove code overwritten by the core too. * incorporate layer changes * Moved src rule to keymap from rev1. * Removed rgb_state_reader.c from lib folder and the code move to the keymap.c * Removed layer_state_reader.c from lib folder and the code move to the keymap.c * Removed logo_reader.c from lib folder and the code move to the keymap.c * Removed keylogger.c from lib folder and the code move to the keymap.c * Moved glcdfont_uzu42.c from lib folder to the default keymaps folder. * Removed unused files. --- keyboards/uzu42/rev1/config.h | 77 ++++++++++++++++++++++++++ keyboards/uzu42/rev1/rev1.c | 2 + keyboards/uzu42/rev1/rev1.h | 36 ++++++++++++ keyboards/uzu42/rev1/rules.mk | 20 +++++++ keyboards/uzu42/rev1/serial_config.h | 4 ++ keyboards/uzu42/rev1/serial_config_simpleapi.h | 5 ++ 6 files changed, 144 insertions(+) create mode 100644 keyboards/uzu42/rev1/config.h create mode 100644 keyboards/uzu42/rev1/rev1.c create mode 100644 keyboards/uzu42/rev1/rev1.h create mode 100644 keyboards/uzu42/rev1/rules.mk create mode 100644 keyboards/uzu42/rev1/serial_config.h create mode 100644 keyboards/uzu42/rev1/serial_config_simpleapi.h (limited to 'keyboards/uzu42/rev1') diff --git a/keyboards/uzu42/rev1/config.h b/keyboards/uzu42/rev1/config.h new file mode 100644 index 0000000000..8f86d22bf1 --- /dev/null +++ b/keyboards/uzu42/rev1/config.h @@ -0,0 +1,77 @@ +/* +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x3060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER nrtkbb +#define PRODUCT uzu42 +#define DESCRIPTION A split keyboard with 4x5 vertically staggered keys and 1 thumb keys + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 8 +#define MATRIX_COLS 6 +#define MATRIX_ROW_PINS { D4, C6, D7, E6 } + +// wiring of each half +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } +// #define MATRIX_COL_PINS { B2, B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +// #define BACKLIGHT_LEVELS 3 + +/* Set 0 if debouncing isn't 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 + +/* ws2812 RGB LED */ +#define RGB_DI_PIN D3 + +#ifdef RGBLIGHT_ENABLE +# define RGBLED_NUM 54 // Number of LEDs +# define RGBLED_SPLIT { 27, 27 } +#endif + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +// #define NO_DEBUG + +/* disable print */ +// #define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT +//#define NO_ACTION_MACRO +//#define NO_ACTION_FUNCTION diff --git a/keyboards/uzu42/rev1/rev1.c b/keyboards/uzu42/rev1/rev1.c new file mode 100644 index 0000000000..0bfac6bd93 --- /dev/null +++ b/keyboards/uzu42/rev1/rev1.c @@ -0,0 +1,2 @@ +#include "uzu42.h" + diff --git a/keyboards/uzu42/rev1/rev1.h b/keyboards/uzu42/rev1/rev1.h new file mode 100644 index 0000000000..7b9c7d5991 --- /dev/null +++ b/keyboards/uzu42/rev1/rev1.h @@ -0,0 +1,36 @@ +#pragma once + +#include "../uzu42.h" + +#include "quantum.h" + +#ifdef RGBLIGHT_ENABLE +//rgb led driver +#include "ws2812.h" +#endif + +#ifdef USE_I2C +#include +#ifdef __AVR__ + #include + #include +#endif +#endif + +#define LAYOUT( \ + L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \ + L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ + L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ + L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \ + ) \ + { \ + { L00, L01, L02, L03, L04 }, \ + { L10, L11, L12, L13, L14 }, \ + { L20, L21, L22, L23, L24 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { R04, R03, R02, R01, R00 }, \ + { R14, R13, R12, R11, R10 }, \ + { R24, R23, R22, R21, R20 }, \ + { R35, R34, R33, R32, R31, R30 } \ + } + diff --git a/keyboards/uzu42/rev1/rules.mk b/keyboards/uzu42/rev1/rules.mk new file mode 100644 index 0000000000..9d0da7e0f8 --- /dev/null +++ b/keyboards/uzu42/rev1/rules.mk @@ -0,0 +1,20 @@ +# Build Options +# change to "no" to disable the options, or define them in the Makefile in +# the appropriate keymap folder that will get included automatically +# +BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) +MOUSEKEY_ENABLE = no # Mouse keys(+4700) +EXTRAKEY_ENABLE = no # Audio control and System control(+450) +CONSOLE_ENABLE = no # Console for debug(+400) +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +MIDI_ENABLE = no # MIDI controls +AUDIO_ENABLE = no # Audio output on port C6 +UNICODE_ENABLE = no # Unicode +BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID +RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. +SWAP_HANDS_ENABLE = no # Enable one-hand typing + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend diff --git a/keyboards/uzu42/rev1/serial_config.h b/keyboards/uzu42/rev1/serial_config.h new file mode 100644 index 0000000000..4fab8e8ddf --- /dev/null +++ b/keyboards/uzu42/rev1/serial_config.h @@ -0,0 +1,4 @@ +#ifndef SOFT_SERIAL_PIN +#define SOFT_SERIAL_PIN D2 +#define SERIAL_USE_MULTI_TRANSACTION +#endif diff --git a/keyboards/uzu42/rev1/serial_config_simpleapi.h b/keyboards/uzu42/rev1/serial_config_simpleapi.h new file mode 100644 index 0000000000..0e1dd9e4ac --- /dev/null +++ b/keyboards/uzu42/rev1/serial_config_simpleapi.h @@ -0,0 +1,5 @@ +#pragma once + +#undef SERIAL_USE_MULTI_TRANSACTION +#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 +#define SERIAL_MASTER_BUFFER_LENGTH MATRIX_ROWS/2 -- cgit v1.2.3