* Add Levinson Rev 3 * Update keyboards/keebio/levinson/rev3/config.h Co-Authored-By: Drashna Jaelre <drashna@live.com> * Update keyboards/keebio/levinson/rev3/config.h Co-Authored-By: Drashna Jaelre <drashna@live.com>pull/6069/head
@ -0,0 +1,61 @@ | |||||
/* | |||||
Copyright 2012 Jun Wako <wakojun@gmail.com> | |||||
Copyright 2015 Jack Humbert | |||||
Copyright 2018 Danny Nguyen <danny@keeb.io> | |||||
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 0xCB10 | |||||
#define PRODUCT_ID 0x1146 | |||||
#define DEVICE_VER 0x0300 | |||||
#define MANUFACTURER Keebio | |||||
#define PRODUCT Levinson | |||||
#define DESCRIPTION Split 40 percent ortholinear keyboard | |||||
/* key matrix size */ | |||||
// Rows are doubled-up | |||||
#define MATRIX_ROWS 8 | |||||
#define MATRIX_COLS 6 | |||||
// wiring of each half | |||||
#define MATRIX_ROW_PINS { D4, E6, B4, B5 } | |||||
#define MATRIX_COL_PINS { D3, F4, F7, B1, B3, B2 } | |||||
#define MATRIX_ROW_PINS_RIGHT { D4, B2, B3, B1 } | |||||
#define MATRIX_COL_PINS_RIGHT { F4, F7, D3, B5, B4, E6 } | |||||
#define SPLIT_HAND_PIN D2 | |||||
/* Set 0 if debouncing isn't needed */ | |||||
#define DEBOUNCE 5 | |||||
/* serial.c configuration for split keyboard */ | |||||
#define SOFT_SERIAL_PIN D0 | |||||
/* 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 D7 | |||||
#define RGBLED_NUM 12 // Number of LEDs | |||||
#define RGBLED_SPLIT { 6, 6 } | |||||
/* Backlight LEDs */ | |||||
#define BACKLIGHT_PIN B6 | |||||
#define BACKLIGHT_LEVELS 7 |
@ -0,0 +1,22 @@ | |||||
#include "levinson.h" | |||||
#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) { | |||||
// // green led on | |||||
// DDRD |= (1<<5); | |||||
// PORTD &= ~(1<<5); | |||||
// // orange led on | |||||
// DDRB |= (1<<0); | |||||
// PORTB &= ~(1<<0); | |||||
matrix_init_user(); | |||||
}; | |||||
@ -0,0 +1,34 @@ | |||||
#pragma once | |||||
#include "levinson.h" | |||||
//void promicro_bootloader_jmp(bool program); | |||||
#include "quantum.h" | |||||
#ifdef USE_I2C | |||||
#include <stddef.h> | |||||
#ifdef __AVR__ | |||||
#include <avr/io.h> | |||||
#include <avr/interrupt.h> | |||||
#endif | |||||
#endif | |||||
#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 }, \ | |||||
{ R05, R04, R03, R02, R01, R00 }, \ | |||||
{ R15, R14, R13, R12, R11, R10 }, \ | |||||
{ R25, R24, R23, R22, R21, R20 }, \ | |||||
{ R35, R34, R33, R32, R31, R30 } \ | |||||
} | |||||
#define LAYOUT_ortho_4x12 LAYOUT |
@ -0,0 +1 @@ | |||||
BACKLIGHT_ENABLE = yes |