qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

config.h (1991B)


      1 /* Copyright 2021 Jay Greco
      2  *
      3  * This program is free software: you can redistribute it and/or modify
      4  * it under the terms of the GNU General Public License as published by
      5  * the Free Software Foundation, either version 2 of the License, or
      6  * (at your option) any later version.
      7  *
      8  * This program is distributed in the hope that it will be useful,
      9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
     10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     11  * GNU General Public License for more details.
     12  *
     13  * You should have received a copy of the GNU General Public License
     14  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
     15  */
     16 // clang-format off
     17 #pragma once
     18 
     19 /* Used to set host for remote KB if VUSB detect doesn't work. */
     20 // #define KEYBOARD_HOST // Force host mode
     21 // #define KEYBOARD_REMOTE // Force remote mode
     22 
     23 // Workarounds for sleep/wake issues
     24 #define USB_SUSPEND_WAKEUP_DELAY 250
     25 
     26 // NOTE: There is a bug in AVR deep sleep, which
     27 // causes the MCU to stop responding in some cases.
     28 // Disabling the watchdog prevents the MCU from entering 
     29 // power down, while still turning off LEDs, audio, etc.
     30 // See qmk_firmware/issues/20087 for background
     31 #undef WDT_vect
     32 
     33 /* split config */
     34 // #define SPLIT_USB_DETECT // Enable if you have issues with USB
     35 #define SOFT_SERIAL_PIN E6
     36 #define SPLIT_HAND_PIN B6
     37 #define DISABLE_SYNC_TIMER
     38 #define SPLIT_HAND_PIN_LOW_IS_LEFT
     39 
     40 /* key matrix size */
     41 #define MATRIX_ROWS 12
     42 #define MATRIX_COLS 9
     43 #define MATRIX_MUX_COLS 3
     44 
     45 /*
     46  * Keyboard Matrix Assignments
     47  * The snap uses a demultiplexer for the cols.
     48  * to free up more IOs for awesomeness!
     49  * See matrix.c for more details.
     50 */
     51 // Left side
     52 #define MATRIX_ROW_PINS { D4, C6, D7, F4, B4, B5 }
     53 #define MATRIX_COL_MUX_PINS { F7, F6, F5 }
     54 
     55 //Right side
     56 #define MATRIX_ROW_PINS_RIGHT { F4, F5, F6, F7, B1, B3 }
     57 #define MATRIX_COL_MUX_PINS_RIGHT { D7, C6, D4 }
     58 #define MATRIX_EXT_PIN_RIGHT B6
     59 
     60 /* Optional speaker pin */
     61 #define AUDIO_PIN B6