[Keyboard] Dawn60 Keyboard (#7832)
* dawn60_proper * change default * changes * master merge and via keymap * rgb underglow better * rename of folder * rename folder complete * rename * dawn60/underglow specifics * dawn60 specific * simplify * requested changes * small errors * layouts remove * remove parentheses and update rules.mk * fix error message
This commit is contained in:
		
							parent
							
								
									ff5742da9f
								
							
						
					
					
						commit
						2ce3025be2
					
				| @ -14,9 +14,9 @@ | ||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||
|  */ | ||||
| 
 | ||||
| #if defined(RGB_BACKLIGHT_ZEAL60) || defined(RGB_BACKLIGHT_ZEAL65) || defined(RGB_BACKLIGHT_M60_A) || defined(RGB_BACKLIGHT_M6_B) || defined(RGB_BACKLIGHT_KOYU) || defined(RGB_BACKLIGHT_HS60) || defined(RGB_BACKLIGHT_NK65) || defined(RGB_BACKLIGHT_U80_A) | ||||
| #if defined(RGB_BACKLIGHT_ZEAL60) || defined(RGB_BACKLIGHT_ZEAL65) || defined(RGB_BACKLIGHT_M60_A) || defined(RGB_BACKLIGHT_M6_B) || defined(RGB_BACKLIGHT_KOYU) || defined(RGB_BACKLIGHT_HS60) || defined(RGB_BACKLIGHT_NK65) || defined(RGB_BACKLIGHT_U80_A) || defined(RGB_BACKLIGHT_DAWN60) | ||||
| #else | ||||
| #error None of the following was defined: RGB_BACKLIGHT_ZEAL60, RGB_BACKLIGHT_ZEAL65, RGB_BACKLIGHT_M60_A, RGB_BACKLIGHT_M6_B, RGB_BACKLIGHT_KOYU, RGB_BACKLIGHT_HS60, RGB_BACKLIGHT_NK65, RGB_BACKLIGHT_U80_A | ||||
| #error None of the following was defined: RGB_BACKLIGHT_ZEAL60, RGB_BACKLIGHT_ZEAL65, RGB_BACKLIGHT_M60_A, RGB_BACKLIGHT_M6_B, RGB_BACKLIGHT_KOYU, RGB_BACKLIGHT_HS60, RGB_BACKLIGHT_NK65, RGB_BACKLIGHT_U80_A, RGB_BACKLIGHT_DAWN60 | ||||
| #endif | ||||
| 
 | ||||
| #ifndef MAX | ||||
| @ -41,6 +41,11 @@ | ||||
| #include "drivers/arm/i2c_master.h" | ||||
| #endif | ||||
| 
 | ||||
| #if defined(RGB_BACKLIGHT_DAWN60) | ||||
| #include "drivers/avr/ws2812.h" | ||||
| LED_TYPE g_ws2812_leds[WS2812_LED_TOTAL]; | ||||
| #endif | ||||
| 
 | ||||
| #include "progmem.h" | ||||
| #include "quantum/color.h" | ||||
| #include "tmk_core/common/eeprom.h" | ||||
| @ -61,6 +66,8 @@ | ||||
| #include "drivers/issi/is31fl3731.h" | ||||
| #if defined(RGB_BACKLIGHT_U80_A) | ||||
| #define BACKLIGHT_LED_COUNT 108 | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
| #define BACKLIGHT_LED_COUNT 84  //64 + 20
 | ||||
| #else | ||||
| #define BACKLIGHT_LED_COUNT 72 | ||||
| #endif | ||||
| @ -463,6 +470,87 @@ const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { | ||||
|     {2, C9_16, C7_15, C6_15}, // LF16
 | ||||
|     {2, C8_16, C7_16, C6_16}, // LF17
 | ||||
| }; | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
| // This is a 7-bit address, that gets left-shifted and bit 0
 | ||||
| // set to 0 for write, 1 for read (as per I2C protocol)
 | ||||
| #define ISSI_ADDR_1 0x74 | ||||
| #define ISSI_ADDR_2 0x76 | ||||
| 
 | ||||
| const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { | ||||
| /* Refer to IS31 manual for these locations
 | ||||
|  *   driver | ||||
|  *   |  R location | ||||
|  *   |  |      G location | ||||
|  *   |  |      |      B location | ||||
|  *   |  |      |      | */ | ||||
| 	{0, C1_1,   C3_2,   C4_2}, //A1
 | ||||
|     {0, C1_2,   C2_2,   C4_3}, //A2
 | ||||
|     {0, C1_3,   C2_3,   C3_3}, //A3
 | ||||
|     {0, C1_4,   C2_4,   C3_4}, //A4
 | ||||
|     {0, C1_5,   C2_5,   C3_5}, //A5
 | ||||
|     {0, C1_6,   C2_6,   C3_6}, //A6
 | ||||
|     {0, C1_7,   C2_7,   C3_7}, //A7
 | ||||
|     {0, C1_8,   C2_8,   C3_8}, //A8
 | ||||
|     {0, C9_1,   C8_1,   C7_1}, //A9
 | ||||
|     {0, C9_2,   C8_2,   C7_2}, //A10
 | ||||
|     {0, C9_3,   C8_3,   C7_3}, //A11
 | ||||
|     {0, C9_4,   C8_4,   C7_4}, //A12
 | ||||
|     {0, C9_5,   C8_5,   C7_5}, //A13
 | ||||
|     {0, C9_6,   C8_6,   C7_6}, //A14
 | ||||
|     {0, C9_7,   C8_7,   C6_6}, //A15
 | ||||
|     {0, C9_8,   C7_7,   C6_7}, //A16
 | ||||
| 
 | ||||
|     {0, C1_9,   C3_10,  C4_10}, //B1
 | ||||
|     {0, C1_10,  C2_10,  C4_11}, //B2
 | ||||
|     {0, C1_11,  C2_11,  C3_11}, //B3
 | ||||
|     {0, C1_12,  C2_12,  C3_12}, //B4
 | ||||
|     {0, C1_13,  C2_13,  C3_13}, //B5
 | ||||
|     {0, C1_14,  C2_14,  C3_14}, //B6
 | ||||
|     {0, C1_15,  C2_15,  C3_15}, //B7
 | ||||
|     {0, C1_16,  C2_16,  C3_16}, //B8
 | ||||
|     {0, C9_9,   C8_9,   C7_9},  //B9
 | ||||
|     {0, C9_10,  C8_10,  C7_10}, //B10
 | ||||
|     {0, C9_11,  C8_11,  C7_11}, //B11
 | ||||
|     {0, C9_12,  C8_12,  C7_12}, //B12
 | ||||
|     {0, C9_13,  C8_13,  C7_13}, //B13
 | ||||
|     {0, C9_14,  C8_14,  C7_14}, //B14
 | ||||
|     {0, C9_15,  C8_15,  C6_14}, //B15
 | ||||
|     {0, C9_16,  C7_15,  C6_15}, //B16
 | ||||
| 
 | ||||
|     {1, C1_1,   C3_2,   C4_2}, //C1
 | ||||
|     {1, C1_2,   C2_2,   C4_3}, //C2
 | ||||
|     {1, C1_3,   C2_3,   C3_3}, //C3
 | ||||
|     {1, C1_4,   C2_4,   C3_4}, //C4
 | ||||
|     {1, C1_5,   C2_5,   C3_5}, //C5
 | ||||
|     {1, C1_6,   C2_6,   C3_6}, //C6
 | ||||
|     {1, C1_7,   C2_7,   C3_7}, //C7
 | ||||
|     {1, C1_8,   C2_8,   C3_8}, //C8
 | ||||
|     {1, C9_1,   C8_1,   C7_1}, //C9
 | ||||
|     {1, C9_2,   C8_2,   C7_2}, //C10
 | ||||
|     {1, C9_3,   C8_3,   C7_3}, //C11
 | ||||
|     {1, C9_4,   C8_4,   C7_4}, //C12
 | ||||
|     {1, C9_5,   C8_5,   C7_5}, //C13
 | ||||
|     {1, C9_6,   C8_6,   C7_6}, //C14
 | ||||
|     {1, C9_7,   C8_7,   C6_6}, //C15
 | ||||
|     {1, C9_8,   C7_7,   C6_7}, //C16
 | ||||
| 
 | ||||
|     {1, C1_9,   C3_10,  C4_10}, //D1
 | ||||
|     {1, C1_10,  C2_10,  C4_11}, //D2
 | ||||
|     {1, C1_11,  C2_11,  C3_11}, //D3
 | ||||
|     {1, C1_12,  C2_12,  C3_12}, //D4
 | ||||
|     {1, C1_13,  C2_13,  C3_13}, //D5
 | ||||
|     {1, C1_14,  C2_14,  C3_14}, //D6
 | ||||
|     {1, C1_15,  C2_15,  C3_15}, //D7
 | ||||
|     {1, C1_16,  C2_16,  C3_16}, //D8
 | ||||
|     {1, C9_9,    C8_9,   C7_9},  //D9
 | ||||
|     {1, C9_10,  C8_10,  C7_10}, //D10
 | ||||
|     {1, C9_11,  C8_11,  C7_11}, //D11
 | ||||
|     {1, C9_12,  C8_12,  C7_12}, //D12
 | ||||
|     {1, C9_13,  C8_13,  C7_13}, //D13
 | ||||
|     {1, C9_14,  C8_14,  C7_14}, //D14
 | ||||
|     {1, C9_15,  C8_15,  C6_14}, //D15
 | ||||
|     {1, C9_16,  C7_15,  C6_15}  //D16	
 | ||||
| }; | ||||
| #elif !defined(RGB_BACKLIGHT_M6_B) | ||||
| // This is a 7-bit address, that gets left-shifted and bit 0
 | ||||
| // set to 0 for write, 1 for read (as per I2C protocol)
 | ||||
| @ -805,6 +893,50 @@ const Point g_map_led_to_point[BACKLIGHT_LED_COUNT] PROGMEM = { | ||||
| const Point g_map_led_to_point_polar[BACKLIGHT_LED_COUNT] PROGMEM = { | ||||
|     {160,255}, {96,255}, {77,255}, {179,255}, {51,255}, {205,255} | ||||
| }; | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
| const Point g_map_led_to_point[BACKLIGHT_LED_COUNT] PROGMEM = { | ||||
|     // LA1..LA16
 | ||||
| 	{104, 16}, {88 , 16}, {72 , 16}, {56 , 16}, {40 , 16}, {24 , 16}, {4  , 16}, {6  , 32},  | ||||
|     {112,  0}, {96 ,  0}, {80 ,  0}, {64 ,  0}, {48 ,  0}, {32 ,  0}, {16 ,  0}, {0  ,  0},  | ||||
| 
 | ||||
|     // LB1..LB16
 | ||||
| 	{128,  0}, {144,  0}, {160,  0}, {176,  0}, {192,  0}, {208,  0}, {224,  0}, {214, 32}, | ||||
|     {120, 16}, {136, 16}, {152, 16}, {168, 16}, {184, 16}, {200, 16}, {220, 16}, {224, 48}, | ||||
| 
 | ||||
|     // LC1..LC16
 | ||||
| 	{100, 48}, {84 , 48}, {68 , 48}, {52 , 48}, {36 , 48}, {102, 64}, {42 , 64}, {22 , 64},  | ||||
|     {108, 32}, {92 , 32}, {76 , 32}, {60 , 32}, {44 , 32}, {28 , 32}, {10 , 48}, {2  , 64},  | ||||
| 
 | ||||
|     // LD1..LD16
 | ||||
| 	{124, 32}, {140, 32}, {156, 32}, {172, 32}, {188, 32}, {180, 48}, {202, 48}, {224, 64},  | ||||
|     {116, 48}, {132, 48}, {148, 48}, {164, 48}, {160, 64},  {176, 64}, {192, 64}, {208, 64}, | ||||
| 
 | ||||
| 	//RGB UNDERGLOW
 | ||||
| 	{27 , 3}, {64 , 3}, {100, 3}, {137, 3},	{173, 3}, {209, 3}, {242, 4}, {255, 8}, {255,32}, {255,64}, | ||||
| 	{241,64}, {212,64},	{173,64}, {137,64}, {100,64}, {63 ,64},	{28 ,64}, {0  ,64},	{0  ,32}, {0  , 8},	//20
 | ||||
| }; | ||||
| 
 | ||||
| const Point g_map_led_to_point_polar[BACKLIGHT_LED_COUNT] PROGMEM = { | ||||
| 	//LA1..LA16
 | ||||
| 	{70,129}, {80,139}, {89,157}, {96,181}, {101,208}, {105,238}, {109,255}, {128,247},  | ||||
| 	{64,255}, {70,255}, {75,255}, {80,255}, {85,255},  {89,255},  {93,255},  {96,255}, | ||||
| 	//LB1..LB16
 | ||||
| 	{58,255}, {53,255}, {48,255}, {43,255}, {39,255},  {34,255}, {32,255}, {255,233}, | ||||
| 	{58,129}, {48,139}, {39,157}, {32,181}, {27,208}, {23,238}, {19,255}, {237,255}, | ||||
| 	//LC1..LC16
 | ||||
| 	{183,131}, {173,143}, {165,163}, {159,188}, {154,216}, {188,255}, {170,255}, {165,255},  | ||||
| 	{128,9}, {128,46}, {128,82}, {128,119}, {128,155}, {128,192}, {147,255}, {161,255}, | ||||
| 	//LD1..LD16
 | ||||
| 	{0,27}, {0,64}, {0,101}, {0,137}, {0,174}, {228,201}, {235,255}, {224,255}, | ||||
| 	{195,128}, {206,136}, {215,152}, {222,175}, {208,255}, {213,255}, {217, 255}, {222,225}, | ||||
| 
 | ||||
| 	//UNDERGLOW, {A,D}
 | ||||
| 	//1 - 10
 | ||||
| 	{91,255}, {84,255}, {74,255}, {60,255}, {48,255}, {39,255}, {32,255}, {27,255}, {0,255}, {236,255},  | ||||
| 	//11 - 20
 | ||||
| 	{234,255}, {222,255}, {213,255}, {197,255}, {180,255}, {167,255}, {152,255}, {147,255}, {128,255}, {101,255} | ||||
| }; | ||||
| 
 | ||||
| #endif | ||||
| 
 | ||||
| // This may seem counter-intuitive, but it's quite flexible.
 | ||||
| @ -824,10 +956,12 @@ void map_led_to_point( uint8_t index, Point *point ) | ||||
| 
 | ||||
|     switch (index) | ||||
|     { | ||||
| #if !defined(RGB_BACKLIGHT_DAWN60) | ||||
|         case 18+4: // LB4A
 | ||||
|             if ( g_config.use_split_backspace ) | ||||
|                 point->x -= 8; | ||||
|             break; | ||||
| #endif | ||||
| #if defined(RGB_BACKLIGHT_ZEAL60) | ||||
|         case 18+14: // LB14A
 | ||||
|             if ( g_config.use_iso_enter ) | ||||
| @ -855,6 +989,28 @@ void map_led_to_point( uint8_t index, Point *point ) | ||||
|             if ( !g_config.use_split_right_shift ) | ||||
|                 point->x -= 8; | ||||
|             break; | ||||
| #endif | ||||
| #if defined(RGB_BACKLIGHT_DAWN60) | ||||
|         case 15+6: // LB6A
 | ||||
|             if ( !g_config.use_split_backspace ) | ||||
|                 point->x += 8; | ||||
|             break; | ||||
|         case 31+6: // LC6A
 | ||||
|             if ( g_config.use_7u_spacebar ) | ||||
|                 point->x = 112; | ||||
|             break; | ||||
|         case 47+16: // LD16A
 | ||||
|             if ( g_config.use_7u_spacebar ) | ||||
|                 point->x -= 8; | ||||
|             break; | ||||
|         case 47+6: // LD6A
 | ||||
|             if ( g_config.use_split_right_shift ) | ||||
|                 point->x += 6; | ||||
|             break; | ||||
|         case 47+7: // LD7A
 | ||||
|             if ( g_config.use_split_right_shift ) | ||||
|                 point->x += 6; | ||||
|             break; | ||||
| #endif | ||||
|     } | ||||
| } | ||||
| @ -994,6 +1150,20 @@ const uint8_t g_map_row_column_to_led[MATRIX_ROWS][MATRIX_COLS] PROGMEM = { | ||||
| const uint8_t g_map_row_column_to_led[MATRIX_ROWS][MATRIX_COLS] PROGMEM = { | ||||
|     {     0,     3,     5,     1,     2,     4 } | ||||
| }; | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
| //Dawn60
 | ||||
| // A16, A15, A14, A13, A12, A11, A10,  A9,  B1,  B2,  B3,  B4,  B5,  B6,
 | ||||
| //  A7,  A6,  A5,  A4,  A3,  A2,  A1,  B9, B10, B11, B12, B13, B14, B15,
 | ||||
| //  A8, C14, C13, C12, C11, C10,  C9,  D1,  D2,  D3,  D4,  D5,  B8,  B7,
 | ||||
| // C15,  C5,  C4,  C3,  C2,  C1,  D9, D10, D11, D12, ---,  D6,  D7, B16, 
 | ||||
| // C16,  C8,  C7, ---, ---,  C6, ---, ---, ---, D13, D14, D15, D16,  D8,	
 | ||||
| const uint8_t g_map_row_column_to_led[MATRIX_ROWS][MATRIX_COLS] PROGMEM = { | ||||
| 	{ -1+16, -1+15, -1+14, -1+13, -1+12, -1+11, -1+10, -1+9 , 15+1 , 15+2 , 15+3 , 15+4 , 15+5 , 15+6 }, | ||||
| 	{ -1+7 , -1+6 , -1+5 , -1+4 , -1+3 , -1+2 , -1 +1, 15+9 , 15+10, 15+11, 15+12, 15+13, 15+14, 15+15}, | ||||
| 	{ -1+8 , 31+14, 31+13, 31+12, 31+11, 31+10, 31+9 , 47+1 , 47+2 , 47+3 , 47+4 , 47+5 , 15+8 , 15+7 }, | ||||
| 	{ 31+15, 31+5 , 31+4 , 31+3 , 31+2 , 31+1 , 47+9 , 47+10, 47+11, 47+12, 255  ,47+6 , 47+7 , 15+16}, | ||||
| 	{ 31+16, 31+8 , 31+7 , 255  , 255  , 31+6 , 255  , 255  , 255  , 47+13, 47+14, 47+15, 47+16, 47+8 } | ||||
| };	 | ||||
| #endif | ||||
| 
 | ||||
| void map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led ) | ||||
| @ -1049,6 +1219,15 @@ void backlight_set_color( int index, uint8_t red, uint8_t green, uint8_t blue ) | ||||
|     IS31FL3218_set_color( index, red, green, blue ); | ||||
| #elif defined(RGB_BACKLIGHT_HS60) || defined(RGB_BACKLIGHT_NK65) | ||||
|     IS31FL3733_set_color( index, red, green, blue ); | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
|     if( index < DRIVER_LED_TOTAL ) { | ||||
|         IS31FL3731_set_color( index, red, green, blue ); | ||||
|     } else { | ||||
|         g_ws2812_leds[index - DRIVER_LED_TOTAL].r = red; | ||||
|         g_ws2812_leds[index - DRIVER_LED_TOTAL].g = green; | ||||
|         g_ws2812_leds[index - DRIVER_LED_TOTAL].b = blue; | ||||
|         ws2812_setleds(g_ws2812_leds, WS2812_LED_TOTAL);     | ||||
|     } | ||||
| #else | ||||
|     IS31FL3731_set_color( index, red, green, blue ); | ||||
| #endif | ||||
| @ -1060,6 +1239,14 @@ void backlight_set_color_all( uint8_t red, uint8_t green, uint8_t blue ) | ||||
|     IS31FL3218_set_color_all( red, green, blue ); | ||||
| #elif defined(RGB_BACKLIGHT_HS60) || defined(RGB_BACKLIGHT_NK65) | ||||
|     IS31FL3733_set_color_all( red, green, blue ); | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
|     IS31FL3731_set_color_all( red, green, blue ); | ||||
|     for (uint8_t i = 0; i < WS2812_LED_TOTAL; i++) { | ||||
|         g_ws2812_leds[i].r = red; | ||||
|         g_ws2812_leds[i].g = green; | ||||
|         g_ws2812_leds[i].b = blue; | ||||
|     } | ||||
|     ws2812_setleds(g_ws2812_leds, WS2812_LED_TOTAL);     | ||||
| #else | ||||
|     IS31FL3731_set_color_all( red, green, blue ); | ||||
| #endif | ||||
| @ -1266,6 +1453,16 @@ void backlight_effect_alphas_mods(void) | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| #if defined(RGB_BACKLIGHT_DAWN60)  | ||||
| 	for (int i = 0; i < WS2812_LED_TOTAL; i++) { | ||||
| 		if ((RGB_UNDERGLOW_ALPHA_TOP_START <= i && i <= RGB_UNDERGLOW_ALPHA_TOP_END) ||  | ||||
|             (RGB_UNDERGLOW_ALPHA_BOT_START <= i && i <= RGB_UNDERGLOW_ALPHA_BOT_END)) { | ||||
|             backlight_set_color(i + DRIVER_LED_TOTAL, rgb1.r, rgb1.g, rgb1.b); | ||||
| 		} else {     | ||||
|             backlight_set_color(i + DRIVER_LED_TOTAL, rgb2.r, rgb2.g, rgb2.b); | ||||
| 		} | ||||
| 	} | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| void backlight_effect_gradient_up_down(void) | ||||
| @ -1302,6 +1499,7 @@ void backlight_effect_gradient_up_down(void) | ||||
|         hsv.h = g_config.color_1.h + ( deltaH * y ); | ||||
|         hsv.s = g_config.color_1.s + ( deltaS * y ); | ||||
|         rgb = hsv_to_rgb( hsv ); | ||||
| 
 | ||||
|         backlight_set_color( i, rgb.r, rgb.g, rgb.b ); | ||||
|     } | ||||
| } | ||||
| @ -1342,7 +1540,7 @@ void backlight_effect_raindrops(bool initialize) | ||||
|             hsv.h = h1 + ( deltaH * ( rand() & 0x03 ) ); | ||||
|             hsv.s = s1 + ( deltaS * ( rand() & 0x03 ) ); | ||||
|             // Override brightness with global brightness control
 | ||||
|             hsv.v = g_config.brightness;; | ||||
|             hsv.v = g_config.brightness; | ||||
| 
 | ||||
|             rgb = hsv_to_rgb( hsv ); | ||||
|             backlight_set_color( i, rgb.r, rgb.g, rgb.b ); | ||||
| @ -1358,7 +1556,7 @@ void backlight_effect_cycle_all(void) | ||||
|     for ( int i=0; i<BACKLIGHT_LED_COUNT; i++ ) | ||||
|     { | ||||
|         uint16_t offset2 = g_key_hit[i]<<2; | ||||
| #if !defined(RGB_BACKLIGHT_HS60) && !defined(RGB_BACKLIGHT_NK65) | ||||
| #if !defined(RGB_BACKLIGHT_HS60) && !defined(RGB_BACKLIGHT_NK65) && !defined(RGB_BACKLIGHT_DAWN60) | ||||
|         // stabilizer LEDs use spacebar hits
 | ||||
|         if ( i == 36+6 || i == 54+13 || // LC6, LD13
 | ||||
|                 ( g_config.use_7u_spacebar && i == 54+14 ) ) // LD14
 | ||||
| @ -1383,7 +1581,7 @@ void backlight_effect_cycle_left_right(void) | ||||
|     for ( int i=0; i<BACKLIGHT_LED_COUNT; i++ ) | ||||
|     { | ||||
|         uint16_t offset2 = g_key_hit[i]<<2; | ||||
| #if !defined(RGB_BACKLIGHT_HS60) && !defined(RGB_BACKLIGHT_NK65) | ||||
| #if !defined(RGB_BACKLIGHT_HS60) && !defined(RGB_BACKLIGHT_NK65) && !defined(RGB_BACKLIGHT_DAWN60) | ||||
|         // stabilizer LEDs use spacebar hits
 | ||||
|         if ( i == 36+6 || i == 54+13 || // LC6, LD13
 | ||||
|                 ( g_config.use_7u_spacebar && i == 54+14 ) ) // LD14
 | ||||
| @ -1410,7 +1608,7 @@ void backlight_effect_cycle_up_down(void) | ||||
|     for ( int i=0; i<BACKLIGHT_LED_COUNT; i++ ) | ||||
|     { | ||||
|         uint16_t offset2 = g_key_hit[i]<<2; | ||||
| #if !defined(RGB_BACKLIGHT_HS60) && !defined(RGB_BACKLIGHT_NK65) | ||||
| #if !defined(RGB_BACKLIGHT_HS60) && !defined(RGB_BACKLIGHT_NK65) && !defined(RGB_BACKLIGHT_DAWN60) | ||||
|         // stabilizer LEDs use spacebar hits
 | ||||
|         if ( i == 36+6 || i == 54+13 || // LC6, LD13
 | ||||
|                 ( g_config.use_7u_spacebar && i == 54+14 ) ) // LD14
 | ||||
| @ -2152,6 +2350,10 @@ void backlight_init_drivers(void) | ||||
|                           ( index == 54+13 ) ||  // LD13
 | ||||
|                           ( index >= 72+0 && index <= 72+8 ) ||  // LE0-LE8
 | ||||
|                           ( index == 90+13 ) ); // LF13
 | ||||
| #elif defined(RGB_BACKLIGHT_DAWN60) | ||||
|         bool enabled = !( ( index == 15+7 && !g_config.use_split_backspace ) || //other backspace
 | ||||
|                           ( index == 47+13 && g_config.use_7u_spacebar ) ||     //LD13
 | ||||
|                           ( index == 47+15 && g_config.use_7u_spacebar ) );       //LD15
 | ||||
| #endif | ||||
|         // This only caches it for later
 | ||||
|         IS31FL3731_set_led_control_register( index, enabled, enabled, enabled ); | ||||
| @ -2420,3 +2622,4 @@ void backlight_debug_led( bool state ) | ||||
| } | ||||
| #endif // defined(RGB_DEBUGGING_ONLY)
 | ||||
| 
 | ||||
| 
 | ||||
|  | ||||
| @ -107,4 +107,3 @@ void backlight_color_2_sat_decrease(void); | ||||
| 
 | ||||
| void backlight_test_led( uint8_t index, bool red, bool green, bool blue ); | ||||
| void backlight_debug_led(bool state); | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										145
									
								
								keyboards/xelus/dawn60/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										145
									
								
								keyboards/xelus/dawn60/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,145 @@ | ||||
| /* Copyright 2017 Jason Williams (Wilba)
 | ||||
|  * | ||||
|  * 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       0x5845 // XE
 | ||||
| #define PRODUCT_ID      0x0060 // Dawn60
 | ||||
| #define DEVICE_VER      0x0001 | ||||
| #define MANUFACTURER    Xelus | ||||
| #define PRODUCT         Dawn60 | ||||
| #define DESCRIPTION     Dawn60 | ||||
| 
 | ||||
| // key matrix size
 | ||||
| #define MATRIX_ROWS 5 | ||||
| #define MATRIX_COLS 14 | ||||
| 
 | ||||
| //no underglow - prototype
 | ||||
| //#define MATRIX_ROW_PINS { B1, B3, B7, F6, F7 }
 | ||||
| //#define MATRIX_COL_PINS { B0, D5, B2, F5, D2, D3, D4, D6, D7, B4, B5, B6, C6, C7 }
 | ||||
| //#define UNUSED_PINS
 | ||||
| 
 | ||||
| //underglow
 | ||||
| #define MATRIX_ROW_PINS { B1, B3, F1, F6, F7 } | ||||
| #define MATRIX_COL_PINS { B0, D5, B2, F5, D3, D2, C7, C6, B6, B5, B4, D7, D6, D4 } | ||||
| #define UNUSED_PINS | ||||
| 
 | ||||
| // IS31FL3731 driver
 | ||||
| #define DRIVER_COUNT 2 | ||||
| #define DRIVER_LED_TOTAL 64 | ||||
| 
 | ||||
| // COL2ROW or ROW2COL
 | ||||
| #define DIODE_DIRECTION COL2ROW | ||||
| 
 | ||||
| // Set 0 if debouncing isn't needed
 | ||||
| #define DEBOUNCE 5 | ||||
| 
 | ||||
| // Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
 | ||||
| #define LOCKING_SUPPORT_ENABLE | ||||
| // Locking resynchronize hack
 | ||||
| #define LOCKING_RESYNC_ENABLE | ||||
| 
 | ||||
| /*
 | ||||
|  * Feature disable options | ||||
|  *  These options are also useful to firmware size reduction. | ||||
|  */ | ||||
| 
 | ||||
| // disable debug print
 | ||||
| //#define NO_DEBUG
 | ||||
| 
 | ||||
| // disable print
 | ||||
| //#define NO_PRINT
 | ||||
| 
 | ||||
| // disable action features
 | ||||
| //#define NO_ACTION_LAYER
 | ||||
| //#define NO_ACTION_TAPPING
 | ||||
| //#define NO_ACTION_ONESHOT
 | ||||
| //#define NO_ACTION_MACRO
 | ||||
| //#define NO_ACTION_FUNCTION
 | ||||
| 
 | ||||
| #define RGB_BACKLIGHT_ENABLED 1 | ||||
| 
 | ||||
| // This conditionally compiles the backlight code for Dawn60 specifics
 | ||||
| #define RGB_BACKLIGHT_DAWN60 | ||||
| 
 | ||||
| // enable/disable LEDs based on layout
 | ||||
| // switch between split backspace (1) or normal backspace(0)
 | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 1 | ||||
| // switch between Tsangan (1) or Arrows Bottom Row (0)
 | ||||
| #define RGB_BACKLIGHT_USE_7U_SPACEBAR 0 | ||||
| // switch between standard split rshift (0) or arrows r shift (1)
 | ||||
| // .------------------.           .-------------------.
 | ||||
| // | ? |  Shift  | Fn |    vs     |  Shift  | Up | Fn |
 | ||||
| // `------------------'           `-------------------'
 | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT 1 | ||||
| 
 | ||||
| //not used
 | ||||
| #define RGB_BACKLIGHT_USE_ISO_ENTER 0 | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_LEFT_SHIFT 0 | ||||
| #define RGB_BACKLIGHT_DISABLE_HHKB_BLOCKER_LEDS 0 | ||||
| 
 | ||||
| // disable backlight when USB suspended (PC sleep/hibernate/shutdown)
 | ||||
| #define RGB_BACKLIGHT_DISABLE_WHEN_USB_SUSPENDED 0 | ||||
| 
 | ||||
| // disable backlight after timeout in minutes, 0 = no timeout
 | ||||
| #define RGB_BACKLIGHT_DISABLE_AFTER_TIMEOUT 0 | ||||
| 
 | ||||
| // the default brightness
 | ||||
| #define RGB_BACKLIGHT_BRIGHTNESS 255 | ||||
| 
 | ||||
| // the default effect (RGB test)
 | ||||
| #define RGB_BACKLIGHT_EFFECT 255 | ||||
| 
 | ||||
| // the default effect speed (0-3)
 | ||||
| #define RGB_BACKLIGHT_EFFECT_SPEED 0 | ||||
| 
 | ||||
| // the default color1 and color2
 | ||||
| #define RGB_BACKLIGHT_COLOR_1 { .h = 0, .s = 255 } | ||||
| #define RGB_BACKLIGHT_COLOR_2 { .h = 127, .s = 255 } | ||||
| 
 | ||||
| //RGB Underglow defines
 | ||||
| #define RGB_DI_PIN F0 | ||||
| #define WS2812_LED_TOTAL 20 | ||||
| 
 | ||||
| #define RGB_UNDERGLOW_ALPHA_TOP_START 0 | ||||
| #define RGB_UNDERGLOW_ALPHA_TOP_END   6    | ||||
| #define RGB_UNDERGLOW_ALPHA_BOT_START 12 | ||||
| #define RGB_UNDERGLOW_ALPHA_BOT_END   15 | ||||
| 
 | ||||
| // These define which keys in the matrix are alphas/mods
 | ||||
| // Used for backlight effects so colors are different for
 | ||||
| // alphas vs. mods
 | ||||
| // Each value is for a row, bit 0 is column 0
 | ||||
| // Alpha=0 Mod=1
 | ||||
| #define RGB_BACKLIGHT_ALPHAS_MODS_ROW_0 0b0000000000000001 | ||||
| #define RGB_BACKLIGHT_ALPHAS_MODS_ROW_1 0b0010000000000001 | ||||
| #define RGB_BACKLIGHT_ALPHAS_MODS_ROW_2 0b0011000000000001 | ||||
| #define RGB_BACKLIGHT_ALPHAS_MODS_ROW_3 0b0011000000000001 | ||||
| #define RGB_BACKLIGHT_ALPHAS_MODS_ROW_4 0b0011111000011111 | ||||
| 
 | ||||
| #define RGB_BACKLIGHT_CAPS_LOCK_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 } | ||||
| #define RGB_BACKLIGHT_LAYER_1_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 } | ||||
| #define RGB_BACKLIGHT_LAYER_2_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 } | ||||
| #define RGB_BACKLIGHT_LAYER_3_INDICATOR { .color = { .h = 0, .s = 0 }, .index = 255 } | ||||
| 
 | ||||
| //RGB reactive only on keypress (put 1 to enable)
 | ||||
| #define RGB_REACTIVE_LEFT_RIGHT 0 | ||||
| #define RGB_REACTIVE_CYCLE_ALL 0 | ||||
| #define RGB_REACTIVE_VERTICAL 0 | ||||
| 
 | ||||
| #define DYNAMIC_KEYMAP_LAYER_COUNT 4 | ||||
							
								
								
									
										18
									
								
								keyboards/xelus/dawn60/dawn60.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								keyboards/xelus/dawn60/dawn60.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| /* Copyright 2017 Jason Williams (Wilba)
 | ||||
|  * | ||||
|  * 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/>.
 | ||||
|  */ | ||||
| #ifndef RGB_BACKLIGHT_DAWN60 | ||||
| #error RGB_BACKLIGHT_DAWN60 not defined, you done goofed somehao, brah | ||||
| #endif | ||||
							
								
								
									
										36
									
								
								keyboards/xelus/dawn60/dawn60.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								keyboards/xelus/dawn60/dawn60.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,36 @@ | ||||
| /* Copyright 2017 Jason Williams (Wilba)
 | ||||
|  * | ||||
|  * 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" | ||||
| #include "keyboards/wilba_tech/wt_rgb_backlight_keycodes.h" | ||||
| #include "via.h" | ||||
| 
 | ||||
| #define XXX KC_NO | ||||
| 
 | ||||
| #define LAYOUT_60_all( \ | ||||
|     K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, \ | ||||
|     K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \ | ||||
|     K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \ | ||||
|     K30, K31, K32, K33, K34, K35, K36, K37, K38, K39,      K3B, K3C, K3D, \ | ||||
|     K40, K41, K42,           K45,                K49, K4A, K4B, K4C, K4D  \ | ||||
| ) { \ | ||||
|     { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \ | ||||
|     { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \ | ||||
|     { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D }, \ | ||||
|     { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, XXX, K3B, K3C, K3D }, \ | ||||
|     { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D }  \ | ||||
| } | ||||
							
								
								
									
										17
									
								
								keyboards/xelus/dawn60/keymaps/default/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/xelus/dawn60/keymaps/default/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| #pragma once | ||||
| 
 | ||||
| /* enable/disable LEDs based on layout */ | ||||
| // switch between split backspace (1) or normal backspace(0)
 | ||||
| #undef RGB_BACKLIGHT_USE_SPLIT_BACKSPACE | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 0 | ||||
| 
 | ||||
| // switch between Tsangan (1) or Arrows Bottom Row (0)
 | ||||
| #undef RGB_BACKLIGHT_USE_7U_SPACEBAR | ||||
| #define RGB_BACKLIGHT_USE_7U_SPACEBAR 0 | ||||
| 
 | ||||
| // switch between standard split rshift (0) or arrows r shift (1)
 | ||||
| // .------------------.           .-------------------.
 | ||||
| // | ? |  Shift  | Fn |    vs     |  Shift  | Up | Fn |
 | ||||
| // `------------------'           `-------------------'
 | ||||
| #undef RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT 0 | ||||
							
								
								
									
										46
									
								
								keyboards/xelus/dawn60/keymaps/default/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								keyboards/xelus/dawn60/keymaps/default/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,46 @@ | ||||
| // Default layout for Dawn60
 | ||||
| #include QMK_KEYBOARD_H | ||||
| 
 | ||||
| //  RGB-specific keys:
 | ||||
| //  EF_INC, EF_DEC,   // next/previous backlight effect
 | ||||
| //  H1_INC, H1_DEC,   // Color 1 hue increase/decrease
 | ||||
| //  S1_INC, S1_DEC,   // Color 1 saturation increase/decrease
 | ||||
| //  H2_INC, H2_DEC,   // Color 2 hue increase/decrease
 | ||||
| //  S2_INC, S2_DEC,   // Color 2 saturation increase/decrease
 | ||||
| //  BR_INC, BR_DEC,   // backlight brightness increase/decrease
 | ||||
| 
 | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| // Default layer: Pressing caps-lock momentarily switches to Layer 1.
 | ||||
| // This is the default layer. Pressing an empty keycode on another layer will take you here.
 | ||||
|     [0] = LAYOUT_60_all( | ||||
|         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_BSLS, | ||||
|         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_BSPC, | ||||
|         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_ENT,  KC_DEL , | ||||
|         KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,           KC_SLSH, KC_UP,   MO(2), | ||||
|         KC_LCTL, KC_LGUI, KC_LALT,                   KC_SPC,                             KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT | ||||
|     ), | ||||
| 
 | ||||
|     [1] = LAYOUT_60_all( | ||||
|         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_PSCR, | ||||
|         KC_CAPS, KC_TRNS, KC_UP  , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, | ||||
|         KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_RSFT, KC_PGUP, KC_TRNS, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END  | ||||
|     ),      | ||||
| 
 | ||||
|     [2] = LAYOUT_60_all( | ||||
|         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, 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, 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, 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,          KC_TRNS, KC_TRNS, KC_TRNS, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||||
|     ), | ||||
| 
 | ||||
|     [3] = LAYOUT_60_all( | ||||
|         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, 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, 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, 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,          KC_TRNS, KC_TRNS, KC_TRNS, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||||
|     ) | ||||
| }; | ||||
							
								
								
									
										17
									
								
								keyboards/xelus/dawn60/keymaps/via/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/xelus/dawn60/keymaps/via/config.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| #pragma once | ||||
| 
 | ||||
| /* enable/disable LEDs based on layout */ | ||||
| // switch between split backspace (1) or normal backspace(0)
 | ||||
| #undef RGB_BACKLIGHT_USE_SPLIT_BACKSPACE | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_BACKSPACE 1 | ||||
| 
 | ||||
| // switch between Tsangan (1) or Arrows Bottom Row (0)
 | ||||
| #undef RGB_BACKLIGHT_USE_7U_SPACEBAR | ||||
| #define RGB_BACKLIGHT_USE_7U_SPACEBAR 0 | ||||
| 
 | ||||
| // switch between standard split rshift (0) or arrows r shift (1)
 | ||||
| // .------------------.           .-------------------.
 | ||||
| // | ? |  Shift  | Fn |    vs     |  Shift  | Up | Fn |
 | ||||
| // `------------------'           `-------------------'
 | ||||
| #undef RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT | ||||
| #define RGB_BACKLIGHT_USE_SPLIT_RIGHT_SHIFT 0 | ||||
							
								
								
									
										46
									
								
								keyboards/xelus/dawn60/keymaps/via/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								keyboards/xelus/dawn60/keymaps/via/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,46 @@ | ||||
| // Default layout for Dawn60
 | ||||
| #include QMK_KEYBOARD_H | ||||
| 
 | ||||
