/* Copyright 2019 Tom Saleeba 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 0x5148 #define DEVICE_VER 0x0100 #define MANUFACTURER tomsaleeba #define PRODUCT Ergoslab Keyboard #define DESCRIPTION Split 45 percent ergonomic keyboard /* key matrix size */ // Rows are doubled-up #define MATRIX_ROWS 10 #define MATRIX_COLS 6 // wiring of each half #define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3 } /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 /* serial.c configuration for split keyboard */ #define SOFT_SERIAL_PIN D2 /* ws2812 RGB LED */ #define RGB_DI_PIN D3 #define RGBLED_NUM 2 // Number of LEDs // FIXME this following line should enable our layer status LEDs to work on both // sides without need to wire them into a chain. It doesn't though. Uncommenting // means the slave side of the keyboard stops working (and the LEDs don't work). // #define RGBLED_SPLIT {1,1} /* * 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