diff options
Diffstat (limited to 'keyboards/25keys/zinc/reva')
-rw-r--r-- | keyboards/25keys/zinc/reva/.noci | 0 | ||||
-rw-r--r-- | keyboards/25keys/zinc/reva/config.h | 75 | ||||
-rw-r--r-- | keyboards/25keys/zinc/reva/info.json | 10 | ||||
-rw-r--r-- | keyboards/25keys/zinc/reva/post_config.h | 86 | ||||
-rw-r--r-- | keyboards/25keys/zinc/reva/reva.c | 1 | ||||
-rw-r--r-- | keyboards/25keys/zinc/reva/reva.h | 24 | ||||
-rw-r--r-- | keyboards/25keys/zinc/reva/rules.mk | 1 |
7 files changed, 197 insertions, 0 deletions
diff --git a/keyboards/25keys/zinc/reva/.noci b/keyboards/25keys/zinc/reva/.noci new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/keyboards/25keys/zinc/reva/.noci diff --git a/keyboards/25keys/zinc/reva/config.h b/keyboards/25keys/zinc/reva/config.h new file mode 100644 index 0000000000..428c704d19 --- /dev/null +++ b/keyboards/25keys/zinc/reva/config.h @@ -0,0 +1,75 @@ +/* +Copyright 2018 monksoffunk + +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 + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x04D8 +#define PRODUCT_ID 0xEA3B +#define DEVICE_VER 0x0001 +#define MANUFACTURER 25KEYS +#define PRODUCT zinc rev.A + +#define TAPPING_FORCE_HOLD +#define TAPPING_TERM 100 + +/* Use I2C or Serial */ +#define USE_SERIAL +#define SOFT_SERIAL_PIN D2 + +/* Select hand configuration */ +#define MASTER_LEFT +//#define MASTER_RIGHT +//#define EE_HANDS + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 8 +#define MATRIX_ROW_PINS { D4, C6, D7, E6 } + +// wiring of each half +#define MATRIX_COLS 6 +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3} + +#define DIODE_DIRECTION COL2ROW + +/* 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 + +/* + * 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 diff --git a/keyboards/25keys/zinc/reva/info.json b/keyboards/25keys/zinc/reva/info.json new file mode 100644 index 0000000000..de1d2933ec --- /dev/null +++ b/keyboards/25keys/zinc/reva/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Zinc rev.A", + "url": "https://github.com/monksoffunk/zinc", + "maintainer": "monksoffunk", + "layouts": { + "LAYOUT": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, {"x":12, "y":1}, {"x":13, "y":1}, {"x":14, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":9, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3}, {"x":9, "y":3}, {"x":10, "y":3}, {"x":11, "y":3}, {"x":12, "y":3}, {"x":13, "y":3}, {"x":14, "y":3}] + } + } +} diff --git a/keyboards/25keys/zinc/reva/post_config.h b/keyboards/25keys/zinc/reva/post_config.h new file mode 100644 index 0000000000..b0254f6bab --- /dev/null +++ b/keyboards/25keys/zinc/reva/post_config.h @@ -0,0 +1,86 @@ +/* +Copyright 2021 monksoffunk + +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/>. +*/ + +// RGB LED support +//#define RGBLIGHT_ANIMATIONS : see ./rules.mk: LED_ANIMATIONS = yes or no +// see ./rules.mk: LED_BACK_ENABLE or LED_UNDERGLOW_ENABLE set yes +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_SPLIT + #ifdef RGBLED_BACK + #ifdef RGBLED_CONT + #define RGBLED_NUM 48 + #define RGBLED_SPLIT { 24, 24 } + #else + #define RGBLED_NUM 24 + #endif + #else + #ifdef RGBLED_BOTH + #ifdef RGBLED_CONT + #define RGBLED_NUM 60 + #define RGBLED_SPLIT { 30, 30 } +// #define RGBLIGHT_LED_MAP {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29} + #else + #define RGBLED_NUM 30 + #endif + #else + #ifdef RGBLED_CONT + #define RGBLED_NUM 12 + #define RGBLED_SPLIT { 6, 6 } + #else + #define RGBLED_NUM 6 + #endif + #endif + #endif +#endif + +#ifndef IOS_DEVICE_ENABLE + #if (RGBLED_NUM <= 6) || (defined(RGBLED_CONT) && (RGBLED_NUM <= 12)) + #define RGBLIGHT_LIMIT_VAL 255 + #else + #if (RGBLED_NUM <= 16) || (defined(RGBLED_CONT) && (RGBLED_NUM <= 32)) + #define RGBLIGHT_LIMIT_VAL 130 + #else + #define RGBLIGHT_LIMIT_VAL 120 + #endif + #endif + #define RGBLIGHT_VAL_STEP 17 +#else + #if (RGBLED_NUM <= 6) || (defined(RGBLED_CONT) && (RGBLED_NUM <= 12)) + #define RGBLIGHT_LIMIT_VAL 90 + #else + #if (RGBLED_NUM <= 16) || (defined(RGBLED_CONT) && (RGBLED_NUM <= 32)) + #define RGBLIGHT_LIMIT_VAL 45 + #else + #define RGBLIGHT_LIMIT_VAL 35 + #endif + #endif + #define RGBLIGHT_VAL_STEP 4 +#endif +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 17 + +#if defined(RGBLIGHT_ENABLE) && !defined(IOS_DEVICE_ENABLE) +// USB_MAX_POWER_CONSUMPTION value +// 120 RGBoff +// 330 RGB 6 +// 300 RGB 32 + #define USB_MAX_POWER_CONSUMPTION 400 +#else + // fix iPhone and iPad power adapter issue + // iOS device need lessthan 100 + #define USB_MAX_POWER_CONSUMPTION 100 +#endif diff --git a/keyboards/25keys/zinc/reva/reva.c b/keyboards/25keys/zinc/reva/reva.c new file mode 100644 index 0000000000..139919d5a6 --- /dev/null +++ b/keyboards/25keys/zinc/reva/reva.c @@ -0,0 +1 @@ +#include "zinc.h" diff --git a/keyboards/25keys/zinc/reva/reva.h b/keyboards/25keys/zinc/reva/reva.h new file mode 100644 index 0000000000..1bf2c565ae --- /dev/null +++ b/keyboards/25keys/zinc/reva/reva.h @@ -0,0 +1,24 @@ +#pragma once + +#include "quantum.h" + +// Standard Keymap +// (TRRS jack on both halves are to the left side) +#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, R20, R21, R22, R23, R24, R25, \ + L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05}, \ + { L10, L11, L12, L13, L14, L15}, \ + { L20, L21, L22, L23, L24, L25}, \ + { L30, L31, L32, L33, L34, L35}, \ + { R00, R01, R02, R03, R04, R05 }, \ + { R10, R11, R12, R13, R14, R15 }, \ + { R20, R21, R22, R23, R24, R25 }, \ + { R30, R31, R32, R33, R34, R35 }, \ + } + +#define LAYOUT_ortho_4x12 LAYOUT diff --git a/keyboards/25keys/zinc/reva/rules.mk b/keyboards/25keys/zinc/reva/rules.mk new file mode 100644 index 0000000000..83895bdcb8 --- /dev/null +++ b/keyboards/25keys/zinc/reva/rules.mk @@ -0,0 +1 @@ +SPLIT_KEYBOARD = yes
\ No newline at end of file |