[Keyboard] Refactor atom47 and add rev4 and rev5 (#13201)
Co-authored-by: Nick Brassel <nick@tzarc.org>
This commit is contained in:
		
							parent
							
								
									374b388382
								
							
						
					
					
						commit
						81e19d61c0
					
				
					 28 changed files with 1169 additions and 267 deletions
				
			
		| 
						 | 
				
			
			@ -1,3 +1,20 @@
 | 
			
		|||
/*
 | 
			
		||||
Copyright 2021 Evelien Dekkers
 | 
			
		||||
 | 
			
		||||
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
 | 
			
		||||
 | 
			
		||||
/* enum custom_keycodes {
 | 
			
		||||
| 
						 | 
				
			
			@ -35,7 +52,7 @@
 | 
			
		|||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
	
 | 
			
		||||
	// Primary layer	
 | 
			
		||||
	[_MAIN] = LAYOUT(
 | 
			
		||||
	[_MAIN] = LAYOUT_split_space(
 | 
			
		||||
	  KC_ESC,		KC_Q,		KC_W,		KC_E,		KC_R,		KC_T,		KC_Y,		KC_U,		KC_I,		KC_O,		KC_P,		KC_DEL,		KC_BSPC,
 | 
			
		||||
	  KC_TAB,		KC_A,		KC_S,		KC_D,		KC_F,		KC_G,		KC_H,		KC_J,		KC_K,		KC_L,		KC_SCLN,				KC_QUOT,
 | 
			
		||||
	  KC_LSFT,					KC_Z,		KC_X,		KC_C,		KC_V,		KC_B,		KC_N,		KC_M,		KC_COMM,	KC_DOT,		KC_SLSH,	SHIFTEN,
 | 
			
		||||
| 
						 | 
				
			
			@ -43,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	),
 | 
			
		||||
 | 
			
		||||
	// Main Fn navigation layer
 | 
			
		||||
	[_SPLEFT] = LAYOUT(
 | 
			
		||||
	[_SPLEFT] = LAYOUT_split_space(
 | 
			
		||||
	  _______,		KC_VOLU, 	KC_PGUP, 	KC_UP,   	KC_PGDN, 	KC_INS,  	_______, 	_______, 	KC_UP,   	_______, 	KC_PSCR,	_______,	_______,	
 | 
			
		||||
	  _______,		KC_VOLD, 	KC_LEFT, 	KC_DOWN, 	KC_RGHT, 	KC_HOME, 	_______, 	KC_LEFT, 	KC_DOWN, 	KC_RGHT, 	_______, 				KC_DEL , 	
 | 
			
		||||
	  _______,					_______,    KC_MPRV, 	KC_MPLY, 	KC_MNXT, 	KC_END,  	_______, 	_______, 	KC_VOLD, 	KC_VOLU, 	KC_MUTE,	_______,	
 | 
			
		||||
| 
						 | 
				
			
			@ -51,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	),	
 | 
			
		||||
 | 
			
		||||
	// Primary numeric layer using right Spacebar
 | 
			
		||||
	[_SPRIGHT] = LAYOUT(
 | 
			
		||||
	[_SPRIGHT] = LAYOUT_split_space(
 | 
			
		||||
	  KC_GRV,		_______,	_______,	KC_LBRC, 	KC_RBRC,	_______,	_______,	KC_7,		KC_8,		KC_9,		KC_0,		_______,	_______,	
 | 
			
		||||
	  _______,		_______,	_______,	KC_LCBR, 	KC_RCBR,	_______,	_______,	KC_4,		KC_5,		KC_6,	 	KC_MINUS, 				KC_BSLS, 	
 | 
			
		||||
	  _______,					_______,	_______,	_______,	_______,	_______,	_______,	KC_1,		KC_2,		KC_3,		KC_EQUAL,	_______,	
 | 
			
		||||
| 
						 | 
				
			
			@ -59,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	),	
 | 
			
		||||
 | 
			
		||||
	// Secondary symbol layer, also Lower
 | 
			
		||||
	[_LOWER] = LAYOUT(
 | 
			
		||||
	[_LOWER] = LAYOUT_split_space(
 | 
			
		||||
	  KC_TILD, 		_______,	_______,	_______,	_______,	_______,	_______, 	KC_AMPR, 	KC_ASTR, 	KC_LPRN, 	KC_RPRN,	KC_SLCK,	KC_PAUS,	
 | 
			
		||||
	  KC_CAPS,		KC_F1,   	KC_F2,   	KC_F3,   	KC_F4,   	KC_F5,   	KC_F6,		KC_DLR,  	KC_PERC, 	KC_CIRC, 	KC_UNDS, 				KC_PIPE,	
 | 
			
		||||
	  _______,					KC_F7,   	KC_F8,   	KC_F9,   	KC_F10,  	KC_F11,  	KC_F12,		KC_EXLM, 	KC_AT,   	KC_HASH, 	KC_PLUS,	_______,	
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	),	
 | 
			
		||||
	  
 | 
			
		||||
	// Numpad layer // Also a homage to Planck with the media player/pause button
 | 
			
		||||
	[_RAISE] = LAYOUT(
 | 
			
		||||
	[_RAISE] = LAYOUT_split_space(
 | 
			
		||||
	  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	
 | 
			
		||||
	  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,				_______,
 | 
			
		||||
	  _______,					_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	
 | 
			
		||||
| 
						 | 
				
			
			@ -75,26 +92,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
	),	
 | 
			
		||||
 | 
			
		||||
	// Safety layer for special functions
 | 
			
		||||
	[_ADJUST] = LAYOUT(
 | 
			
		||||
	[_ADJUST] = LAYOUT_split_space(
 | 
			
		||||
	  _______,		RESET,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,
 | 
			
		||||
	  _______,		_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,				_______,
 | 
			
		||||
	  _______,					_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	_______,	DP_ON,
 | 
			
		||||
	  _______,		_______,	_______,	_______,				_______, 				_______,				_______,	_______,	_______,	_______
 | 
			
		||||
	),
 | 
			
		||||
	
 | 
			
		||||
	[_DPAD] = LAYOUT(
 | 
			
		||||
	[_DPAD] = LAYOUT_split_space(
 | 
			
		||||
	  KC_ESC,		KC_Q,		KC_W,		KC_E,		KC_R,		KC_T,		KC_Y,		KC_U,		KC_I,		KC_O,		KC_P,		KC_DEL,		KC_BSPC,
 | 
			
		||||
	  KC_TAB,		KC_A,		KC_S,		KC_D,		KC_F,		KC_G,		KC_H,		KC_J,		KC_K,		KC_L,		KC_SCLN,				KC_QUOT,
 | 
			
		||||
	  KC_LSFT,					KC_Z,		KC_X,		KC_C,		KC_V,		KC_B,		KC_N,		KC_M,		KC_COMM,	KC_DOT,		KC_UP,		KC_ENT,
 | 
			
		||||
	  KC_LCTL,		KC_LGUI,	KC_LALT,	XXXXXXX,				DPADNUM, 				KC_SPC,					DP_OFF,		KC_LEFT,	KC_DOWN,	KC_RGHT
 | 
			
		||||
	),
 | 
			
		||||
	
 | 
			
		||||
	[_DPADNUM] = LAYOUT(
 | 
			
		||||
	[_DPADNUM] = LAYOUT_split_space(
 | 
			
		||||
	  _______,		KC_1,		KC_2,		KC_3,		KC_4,		KC_5,		KC_6,		KC_7,		KC_8,		KC_9,		KC_0,		_______,	_______,
 | 
			
		||||
	  _______,		_______,	_______,	_______,	_______,	KC_F1,   	KC_F2,   	KC_F3,   	KC_F4,   	KC_F5,   	KC_F6,					_______,
 | 
			
		||||
	  _______,					_______,	_______,	_______,	_______,	KC_F7,   	KC_F8,   	KC_F9,   	KC_F10,  	KC_F11,  	KC_F12,		_______,
 | 
			
		||||
	  _______,		_______,	_______,	_______,				_______, 				_______,				_______,	_______,	_______,	_______
 | 
			
		||||
	),
 | 
			
		||||
	)
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
			
		||||
| 
						 | 
				
			
			@ -136,15 +153,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 | 
			
		|||
  }
 | 
			
		||||
  return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void led_set_user(uint8_t usb_led) {
 | 
			
		||||
    if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
 | 
			
		||||
        // Turn capslock on
 | 
			
		||||
 	   	writePinLow(E6);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    } else {
 | 
			
		||||
        // Turn capslock off
 | 
			
		||||
    	writePinHigh(E6);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue