Add Lunar Keyboard (#4976)
* Generate project * Adjust files * Get things working * Update readme * Add VIA configurator compatibility * Grammar * Update keymap * Split lunar info default and VIA keymaps * Copyrights * VIA tuneup * A few missed copyrights * Remove unnecessary junk * Remove unnecessary bits, fix readme
This commit is contained in:
		
							parent
							
								
									e93a90c5a0
								
							
						
					
					
						commit
						ac47683292
					
				
					 3 changed files with 152 additions and 0 deletions
				
			
		
							
								
								
									
										64
									
								
								keyboards/ai03/lunar/keymaps/via/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								keyboards/ai03/lunar/keymaps/via/keymap.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,64 @@
 | 
			
		|||
/* Copyright 2019 Ryota Goto
 | 
			
		||||
 *
 | 
			
		||||
 * 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/>.
 | 
			
		||||
 */
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
	
 | 
			
		||||
	/*
 | 
			
		||||
	
 | 
			
		||||
	Layout
 | 
			
		||||
	
 | 
			
		||||
	K000 K001 K002 K003 K004 K005 K006 K007 K008 K009 K010 K011 K012 K013 K212 K014
 | 
			
		||||
	K100  K101  K102 K103 K104 K105 K106 K107 K108 K109 K110 K111   K112  K113 K114
 | 
			
		||||
	K200    K201 K202 K203 K204 K205 K206 K207 K208 K209 K210 K211     K213    K214
 | 
			
		||||
	K300      K301 K302 K303 K304 K305 K306 K307 K308 K309 K310 K311    K313   K314
 | 
			
		||||
	K400 K401 K402        K403       K405       K407       K409 K410 K411 K413 K414
 | 
			
		||||
	
 | 
			
		||||
	K212 = Split backspace (bound to Del by default)
 | 
			
		||||
	K403, K407 = Split space (bound to space by default)
 | 
			
		||||
	K405 = Main space
 | 
			
		||||
	
 | 
			
		||||
	*/
 | 
			
		||||
	
 | 
			
		||||
	[0] = LAYOUT( /* Base */
 | 
			
		||||
		KC_ESC,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC, KC_HOME, 
 | 
			
		||||
		KC_TAB,           KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS, KC_END, 
 | 
			
		||||
		MO(1),            KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT,          KC_ENT,  KC_PGUP, 
 | 
			
		||||
		KC_LSFT,          KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_LSFT,          KC_UP,   KC_PGDN, 
 | 
			
		||||
		KC_LCTL, KC_LGUI, KC_LALT,          KC_SPC,           KC_SPC,           KC_SPC,                    MO(1),   KC_GRV,  KC_LEFT, KC_DOWN, KC_RGHT
 | 
			
		||||
	),
 | 
			
		||||
	[1] = LAYOUT( /* FN */
 | 
			
		||||
		RESET,   KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  KC_DEL,  KC_DEL,  _______, 
 | 
			
		||||
		KC_CAPS,          _______, KC_UP,   _______, _______, _______, KC_NLCK, KC_P7,   KC_P8,   KC_P9,   KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, 
 | 
			
		||||
		_______,          KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_VOLD, KC_VOLU, KC_P4,   KC_P5,   KC_P6,   _______, _______,          _______, _______, 
 | 
			
		||||
		_______,          KC_RCTL, KC_RGUI, KC_RALT, _______, _______, KC_P0,   KC_P1,   KC_P2,   KC_P3,   _______, _______,          KC_PGUP, _______, 
 | 
			
		||||
		_______, _______, _______,          _______,          _______,          _______,                   _______, _______, KC_HOME, KC_PGDN, KC_END
 | 
			
		||||
	),
 | 
			
		||||
	[2] = LAYOUT( /* Blank. For VIA compatibility */
 | 
			
		||||
		_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, 
 | 
			
		||||
		_______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, 
 | 
			
		||||
		_______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______, 
 | 
			
		||||
		_______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______, 
 | 
			
		||||
		_______, _______, _______,          _______,          _______,          _______,                   _______, _______, _______, _______, _______
 | 
			
		||||
	),
 | 
			
		||||
	[3] = LAYOUT( /* Blank. For VIA compatibility */
 | 
			
		||||
		_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, 
 | 
			
		||||
		_______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, 
 | 
			
		||||
		_______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______, 
 | 
			
		||||
		_______,          _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,          _______, _______, 
 | 
			
		||||
		_______, _______, _______,          _______,          _______,          _______,                   _______, _______, _______, _______, _______
 | 
			
		||||
	)
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										2
									
								
								keyboards/ai03/lunar/keymaps/via/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								keyboards/ai03/lunar/keymaps/via/readme.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
# The VIA keymap for Lunar
 | 
			
		||||
This keymap is for compatibility with the VIA configurator.
 | 
			
		||||
							
								
								
									
										86
									
								
								keyboards/ai03/lunar/keymaps/via/rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								keyboards/ai03/lunar/keymaps/via/rules.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,86 @@
 | 
			
		|||
# MCU name
 | 
			
		||||
#MCU = at90usb1286
 | 
			
		||||
MCU = atmega32u4
 | 
			
		||||
 | 
			
		||||
# Processor frequency.
 | 
			
		||||
#     This will define a symbol, F_CPU, in all source code files equal to the
 | 
			
		||||
#     processor frequency in Hz. You can then use this symbol in your source code to
 | 
			
		||||
#     calculate timings. Do NOT tack on a 'UL' at the end, this will be done
 | 
			
		||||
#     automatically to create a 32-bit value in your source code.
 | 
			
		||||
#
 | 
			
		||||
#     This will be an integer division of F_USB below, as it is sourced by
 | 
			
		||||
#     F_USB after it has run through any CPU prescalers. Note that this value
 | 
			
		||||
#     does not *change* the processor frequency - it should merely be updated to
 | 
			
		||||
#     reflect the processor speed set externally so that the code can use accurate
 | 
			
		||||
#     software delays.
 | 
			
		||||
F_CPU = 16000000
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# LUFA specific
 | 
			
		||||
#
 | 
			
		||||
# Target architecture (see library "Board Types" documentation).
 | 
			
		||||
ARCH = AVR8
 | 
			
		||||
 | 
			
		||||
# Input clock frequency.
 | 
			
		||||
#     This will define a symbol, F_USB, in all source code files equal to the
 | 
			
		||||
#     input clock frequency (before any prescaling is performed) in Hz. This value may
 | 
			
		||||
#     differ from F_CPU if prescaling is used on the latter, and is required as the
 | 
			
		||||
#     raw input clock is fed directly to the PLL sections of the AVR for high speed
 | 
			
		||||
#     clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
 | 
			
		||||
#     at the end, this will be done automatically to create a 32-bit value in your
 | 
			
		||||
#     source code.
 | 
			
		||||
#
 | 
			
		||||
#     If no clock division is performed on the input clock inside the AVR (via the
 | 
			
		||||
#     CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
 | 
			
		||||
F_USB = $(F_CPU)
 | 
			
		||||
 | 
			
		||||
# Interrupt driven control endpoint task(+60)
 | 
			
		||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Bootloader selection
 | 
			
		||||
#   Teensy       halfkay
 | 
			
		||||
#   Pro Micro    caterina
 | 
			
		||||
#   Atmel DFU    atmel-dfu
 | 
			
		||||
#   LUFA DFU     lufa-dfu
 | 
			
		||||
#   QMK DFU      qmk-dfu
 | 
			
		||||
#   atmega32a    bootloadHID
 | 
			
		||||
BOOTLOADER = atmel-dfu
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# If you don't know the bootloader type, then you can specify the
 | 
			
		||||
# Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line
 | 
			
		||||
#   Teensy halfKay      512
 | 
			
		||||
#   Teensy++ halfKay    1024
 | 
			
		||||
#   Atmel DFU loader    4096
 | 
			
		||||
#   LUFA bootloader     4096
 | 
			
		||||
#   USBaspLoader        2048
 | 
			
		||||
# OPT_DEFS += -DBOOTLOADER_SIZE=4096
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Build Options
 | 
			
		||||
#   change yes to no to disable
 | 
			
		||||
#
 | 
			
		||||
BOOTMAGIC_ENABLE = no      # Virtual DIP switch configuration(+1000)
 | 
			
		||||
MOUSEKEY_ENABLE = yes       # Mouse keys(+4700)
 | 
			
		||||
EXTRAKEY_ENABLE = yes       # Audio control and System control(+450)
 | 
			
		||||
CONSOLE_ENABLE = yes        # Console for debug(+400)
 | 
			
		||||
COMMAND_ENABLE = yes        # Commands for debug and configuration
 | 
			
		||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
 | 
			
		||||
SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
 | 
			
		||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
 | 
			
		||||
NKRO_ENABLE = yes            # USB Nkey Rollover
 | 
			
		||||
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality on B7 by default
 | 
			
		||||
RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
 | 
			
		||||
MIDI_ENABLE = no            # MIDI support (+2400 to 4200, depending on config)
 | 
			
		||||
UNICODE_ENABLE = no         # Unicode
 | 
			
		||||
BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
 | 
			
		||||
AUDIO_ENABLE = no           # Audio output on port C6
 | 
			
		||||
FAUXCLICKY_ENABLE = no      # Use buzzer to emulate clicky switches
 | 
			
		||||
HD44780_ENABLE = no 		# Enable support for HD44780 based LCDs (+400)
 | 
			
		||||
 | 
			
		||||
SRC += keyboards/wilba_tech/wt_main.c
 | 
			
		||||
 | 
			
		||||
RAW_ENABLE = yes
 | 
			
		||||
DYNAMIC_KEYMAP_ENABLE = yes
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue