forked from mirrors/qmk_userspace
		
	[Keyboard] Add Chavdai40% rev2 (#10210)
* add chavdai40 rev2 * add chavdai40 rev2 * change include quantum.h to top of h files
This commit is contained in:
		
					parent
					
						
							
								4701001524
							
						
					
				
			
			
				commit
				
					
						4086729f5e
					
				
			
		
					 9 changed files with 166 additions and 7 deletions
				
			
		| 
						 | 
					@ -5,15 +5,17 @@
 | 
				
			||||||
Chavdai40 is very simple decoratable 40% keyboard
 | 
					Chavdai40 is very simple decoratable 40% keyboard
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Keyboard Maintainer: [t-miyajima](https://github.com/dvorak55)
 | 
					* Keyboard Maintainer: [t-miyajima](https://github.com/dvorak55)
 | 
				
			||||||
* Hardware Supported: Chavdai40 PCB rev1
 | 
					* Hardware Supported: Chavdai40 PCB rev1,rev2
 | 
				
			||||||
* Hardware Availability: not yet available.
 | 
					* Hardware Availability: [yushakobo](https://yushakobo.jp/shop/consign_chavdai40/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Make example for this keyboard (after setting up your build environment):
 | 
					Make example for this keyboard (after setting up your build environment):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    make chavdai40:default
 | 
					    make chavdai40/rev1:default  
 | 
				
			||||||
 | 
					    make chavdai40/rev2:default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Flashing example for this keyboard:
 | 
					Flashing example for this keyboard:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    make chavdai40:default:flash
 | 
					    make chavdai40/rev1:default:flash  
 | 
				
			||||||
 | 
					    make chavdai40/rev2:default:flash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
 | 
					See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,4 +13,4 @@
 | 
				
			||||||
 * You should have received a copy of the GNU General Public License
 | 
					 * You should have received a copy of the GNU General Public License
 | 
				
			||||||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#include "chavdai40.h"
 | 
					#include "rev1.h"
 | 
				
			||||||
| 
						 | 
					@ -17,10 +17,10 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#pragma once
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define XXX KC_NO
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#include "quantum.h"
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define XXX KC_NO
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// This a shortcut to help you visually see your layout.
 | 
					// This a shortcut to help you visually see your layout.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define LAYOUT_44key( \
 | 
					#define LAYOUT_44key( \
 | 
				
			||||||
							
								
								
									
										74
									
								
								keyboards/chavdai40/rev2/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								keyboards/chavdai40/rev2/config.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,74 @@
 | 
				
			||||||
 | 
					/* Copyright 2020 t-miyajima
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * 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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "config_common.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* USB Device descriptor parameter */
 | 
				
			||||||
 | 
					#define VENDOR_ID       0x16D0
 | 
				
			||||||
 | 
					#define PRODUCT_ID      0x0F95
 | 
				
			||||||
 | 
					#define DEVICE_VER      0x0002
 | 
				
			||||||
 | 
					#define MANUFACTURER    t-miyajima
 | 
				
			||||||
 | 
					#define PRODUCT         Chavdai40 rev2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* usb power settings */
 | 
				
			||||||
 | 
					#define USB_MAX_POWER_CONSUMPTION 100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* key matrix size */
 | 
				
			||||||
 | 
					#define MATRIX_ROWS 4
 | 
				
			||||||
 | 
					#define MATRIX_COLS 13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					#define MATRIX_ROW_PINS { A0, A15, B5, B6 }
 | 
				
			||||||
 | 
					#define MATRIX_COL_PINS { B7, B4, B3, A8, B1, B0, A7, A6, A5, A4, A3, A2, A1 }
 | 
				
			||||||
 | 
					#define UNUSED_PINS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* COL2ROW, ROW2COL*/
 | 
				
			||||||
 | 
					#define DIODE_DIRECTION COL2ROW
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
 | 
				
			||||||
 | 
					#define DEBOUNCE 5
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* define if matrix has ghost (lacks anti-ghosting diodes) */
 | 
				
			||||||
 | 
					//#define MATRIX_HAS_GHOST
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
 | 
				
			||||||
 | 
					 * This is userful for the Windows task manager shortcut (ctrl+shift+esc).
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					// #define GRAVE_ESC_CTRL_OVERRIDE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					 * Force NKRO
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
 | 
				
			||||||
 | 
					 * state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
 | 
				
			||||||
 | 
					 * makefile for this to work.)
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
 | 
				
			||||||
 | 
					 * until the next keyboard reset.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * NKRO may prevent your keystrokes from being detected in the BIOS, but it is
 | 
				
			||||||
 | 
					 * fully operational during normal computer usage.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
 | 
				
			||||||
 | 
					 * or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
 | 
				
			||||||
 | 
					 * bootmagic, NKRO mode will always be enabled until it is toggled again during a
 | 
				
			||||||
 | 
					 * power-up.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					//#define FORCE_NKRO
 | 
				
			||||||
							
								
								
									
										16
									
								
								keyboards/chavdai40/rev2/rev2.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								keyboards/chavdai40/rev2/rev2.c
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,16 @@
 | 
				
			||||||
 | 
					/* Copyright 2020 t-miyajima
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * 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 "rev2.h"
 | 
				
			||||||
							
								
								
									
										49
									
								
								keyboards/chavdai40/rev2/rev2.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								keyboards/chavdai40/rev2/rev2.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,49 @@
 | 
				
			||||||
 | 
					/* Copyright 2020 t-miyajima
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * 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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "quantum.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define XXX KC_NO
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// This a shortcut to help you visually see your layout.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define LAYOUT_44key( \
 | 
				
			||||||
 | 
					    k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, \
 | 
				
			||||||
 | 
					    k14 , k15, k16, k17, k18, k19, k20, k21, k22, k23, k24,  k25   , \
 | 
				
			||||||
 | 
					     k26 ,  k27, k28, k29, k30, k31, k32, k33, k34, k35,  k36,  k37, \
 | 
				
			||||||
 | 
					         k38,  k39,      k40,         k41,   k42,   k43,   k44       \
 | 
				
			||||||
 | 
					) { \
 | 
				
			||||||
 | 
					    { k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13 }, \
 | 
				
			||||||
 | 
					    { k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, XXX }, \
 | 
				
			||||||
 | 
					    { k26, k27, k28, k29, k30, k31, k32, k33, k34, k35, k36, k37, XXX }, \
 | 
				
			||||||
 | 
					    { k38, k39, XXX, k40, XXX, k41, XXX, XXX, k42, k43, k44, XXX, XXX }  \
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define LAYOUT_42key( \
 | 
				
			||||||
 | 
					    k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, \
 | 
				
			||||||
 | 
					    k14 , k15, k16, k17, k18, k19, k20, k21, k22, k23, k24,  k25   , \
 | 
				
			||||||
 | 
					     k26 ,  k27, k28, k29, k30, k31, k32, k33, k34, k35,  k36,  k37, \
 | 
				
			||||||
 | 
					         k38,  k39,                   k41,          k43,   k44       \
 | 
				
			||||||
 | 
					) { \
 | 
				
			||||||
 | 
					    { k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13 }, \
 | 
				
			||||||
 | 
					    { k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, XXX }, \
 | 
				
			||||||
 | 
					    { k26, k27, k28, k29, k30, k31, k32, k33, k34, k35, k36, k37, XXX }, \
 | 
				
			||||||
 | 
					    { k38, k39, XXX, XXX, XXX, k41, XXX, XXX, XXX, k43, k44, XXX, XXX }  \
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										18
									
								
								keyboards/chavdai40/rev2/rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								keyboards/chavdai40/rev2/rules.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,18 @@
 | 
				
			||||||
 | 
					# MCU name
 | 
				
			||||||
 | 
					MCU = STM32F042
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Build Options
 | 
				
			||||||
 | 
					#   change yes to no to disable
 | 
				
			||||||
 | 
					BOOTMAGIC_ENABLE = lite     # Virtual DIP switch configuration
 | 
				
			||||||
 | 
					MOUSEKEY_ENABLE = yes       # Mouse keys
 | 
				
			||||||
 | 
					EXTRAKEY_ENABLE = yes       # Audio control and System control
 | 
				
			||||||
 | 
					CONSOLE_ENABLE = no         # Console for debug
 | 
				
			||||||
 | 
					COMMAND_ENABLE = no         # 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 = no            # USB Nkey Rollover
 | 
				
			||||||
 | 
					BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
 | 
				
			||||||
 | 
					RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
 | 
				
			||||||
 | 
					BLUETOOTH_ENABLE = no       # Enable Bluetooth
 | 
				
			||||||
 | 
					AUDIO_ENABLE = no           # Audio output
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue