* add support for bigknob Add support for bigknob macropad * corrected files * Apply suggestions from code review Co-authored-by: Joel Challis <git@zvecr.com> * corrected tap dance * Update config.h * correct image link * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> * added GPL headers * Update readme.md Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Ryan <fauxpark@gmail.com>
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* Copyright 2021 Craig Gardner 
 | 
						|
  * 
 | 
						|
  * 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 _MAIN 0
 | 
						|
 | 
						|
void encoder_update_user(uint8_t index, bool clockwise) {
 | 
						|
  if (index == 0) { 
 | 
						|
    if (clockwise) {
 | 
						|
      tap_code(KC_VOLU);
 | 
						|
    } else {
 | 
						|
      tap_code(KC_VOLD);
 | 
						|
    }
 | 
						|
  } 
 | 
						|
}
 | 
						|
 | 
						|
enum {
 | 
						|
  TD_RGB = 0
 | 
						|
};
 | 
						|
 | 
						|
void dance_rgb_finished (qk_tap_dance_state_t *state, void *user_data) {
 | 
						|
  if (state->count == 1) {
 | 
						|
    tap_code(KC_MNXT);
 | 
						|
  } else if (state->count == 2) {
 | 
						|
    rgblight_toggle();
 | 
						|
  } else if (state->count == 3) {
 | 
						|
    rgblight_step();
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
//All tap dance functions would go here. Only showing this one.
 | 
						|
qk_tap_dance_action_t tap_dance_actions[] = {
 | 
						|
 [TD_RGB] = ACTION_TAP_DANCE_FN_ADVANCED (NULL, dance_rgb_finished, NULL)
 | 
						|
};
 | 
						|
 | 
						|
//
 | 
						|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //buttion closest to usb is first
 | 
						|
  [_MAIN] = LAYOUT(
 | 
						|
     KC_MUTE, KC_MEDIA_PREV_TRACK, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_STOP, TD(TD_RGB)
 | 
						|
  )
 | 
						|
};
 |