| //  RGB-specific keys:
 | ||||
| //  EF_INC, EF_DEC,   // next/previous backlight effect
 | ||||
| //  H1_INC, H1_DEC,   // Color 1 hue increase/decrease
 | ||||
| //  S1_INC, S1_DEC,   // Color 1 saturation increase/decrease
 | ||||
| //  H2_INC, H2_DEC,   // Color 2 hue increase/decrease
 | ||||
| //  S2_INC, S2_DEC,   // Color 2 saturation increase/decrease
 | ||||
| //  BR_INC, BR_DEC,   // backlight brightness increase/decrease
 | ||||
| 
 | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
| // Default layer: Pressing caps-lock momentarily switches to Layer 1.
 | ||||
| // This is the default layer. Pressing an empty keycode on another layer will take you here.
 | ||||
|     [0] = LAYOUT_60_all( | ||||
|         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_BSLS, | ||||
|         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_BSPC, | ||||
|         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_ENT,  KC_DEL , | ||||
|         KC_LSFT, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,           KC_SLSH, KC_UP,   MO(2), | ||||
|         KC_LCTL, KC_LGUI, KC_LALT,                   KC_SPC,                             KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT | ||||
|     ), | ||||
| 
 | ||||
|     [1] = LAYOUT_60_all( | ||||
|         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_PSCR, | ||||
|         KC_CAPS, KC_TRNS, KC_UP  , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, | ||||
|         KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,          KC_RSFT, KC_PGUP, KC_TRNS, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END  | ||||
|     ),      | ||||
| 
 | ||||
