 32446eeeb6
			
		
	
	
		32446eeeb6
		
	
	
	
	
		
			
			* Add new project files for UT47 * Copy over keymap and related files * Add LED_controls.ino * Add README instructions * Attempt sending press byte data * Disable mousekeys * Enable sending serial data to LED controller * Update LED mode names * Remove extra file * Add LED enable flag * Update READMEs with more info * Credit original author * Update copyrights * Update docs * Changed based on review * Move layout screenshot to Imgur * Append to src * Enable mousekeys to fix bad keycodes * Additional changes based on feedback * Fix fn layer keys
		
			
				
	
	
		
			87 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
| Copyright 2018 Carlos Filoteo
 | |
| 
 | |
| 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/>.
 | |
| */
 | |
| 
 | |
| #ifndef CONFIG_H
 | |
| #define CONFIG_H
 | |
| 
 | |
| #include "config_common.h"
 | |
| 
 | |
| /* USB Device descriptor parameter */
 | |
| #define VENDOR_ID       0xFEED
 | |
| #define PRODUCT_ID      0x0000
 | |
| #define DEVICE_VER      0x0001
 | |
| #define MANUFACTURER    40percent.club
 | |
| #define PRODUCT         ut47
 | |
| #define DESCRIPTION     An awesome 40% keyboard
 | |
| 
 | |
| /* key matrix size */
 | |
| #define MATRIX_ROWS 4
 | |
| #define MATRIX_COLS 12
 | |
| 
 | |
| #define MATRIX_ROW_PINS { D1, D0, D4, C6 }
 | |
| #define MATRIX_COL_PINS { D7, E6, B4, B5, B6, B2, B3, B1, F7, F6, F5, F4 }
 | |
| #define UNUSED_PINS
 | |
| 
 | |
| /* COL2ROW, ROW2COL, or CUSTOM_MATRIX */
 | |
| #define DIODE_DIRECTION COL2ROW
 | |
| 
 | |
| // #define BACKLIGHT_PIN B7
 | |
| // #define BACKLIGHT_BREATHING
 | |
| // #define BACKLIGHT_LEVELS 3
 | |
| 
 | |
| /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
 | |
| #define DEBOUNCING_DELAY 5
 | |
| 
 | |
| /* define if matrix has ghost (lacks anti-ghosting diodes) */
 | |
| //#define MATRIX_HAS_GHOST
 | |
| 
 | |
| /* 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 magic key command */
 | |
| #define IS_COMMAND() ( \
 | |
|     keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
 | |
| )
 | |
| 
 | |
| /* Enable GNAP matrix serial output */
 | |
| #define GNAP_ENABLE
 | |
| 
 | |
| /* USART configuration */
 | |
| #ifdef __AVR_ATmega32U4__
 | |
| #      define SERIAL_UART_BAUD 9600
 | |
| #      define SERIAL_UART_DATA UDR1
 | |
| #      define SERIAL_UART_UBRR (F_CPU / (16UL * SERIAL_UART_BAUD) - 1)
 | |
| #      define SERIAL_UART_RXD_VECT USART1_RX_vect
 | |
| #      define SERIAL_UART_TXD_READY (UCSR1A & _BV(UDRE1))
 | |
| #      define SERIAL_UART_INIT() do { \
 | |
|             /* baud rate */ \
 | |
|             UBRR1L = SERIAL_UART_UBRR; \
 | |
|             /* baud rate */ \
 | |
|             UBRR1H = SERIAL_UART_UBRR >> 8; \
 | |
|             /* enable TX */ \
 | |
|             UCSR1B = _BV(TXEN1); \
 | |
|             /* 8-bit data */ \
 | |
|             UCSR1C = _BV(UCSZ11) | _BV(UCSZ10); \
 | |
|             sei(); \
 | |
|         } while(0)
 | |
| #   else
 | |
| #       error "USART configuration is needed."
 | |
| #endif
 | |
| 
 | |
| #endif
 |