* Main folder Main folder with some changes like the base layout and matrix for uploading in a future to the qmk repositorie * First Commit Firsts non previously commited changes: -Changed to keyboards/handwired -Basic credit to Xydane -70% Layout * Modified file structure for several keyboards As I don't want to create several folders and overcrowd the main folders I made a few modifications to being able of configure several keyboards as revisions of the main keyboard. Added a second variant. Compiling tests went right but I haven't tried it on the controller. * Starting leds * Started dual color leds PWM functions and configs I started to create the PWM functions and configs based on internet examples, it doesn't compile yet * Backtraced a bit to establish and try debug before continuing the pwm Just this, algo some doc as a new pinout image, space cadet modification to try if it works and little more * Deleted unuseful stuff After trying the reestructure to being compatible with several keyboards and that it worked I deleted the other keyboard. Added space cadet shift to ISO. Finally I couldn't debug everything and I'm getting quite frustrated to continue much more than just adding pwm leds * Changed again Iso fix for Space Cadet * Renamed keyboard, future pull I just renamed the keyboard and made some simplifying changes in order to make a pull request sometime soon. I'm too frustrated, tired and knowledge limited to achive using the PWM for leds, I didn't even get to use the debug mode... I intend to end basic led color change using layers (if I can), document everything properly and make a pull request so other users can continue/use this project. * Writed Readme.md file I also corrected a previous compilation problem and ordered a bit the keymaps * Corrected readme * Try to add layer activated light * Revert "Try to add layer activated light" This reverts commit 205af820d845dab08988f329b9f062f558060220. * Progress to fork Coming back to work, upcoming pull * Linked image Corrected readme * Some cleanning Added images to readme, som cleaning, burning after commit. * Almost finished (working) Finally * Finished bluepill firmware Just finished and tried layer dependant led colors. Going for merge * Deleted innecesary stuff and trailing spaces Just as commit title said. * Coding conventions Just modified some files to respect coding conventions * Deleted XXXXXX define Checking some other PR seen this improvement * Changes suggested on PR Firs doing the easy changes * More changes for the PR -I also deleted one unused function for led toggling on matrix.c (Now it uses layer dependent baklight, algo on of on start) -Deleted commented function on keymaps. Right now only needs testing and all pragma replaces. * Almost every pragma change on PR That's almost finished, only waiting for reply due to compiling errors * Revert "Almost every pragma change on PR" This reverts commit 07f23aa862b370cdf0ae37d6f2130c9e9856f491. * Revert last commit I moddified by mistake a file from another keyboard * Solved last pragma Compiles fine. Now I only need to test it, I say you if it works to include it in the main repository.
		
			
				
	
	
		
			69 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
| Copyright 2012,2013 Jun Wako <wakojun@gmail.com>
 | |
| 
 | |
| 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
 | |
| 
 | |
| // Define layer names
 | |
| #define _NORMAL 0
 | |
| #define _FNONE 1
 | |
| #define _FNTWO 2
 | |
| 
 | |
| // Highly Modified by Xydane
 | |
| const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | |
|   [_NORMAL] = LAYOUT_seventy_iso(
 | |
|   KC_ESC, 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_PSCREEN,KC_HOME, KC_END, \
 | |
| KC_GRAVE, 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_DELETE, \
 | |
|   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_PGUP, \
 | |
|  KC_CAPS, KC_A,   KC_S,   KC_D,   KC_F,   KC_G,   KC_H,   KC_J,   KC_K,   KC_L,   KC_SCLN,KC_QUOT, KC_NUHS,   KC_ENT,KC_PGDOWN, \
 | |
|  KC_LSPO, KC_NUBS,KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,   KC_N,   KC_M,   KC_COMM,KC_DOT, KC_SLSH, KC_RSPC,KC_UP,  TT(2), \
 | |
|  KC_LCTL, KC_LGUI,KC_LALT,                        KC_SPC,                 KC_RALT,MO(1),   KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ),
 | |
|         
 | |
|   [_FNONE] = LAYOUT_seventy_iso(
 | |
|   KC_TRNS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_TRNS,KC_MUTE,KC_VOLD,KC_VOLU, KC_TRNS,KC_TRNS,KC_NLCK, KC_CALC, KC_TRNS,KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_P7,  KC_P8,  KC_P9,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_P4,   KC_P5,  KC_P6,  KC_PPLS, KC_TRNS, KC_TRNS,         KC_TRNS, \
 | |
|   KC_TRNS,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_P1,  KC_P2,  KC_P3,  KC_PAST, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_P0,  KC_PDOT,KC_PENT, KC_PSLS,   KC_TRNS,KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS,                  KC_TRNS,                        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS ),
 | |
| 
 | |
|   [_FNTWO] = LAYOUT_seventy_iso(
 | |
|   KC_TRNS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, KC_TRNS,KC_MUTE,KC_VOLD,KC_VOLU, KC_TRNS,KC_TRNS,KC_NLCK, KC_CALC, KC_TRNS,KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_P7,  KC_P8,  KC_P9,  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_P4,  KC_P5,  KC_P6,  KC_PPLS, KC_TRNS, KC_TRNS,         KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_P1,  KC_P2,  KC_P3,  KC_PAST, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_P0,  KC_PDOT,KC_PENT, KC_PSLS,  KC_TRNS,KC_TRNS,KC_TRNS, \
 | |
|   KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                        KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS ),
 | |
| };
 | |
| 
 | |
| /* Layer based ilumination, just binary */
 | |
| uint32_t layer_state_set_user(uint32_t state) {
 | |
|   switch (biton32(state)) {
 | |
|   case _FNONE:
 | |
|     palSetPad(GPIOA, 0);  //OFF Color A
 | |
|     palClearPad(GPIOA, 1); //ON Color B
 | |
|     break;
 | |
|   case _FNTWO:
 | |
|     palClearPad(GPIOA, 0); //ON Color A
 | |
|     palClearPad(GPIOA, 1);  //ON Color B
 | |
|     break;
 | |
|   default: //  for any other layers, or the default layer
 | |
|     palClearPad(GPIOA, 0); //ON Color A
 | |
|     palSetPad(GPIOA, 1);  //OFF Color B
 | |
|     break;
 | |
|     }
 | |
|   return state;
 | |
| } |