|     [2] = LAYOUT_60_all( | ||||
|         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, 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, 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, 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,          KC_TRNS, KC_TRNS, KC_TRNS, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||||
|     ), | ||||
| 
 | ||||
|     [3] = LAYOUT_60_all( | ||||
|         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, 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, 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, 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,          KC_TRNS, KC_TRNS, KC_TRNS, | ||||
|         KC_TRNS, KC_TRNS, KC_TRNS,                   KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||||
|     ) | ||||
| }; | ||||
							
								
								
									
										1
									
								
								keyboards/xelus/dawn60/keymaps/via/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								keyboards/xelus/dawn60/keymaps/via/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| VIA_ENABLE = yes | ||||
							
								
								
									
										13
									
								
								keyboards/xelus/dawn60/readme.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								keyboards/xelus/dawn60/readme.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,13 @@ | ||||
| # Dawn60 | ||||
| 
 | ||||
| An in-switch RGB LED keyboard with RGB underglow. | ||||
| 
 | ||||
| * Keyboard Maintainer: [Xelus22](https://github.com/Xelus22) | ||||
| * Hardware Supported: Dawn60 | ||||
| * Hardware Availability: [Keyboard Treehouse](https://keyboardtreehouse.com) | ||||
| 
 | ||||
| Make example for this keyboard (after setting up your build environment): | ||||
| 
 | ||||
|     make xelus/dawn60:default | ||||
| 
 | ||||
| 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). | ||||
							
								
								
									
										49
									
								
								keyboards/xelus/dawn60/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								keyboards/xelus/dawn60/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,49 @@ | ||||
| # MCU name
 | ||||
| MCU = atmega32u4 | ||||
| 
 | ||||
| # Bootloader selection
 | ||||
| #   Teensy       halfkay
 | ||||
| #   Pro Micro    caterina
 | ||||
| #   Atmel DFU    atmel-dfu
 | ||||
| #   LUFA DFU     lufa-dfu
 | ||||
| #   QMK DFU      qmk-dfu
 | ||||
| #   ATmega32A    bootloadHID
 | ||||
| #   ATmega328P   USBasp
 | ||||
| BOOTLOADER = atmel-dfu | ||||
| 
 | ||||
| # Do not put the microcontroller into power saving mode
 | ||||
| # when we get USB suspend event. We want it to keep updating
 | ||||
| # backlight effects.
 | ||||
| OPT_DEFS += -DNO_SUSPEND_POWER_DOWN | ||||
| 
 | ||||
| # Build Options
 | ||||
| #   change yes to no to disable
 | ||||
| #
 | ||||
| BOOTMAGIC_ENABLE = lite     # Virtual DIP switch configuration | ||||
| MOUSEKEY_ENABLE = no        # 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 = yes           # USB Nkey Rollover | ||||
| BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality on B7 by default | ||||
| MIDI_ENABLE = no            # MIDI support | ||||
| 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 | ||||
| RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight. - We have custom RGB underglow | ||||
| 
 | ||||
| CIE1931_CURVE = yes | ||||
| 
 | ||||
| 
 | ||||
| # project specific files
 | ||||
| SRC +=	keyboards/wilba_tech/wt_main.c \
 | ||||
| 		keyboards/wilba_tech/wt_rgb_backlight.c \
 | ||||
| 		quantum/color.c \
 | ||||
| 		drivers/issi/is31fl3731.c \
 | ||||
| 		ws2812.c | ||||
| 
 | ||||
| QUANTUM_LIB_SRC += i2c_master.c  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user