From aeade1b1972c8d3d8f32dd21e1ae31e6c9e702db Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Mon, 29 May 2017 15:37:19 -0400 Subject: =?UTF-8?q?Fork=20Let=E2=80=99s=20Split=20files?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- keyboards/nyquist/rev1/Makefile | 3 ++ keyboards/nyquist/rev1/config.h | 91 +++++++++++++++++++++++++++++++++++++++++ keyboards/nyquist/rev1/rev1.c | 32 +++++++++++++++ keyboards/nyquist/rev1/rev1.h | 28 +++++++++++++ keyboards/nyquist/rev1/rules.mk | 5 +++ 5 files changed, 159 insertions(+) create mode 100644 keyboards/nyquist/rev1/Makefile create mode 100644 keyboards/nyquist/rev1/config.h create mode 100644 keyboards/nyquist/rev1/rev1.c create mode 100644 keyboards/nyquist/rev1/rev1.h create mode 100644 keyboards/nyquist/rev1/rules.mk (limited to 'keyboards/nyquist/rev1') diff --git a/keyboards/nyquist/rev1/Makefile b/keyboards/nyquist/rev1/Makefile new file mode 100644 index 0000000000..4e2a6f00fd --- /dev/null +++ b/keyboards/nyquist/rev1/Makefile @@ -0,0 +1,3 @@ +ifndef MAKEFILE_INCLUDED + include ../../Makefile +endif \ No newline at end of file diff --git a/keyboards/nyquist/rev1/config.h b/keyboards/nyquist/rev1/config.h new file mode 100644 index 0000000000..5fb87cf5d7 --- /dev/null +++ b/keyboards/nyquist/rev1/config.h @@ -0,0 +1,91 @@ +/* +Copyright 2012 Jun Wako + +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 . +*/ + +#ifndef CONFIG_H +#define CONFIG_H + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x3060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Wootpatoot +#define PRODUCT Lets Split v1 +#define DESCRIPTION A split keyboard for the cheap makers + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 8 +#define MATRIX_COLS 6 + +// wiring of each half +#define MATRIX_ROW_PINS { B5, B4, E6, D7 } +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } +// #define MATRIX_COL_PINS { B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order + + +#define CATERINA_BOOTLOADER + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* 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 DEBOUNCING_DELAY 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 + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ +) + +/* ws2812 RGB LED */ +#define RGB_DI_PIN D3 +#define RGBLIGHT_TIMER +#define RGBLED_NUM 16 // Number of LEDs +#define ws2812_PORTREG PORTD +#define ws2812_DDRREG DDRD + +/* + * 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 + +#endif diff --git a/keyboards/nyquist/rev1/rev1.c b/keyboards/nyquist/rev1/rev1.c new file mode 100644 index 0000000000..c505d3a6e3 --- /dev/null +++ b/keyboards/nyquist/rev1/rev1.c @@ -0,0 +1,32 @@ +#include "lets_split.h" + +#ifdef AUDIO_ENABLE + float tone_startup[][2] = SONG(STARTUP_SOUND); + float tone_goodbye[][2] = SONG(GOODBYE_SOUND); +#endif + +void matrix_init_kb(void) { + + #ifdef AUDIO_ENABLE + _delay_ms(20); // gets rid of tick + PLAY_NOTE_ARRAY(tone_startup, false, 0); + #endif + + // // green led on + // DDRD |= (1<<5); + // PORTD &= ~(1<<5); + + // // orange led on + // DDRB |= (1<<0); + // PORTB &= ~(1<<0); + + matrix_init_user(); +}; + +void shutdown_user(void) { + #ifdef AUDIO_ENABLE + PLAY_NOTE_ARRAY(tone_goodbye, false, 0); + _delay_ms(150); + stop_all_notes(); + #endif +} diff --git a/keyboards/nyquist/rev1/rev1.h b/keyboards/nyquist/rev1/rev1.h new file mode 100644 index 0000000000..6bf9f0f038 --- /dev/null +++ b/keyboards/nyquist/rev1/rev1.h @@ -0,0 +1,28 @@ +#ifndef REV1_H +#define REV1_H + +#include "../lets_split.h" + +//void promicro_bootloader_jmp(bool program); +#include "quantum.h" + +//void promicro_bootloader_jmp(bool program); + +#define KEYMAP( \ + 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 } \ + } + +#endif \ No newline at end of file diff --git a/keyboards/nyquist/rev1/rules.mk b/keyboards/nyquist/rev1/rules.mk new file mode 100644 index 0000000000..a0825b4ef6 --- /dev/null +++ b/keyboards/nyquist/rev1/rules.mk @@ -0,0 +1,5 @@ +BACKLIGHT_ENABLE = no + +ifndef QUANTUM_DIR + include ../../../Makefile +endif \ No newline at end of file -- cgit v1.2.3 From 4a8da0cb45abc9fd490944682acc71ccb0d5ee72 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Mon, 29 May 2017 16:20:06 -0400 Subject: Modify pinout and layouts for Nyquist --- keyboards/nyquist/rev1/config.h | 20 ++++++++---------- keyboards/nyquist/rev1/rev1.c | 9 +++++++- keyboards/nyquist/rev1/rev1.h | 46 +++++++++++++++++++++++++++++++++++++---- keyboards/nyquist/rev1/rules.mk | 2 +- 4 files changed, 60 insertions(+), 17 deletions(-) (limited to 'keyboards/nyquist/rev1') diff --git a/keyboards/nyquist/rev1/config.h b/keyboards/nyquist/rev1/config.h index 5fb87cf5d7..2174996582 100644 --- a/keyboards/nyquist/rev1/config.h +++ b/keyboards/nyquist/rev1/config.h @@ -21,23 +21,21 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x3060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Wootpatoot -#define PRODUCT Lets Split v1 -#define DESCRIPTION A split keyboard for the cheap makers +#define VENDOR_ID 0xCEEB +#define PRODUCT_ID 0x1156 +#define DEVICE_VER 0x0100 +#define MANUFACTURER Keebio +#define PRODUCT The Nyquist Keyboard +#define DESCRIPTION Split 60 percent ortholinear keyboard /* key matrix size */ // Rows are doubled-up -#define MATRIX_ROWS 8 +#define MATRIX_ROWS 10 #define MATRIX_COLS 6 // wiring of each half -#define MATRIX_ROW_PINS { B5, B4, E6, D7 } -#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } -// #define MATRIX_COL_PINS { B3, B1, F7, F6, F5, F4 } //uncomment this line and comment line above if you need to reverse left-to-right key order - +#define MATRIX_ROW_PINS { D4, D7, E6, B4, B5 } +#define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } #define CATERINA_BOOTLOADER diff --git a/keyboards/nyquist/rev1/rev1.c b/keyboards/nyquist/rev1/rev1.c index c505d3a6e3..fc984e18c1 100644 --- a/keyboards/nyquist/rev1/rev1.c +++ b/keyboards/nyquist/rev1/rev1.c @@ -1,10 +1,17 @@ -#include "lets_split.h" +#include "nyquist.h" #ifdef AUDIO_ENABLE float tone_startup[][2] = SONG(STARTUP_SOUND); float tone_goodbye[][2] = SONG(GOODBYE_SOUND); #endif +#ifdef SSD1306OLED +void led_set_kb(uint8_t usb_led) { + // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + led_set_user(usb_led); +} +#endif + void matrix_init_kb(void) { #ifdef AUDIO_ENABLE diff --git a/keyboards/nyquist/rev1/rev1.h b/keyboards/nyquist/rev1/rev1.h index 6bf9f0f038..f2d0ece790 100644 --- a/keyboards/nyquist/rev1/rev1.h +++ b/keyboards/nyquist/rev1/rev1.h @@ -1,28 +1,66 @@ #ifndef REV1_H #define REV1_H -#include "../lets_split.h" +#include "../nyquist.h" //void promicro_bootloader_jmp(bool program); #include "quantum.h" + +#ifdef USE_I2C +#include +#ifdef __AVR__ + #include + #include +#endif +#endif + //void promicro_bootloader_jmp(bool program); +#ifndef FLIP_HALF +// Standard Keymap +// (TRRS jack on the left half is to the right, TRRS jack on the right half is to the left) +#define KEYMAP( \ + 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, \ + L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { L40, L41, L42, L43, L44, L45 }, \ + { R05, R04, R03, R02, R01, R00 }, \ + { R15, R14, R13, R12, R11, R10 }, \ + { R25, R24, R23, R22, R21, R20 }, \ + { R35, R34, R33, R32, R31, R30 }, \ + { R45, R44, R43, R42, R41, R40 } \ + } +#else +// Keymap with right side flipped +// (TRRS jack on both halves are to the right) #define KEYMAP( \ 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 \ + L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \ + L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45 \ ) \ { \ { L00, L01, L02, L03, L04, L05 }, \ { L10, L11, L12, L13, L14, L15 }, \ { L20, L21, L22, L23, L24, L25 }, \ { L30, L31, L32, L33, L34, L35 }, \ + { L40, L41, L42, L43, L44, L45 }, \ { R00, R01, R02, R03, R04, R05 }, \ { R10, R11, R12, R13, R14, R15 }, \ { R20, R21, R22, R23, R24, R25 }, \ - { R30, R31, R32, R33, R34, R35 } \ + { R30, R31, R32, R33, R34, R35 }, \ + { R40, R41, R42, R43, R44, R45 } \ } +#endif -#endif \ No newline at end of file +#endif diff --git a/keyboards/nyquist/rev1/rules.mk b/keyboards/nyquist/rev1/rules.mk index a0825b4ef6..80a942d06f 100644 --- a/keyboards/nyquist/rev1/rules.mk +++ b/keyboards/nyquist/rev1/rules.mk @@ -2,4 +2,4 @@ BACKLIGHT_ENABLE = no ifndef QUANTUM_DIR include ../../../Makefile -endif \ No newline at end of file +endif -- cgit v1.2.3 From 7a433a7f3deea8e4d04a469e31e8b47047eacc99 Mon Sep 17 00:00:00 2001 From: Danny Nguyen Date: Tue, 30 May 2017 16:52:02 -0400 Subject: Update copyright info --- keyboards/nyquist/rev1/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'keyboards/nyquist/rev1') diff --git a/keyboards/nyquist/rev1/config.h b/keyboards/nyquist/rev1/config.h index 2174996582..c2907cf5dd 100644 --- a/keyboards/nyquist/rev1/config.h +++ b/keyboards/nyquist/rev1/config.h @@ -1,5 +1,5 @@ /* -Copyright 2012 Jun Wako +Copyright 2017 Danny Nguyen 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 -- cgit v1.2.3