From 50491c44ca4651e6c1ba1fabefed96b633cd3cfa Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 29 Nov 2024 21:51:16 +0000 Subject: moky/moky88: Remove use of deprecated defines (#24656) --- keyboards/moky/moky88/config.h | 3 +- keyboards/moky/moky88/moky88.c | 176 ++++++++++++++++++++--------------------- 2 files changed, 89 insertions(+), 90 deletions(-) (limited to 'keyboards') diff --git a/keyboards/moky/moky88/config.h b/keyboards/moky/moky88/config.h index a673a38069..7c102e1a97 100644 --- a/keyboards/moky/moky88/config.h +++ b/keyboards/moky/moky88/config.h @@ -15,5 +15,4 @@ /* RGB Driver */ #define AW20216S_CS_PIN_1 D2 #define AW20216S_CS_PIN_2 B8 -#define AW20216S_EN_PIN_1 B9 -#define AW20216S_EN_PIN_2 B9 +#define AW20216S_EN_PIN B9 diff --git a/keyboards/moky/moky88/moky88.c b/keyboards/moky/moky88/moky88.c index 3cbd6e1468..2de672f94f 100644 --- a/keyboards/moky/moky88/moky88.c +++ b/keyboards/moky/moky88/moky88.c @@ -23,97 +23,97 @@ const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { * | | G location * | | | B location * | | | | */ - {0, CS18_SW2, CS17_SW2, CS16_SW2 }, // 0 Esc - {0, CS18_SW3, CS17_SW3, CS16_SW3 }, // 1 F1 - {0, CS18_SW4, CS17_SW4, CS16_SW4 }, // 2 F2 - {0, CS18_SW5, CS17_SW5, CS16_SW5 }, // 3 F3 - {0, CS18_SW6, CS17_SW6, CS16_SW6 }, // 4 F4 - {0, CS18_SW7, CS17_SW7, CS16_SW7 }, // 5 F5 - {0, CS18_SW8, CS17_SW8, CS16_SW8 }, // 6 F6 - {0, CS18_SW9, CS17_SW9, CS16_SW9 }, // 7 F7 - {0, CS18_SW10, CS17_SW10, CS16_SW10 }, // 8 F8 - {0, CS18_SW11, CS17_SW11, CS16_SW11 }, // 9 F9 - {0, CS18_SW12, CS17_SW12, CS16_SW12 }, // 10 F10 - {1, CS18_SW1, CS17_SW1, CS16_SW1 }, // 11 F11 - {1, CS18_SW2, CS17_SW2, CS16_SW2 }, // 12 F12 - {1, CS18_SW3, CS17_SW3, CS16_SW3 }, // 13 MUTE - {1, CS18_SW4, CS17_SW4, CS16_SW4 }, // 14 PSCR - {1, CS18_SW5, CS17_SW5, CS16_SW5 }, // 15 SCRL - {1, CS18_SW6, CS17_SW6, CS16_SW6 }, // 16 PAUSE + {0, SW2_CS18, SW2_CS17, SW2_CS16 }, // 0 Esc + {0, SW3_CS18, SW3_CS17, SW3_CS16 }, // 1 F1 + {0, SW4_CS18, SW4_CS17, SW4_CS16 }, // 2 F2 + {0, SW5_CS18, SW5_CS17, SW5_CS16 }, // 3 F3 + {0, SW6_CS18, SW6_CS17, SW6_CS16 }, // 4 F4 + {0, SW7_CS18, SW7_CS17, SW7_CS16 }, // 5 F5 + {0, SW8_CS18, SW8_CS17, SW8_CS16 }, // 6 F6 + {0, SW9_CS18, SW9_CS17, SW9_CS16 }, // 7 F7 + {0, SW10_CS18, SW10_CS17, SW10_CS16 }, // 8 F8 + {0, SW11_CS18, SW11_CS17, SW11_CS16 }, // 9 F9 + {0, SW12_CS18, SW12_CS17, SW12_CS16 }, // 10 F10 + {1, SW1_CS18, SW1_CS17, SW1_CS16 }, // 11 F11 + {1, SW2_CS18, SW2_CS17, SW2_CS16 }, // 12 F12 + {1, SW3_CS18, SW3_CS17, SW3_CS16 }, // 13 MUTE + {1, SW4_CS18, SW4_CS17, SW4_CS16 }, // 14 PSCR + {1, SW5_CS18, SW5_CS17, SW5_CS16 }, // 15 SCRL + {1, SW6_CS18, SW6_CS17, SW6_CS16 }, // 16 PAUSE - {0, CS15_SW2, CS14_SW2, CS13_SW2 }, // 17 `~ - {0, CS15_SW3, CS14_SW3, CS13_SW3 }, // 18 1 - {0, CS15_SW4, CS14_SW4, CS13_SW4 }, // 19 2 - {0, CS15_SW5, CS14_SW5, CS13_SW5 }, // 20 3 - {0, CS15_SW6, CS14_SW6, CS13_SW6 }, // 21 4 - {0, CS15_SW7, CS14_SW7, CS13_SW7 }, // 22 5 - {0, CS15_SW8, CS14_SW8, CS13_SW8 }, // 23 6 - {0, CS15_SW9, CS14_SW9, CS13_SW9 }, // 24 7 - {0, CS15_SW10, CS14_SW10, CS13_SW10 }, // 25 8 - {0, CS15_SW11, CS14_SW11, CS13_SW11 }, // 26 9 - {0, CS15_SW12, CS14_SW12, CS13_SW12 }, // 27 0 - {1, CS15_SW1, CS14_SW1, CS13_SW1 }, // 28 -_ - {1, CS15_SW2, CS14_SW2, CS13_SW2 }, // 29 =+ - {1, CS15_SW3, CS14_SW3, CS13_SW3 }, // 30 BSPC - {1, CS15_SW4, CS14_SW4, CS13_SW4 }, // 31 INS - {1, CS15_SW5, CS14_SW5, CS13_SW5 }, // 32 HOME - {1, CS15_SW6, CS14_SW6, CS13_SW6 }, // 33 PGUP + {0, SW2_CS15, SW2_CS14, SW2_CS13 }, // 17 `~ + {0, SW3_CS15, SW3_CS14, SW3_CS13 }, // 18 1 + {0, SW4_CS15, SW4_CS14, SW4_CS13 }, // 19 2 + {0, SW5_CS15, SW5_CS14, SW5_CS13 }, // 20 3 + {0, SW6_CS15, SW6_CS14, SW6_CS13 }, // 21 4 + {0, SW7_CS15, SW7_CS14, SW7_CS13 }, // 22 5 + {0, SW8_CS15, SW8_CS14, SW8_CS13 }, // 23 6 + {0, SW9_CS15, SW9_CS14, SW9_CS13 }, // 24 7 + {0, SW10_CS15, SW10_CS14, SW10_CS13 }, // 25 8 + {0, SW11_CS15, SW11_CS14, SW11_CS13 }, // 26 9 + {0, SW12_CS15, SW12_CS14, SW12_CS13 }, // 27 0 + {1, SW1_CS15, SW1_CS14, SW1_CS13 }, // 28 -_ + {1, SW2_CS15, SW2_CS14, SW2_CS13 }, // 29 =+ + {1, SW3_CS15, SW3_CS14, SW3_CS13 }, // 30 BSPC + {1, SW4_CS15, SW4_CS14, SW4_CS13 }, // 31 INS + {1, SW5_CS15, SW5_CS14, SW5_CS13 }, // 32 HOME + {1, SW6_CS15, SW6_CS14, SW6_CS13 }, // 33 PGUP - {0, CS12_SW2, CS11_SW2, CS10_SW2 }, // 34 Tab - {0, CS12_SW3, CS11_SW3, CS10_SW3 }, // 35 Q - {0, CS12_SW4, CS11_SW4, CS10_SW4 }, // 36 W - {0, CS12_SW5, CS11_SW5, CS10_SW5 }, // 37 E - {0, CS12_SW6, CS11_SW6, CS10_SW6 }, // 38 R - {0, CS12_SW7, CS11_SW7, CS10_SW7 }, // 39 T - {0, CS12_SW8, CS11_SW8, CS10_SW8 }, // 40 Y - {0, CS12_SW9, CS11_SW9, CS10_SW9 }, // 41 U - {0, CS12_SW10, CS11_SW10, CS10_SW10 }, // 42 I - {0, CS12_SW11, CS11_SW11, CS10_SW11 }, // 43 O - {0, CS12_SW12, CS11_SW12, CS10_SW12 }, // 44 P - {1, CS12_SW1, CS11_SW1, CS10_SW1 }, // 45 [{ - {1, CS12_SW2, CS11_SW2, CS10_SW2 }, // 48 ]} - {1, CS12_SW3, CS11_SW3, CS10_SW3 }, // 47 \| - {1, CS12_SW4, CS11_SW4, CS10_SW4 }, // 48 Del - {1, CS12_SW5, CS11_SW5, CS10_SW5 }, // 49 End - {1, CS12_SW6, CS11_SW6, CS10_SW6 }, // 50 PGDN + {0, SW2_CS12, SW2_CS11, SW2_CS10 }, // 34 Tab + {0, SW3_CS12, SW3_CS11, SW3_CS10 }, // 35 Q + {0, SW4_CS12, SW4_CS11, SW4_CS10 }, // 36 W + {0, SW5_CS12, SW5_CS11, SW5_CS10 }, // 37 E + {0, SW6_CS12, SW6_CS11, SW6_CS10 }, // 38 R + {0, SW7_CS12, SW7_CS11, SW7_CS10 }, // 39 T + {0, SW8_CS12, SW8_CS11, SW8_CS10 }, // 40 Y + {0, SW9_CS12, SW9_CS11, SW9_CS10 }, // 41 U + {0, SW10_CS12, SW10_CS11, SW10_CS10 }, // 42 I + {0, SW11_CS12, SW11_CS11, SW11_CS10 }, // 43 O + {0, SW12_CS12, SW12_CS11, SW12_CS10 }, // 44 P + {1, SW1_CS12, SW1_CS11, SW1_CS10 }, // 45 [{ + {1, SW2_CS12, SW2_CS11, SW2_CS10 }, // 48 ]} + {1, SW3_CS12, SW3_CS11, SW3_CS10 }, // 47 \| + {1, SW4_CS12, SW4_CS11, SW4_CS10 }, // 48 Del + {1, SW5_CS12, SW5_CS11, SW5_CS10 }, // 49 End + {1, SW6_CS12, SW6_CS11, SW6_CS10 }, // 50 PGDN - {0, CS1_SW2, CS2_SW2, CS3_SW2 }, // 51 Caps - {0, CS1_SW3, CS2_SW3, CS3_SW3 }, // 52 A - {0, CS1_SW4, CS2_SW4, CS3_SW4 }, // 33 S - {0, CS1_SW5, CS2_SW5, CS3_SW5 }, // 54 D - {0, CS1_SW6, CS2_SW6, CS3_SW6 }, // 55 F - {0, CS1_SW7, CS2_SW7, CS3_SW7 }, // 56 G - {0, CS1_SW8, CS2_SW8, CS3_SW8 }, // 57 H - {0, CS1_SW9, CS2_SW9, CS3_SW9 }, // 58 J - {0, CS1_SW10, CS2_SW10, CS3_SW10 }, // 59 K - {0, CS1_SW11, CS2_SW11, CS3_SW11 }, // 60 L - {0, CS1_SW12, CS2_SW12, CS3_SW12 }, // 61 ;: - {1, CS1_SW1, CS2_SW1, CS3_SW1 }, // 62 ' - {1, CS1_SW3, CS2_SW3, CS3_SW3 }, // 63 Enter + {0, SW2_CS1, SW2_CS2, SW2_CS3 }, // 51 Caps + {0, SW3_CS1, SW3_CS2, SW3_CS3 }, // 52 A + {0, SW4_CS1, SW4_CS2, SW4_CS3 }, // 33 S + {0, SW5_CS1, SW5_CS2, SW5_CS3 }, // 54 D + {0, SW6_CS1, SW6_CS2, SW6_CS3 }, // 55 F + {0, SW7_CS1, SW7_CS2, SW7_CS3 }, // 56 G + {0, SW8_CS1, SW8_CS2, SW8_CS3 }, // 57 H + {0, SW9_CS1, SW9_CS2, SW9_CS3 }, // 58 J + {0, SW10_CS1, SW10_CS2, SW10_CS3 }, // 59 K + {0, SW11_CS1, SW11_CS2, SW11_CS3 }, // 60 L + {0, SW12_CS1, SW12_CS2, SW12_CS3 }, // 61 ;: + {1, SW1_CS1, SW1_CS2, SW1_CS3 }, // 62 ' + {1, SW3_CS1, SW3_CS2, SW3_CS3 }, // 63 Enter - {0, CS4_SW2, CS5_SW2, CS6_SW2 }, // 64 Shift - {0, CS4_SW4, CS5_SW4, CS6_SW4 }, // 65 Z - {0, CS4_SW5, CS5_SW5, CS6_SW5 }, // 66 X - {0, CS4_SW6, CS5_SW6, CS6_SW6 }, // 67 C - {0, CS4_SW7, CS5_SW7, CS6_SW7 }, // 68 V - {0, CS4_SW8, CS5_SW8, CS6_SW8 }, // 69 B - {0, CS4_SW9, CS5_SW9, CS6_SW9 }, // 70 N - {0, CS4_SW10, CS5_SW10, CS6_SW10 }, // 71 M - {0, CS4_SW11, CS5_SW11, CS6_SW11 }, // 72 ,< - {0, CS4_SW12, CS5_SW12, CS6_SW12 }, // 73 .> - {1, CS4_SW1, CS5_SW1, CS6_SW1 }, // 74 ? - {1, CS4_SW3, CS5_SW3, CS6_SW3 }, // 75 Shift - {1, CS4_SW5, CS5_SW5, CS6_SW5 }, // 76 Up + {0, SW2_CS4, SW2_CS5, SW2_CS6 }, // 64 Shift + {0, SW4_CS4, SW4_CS5, SW4_CS6 }, // 65 Z + {0, SW5_CS4, SW5_CS5, SW5_CS6 }, // 66 X + {0, SW6_CS4, SW6_CS5, SW6_CS6 }, // 67 C + {0, SW7_CS4, SW7_CS5, SW7_CS6 }, // 68 V + {0, SW8_CS4, SW8_CS5, SW8_CS6 }, // 69 B + {0, SW9_CS4, SW9_CS5, SW9_CS6 }, // 70 N + {0, SW10_CS4, SW10_CS5, SW10_CS6 }, // 71 M + {0, SW11_CS4, SW11_CS5, SW11_CS6 }, // 72 ,< + {0, SW12_CS4, SW12_CS5, SW12_CS6 }, // 73 .> + {1, SW1_CS4, SW1_CS5, SW1_CS6 }, // 74 ? + {1, SW3_CS4, SW3_CS5, SW3_CS6 }, // 75 Shift + {1, SW5_CS4, SW5_CS5, SW5_CS6 }, // 76 Up - {0, CS7_SW2, CS8_SW2, CS9_SW2 }, // 77 Ctrl_L - {0, CS7_SW3, CS8_SW3, CS9_SW3 }, // 78 Win_L - {0, CS7_SW4, CS8_SW4, CS9_SW4 }, // 79 ALT_L - {0, CS7_SW8, CS8_SW8, CS9_SW8 }, // 80 SPACE - {0, CS7_SW12, CS8_SW12, CS9_SW12 }, // 81 ALT_L - {1, CS7_SW1, CS8_SW1, CS9_SW1 }, // 82 Win_L - {1, CS7_SW2, CS8_SW2, CS9_SW2 }, // 83 Fn - {1, CS7_SW3, CS8_SW3, CS9_SW3 }, // 84 Ctrl_L - {1, CS7_SW4, CS8_SW4, CS9_SW4 }, // 85 Left - {1, CS7_SW5, CS8_SW5, CS9_SW5 }, // 86 Down - {1, CS7_SW6, CS8_SW6, CS9_SW6 }, // 87 Right + {0, SW2_CS7, SW2_CS8, SW2_CS9 }, // 77 Ctrl_L + {0, SW3_CS7, SW3_CS8, SW3_CS9 }, // 78 Win_L + {0, SW4_CS7, SW4_CS8, SW4_CS9 }, // 79 ALT_L + {0, SW8_CS7, SW8_CS8, SW8_CS9 }, // 80 SPACE + {0, SW12_CS7, SW12_CS8, SW12_CS9 }, // 81 ALT_L + {1, SW1_CS7, SW1_CS8, SW1_CS9 }, // 82 Win_L + {1, SW2_CS7, SW2_CS8, SW2_CS9 }, // 83 Fn + {1, SW3_CS7, SW3_CS8, SW3_CS9 }, // 84 Ctrl_L + {1, SW4_CS7, SW4_CS8, SW4_CS9 }, // 85 Left + {1, SW5_CS7, SW5_CS8, SW5_CS9 }, // 86 Down + {1, SW6_CS7, SW6_CS8, SW6_CS9 }, // 87 Right }; -- cgit v1.2.3 From 68f67e23aaab1585ea1190425f75e31179826eae Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 8 Dec 2024 14:35:12 +0000 Subject: skyloong/gk61: Remove overriding of core keycode behaviour (#24655) --- keyboards/skyloong/gk61/pro/config.h | 3 - keyboards/skyloong/gk61/pro/pro.c | 149 ++++++-------------------------- keyboards/skyloong/gk61/pro_48/config.h | 4 - keyboards/skyloong/gk61/pro_48/pro_48.c | 93 +------------------- 4 files changed, 32 insertions(+), 217 deletions(-) (limited to 'keyboards') diff --git a/keyboards/skyloong/gk61/pro/config.h b/keyboards/skyloong/gk61/pro/config.h index db02496f8b..aeea36e0bc 100644 --- a/keyboards/skyloong/gk61/pro/config.h +++ b/keyboards/skyloong/gk61/pro/config.h @@ -7,6 +7,3 @@ #define IS31FL3743A_SDB_PIN C1 #define CAPS_LOCK_INDEX 28 -#define WIN_MOD_INDEX 16 -#define MAC_MOD_INDEX 17 -#define WIN_LOCK_INDEX 54 diff --git a/keyboards/skyloong/gk61/pro/pro.c b/keyboards/skyloong/gk61/pro/pro.c index 2299977e0e..11411ba2b1 100644 --- a/keyboards/skyloong/gk61/pro/pro.c +++ b/keyboards/skyloong/gk61/pro/pro.c @@ -1,11 +1,8 @@ // Copyright 2023 linlin012 (@linlin012) // SPDX-License-Identifier: GPL-2.0-or-later #include "quantum.h" -int FN_WIN = 0; -int FN_MAC = 0; -int L_WIN = 0; -int L_MAC = 0; +#if defined(RGB_MATRIX_ENABLE) const is31fl3743a_led_t PROGMEM g_is31fl3743a_leds[IS31FL3743A_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver @@ -83,7 +80,32 @@ const is31fl3743a_led_t PROGMEM g_is31fl3743a_leds[IS31FL3743A_LED_COUNT] = { {0, SW10_CS13, SW10_CS14, SW10_CS15} }; -#if defined(RGB_MATRIX_ENABLE) /*&& defined(CAPS_LOCK_INDEX)*/ +bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { + if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) { + return false; + } + + if (host_keyboard_led_state().caps_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 255, 255, 255); + } else { + if (!rgb_matrix_get_flags()) { + RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 0, 0, 0); + } + } + + return false; +} + +void suspend_power_down_kb(void) { + gpio_write_pin_low(IS31FL3743A_SDB_PIN); + suspend_power_down_user(); +} + +void suspend_wakeup_init_kb(void) { + gpio_write_pin_high(IS31FL3743A_SDB_PIN); + suspend_wakeup_init_user(); +} +#endif bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if (!process_record_user(keycode, record)) { @@ -105,124 +127,9 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { } return false; # endif - case TO(0): - if (record->event.pressed) { - L_WIN = 1; - set_single_persistent_default_layer(0); // Save default layer 0 to eeprom - } else { - L_WIN = 0; - } - return true; // continue all further processing of this key - - case MO(2): - if (record->event.pressed) { - FN_WIN = 1; - } else { - FN_WIN = 0; - } - return true; // continue all further processing of this key - - case TO(1): - if (record->event.pressed) { - L_MAC = 1; - set_single_persistent_default_layer(1); //Save default layer 1 to eeprom - } else { - L_MAC = 0; - } - return true; // continue all further processing of this key - - case MO(3): - if (record->event.pressed) { - FN_MAC = 1; - } else { - FN_MAC = 0; - } - return true; // continue all further processing of this key - default: - return true; - } - -} - -bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { - if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) { - return false; - } - - if (host_keyboard_led_state().caps_lock) { - RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 255, 255, 255); - } else { - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_INDEX, 0, 0, 0); - } - } - - switch (get_highest_layer(layer_state)) { - case 0:{ - if (L_WIN) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - }else{ - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - } - } - } break; - - case 1:{ - if (L_MAC) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - } - }else{ - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - } - } break; - - - case 2:{ - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - } break; - - case 3:{ - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - } - } break; - - default:{ - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - } } - return false; -} - -#endif -void suspend_power_down_kb() { -# ifdef RGB_MATRIX_ENABLE - gpio_write_pin_low(IS31FL3743A_SDB_PIN); -# endif - suspend_power_down_user(); -} - -void suspend_wakeup_init_kb() { -# ifdef RGB_MATRIX_ENABLE - gpio_write_pin_high(IS31FL3743A_SDB_PIN); -# endif - suspend_wakeup_init_user(); + return true; } void board_init(void) { diff --git a/keyboards/skyloong/gk61/pro_48/config.h b/keyboards/skyloong/gk61/pro_48/config.h index 5b4976e2da..7e45ac8354 100644 --- a/keyboards/skyloong/gk61/pro_48/config.h +++ b/keyboards/skyloong/gk61/pro_48/config.h @@ -7,7 +7,3 @@ #define IS31FL3743A_SDB_PIN A4 #define CAPS_LOCK_INDEX 28 -#define WIN_MOD_INDEX 16 -#define MAC_MOD_INDEX 17 - -#define g_suspend_state rgb_matrix_get_suspend_state() diff --git a/keyboards/skyloong/gk61/pro_48/pro_48.c b/keyboards/skyloong/gk61/pro_48/pro_48.c index 6da76a1767..11411ba2b1 100644 --- a/keyboards/skyloong/gk61/pro_48/pro_48.c +++ b/keyboards/skyloong/gk61/pro_48/pro_48.c @@ -1,12 +1,8 @@ // Copyright 2023 linlin012 (@linlin012) // SPDX-License-Identifier: GPL-2.0-or-later #include "quantum.h" -_Bool FN_WIN = 0; -_Bool FN_MAC = 0; -_Bool L_WIN = 0; -_Bool L_MAC = 0; -#if defined(RGB_MATRIX_ENABLE) /*&& defined(CAPS_LOCK_INDEX)*/ +#if defined(RGB_MATRIX_ENABLE) const is31fl3743a_led_t PROGMEM g_is31fl3743a_leds[IS31FL3743A_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver @@ -97,57 +93,9 @@ bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { } } - switch (get_highest_layer(layer_state)) { - case 2:{ - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - } break; - case 3:{ - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - } - } break; - - case 0:{ - if (L_WIN) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - }else{ - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - } - } - } break; - - case 1:{ - if (L_MAC) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 255, 255, 255); - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - } - }else{ - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - } - } break; - - default:{ - if (!rgb_matrix_get_flags()) { - RGB_MATRIX_INDICATOR_SET_COLOR(WIN_MOD_INDEX, 0, 0, 0); - RGB_MATRIX_INDICATOR_SET_COLOR(MAC_MOD_INDEX, 0, 0, 0); - } - } - } return false; } - void suspend_power_down_kb(void) { gpio_write_pin_low(IS31FL3743A_SDB_PIN); suspend_power_down_user(); @@ -177,44 +125,11 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { } break; } } - return false; + return false; # endif - case TO(0): - if (record->event.pressed) { - L_WIN = 1; - set_single_persistent_default_layer(0); // Save default layer 0 to eeprom - } else { - L_WIN = 0; - } - return true; // continue all further processing of this key - - case MO(2): - if (record->event.pressed) { - FN_WIN = 1; - } else { - FN_WIN = 0; - } - return true; // continue all further processing of this key - - case TO(1): - if (record->event.pressed) { - L_MAC = 1; - set_single_persistent_default_layer(1); //Save default layer 1 to eeprom - } else { - L_MAC = 0; - } - return true; // continue all further processing of this key - - case MO(3): - if (record->event.pressed) { - FN_MAC = 1; - } else { - FN_MAC = 0; - } - return true; // continue all further processing of this key - default: - return true; } + + return true; } void board_init(void) { -- cgit v1.2.3 From 32ea7025fbae47fb824419aaba74f95880f34d57 Mon Sep 17 00:00:00 2001 From: Feags Date: Sun, 22 Dec 2024 13:58:57 -0600 Subject: [Keyboard] Promenade fixes (#24705) (Missing keys in matrix, other minor changes to keymap) Co-authored-by: Joel Challis Co-authored-by: jack <0x6a73@protonmail.com> --- keyboards/kradoindustries/promenade/keyboard.json | 10 ++++++---- .../promenade/keymaps/default/keymap.c | 20 ++++++++++---------- .../kradoindustries/promenade/matrix_diagram.md | 8 ++++---- 3 files changed, 20 insertions(+), 18 deletions(-) (limited to 'keyboards') diff --git a/keyboards/kradoindustries/promenade/keyboard.json b/keyboards/kradoindustries/promenade/keyboard.json index 86330dbc2e..028ba1b24d 100644 --- a/keyboards/kradoindustries/promenade/keyboard.json +++ b/keyboards/kradoindustries/promenade/keyboard.json @@ -73,8 +73,8 @@ {"matrix": [1, 3], "x":3.5, "y":1}, {"matrix": [1, 4], "x":4.5, "y":1}, {"matrix": [1, 5], "x":5.5, "y":1}, - {"matrix": [1, 6], "x":6.5, "y":1, "h":1.5}, - {"matrix": [1, 7], "x":7.5, "y":1, "h":1.5}, + {"matrix": [1, 6], "x":6.5, "y":1}, + {"matrix": [1, 7], "x":7.5, "y":1}, {"matrix": [1, 8], "x":8.5, "y":1}, {"matrix": [1, 9], "x":9.5, "y":1}, {"matrix": [1, 10], "x":10.5, "y":1}, @@ -88,6 +88,8 @@ {"matrix": [2, 3], "x":3.5, "y":2}, {"matrix": [2, 4], "x":4.5, "y":2}, {"matrix": [2, 5], "x":5.5, "y":2}, + {"matrix": [2, 6], "x":6.5, "y":2}, + {"matrix": [2, 7], "x":7.5, "y":2}, {"matrix": [2, 8], "x":8.5, "y":2}, {"matrix": [2, 9], "x":9.5, "y":2}, {"matrix": [2, 10], "x":10.5, "y":2}, @@ -101,8 +103,8 @@ {"matrix": [3, 3], "x":3.5, "y":3}, {"matrix": [3, 4], "x":4.5, "y":3}, {"matrix": [3, 5], "x":5.5, "y":3}, - {"matrix": [3, 6], "x":6.5, "y":2.5, "h":1.5}, - {"matrix": [3, 7], "x":7.5, "y":2.5, "h":1.5}, + {"matrix": [3, 6], "x":6.5, "y":3}, + {"matrix": [3, 7], "x":7.5, "y":3}, {"matrix": [3, 8], "x":8.5, "y":3}, {"matrix": [3, 9], "x":9.5, "y":3}, {"matrix": [3, 10], "x":10.5, "y":3}, diff --git a/keyboards/kradoindustries/promenade/keymaps/default/keymap.c b/keyboards/kradoindustries/promenade/keymaps/default/keymap.c index aef0f28161..be8401e608 100644 --- a/keyboards/kradoindustries/promenade/keymaps/default/keymap.c +++ b/keyboards/kradoindustries/promenade/keymaps/default/keymap.c @@ -26,19 +26,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .-----------------------------------------------------------------------------------------------------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | - | = | 6 | 7 | 8 | 9 | 0 | BACKSP | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| - * | TAB | Q | W | E | R | T | [ | ] | Y | U | I | O | P | ' | + * | TAB | Q | W | E | R | T | [ | ] | Y | U | I | O | P | \ | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | CAP LK | A | S | D | F | G | | | H | J | K | L | ; | ENTER | + * | CAP LK | A | S | D | F | G | HOME | PG UP | H | J | K | L | ; | ENTER | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | LSHIFT | Z | X | C | V | B | END | PG DN | N | M | , | . | / | RSHIFT | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| - * | LCTRL | LGUI | FN | LALT | SPACE | SPACE | SPACE | SPACE | SPACE | LEFT | DOWN | UP | RIGHT | RCTRL | + * | LCTRL | LGUI | LALT | FN | SPACE | SPACE | SPACE | SPACE | LEFT | DOWN | UP | RIGHT | RCTRL | * '-----------------------------------------------------------------------------------------------------------------------------' */ [_BASE] = LAYOUT_all( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_QUOT, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_END, KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_LCTL, KC_LGUI, KC_LALT, MO(_FN), KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_RCTL ), @@ -47,20 +47,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .-----------------------------------------------------------------------------------------------------------------------------. * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DEL | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| - * | | Home | Up | End | PgUp | | | | | | | | PRT SC | | + * | | HOME | UP | END | PG UP | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | Left | Down | Right | PgDn | | | | | | | | | Reset | + * | | LEFT | DOWN | RIGHT | PG DN | | | | | | | | ' | RGB Off| * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| - * | | | | | | | | | | | | | | Reset | + * | | | | | | ENTER | ENTER | BACKSP | | | | | Reset | * '-----------------------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_all( KC_GRV, 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_DEL, _______, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, _______, _______, _______, _______, QK_BOOT, + _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, KC_QUOT, UG_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT + _______, _______, _______, _______, _______, KC_ENT, KC_ENT, KC_BSPC, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/kradoindustries/promenade/matrix_diagram.md b/keyboards/kradoindustries/promenade/matrix_diagram.md index 086471b8b9..3c205c9a99 100644 --- a/keyboards/kradoindustries/promenade/matrix_diagram.md +++ b/keyboards/kradoindustries/promenade/matrix_diagram.md @@ -5,10 +5,10 @@ │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │ ├─────┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼─────┤ │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ -├─────┼───┼───┼───┼───┼───┤ │ ├───┼───┼───┼───┼───┼─────┤ -│20 │21 │22 │23 │24 │25 ├───┼───┤28 │29 │2A │2B │2C │2D │ -├─────┼───┼───┼───┼───┼───┤36 │37 ├───┼───┼───┼───┼───┼─────┤ -│30 │31 │32 │33 │34 │35 │ │ │38 │39 │3A │3B │3C │3D │ +├─────┼───┼───┼───┼───┼───├───┼───┼───┼───┼───┼───┼───┼─────┤ +│20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │ +├─────┼───┼───┼───┼───┼───├───┼───┼───┼───┼───┼───┼───┼─────┤ +│30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │ ├─────┼───┼───┼───┼───┼───┼───┴───┼───┼───┼───┼───┼───┼─────┤ │40 │41 │42 │43 │44 │45 │46 │48 │49 │4A │4B │4C │4D │ └─────┴───┴───┴───┴───┴───┴───────┴───┴───┴───┴───┴───┴─────┘ -- cgit v1.2.3 From b4ece24c7dfa741ddef70a92166cd21930df55fd Mon Sep 17 00:00:00 2001 From: Less/Rikki Date: Sun, 22 Dec 2024 16:03:03 -0500 Subject: move ymdk/id75 to revision (#24590) --- data/mappings/keyboard_aliases.hjson | 3 + keyboards/ymdk/id75/board.h | 22 --- keyboards/ymdk/id75/config.h | 23 --- keyboards/ymdk/id75/f103/board.h | 22 +++ keyboards/ymdk/id75/f103/config.h | 23 +++ keyboards/ymdk/id75/f103/halconf.h | 21 +++ keyboards/ymdk/id75/f103/keyboard.json | 13 ++ keyboards/ymdk/id75/f103/mcuconf.h | 25 ++++ keyboards/ymdk/id75/f103/rules.mk | 5 + keyboards/ymdk/id75/halconf.h | 21 --- keyboards/ymdk/id75/info.json | 240 +++++++++++++++++++++++++++++++ keyboards/ymdk/id75/keyboard.json | 251 --------------------------------- keyboards/ymdk/id75/mcuconf.h | 25 ---- keyboards/ymdk/id75/readme.md | 12 +- keyboards/ymdk/id75/rules.mk | 5 - 15 files changed, 359 insertions(+), 352 deletions(-) delete mode 100644 keyboards/ymdk/id75/board.h delete mode 100644 keyboards/ymdk/id75/config.h create mode 100644 keyboards/ymdk/id75/f103/board.h create mode 100644 keyboards/ymdk/id75/f103/config.h create mode 100644 keyboards/ymdk/id75/f103/halconf.h create mode 100644 keyboards/ymdk/id75/f103/keyboard.json create mode 100644 keyboards/ymdk/id75/f103/mcuconf.h create mode 100644 keyboards/ymdk/id75/f103/rules.mk delete mode 100644 keyboards/ymdk/id75/halconf.h create mode 100644 keyboards/ymdk/id75/info.json delete mode 100644 keyboards/ymdk/id75/keyboard.json delete mode 100644 keyboards/ymdk/id75/mcuconf.h delete mode 100644 keyboards/ymdk/id75/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 72f6994c09..098c299e58 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1515,6 +1515,9 @@ "ymd96": { "target": "ymdk/ymd96" }, + "ymdk/id75": { + "target": "ymdk/id75/f103" + }, "ymdk_np21": { "target": "ymdk/np21" }, diff --git a/keyboards/ymdk/id75/board.h b/keyboards/ymdk/id75/board.h deleted file mode 100644 index 49270b36a0..0000000000 --- a/keyboards/ymdk/id75/board.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2022 JasonRen(biu) - * - * 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 . - */ - -#pragma once - -#include_next - -#undef STM32_HSECLK -#define STM32_HSECLK 16000000 diff --git a/keyboards/ymdk/id75/config.h b/keyboards/ymdk/id75/config.h deleted file mode 100644 index cb5ac78304..0000000000 --- a/keyboards/ymdk/id75/config.h +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2021 MT - * - * 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 . - */ - -#pragma once - -#define WS2812_PWM_DRIVER PWMD4 -#define WS2812_PWM_CHANNEL 4 -#define WS2812_PWM_PAL_MODE 2 -#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM7 -#define WS2812_PWM_DMA_CHANNEL 7 diff --git a/keyboards/ymdk/id75/f103/board.h b/keyboards/ymdk/id75/f103/board.h new file mode 100644 index 0000000000..49270b36a0 --- /dev/null +++ b/keyboards/ymdk/id75/f103/board.h @@ -0,0 +1,22 @@ +/* Copyright 2022 JasonRen(biu) + * + * 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 . + */ + +#pragma once + +#include_next + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000 diff --git a/keyboards/ymdk/id75/f103/config.h b/keyboards/ymdk/id75/f103/config.h new file mode 100644 index 0000000000..cb5ac78304 --- /dev/null +++ b/keyboards/ymdk/id75/f103/config.h @@ -0,0 +1,23 @@ +/* Copyright 2021 MT + * + * 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 . + */ + +#pragma once + +#define WS2812_PWM_DRIVER PWMD4 +#define WS2812_PWM_CHANNEL 4 +#define WS2812_PWM_PAL_MODE 2 +#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM7 +#define WS2812_PWM_DMA_CHANNEL 7 diff --git a/keyboards/ymdk/id75/f103/halconf.h b/keyboards/ymdk/id75/f103/halconf.h new file mode 100644 index 0000000000..612ce4fc4a --- /dev/null +++ b/keyboards/ymdk/id75/f103/halconf.h @@ -0,0 +1,21 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/ymdk/id75/f103/keyboard.json b/keyboards/ymdk/id75/f103/keyboard.json new file mode 100644 index 0000000000..5b1974b3f2 --- /dev/null +++ b/keyboards/ymdk/id75/f103/keyboard.json @@ -0,0 +1,13 @@ +{ + "manufacturer": "YMDK", + "bootloader": "uf2boot", + "matrix_pins": { + "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "A5", "A6", "A4", "A3", "A2", "A1", "A0", "A15"], + "rows": ["B2", "B1", "B0", "A7", "B10"] + }, + "processor": "STM32F103", + "ws2812": { + "driver": "pwm", + "pin": "B9" + } +} diff --git a/keyboards/ymdk/id75/f103/mcuconf.h b/keyboards/ymdk/id75/f103/mcuconf.h new file mode 100644 index 0000000000..0d3de3dad5 --- /dev/null +++ b/keyboards/ymdk/id75/f103/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#include_next + +#undef STM32_PWM_USE_TIM4 +#define STM32_PWM_USE_TIM4 TRUE + +#undef STM32_PLLXTPRE +#define STM32_PLLXTPRE STM32_PLLXTPRE_DIV2 diff --git a/keyboards/ymdk/id75/f103/rules.mk b/keyboards/ymdk/id75/f103/rules.mk new file mode 100644 index 0000000000..dbee20ab05 --- /dev/null +++ b/keyboards/ymdk/id75/f103/rules.mk @@ -0,0 +1,5 @@ +# Configure for 128K flash +MCU_LDSCRIPT = STM32F103xB + +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -p FFFF -v FFFF diff --git a/keyboards/ymdk/id75/halconf.h b/keyboards/ymdk/id75/halconf.h deleted file mode 100644 index 612ce4fc4a..0000000000 --- a/keyboards/ymdk/id75/halconf.h +++ /dev/null @@ -1,21 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -#pragma once - -#define HAL_USE_PWM TRUE - -#include_next diff --git a/keyboards/ymdk/id75/info.json b/keyboards/ymdk/id75/info.json new file mode 100644 index 0000000000..bbe4d1c73e --- /dev/null +++ b/keyboards/ymdk/id75/info.json @@ -0,0 +1,240 @@ +{ + "keyboard_name": "Idobao x YMDK ID75", + "maintainer": "qmk", + "diode_direction": "ROW2COL", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgb_matrix": true + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_sat": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "band_val": true, + "breathing": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "cycle_up_down": true, + "digital_rain": true, + "dual_beacon": true, + "gradient_left_right": true, + "gradient_up_down": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "jellybean_raindrops": true, + "multisplash": true, + "pixel_flow": true, + "pixel_fractal": true, + "pixel_rain": true, + "rainbow_beacon": true, + "rainbow_moving_chevron": true, + "rainbow_pinwheels": true, + "raindrops": true, + "solid_multisplash": true, + "solid_reactive": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_multinexus": true, + "solid_reactive_multiwide": true, + "solid_reactive_nexus": true, + "solid_reactive_simple": true, + "solid_reactive_wide": true, + "solid_splash": true, + "splash": true, + "typing_heatmap": true + }, + "driver": "ws2812", + "layout": [ + {"matrix": [4, 14], "x": 224, "y": 64, "flags": 4}, + {"matrix": [4, 13], "x": 208, "y": 64, "flags": 4}, + {"matrix": [4, 12], "x": 192, "y": 64, "flags": 4}, + {"matrix": [4, 11], "x": 176, "y": 64, "flags": 4}, + {"matrix": [4, 10], "x": 160, "y": 64, "flags": 4}, + {"matrix": [4, 9], "x": 144, "y": 64, "flags": 4}, + {"matrix": [4, 8], "x": 128, "y": 64, "flags": 4}, + {"matrix": [4, 7], "x": 112, "y": 64, "flags": 4}, + {"matrix": [4, 6], "x": 96, "y": 64, "flags": 4}, + {"matrix": [4, 5], "x": 80, "y": 64, "flags": 4}, + {"matrix": [4, 4], "x": 64, "y": 64, "flags": 4}, + {"matrix": [4, 3], "x": 48, "y": 64, "flags": 4}, + {"matrix": [4, 2], "x": 32, "y": 64, "flags": 4}, + {"matrix": [4, 1], "x": 16, "y": 64, "flags": 4}, + {"matrix": [4, 0], "x": 0, "y": 64, "flags": 4}, + {"matrix": [3, 14], "x": 224, "y": 48, "flags": 4}, + {"matrix": [3, 13], "x": 208, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 192, "y": 48, "flags": 4}, + {"matrix": [3, 11], "x": 176, "y": 48, "flags": 4}, + {"matrix": [3, 10], "x": 160, "y": 48, "flags": 4}, + {"matrix": [3, 9], "x": 144, "y": 48, "flags": 4}, + {"matrix": [3, 8], "x": 128, "y": 48, "flags": 4}, + {"matrix": [3, 7], "x": 112, "y": 48, "flags": 4}, + {"matrix": [3, 6], "x": 96, "y": 48, "flags": 4}, + {"matrix": [3, 5], "x": 80, "y": 48, "flags": 4}, + {"matrix": [3, 4], "x": 64, "y": 48, "flags": 4}, + {"matrix": [3, 3], "x": 48, "y": 48, "flags": 4}, + {"matrix": [3, 2], "x": 32, "y": 48, "flags": 4}, + {"matrix": [3, 1], "x": 16, "y": 48, "flags": 4}, + {"matrix": [3, 0], "x": 0, "y": 48, "flags": 4}, + {"matrix": [2, 14], "x": 224, "y": 32, "flags": 4}, + {"matrix": [2, 13], "x": 208, "y": 32, "flags": 4}, + {"matrix": [2, 12], "x": 192, "y": 32, "flags": 4}, + {"matrix": [2, 11], "x": 176, "y": 32, "flags": 4}, + {"matrix": [2, 10], "x": 160, "y": 32, "flags": 4}, + {"matrix": [2, 9], "x": 144, "y": 32, "flags": 4}, + {"matrix": [2, 8], "x": 128, "y": 32, "flags": 4}, + {"matrix": [2, 7], "x": 112, "y": 32, "flags": 4}, + {"matrix": [2, 6], "x": 96, "y": 32, "flags": 4}, + {"matrix": [2, 5], "x": 80, "y": 32, "flags": 4}, + {"matrix": [2, 4], "x": 64, "y": 32, "flags": 4}, + {"matrix": [2, 3], "x": 48, "y": 32, "flags": 4}, + {"matrix": [2, 2], "x": 32, "y": 32, "flags": 4}, + {"matrix": [2, 1], "x": 16, "y": 32, "flags": 4}, + {"matrix": [2, 0], "x": 0, "y": 32, "flags": 4}, + {"matrix": [1, 14], "x": 224, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 208, "y": 16, "flags": 4}, + {"matrix": [1, 12], "x": 192, "y": 16, "flags": 4}, + {"matrix": [1, 11], "x": 176, "y": 16, "flags": 4}, + {"matrix": [1, 10], "x": 160, "y": 16, "flags": 4}, + {"matrix": [1, 9], "x": 144, "y": 16, "flags": 4}, + {"matrix": [1, 8], "x": 128, "y": 16, "flags": 4}, + {"matrix": [1, 7], "x": 112, "y": 16, "flags": 4}, + {"matrix": [1, 6], "x": 96, "y": 16, "flags": 4}, + {"matrix": [1, 5], "x": 80, "y": 16, "flags": 4}, + {"matrix": [1, 4], "x": 64, "y": 16, "flags": 4}, + {"matrix": [1, 3], "x": 48, "y": 16, "flags": 4}, + {"matrix": [1, 2], "x": 32, "y": 16, "flags": 4}, + {"matrix": [1, 1], "x": 16, "y": 16, "flags": 4}, + {"matrix": [1, 0], "x": 0, "y": 16, "flags": 4}, + {"matrix": [0, 14], "x": 224, "y": 0, "flags": 4}, + {"matrix": [0, 13], "x": 208, "y": 0, "flags": 4}, + {"matrix": [0, 12], "x": 192, "y": 0, "flags": 4}, + {"matrix": [0, 11], "x": 176, "y": 0, "flags": 4}, + {"matrix": [0, 10], "x": 160, "y": 0, "flags": 4}, + {"matrix": [0, 9], "x": 144, "y": 0, "flags": 4}, + {"matrix": [0, 8], "x": 128, "y": 0, "flags": 4}, + {"matrix": [0, 7], "x": 112, "y": 0, "flags": 4}, + {"matrix": [0, 6], "x": 96, "y": 0, "flags": 4}, + {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4}, + {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4}, + {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4}, + {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4}, + {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4}, + {"x": 0, "y": 64, "flags": 2}, + {"x": 38, "y": 64, "flags": 2}, + {"x": 76, "y": 64, "flags": 2}, + {"x": 114, "y": 64, "flags": 2}, + {"x": 152, "y": 64, "flags": 2}, + {"x": 190, "y": 64, "flags": 2}, + {"x": 224, "y": 64, "flags": 2}, + {"x": 0, "y": 0, "flags": 2}, + {"x": 38, "y": 0, "flags": 2}, + {"x": 76, "y": 0, "flags": 2}, + {"x": 114, "y": 0, "flags": 2}, + {"x": 152, "y": 0, "flags": 2}, + {"x": 190, "y": 0, "flags": 2}, + {"x": 224, "y": 0, "flags": 2} + ], + "max_brightness": 128, + "sleep": true + }, + "usb": { + "device_version": "0.0.1", + "pid": "0x0075", + "vid": "0x594D" + }, + "community_layouts": ["ortho_5x15"], + "layouts": { + "LAYOUT_ortho_5x15": { + "layout": [ + {"label": "k00", "matrix": [0, 0], "x": 0, "y": 0}, + {"label": "k01", "matrix": [0, 1], "x": 1, "y": 0}, + {"label": "k02", "matrix": [0, 2], "x": 2, "y": 0}, + {"label": "k03", "matrix": [0, 3], "x": 3, "y": 0}, + {"label": "k04", "matrix": [0, 4], "x": 4, "y": 0}, + {"label": "k05", "matrix": [0, 5], "x": 5, "y": 0}, + {"label": "k06", "matrix": [0, 6], "x": 6, "y": 0}, + {"label": "k07", "matrix": [0, 7], "x": 7, "y": 0}, + {"label": "k08", "matrix": [0, 8], "x": 8, "y": 0}, + {"label": "k09", "matrix": [0, 9], "x": 9, "y": 0}, + {"label": "k0A", "matrix": [0, 10], "x": 10, "y": 0}, + {"label": "k0B", "matrix": [0, 11], "x": 11, "y": 0}, + {"label": "k0C", "matrix": [0, 12], "x": 12, "y": 0}, + {"label": "k0D", "matrix": [0, 13], "x": 13, "y": 0}, + {"label": "k0E", "matrix": [0, 14], "x": 14, "y": 0}, + {"label": "k10", "matrix": [1, 0], "x": 0, "y": 1}, + {"label": "k11", "matrix": [1, 1], "x": 1, "y": 1}, + {"label": "k12", "matrix": [1, 2], "x": 2, "y": 1}, + {"label": "k13", "matrix": [1, 3], "x": 3, "y": 1}, + {"label": "k14", "matrix": [1, 4], "x": 4, "y": 1}, + {"label": "k15", "matrix": [1, 5], "x": 5, "y": 1}, + {"label": "k16", "matrix": [1, 6], "x": 6, "y": 1}, + {"label": "k17", "matrix": [1, 7], "x": 7, "y": 1}, + {"label": "k18", "matrix": [1, 8], "x": 8, "y": 1}, + {"label": "k19", "matrix": [1, 9], "x": 9, "y": 1}, + {"label": "k1A", "matrix": [1, 10], "x": 10, "y": 1}, + {"label": "k1B", "matrix": [1, 11], "x": 11, "y": 1}, + {"label": "k1C", "matrix": [1, 12], "x": 12, "y": 1}, + {"label": "k1D", "matrix": [1, 13], "x": 13, "y": 1}, + {"label": "k1E", "matrix": [1, 14], "x": 14, "y": 1}, + {"label": "k20", "matrix": [2, 0], "x": 0, "y": 2}, + {"label": "k21", "matrix": [2, 1], "x": 1, "y": 2}, + {"label": "k22", "matrix": [2, 2], "x": 2, "y": 2}, + {"label": "k23", "matrix": [2, 3], "x": 3, "y": 2}, + {"label": "k24", "matrix": [2, 4], "x": 4, "y": 2}, + {"label": "k25", "matrix": [2, 5], "x": 5, "y": 2}, + {"label": "k26", "matrix": [2, 6], "x": 6, "y": 2}, + {"label": "k27", "matrix": [2, 7], "x": 7, "y": 2}, + {"label": "k28", "matrix": [2, 8], "x": 8, "y": 2}, + {"label": "k29", "matrix": [2, 9], "x": 9, "y": 2}, + {"label": "k2A", "matrix": [2, 10], "x": 10, "y": 2}, + {"label": "k2B", "matrix": [2, 11], "x": 11, "y": 2}, + {"label": "k2C", "matrix": [2, 12], "x": 12, "y": 2}, + {"label": "k2D", "matrix": [2, 13], "x": 13, "y": 2}, + {"label": "k2E", "matrix": [2, 14], "x": 14, "y": 2}, + {"label": "k30", "matrix": [3, 0], "x": 0, "y": 3}, + {"label": "k31", "matrix": [3, 1], "x": 1, "y": 3}, + {"label": "k32", "matrix": [3, 2], "x": 2, "y": 3}, + {"label": "k33", "matrix": [3, 3], "x": 3, "y": 3}, + {"label": "k34", "matrix": [3, 4], "x": 4, "y": 3}, + {"label": "k35", "matrix": [3, 5], "x": 5, "y": 3}, + {"label": "k36", "matrix": [3, 6], "x": 6, "y": 3}, + {"label": "k37", "matrix": [3, 7], "x": 7, "y": 3}, + {"label": "k38", "matrix": [3, 8], "x": 8, "y": 3}, + {"label": "k39", "matrix": [3, 9], "x": 9, "y": 3}, + {"label": "k3A", "matrix": [3, 10], "x": 10, "y": 3}, + {"label": "k3B", "matrix": [3, 11], "x": 11, "y": 3}, + {"label": "k3C", "matrix": [3, 12], "x": 12, "y": 3}, + {"label": "k3D", "matrix": [3, 13], "x": 13, "y": 3}, + {"label": "k3E", "matrix": [3, 14], "x": 14, "y": 3}, + {"label": "k40", "matrix": [4, 0], "x": 0, "y": 4}, + {"label": "k41", "matrix": [4, 1], "x": 1, "y": 4}, + {"label": "k42", "matrix": [4, 2], "x": 2, "y": 4}, + {"label": "k43", "matrix": [4, 3], "x": 3, "y": 4}, + {"label": "k44", "matrix": [4, 4], "x": 4, "y": 4}, + {"label": "k45", "matrix": [4, 5], "x": 5, "y": 4}, + {"label": "k46", "matrix": [4, 6], "x": 6, "y": 4}, + {"label": "k47", "matrix": [4, 7], "x": 7, "y": 4}, + {"label": "k48", "matrix": [4, 8], "x": 8, "y": 4}, + {"label": "k49", "matrix": [4, 9], "x": 9, "y": 4}, + {"label": "k4A", "matrix": [4, 10], "x": 10, "y": 4}, + {"label": "k4B", "matrix": [4, 11], "x": 11, "y": 4}, + {"label": "k4C", "matrix": [4, 12], "x": 12, "y": 4}, + {"label": "k4D", "matrix": [4, 13], "x": 13, "y": 4}, + {"label": "k4E", "matrix": [4, 14], "x": 14, "y": 4} + ] + } + } +} diff --git a/keyboards/ymdk/id75/keyboard.json b/keyboards/ymdk/id75/keyboard.json deleted file mode 100644 index db0c108542..0000000000 --- a/keyboards/ymdk/id75/keyboard.json +++ /dev/null @@ -1,251 +0,0 @@ -{ - "manufacturer": "YMDK", - "keyboard_name": "Idobao x YMDK ID75", - "maintainer": "qmk", - "bootloader": "uf2boot", - "diode_direction": "ROW2COL", - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true - }, - "matrix_pins": { - "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "A5", "A6", "A4", "A3", "A2", "A1", "A0", "A15"], - "rows": ["B2", "B1", "B0", "A7", "B10"] - }, - "processor": "STM32F103", - "ws2812": { - "driver": "pwm", - "pin": "B9" - }, - "rgb_matrix": { - "animations": { - "alphas_mods": true, - "gradient_up_down": true, - "gradient_left_right": true, - "breathing": true, - "band_sat": true, - "band_val": true, - "band_pinwheel_sat": true, - "band_pinwheel_val": true, - "band_spiral_sat": true, - "band_spiral_val": true, - "cycle_all": true, - "cycle_left_right": true, - "cycle_up_down": true, - "rainbow_moving_chevron": true, - "cycle_out_in": true, - "cycle_out_in_dual": true, - "cycle_pinwheel": true, - "cycle_spiral": true, - "dual_beacon": true, - "rainbow_beacon": true, - "rainbow_pinwheels": true, - "raindrops": true, - "jellybean_raindrops": true, - "hue_breathing": true, - "hue_pendulum": true, - "hue_wave": true, - "pixel_rain": true, - "pixel_flow": true, - "pixel_fractal": true, - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive": true, - "solid_reactive_wide": true, - "solid_reactive_multiwide": true, - "solid_reactive_cross": true, - "solid_reactive_multicross": true, - "solid_reactive_nexus": true, - "solid_reactive_multinexus": true, - "splash": true, - "multisplash": true, - "solid_splash": true, - "solid_multisplash": true - }, - "driver": "ws2812", - "layout": [ - {"flags": 4, "matrix": [4, 14], "x": 224, "y": 64}, - {"flags": 4, "matrix": [4, 13], "x": 208, "y": 64}, - {"flags": 4, "matrix": [4, 12], "x": 192, "y": 64}, - {"flags": 4, "matrix": [4, 11], "x": 176, "y": 64}, - {"flags": 4, "matrix": [4, 10], "x": 160, "y": 64}, - {"flags": 4, "matrix": [4, 9], "x": 144, "y": 64}, - {"flags": 4, "matrix": [4, 8], "x": 128, "y": 64}, - {"flags": 4, "matrix": [4, 7], "x": 112, "y": 64}, - {"flags": 4, "matrix": [4, 6], "x": 96, "y": 64}, - {"flags": 4, "matrix": [4, 5], "x": 80, "y": 64}, - {"flags": 4, "matrix": [4, 4], "x": 64, "y": 64}, - {"flags": 4, "matrix": [4, 3], "x": 48, "y": 64}, - {"flags": 4, "matrix": [4, 2], "x": 32, "y": 64}, - {"flags": 4, "matrix": [4, 1], "x": 16, "y": 64}, - {"flags": 4, "matrix": [4, 0], "x": 0, "y": 64}, - {"flags": 4, "matrix": [3, 14], "x": 224, "y": 48}, - {"flags": 4, "matrix": [3, 13], "x": 208, "y": 48}, - {"flags": 4, "matrix": [3, 12], "x": 192, "y": 48}, - {"flags": 4, "matrix": [3, 11], "x": 176, "y": 48}, - {"flags": 4, "matrix": [3, 10], "x": 160, "y": 48}, - {"flags": 4, "matrix": [3, 9], "x": 144, "y": 48}, - {"flags": 4, "matrix": [3, 8], "x": 128, "y": 48}, - {"flags": 4, "matrix": [3, 7], "x": 112, "y": 48}, - {"flags": 4, "matrix": [3, 6], "x": 96, "y": 48}, - {"flags": 4, "matrix": [3, 5], "x": 80, "y": 48}, - {"flags": 4, "matrix": [3, 4], "x": 64, "y": 48}, - {"flags": 4, "matrix": [3, 3], "x": 48, "y": 48}, - {"flags": 4, "matrix": [3, 2], "x": 32, "y": 48}, - {"flags": 4, "matrix": [3, 1], "x": 16, "y": 48}, - {"flags": 4, "matrix": [3, 0], "x": 0, "y": 48}, - {"flags": 4, "matrix": [2, 14], "x": 224, "y": 32}, - {"flags": 4, "matrix": [2, 13], "x": 208, "y": 32}, - {"flags": 4, "matrix": [2, 12], "x": 192, "y": 32}, - {"flags": 4, "matrix": [2, 11], "x": 176, "y": 32}, - {"flags": 4, "matrix": [2, 10], "x": 160, "y": 32}, - {"flags": 4, "matrix": [2, 9], "x": 144, "y": 32}, - {"flags": 4, "matrix": [2, 8], "x": 128, "y": 32}, - {"flags": 4, "matrix": [2, 7], "x": 112, "y": 32}, - {"flags": 4, "matrix": [2, 6], "x": 96, "y": 32}, - {"flags": 4, "matrix": [2, 5], "x": 80, "y": 32}, - {"flags": 4, "matrix": [2, 4], "x": 64, "y": 32}, - {"flags": 4, "matrix": [2, 3], "x": 48, "y": 32}, - {"flags": 4, "matrix": [2, 2], "x": 32, "y": 32}, - {"flags": 4, "matrix": [2, 1], "x": 16, "y": 32}, - {"flags": 4, "matrix": [2, 0], "x": 0, "y": 32}, - {"flags": 4, "matrix": [1, 14], "x": 224, "y": 16}, - {"flags": 4, "matrix": [1, 13], "x": 208, "y": 16}, - {"flags": 4, "matrix": [1, 12], "x": 192, "y": 16}, - {"flags": 4, "matrix": [1, 11], "x": 176, "y": 16}, - {"flags": 4, "matrix": [1, 10], "x": 160, "y": 16}, - {"flags": 4, "matrix": [1, 9], "x": 144, "y": 16}, - {"flags": 4, "matrix": [1, 8], "x": 128, "y": 16}, - {"flags": 4, "matrix": [1, 7], "x": 112, "y": 16}, - {"flags": 4, "matrix": [1, 6], "x": 96, "y": 16}, - {"flags": 4, "matrix": [1, 5], "x": 80, "y": 16}, - {"flags": 4, "matrix": [1, 4], "x": 64, "y": 16}, - {"flags": 4, "matrix": [1, 3], "x": 48, "y": 16}, - {"flags": 4, "matrix": [1, 2], "x": 32, "y": 16}, - {"flags": 4, "matrix": [1, 1], "x": 16, "y": 16}, - {"flags": 4, "matrix": [1, 0], "x": 0, "y": 16}, - {"flags": 4, "matrix": [0, 14], "x": 224, "y": 0}, - {"flags": 4, "matrix": [0, 13], "x": 208, "y": 0}, - {"flags": 4, "matrix": [0, 12], "x": 192, "y": 0}, - {"flags": 4, "matrix": [0, 11], "x": 176, "y": 0}, - {"flags": 4, "matrix": [0, 10], "x": 160, "y": 0}, - {"flags": 4, "matrix": [0, 9], "x": 144, "y": 0}, - {"flags": 4, "matrix": [0, 8], "x": 128, "y": 0}, - {"flags": 4, "matrix": [0, 7], "x": 112, "y": 0}, - {"flags": 4, "matrix": [0, 6], "x": 96, "y": 0}, - {"flags": 4, "matrix": [0, 5], "x": 80, "y": 0}, - {"flags": 4, "matrix": [0, 4], "x": 64, "y": 0}, - {"flags": 4, "matrix": [0, 3], "x": 48, "y": 0}, - {"flags": 4, "matrix": [0, 2], "x": 32, "y": 0}, - {"flags": 4, "matrix": [0, 1], "x": 16, "y": 0}, - {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, - {"flags": 2, "x": 0, "y": 64}, - {"flags": 2, "x": 38, "y": 64}, - {"flags": 2, "x": 76, "y": 64}, - {"flags": 2, "x": 114, "y": 64}, - {"flags": 2, "x": 152, "y": 64}, - {"flags": 2, "x": 190, "y": 64}, - {"flags": 2, "x": 224, "y": 64}, - {"flags": 2, "x": 0, "y": 0}, - {"flags": 2, "x": 38, "y": 0}, - {"flags": 2, "x": 76, "y": 0}, - {"flags": 2, "x": 114, "y": 0}, - {"flags": 2, "x": 152, "y": 0}, - {"flags": 2, "x": 190, "y": 0}, - {"flags": 2, "x": 224, "y": 0} - ], - "max_brightness": 128, - "sleep": true - }, - "usb": { - "device_version": "0.0.1", - "pid": "0x0075", - "vid": "0x594D" - }, - "community_layouts": ["ortho_5x15"], - "layouts": { - "LAYOUT_ortho_5x15": { - "layout": [ - {"label": "k00", "matrix": [0, 0], "x": 0, "y": 0}, - {"label": "k01", "matrix": [0, 1], "x": 1, "y": 0}, - {"label": "k02", "matrix": [0, 2], "x": 2, "y": 0}, - {"label": "k03", "matrix": [0, 3], "x": 3, "y": 0}, - {"label": "k04", "matrix": [0, 4], "x": 4, "y": 0}, - {"label": "k05", "matrix": [0, 5], "x": 5, "y": 0}, - {"label": "k06", "matrix": [0, 6], "x": 6, "y": 0}, - {"label": "k07", "matrix": [0, 7], "x": 7, "y": 0}, - {"label": "k08", "matrix": [0, 8], "x": 8, "y": 0}, - {"label": "k09", "matrix": [0, 9], "x": 9, "y": 0}, - {"label": "k0A", "matrix": [0, 10], "x": 10, "y": 0}, - {"label": "k0B", "matrix": [0, 11], "x": 11, "y": 0}, - {"label": "k0C", "matrix": [0, 12], "x": 12, "y": 0}, - {"label": "k0D", "matrix": [0, 13], "x": 13, "y": 0}, - {"label": "k0E", "matrix": [0, 14], "x": 14, "y": 0}, - {"label": "k10", "matrix": [1, 0], "x": 0, "y": 1}, - {"label": "k11", "matrix": [1, 1], "x": 1, "y": 1}, - {"label": "k12", "matrix": [1, 2], "x": 2, "y": 1}, - {"label": "k13", "matrix": [1, 3], "x": 3, "y": 1}, - {"label": "k14", "matrix": [1, 4], "x": 4, "y": 1}, - {"label": "k15", "matrix": [1, 5], "x": 5, "y": 1}, - {"label": "k16", "matrix": [1, 6], "x": 6, "y": 1}, - {"label": "k17", "matrix": [1, 7], "x": 7, "y": 1}, - {"label": "k18", "matrix": [1, 8], "x": 8, "y": 1}, - {"label": "k19", "matrix": [1, 9], "x": 9, "y": 1}, - {"label": "k1A", "matrix": [1, 10], "x": 10, "y": 1}, - {"label": "k1B", "matrix": [1, 11], "x": 11, "y": 1}, - {"label": "k1C", "matrix": [1, 12], "x": 12, "y": 1}, - {"label": "k1D", "matrix": [1, 13], "x": 13, "y": 1}, - {"label": "k1E", "matrix": [1, 14], "x": 14, "y": 1}, - {"label": "k20", "matrix": [2, 0], "x": 0, "y": 2}, - {"label": "k21", "matrix": [2, 1], "x": 1, "y": 2}, - {"label": "k22", "matrix": [2, 2], "x": 2, "y": 2}, - {"label": "k23", "matrix": [2, 3], "x": 3, "y": 2}, - {"label": "k24", "matrix": [2, 4], "x": 4, "y": 2}, - {"label": "k25", "matrix": [2, 5], "x": 5, "y": 2}, - {"label": "k26", "matrix": [2, 6], "x": 6, "y": 2}, - {"label": "k27", "matrix": [2, 7], "x": 7, "y": 2}, - {"label": "k28", "matrix": [2, 8], "x": 8, "y": 2}, - {"label": "k29", "matrix": [2, 9], "x": 9, "y": 2}, - {"label": "k2A", "matrix": [2, 10], "x": 10, "y": 2}, - {"label": "k2B", "matrix": [2, 11], "x": 11, "y": 2}, - {"label": "k2C", "matrix": [2, 12], "x": 12, "y": 2}, - {"label": "k2D", "matrix": [2, 13], "x": 13, "y": 2}, - {"label": "k2E", "matrix": [2, 14], "x": 14, "y": 2}, - {"label": "k30", "matrix": [3, 0], "x": 0, "y": 3}, - {"label": "k31", "matrix": [3, 1], "x": 1, "y": 3}, - {"label": "k32", "matrix": [3, 2], "x": 2, "y": 3}, - {"label": "k33", "matrix": [3, 3], "x": 3, "y": 3}, - {"label": "k34", "matrix": [3, 4], "x": 4, "y": 3}, - {"label": "k35", "matrix": [3, 5], "x": 5, "y": 3}, - {"label": "k36", "matrix": [3, 6], "x": 6, "y": 3}, - {"label": "k37", "matrix": [3, 7], "x": 7, "y": 3}, - {"label": "k38", "matrix": [3, 8], "x": 8, "y": 3}, - {"label": "k39", "matrix": [3, 9], "x": 9, "y": 3}, - {"label": "k3A", "matrix": [3, 10], "x": 10, "y": 3}, - {"label": "k3B", "matrix": [3, 11], "x": 11, "y": 3}, - {"label": "k3C", "matrix": [3, 12], "x": 12, "y": 3}, - {"label": "k3D", "matrix": [3, 13], "x": 13, "y": 3}, - {"label": "k3E", "matrix": [3, 14], "x": 14, "y": 3}, - {"label": "k40", "matrix": [4, 0], "x": 0, "y": 4}, - {"label": "k41", "matrix": [4, 1], "x": 1, "y": 4}, - {"label": "k42", "matrix": [4, 2], "x": 2, "y": 4}, - {"label": "k43", "matrix": [4, 3], "x": 3, "y": 4}, - {"label": "k44", "matrix": [4, 4], "x": 4, "y": 4}, - {"label": "k45", "matrix": [4, 5], "x": 5, "y": 4}, - {"label": "k46", "matrix": [4, 6], "x": 6, "y": 4}, - {"label": "k47", "matrix": [4, 7], "x": 7, "y": 4}, - {"label": "k48", "matrix": [4, 8], "x": 8, "y": 4}, - {"label": "k49", "matrix": [4, 9], "x": 9, "y": 4}, - {"label": "k4A", "matrix": [4, 10], "x": 10, "y": 4}, - {"label": "k4B", "matrix": [4, 11], "x": 11, "y": 4}, - {"label": "k4C", "matrix": [4, 12], "x": 12, "y": 4}, - {"label": "k4D", "matrix": [4, 13], "x": 13, "y": 4}, - {"label": "k4E", "matrix": [4, 14], "x": 14, "y": 4} - ] - } - } -} diff --git a/keyboards/ymdk/id75/mcuconf.h b/keyboards/ymdk/id75/mcuconf.h deleted file mode 100644 index 0d3de3dad5..0000000000 --- a/keyboards/ymdk/id75/mcuconf.h +++ /dev/null @@ -1,25 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -#pragma once - -#include_next - -#undef STM32_PWM_USE_TIM4 -#define STM32_PWM_USE_TIM4 TRUE - -#undef STM32_PLLXTPRE -#define STM32_PLLXTPRE STM32_PLLXTPRE_DIV2 diff --git a/keyboards/ymdk/id75/readme.md b/keyboards/ymdk/id75/readme.md index 9315745f71..4f7e779458 100644 --- a/keyboards/ymdk/id75/readme.md +++ b/keyboards/ymdk/id75/readme.md @@ -5,17 +5,18 @@ A 75-key, 5-row ortholinear keyboard with per-key and underglow RGB LEDs. * Keyboard Maintainer: [The QMK Community](https://github.com/qmk) -* Hardware Supported: [Idobao x YMDK ID75 PCB (APM32F103CBT6)](https://www.aliexpress.com/item/3256804537842097.html) - * This PCB uses an ARM Cortex-M3 MCU with 128kb flash. **It is not the same as `idobao/id75` or `ymdk/ymd75`.** +* Hardware Supported: [Idobao x YMDK ID75](https://www.aliexpress.com/item/3256804537842097.html). **This is not the same PCB as `idobao/id75` or `ymdk/ymd75`.** + This keyboard has had multiple PCB revisions, some of which may not work with the firmware in this repository. **Check your PCB before flashing.** + * `f103`: (Geehy APM32F103CBT6, uf2boot) * Hardware Availability: [YMDK](https://ymdkey.com/products/id75-75-keys-ortholinear-layout-qmk-anodized-aluminum-case-plate-hot-swappable-hot-swap-type-c-pcb-mechanical-keyboard-kit), [AliExpress (YMDK Store)](https://www.aliexpress.com/item/2255800125183974.html), [Amazon](https://www.amazon.com/Ortholinear-Anodized-Aluminum-hot-swappable-Mechanical/dp/B07ZQ8CD88) Make example for this keyboard (after setting up your build environment): - make ymdk/id75:default + make ymdk/id75/f103:default Flashing example for this keyboard: - make ymdk/id75:default:flash + make ymdk/id75/f103: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). @@ -27,4 +28,5 @@ Enter the bootloader in 3 ways: * **Physical reset button**: Press the button on the back of the PCB twice in quick succession. * **Keycode in layout**: Press the key mapped to `QK_BOOT`. In the pre-supplied keymaps it is on the second layer, in the bottom-right corner. -After entering the bootloader through one of the three methods above, the keyboard will appear as a USB mass storage device named `MT.KEY`. If the CLI is unable to find this device, the compiled `.uf2` file can be manually copied to it. The keyboard will reboot on completion with the new firmware loaded. +After entering the bootloader through one of the three methods above, the keyboard will appear as a USB mass storage device. If the CLI is unable to find this device, the compiled `.uf2` file can be manually copied to it. The keyboard will reboot on completion with the new firmware loaded. +- `f103`: The volume name is `MT.KEY`. diff --git a/keyboards/ymdk/id75/rules.mk b/keyboards/ymdk/id75/rules.mk deleted file mode 100644 index dbee20ab05..0000000000 --- a/keyboards/ymdk/id75/rules.mk +++ /dev/null @@ -1,5 +0,0 @@ -# Configure for 128K flash -MCU_LDSCRIPT = STM32F103xB - -# Wildcard to allow APM32 MCU -DFU_SUFFIX_ARGS = -p FFFF -v FFFF -- cgit v1.2.3 From 93de5335803242f1df93600602ef5725d4df3a4c Mon Sep 17 00:00:00 2001 From: muge Date: Thu, 26 Dec 2024 08:58:26 +0000 Subject: Move cxt_studio keyboard to own folder (#24748) --- data/mappings/keyboard_aliases.hjson | 3 + keyboards/cxt_studio/12e4/config.h | 6 ++ keyboards/cxt_studio/12e4/cxt_studio.c | 47 +++++++++++ keyboards/cxt_studio/12e4/keyboard.json | 98 ++++++++++++++++++++++ .../cxt_studio/12e4/keymaps/default/keymap.json | 13 +++ keyboards/cxt_studio/12e4/readme.md | 27 ++++++ keyboards/cxt_studio/config.h | 22 ----- keyboards/cxt_studio/cxt_studio.c | 55 ------------ keyboards/cxt_studio/keyboard.json | 98 ---------------------- keyboards/cxt_studio/keymaps/default/keymap.json | 13 --- keyboards/cxt_studio/readme.md | 27 ------ 11 files changed, 194 insertions(+), 215 deletions(-) create mode 100644 keyboards/cxt_studio/12e4/config.h create mode 100644 keyboards/cxt_studio/12e4/cxt_studio.c create mode 100644 keyboards/cxt_studio/12e4/keyboard.json create mode 100644 keyboards/cxt_studio/12e4/keymaps/default/keymap.json create mode 100644 keyboards/cxt_studio/12e4/readme.md delete mode 100644 keyboards/cxt_studio/config.h delete mode 100644 keyboards/cxt_studio/cxt_studio.c delete mode 100644 keyboards/cxt_studio/keyboard.json delete mode 100644 keyboards/cxt_studio/keymaps/default/keymap.json delete mode 100644 keyboards/cxt_studio/readme.md (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 098c299e58..4fd959c4eb 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -140,6 +140,9 @@ "custommk/genesis": { "target": "custommk/genesis/rev1" }, + "cxt_studio":{ + "target":"cxt_studio/12e4" + }, "daisy": { "target": "ktec/daisy" }, diff --git a/keyboards/cxt_studio/12e4/config.h b/keyboards/cxt_studio/12e4/config.h new file mode 100644 index 0000000000..de0fbad7ec --- /dev/null +++ b/keyboards/cxt_studio/12e4/config.h @@ -0,0 +1,6 @@ +// Copyright 2023 Colin Kinloch (@ColinKinloch) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define RGB_MATRIX_TYPING_HEATMAP_SPREAD 9 diff --git a/keyboards/cxt_studio/12e4/cxt_studio.c b/keyboards/cxt_studio/12e4/cxt_studio.c new file mode 100644 index 0000000000..03a15e4d48 --- /dev/null +++ b/keyboards/cxt_studio/12e4/cxt_studio.c @@ -0,0 +1,47 @@ +// Copyright 2023 Colin Kinloch (@ColinKinloch) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "quantum.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { + return false; + } + switch (index) { + case 0: { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } + break; + case 1: { + if (clockwise) { + rgb_matrix_increase_hue(); + } else { + rgb_matrix_decrease_hue(); + } + } + break; + case 2: { + if (clockwise) { + rgb_matrix_increase_val(); + } else { + rgb_matrix_decrease_val(); + } + } + break; + case 3: { + if (clockwise) { + rgb_matrix_step(); + } else { + rgb_matrix_step_reverse(); + } + } + break; + } + return true; +} +#endif diff --git a/keyboards/cxt_studio/12e4/keyboard.json b/keyboards/cxt_studio/12e4/keyboard.json new file mode 100644 index 0000000000..b48e75f4ca --- /dev/null +++ b/keyboards/cxt_studio/12e4/keyboard.json @@ -0,0 +1,98 @@ +{ + "manufacturer": "CXT", + "keyboard_name": "cxt_studio 12E4", + "maintainer": "ColinKinloch", + "bootloader": "atmel-dfu", + "diode_direction": "ROW2COL", + "features": { + "bootmagic": true, + "command": false, + "console": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "encoder": true, + "rgb_matrix": true + }, + "ws2812": { + "pin": "F7" + }, + "matrix_pins": { + "cols": ["D4", "D7", "B4", "B5"], + "rows": ["C7", "C6", "D6", "F4"] + }, + "encoder": { + "rotary": [ + {"pin_a": "D5", "pin_b": "D3"}, + {"pin_a": "B2", "pin_b": "B3"}, + {"pin_a": "F5", "pin_b": "F6"}, + {"pin_a": "E6", "pin_b": "F0"} + ] + }, + "processor": "atmega32u4", + "rgb_matrix": { + "animations": { + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "default": { + "animation": "typing_heatmap" + }, + "driver": "ws2812", + "layout": [ + {"flags": 4, "matrix": [0, 3], "x": 3, "y": 0}, + {"flags": 4, "matrix": [0, 2], "x": 2, "y": 0}, + {"flags": 4, "matrix": [0, 1], "x": 1, "y": 0}, + {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, + {"flags": 4, "matrix": [1, 0], "x": 0, "y": 1}, + {"flags": 4, "matrix": [1, 1], "x": 1, "y": 1}, + {"flags": 4, "matrix": [1, 2], "x": 2, "y": 1}, + {"flags": 4, "matrix": [1, 3], "x": 3, "y": 1}, + {"flags": 4, "matrix": [2, 3], "x": 3, "y": 2}, + {"flags": 4, "matrix": [2, 2], "x": 2, "y": 2}, + {"flags": 4, "matrix": [2, 1], "x": 1, "y": 2}, + {"flags": 4, "matrix": [2, 0], "x": 0, "y": 2} + ] + }, + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0xC401", + "vid": "0x5754" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3} + ] + } + } +} diff --git a/keyboards/cxt_studio/12e4/keymaps/default/keymap.json b/keyboards/cxt_studio/12e4/keymaps/default/keymap.json new file mode 100644 index 0000000000..b05d3ba179 --- /dev/null +++ b/keyboards/cxt_studio/12e4/keymaps/default/keymap.json @@ -0,0 +1,13 @@ +{ + "keyboard": "cxt_studio/12e4", + "keymap": "default", + "layout": "LAYOUT", + "layers": [ + [ + "KC_ESC", "KC_F11", "KC_NO", "KC_MSTP", + "KC_NO", "KC_NO", "KC_MRWD", "KC_MFFD", + "KC_NO", "KC_MPLY", "KC_MPLY", "KC_MNXT", + "KC_MUTE", "KC_NO", "KC_NO", "RM_TOGG" + ] + ] +} diff --git a/keyboards/cxt_studio/12e4/readme.md b/keyboards/cxt_studio/12e4/readme.md new file mode 100644 index 0000000000..760c3544b4 --- /dev/null +++ b/keyboards/cxt_studio/12e4/readme.md @@ -0,0 +1,27 @@ +# cxt_studio/12e4 + +![cxt_studio/12e4](https://i.imgur.com/AMCTioSh.jpeg) + +3x4 ortho rgb lighting 4 knobs. + +* Keyboard Maintainer: [Colin Kinloch](https://github.com/ColinKinloch) +* Hardware Supported: CXT-Studio/12E4 +* Hardware Availability: AliExpress. I think the manufacturer is on Taobao. + +Make example for this keyboard (after setting up your build environment): + + make cxt_studio/12e4:default + +Flashing example for this keyboard: + + make cxt_studio/12e4: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). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/cxt_studio/config.h b/keyboards/cxt_studio/config.h deleted file mode 100644 index e56e07a254..0000000000 --- a/keyboards/cxt_studio/config.h +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2023 Colin Kinloch (@ColinKinloch) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#define RGB_MATRIX_TYPING_HEATMAP_SPREAD 9 - -/* - * 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 diff --git a/keyboards/cxt_studio/cxt_studio.c b/keyboards/cxt_studio/cxt_studio.c deleted file mode 100644 index 2b36905340..0000000000 --- a/keyboards/cxt_studio/cxt_studio.c +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2023 Colin Kinloch (@ColinKinloch) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "quantum.h" - -static uint8_t anim = 0; - -#ifdef ENCODER_ENABLE -bool encoder_update_kb(uint8_t index, bool clockwise) { - if (!encoder_update_user(index, clockwise)) { - return false; - } - switch (index) { - case 0: { - if (clockwise) { - tap_code_delay(KC_VOLU, 10); - } else { - tap_code_delay(KC_VOLD, 10); - } - } - break; - case 1: { - if (clockwise) { - rgblight_increase_hue(); - } else { - rgblight_decrease_hue(); - } - } - break; - case 2: { - if (clockwise) { - rgblight_increase_val(); - } else { - rgblight_decrease_val(); - } - } - break; - case 3: { - if (clockwise) { - anim++; - } else { - anim--; - } - if (anim >= RGB_MATRIX_EFFECT_MAX) { - anim = 0; - } else if (anim < 0) { - anim = RGB_MATRIX_EFFECT_MAX - 1; - } - rgblight_mode(anim); - } - break; - } - return true; -} -#endif diff --git a/keyboards/cxt_studio/keyboard.json b/keyboards/cxt_studio/keyboard.json deleted file mode 100644 index 7ee7b52d50..0000000000 --- a/keyboards/cxt_studio/keyboard.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "manufacturer": "CXT", - "keyboard_name": "cxt_studio", - "maintainer": "ColinKinloch", - "bootloader": "atmel-dfu", - "diode_direction": "ROW2COL", - "features": { - "bootmagic": true, - "command": false, - "console": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "encoder": true, - "rgb_matrix": true - }, - "ws2812": { - "pin": "F7" - }, - "matrix_pins": { - "cols": ["D4", "D7", "B4", "B5"], - "rows": ["C7", "C6", "D6", "F4"] - }, - "encoder": { - "rotary": [ - {"pin_a": "D5", "pin_b": "D3"}, - {"pin_a": "B2", "pin_b": "B3"}, - {"pin_a": "F5", "pin_b": "F6"}, - {"pin_a": "E6", "pin_b": "F0"} - ] - }, - "processor": "atmega32u4", - "rgb_matrix": { - "animations": { - "typing_heatmap": true, - "digital_rain": true, - "solid_reactive_simple": true, - "solid_reactive": true, - "solid_reactive_wide": true, - "solid_reactive_multiwide": true, - "solid_reactive_cross": true, - "solid_reactive_multicross": true, - "solid_reactive_nexus": true, - "solid_reactive_multinexus": true, - "splash": true, - "multisplash": true, - "solid_splash": true, - "solid_multisplash": true - }, - "default": { - "animation": "typing_heatmap" - }, - "driver": "ws2812", - "layout": [ - {"flags": 4, "matrix": [0, 3], "x": 3, "y": 0}, - {"flags": 4, "matrix": [0, 2], "x": 2, "y": 0}, - {"flags": 4, "matrix": [0, 1], "x": 1, "y": 0}, - {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, - {"flags": 4, "matrix": [1, 0], "x": 0, "y": 1}, - {"flags": 4, "matrix": [1, 1], "x": 1, "y": 1}, - {"flags": 4, "matrix": [1, 2], "x": 2, "y": 1}, - {"flags": 4, "matrix": [1, 3], "x": 3, "y": 1}, - {"flags": 4, "matrix": [2, 3], "x": 3, "y": 2}, - {"flags": 4, "matrix": [2, 2], "x": 2, "y": 2}, - {"flags": 4, "matrix": [2, 1], "x": 1, "y": 2}, - {"flags": 4, "matrix": [2, 0], "x": 0, "y": 2} - ] - }, - "url": "", - "usb": { - "device_version": "1.0.0", - "pid": "0xC401", - "vid": "0x5754" - }, - "layouts": { - "LAYOUT": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1, "y": 0}, - {"matrix": [0, 2], "x": 2, "y": 0}, - {"matrix": [0, 3], "x": 3, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1}, - {"matrix": [1, 1], "x": 1, "y": 1}, - {"matrix": [1, 2], "x": 2, "y": 1}, - {"matrix": [1, 3], "x": 3, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2}, - {"matrix": [2, 1], "x": 1, "y": 2}, - {"matrix": [2, 2], "x": 2, "y": 2}, - {"matrix": [2, 3], "x": 3, "y": 2}, - - {"matrix": [3, 0], "x": 0, "y": 3}, - {"matrix": [3, 1], "x": 1, "y": 3}, - {"matrix": [3, 2], "x": 2, "y": 3}, - {"matrix": [3, 3], "x": 3, "y": 3} - ] - } - } -} diff --git a/keyboards/cxt_studio/keymaps/default/keymap.json b/keyboards/cxt_studio/keymaps/default/keymap.json deleted file mode 100644 index 9e31833520..0000000000 --- a/keyboards/cxt_studio/keymaps/default/keymap.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "keyboard": "cxt_studio", - "keymap": "default", - "layout": "LAYOUT", - "layers": [ - [ - "KC_ESC", "KC_F11", "KC_NO", "KC_MSTP", - "KC_NO", "KC_NO", "KC_MRWD", "KC_MFFD", - "KC_NO", "KC_MPLY", "KC_MPLY", "KC_MNXT", - "KC_MUTE", "KC_NO", "KC_NO", "RM_TOGG" - ] - ] -} diff --git a/keyboards/cxt_studio/readme.md b/keyboards/cxt_studio/readme.md deleted file mode 100644 index 6397a3fdfd..0000000000 --- a/keyboards/cxt_studio/readme.md +++ /dev/null @@ -1,27 +0,0 @@ -# cxt_studio - -![cxt_studio](https://i.imgur.com/AMCTioSh.jpeg) - -3x4 ortho rgb lighting 4 knobs. - -* Keyboard Maintainer: [Colin Kinloch](https://github.com/ColinKinloch) -* Hardware Supported: CXT-Studio -* Hardware Availability: AliExpress. I think the manufacturer is on Taobao. - -Make example for this keyboard (after setting up your build environment): - - make cxt_studio:default - -Flashing example for this keyboard: - - make cxt_studio: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). - -## Bootloader - -Enter the bootloader in 3 ways: - -* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard -* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead -* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available -- cgit v1.2.3 From 43800d79341d45e8ca5d5deb00e9825263b7e57b Mon Sep 17 00:00:00 2001 From: Juho T. Date: Thu, 2 Jan 2025 14:07:38 +0200 Subject: Add Silakka54 keyboard (#24757) * Added new keyboard Silakka54 * Update keyboards/silakka54/config.h Co-authored-by: jack * Update keyboards/silakka54/keyboard.json Co-authored-by: jack * Delete keyboards/silakka54/rules.mk * Update keyboards/silakka54/keyboard.json Co-authored-by: Drashna Jaelre * Update keyboards/silakka54/config.h Co-authored-by: Drashna Jaelre * Update readme.md Fixed small typo, "inpired" to "inspired" --------- Co-authored-by: jack Co-authored-by: Drashna Jaelre --- keyboards/silakka54/config.h | 25 +++++++ keyboards/silakka54/keyboard.json | 102 +++++++++++++++++++++++++++ keyboards/silakka54/keymaps/default/keymap.c | 22 ++++++ keyboards/silakka54/readme.md | 26 +++++++ 4 files changed, 175 insertions(+) create mode 100644 keyboards/silakka54/config.h create mode 100644 keyboards/silakka54/keyboard.json create mode 100644 keyboards/silakka54/keymaps/default/keymap.c create mode 100644 keyboards/silakka54/readme.md (limited to 'keyboards') diff --git a/keyboards/silakka54/config.h b/keyboards/silakka54/config.h new file mode 100644 index 0000000000..220b85cd08 --- /dev/null +++ b/keyboards/silakka54/config.h @@ -0,0 +1,25 @@ +/* Copyright 2024 Juho T. (@Squalius-cephalus) + * + * 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 . + */ + +#pragma once + +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP0 +#define SERIAL_USART_RX_PIN GP1 + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 diff --git a/keyboards/silakka54/keyboard.json b/keyboards/silakka54/keyboard.json new file mode 100644 index 0000000000..e1ad9aac9e --- /dev/null +++ b/keyboards/silakka54/keyboard.json @@ -0,0 +1,102 @@ +{ + "manufacturer": "Squalius-cephalus", + "keyboard_name": "silakka54", + "maintainer": "Squalius-cephalus", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "split": { + "enabled": true, + "serial": { + "driver": "vendor" + } + }, + "matrix_pins": { + "cols": ["GP7", "GP8", "GP9", "GP10", "GP11", "GP12"], + "rows": ["GP2", "GP3", "GP4", "GP5","GP6"] + }, + "processor": "RP2040", + "url": "https://github.com/Squalius-cephalus/silakka54", + "usb": { + "device_version": "1.0.0", + "pid": "0x1212", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + + {"matrix": [5, 5], "x": 0, "y": 5}, + {"matrix": [5, 4], "x": 1, "y": 5}, + {"matrix": [5, 3], "x": 2, "y": 5}, + {"matrix": [5, 2], "x": 3, "y": 5}, + {"matrix": [5, 1], "x": 4, "y": 5}, + {"matrix": [5, 0], "x": 5, "y": 5}, + + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + + {"matrix": [6, 5], "x": 0, "y": 6}, + {"matrix": [6, 4], "x": 1, "y": 6}, + {"matrix": [6, 3], "x": 2, "y": 6}, + {"matrix": [6, 2], "x": 3, "y": 6}, + {"matrix": [6, 1], "x": 4, "y": 6}, + {"matrix": [6, 0], "x": 5, "y": 6}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + + {"matrix": [7, 5], "x": 0, "y": 7}, + {"matrix": [7, 4], "x": 1, "y": 7}, + {"matrix": [7, 3], "x": 2, "y": 7}, + {"matrix": [7, 2], "x": 3, "y": 7}, + {"matrix": [7, 1], "x": 4, "y": 7}, + {"matrix": [7, 0], "x": 5, "y": 7}, + + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + + {"matrix": [8, 5], "x": 0, "y": 9}, + {"matrix": [8, 4], "x": 1, "y": 9}, + {"matrix": [8, 3], "x": 2, "y": 9}, + {"matrix": [8, 2], "x": 3, "y": 9}, + {"matrix": [8, 1], "x": 4, "y": 9}, + {"matrix": [8, 0], "x": 5, "y": 9}, + + {"matrix": [4, 3], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + + {"matrix": [9, 5], "x": 3, "y": 9}, + {"matrix": [9, 4], "x": 4, "y": 9}, + {"matrix": [9, 3], "x": 5, "y": 9} + + + ] + } + } +} diff --git a/keyboards/silakka54/keymaps/default/keymap.c b/keyboards/silakka54/keymaps/default/keymap.c new file mode 100644 index 0000000000..aa5e64efa3 --- /dev/null +++ b/keyboards/silakka54/keymaps/default/keymap.c @@ -0,0 +1,22 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + 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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, 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, KC_RSFT, + KC_LGUI, MO(1), KC_SPC, KC_ENT, KC_RCTL, KC_RALT + ), + [1] = LAYOUT( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_HOME, KC_END, KC_DEL, KC_F12, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_LBRC, KC_RBRC, + 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 + ) +}; diff --git a/keyboards/silakka54/readme.md b/keyboards/silakka54/readme.md new file mode 100644 index 0000000000..08a38aa473 --- /dev/null +++ b/keyboards/silakka54/readme.md @@ -0,0 +1,26 @@ +# Silakka54 + +![Silakka54](https://i.imgur.com/JrsS0kY.png) + +Silakka54 is a RP2040 Zero based 54-key column staggered split keyboard. PCB uses hotswap sockets. Design is inspired from REVIUNG41 and Corne keyboards. + +* Keyboard Maintainer: [Squalius-cephalus](https://github.com/Squalius-cephalus) +* Hardware Supported: Silakka54 PCB +* Hardware Availability: https://github.com/Squalius-cephalus/silakka54 + +Make example for this keyboard (after setting up your build environment): + + make silakka54:default + +Flashing example for this keyboard: + + make silakka54: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). + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Physical boot button**: Hold BOOT button down and connect MCU to the PC +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available -- cgit v1.2.3 From 9339e3c35d971c9415acff8a63b2c5e6eaa7b555 Mon Sep 17 00:00:00 2001 From: Clocks Date: Sun, 5 Jan 2025 15:46:58 -0500 Subject: Add watchdog service to RGBKB Sol 3 (#24786) Due to power demands, the Sol 3 might get initially ignored or something by the attached device. The solution is the enable watchdog, which would have the keyboard repoll the system to connect again. I have been using watchdog for awhile, but given that the RGBKB developer never progressed #24279, I made this to add in the essential feature.--- keyboards/rgbkb/sol3/rev1/keyboard.json | 2 ++ 1 file changed, 2 insertions(+) (limited to 'keyboards') diff --git a/keyboards/rgbkb/sol3/rev1/keyboard.json b/keyboards/rgbkb/sol3/rev1/keyboard.json index a81ea7bc21..775e3f8629 100644 --- a/keyboards/rgbkb/sol3/rev1/keyboard.json +++ b/keyboards/rgbkb/sol3/rev1/keyboard.json @@ -153,6 +153,8 @@ "pin": "A9" }, "transport": { + "watchdog": true, + "watchdog_timeout": 20000, "sync": { "indicators": true, "layer_state": true, -- cgit v1.2.3 From 7f1c236c75b0a92b952882c6f211f78157978f63 Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Tue, 14 Jan 2025 12:20:36 +0700 Subject: Bugfix and update for AT32F415 (#24807) --- drivers/led/apa102.c | 2 +- keyboards/handwired/onekey/at_start_f415/board.h | 4 ++-- keyboards/handwired/onekey/at_start_f415/config.h | 4 ++-- keyboards/handwired/onekey/at_start_f415/halconf.h | 4 ++-- .../handwired/onekey/at_start_f415/keyboard.json | 4 ++++ keyboards/handwired/onekey/at_start_f415/mcuconf.h | 4 ++-- .../boards/GENERIC_AT32_F415XX/board/board.c | 4 ++-- .../boards/GENERIC_AT32_F415XX/board/board.h | 28 ++++++++++++++-------- .../boards/GENERIC_AT32_F415XX/configs/config.h | 4 ++-- .../boards/GENERIC_AT32_F415XX/configs/mcuconf.h | 16 +++++++------ platforms/chibios/chibios_config.h | 4 ++-- 11 files changed, 46 insertions(+), 32 deletions(-) (limited to 'keyboards') diff --git a/drivers/led/apa102.c b/drivers/led/apa102.c index 6e87d48b96..6a13153374 100644 --- a/drivers/led/apa102.c +++ b/drivers/led/apa102.c @@ -24,7 +24,7 @@ # elif defined(PROTOCOL_CHIBIOS) # include "hal.h" # include "chibios_config.h" -# if defined(STM32F0XX) || defined(STM32F1XX) || defined(STM32F3XX) || defined(STM32F4XX) || defined(STM32L0XX) || defined(GD32VF103) || defined(MCU_RP) +# if defined(STM32F0XX) || defined(STM32F1XX) || defined(STM32F3XX) || defined(STM32F4XX) || defined(STM32L0XX) || defined(AT32F415) || defined(GD32VF103) || defined(MCU_RP) # define APA102_NOPS (100 / (1000000000L / (CPU_CLOCK / 4))) // This calculates how many loops of 4 nops to run to delay 100 ns # else # error APA102_NOPS configuration required diff --git a/keyboards/handwired/onekey/at_start_f415/board.h b/keyboards/handwired/onekey/at_start_f415/board.h index f4adc2d418..a31d8f8e37 100644 --- a/keyboards/handwired/onekey/at_start_f415/board.h +++ b/keyboards/handwired/onekey/at_start_f415/board.h @@ -1,5 +1,5 @@ -// Copyright 2023-2024 HorrorTroll -// Copyright 2023-2024 Zhaqian +// Copyright 2023-2025 HorrorTroll +// Copyright 2023-2025 Zhaqian // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/keyboards/handwired/onekey/at_start_f415/config.h b/keyboards/handwired/onekey/at_start_f415/config.h index 0e47e813c5..41aece900c 100644 --- a/keyboards/handwired/onekey/at_start_f415/config.h +++ b/keyboards/handwired/onekey/at_start_f415/config.h @@ -1,5 +1,5 @@ -// Copyright 2023-2024 HorrorTroll -// Copyright 2023-2024 Zhaqian +// Copyright 2023-2025 HorrorTroll +// Copyright 2023-2025 Zhaqian // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/keyboards/handwired/onekey/at_start_f415/halconf.h b/keyboards/handwired/onekey/at_start_f415/halconf.h index 1423633d15..e3c075936d 100644 --- a/keyboards/handwired/onekey/at_start_f415/halconf.h +++ b/keyboards/handwired/onekey/at_start_f415/halconf.h @@ -1,5 +1,5 @@ -// Copyright 2023-2024 HorrorTroll -// Copyright 2023-2024 Zhaqian +// Copyright 2023-2025 HorrorTroll +// Copyright 2023-2025 Zhaqian // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/keyboards/handwired/onekey/at_start_f415/keyboard.json b/keyboards/handwired/onekey/at_start_f415/keyboard.json index f598923a6a..6e5683a474 100644 --- a/keyboards/handwired/onekey/at_start_f415/keyboard.json +++ b/keyboards/handwired/onekey/at_start_f415/keyboard.json @@ -17,4 +17,8 @@ "ws2812": { "pin": "B0" } + "apa102": { + "data_pin": "B0", + "clock_pin": "B1" + } } diff --git a/keyboards/handwired/onekey/at_start_f415/mcuconf.h b/keyboards/handwired/onekey/at_start_f415/mcuconf.h index 9bc11d507c..246f6762d3 100644 --- a/keyboards/handwired/onekey/at_start_f415/mcuconf.h +++ b/keyboards/handwired/onekey/at_start_f415/mcuconf.h @@ -1,5 +1,5 @@ -// Copyright 2023-2024 HorrorTroll -// Copyright 2023-2024 Zhaqian +// Copyright 2023-2025 HorrorTroll +// Copyright 2023-2025 Zhaqian // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.c b/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.c index 28cf7c18e0..26b1974e4a 100644 --- a/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.c +++ b/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.c @@ -1,7 +1,7 @@ /* ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio - ChibiOS - Copyright (C) 2023..2024 HorrorTroll - ChibiOS - Copyright (C) 2023..2024 Zhaqian + ChibiOS - Copyright (C) 2023..2025 HorrorTroll + ChibiOS - Copyright (C) 2023..2025 Zhaqian Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.h b/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.h index c3ade198ba..b4909b0a29 100644 --- a/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.h +++ b/platforms/chibios/boards/GENERIC_AT32_F415XX/board/board.h @@ -1,7 +1,7 @@ /* ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio - ChibiOS - Copyright (C) 2023..2024 HorrorTroll - ChibiOS - Copyright (C) 2023..2024 Zhaqian + ChibiOS - Copyright (C) 2023..2025 HorrorTroll + ChibiOS - Copyright (C) 2023..2025 Zhaqian Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -49,6 +49,14 @@ */ #define AT32F415KB +/* + * GPIO settings, allow unused GPIO for smaller chip packages. + */ +#if defined(AT32F415KB) || defined(AT32F415KC) +#define AT32_HAS_GPIOC TRUE +#define AT32_HAS_GPIOF TRUE +#endif + /* * IO pins assignments. */ @@ -142,21 +150,21 @@ * 6 - Open Drain output 2MHz. * 7 - Open Drain output 50MHz. * 8 - Digital input with Pull-Up or Pull-Down resistor depending on ODT. - * 9 - Alternate Push Pull output 10MHz. - * A - Alternate Push Pull output 2MHz. - * B - Alternate Push Pull output 50MHz. + * 9 - Multiplexing Push Pull output 10MHz. + * A - Multiplexing Push Pull output 2MHz. + * B - Multiplexing Push Pull output 50MHz. * C - Reserved. - * D - Alternate Open Drain output 10MHz. - * E - Alternate Open Drain output 2MHz. - * F - Alternate Open Drain output 50MHz. + * D - Multiplexing Open Drain output 10MHz. + * E - Multiplexing Open Drain output 2MHz. + * F - Multiplexing Open Drain output 50MHz. * Please refer to the AT32 Reference Manual for details. */ /* * Port A setup. */ -#define VAL_GPIOACFGLR 0x88888B88 /* PA7...PA0 */ -#define VAL_GPIOACFGHR 0x888888B8 /* PA15...PA8 */ +#define VAL_GPIOACFGLR 0x88888888 /* PA7...PA0 */ +#define VAL_GPIOACFGHR 0x88888888 /* PA15...PA8 */ #define VAL_GPIOAODT 0xFFFFFFFF /* diff --git a/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/config.h b/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/config.h index da60447a0a..01d9a47aac 100644 --- a/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/config.h +++ b/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/config.h @@ -1,5 +1,5 @@ -// Copyright 2023-2024 HorrorTroll -// Copyright 2023-2024 Zhaqian +// Copyright 2023-2025 HorrorTroll +// Copyright 2023-2025 Zhaqian // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/mcuconf.h index d148379fe1..e218e4791a 100644 --- a/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_AT32_F415XX/configs/mcuconf.h @@ -1,7 +1,7 @@ /* ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio - ChibiOS - Copyright (C) 2023..2024 HorrorTroll - ChibiOS - Copyright (C) 2023..2024 Zhaqian + ChibiOS - Copyright (C) 2023..2025 HorrorTroll + ChibiOS - Copyright (C) 2023..2025 Zhaqian Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -63,7 +63,7 @@ #define AT32_USBDIV AT32_USBDIV_DIV3 #define AT32_CLKOUT_SEL AT32_CLKOUT_SEL_NOCLOCK #define AT32_CLKOUTDIV AT32_CLKOUTDIV_DIV1 -#define AT32_ERTCSEL AT32_ERTCSEL_HEXTDIV +#define AT32_ERTCSEL AT32_ERTCSEL_NOCLOCK #define AT32_PVM_ENABLE FALSE #define AT32_PVMSEL AT32_PVMSEL_LEV1 @@ -136,10 +136,10 @@ #define AT32_I2C_USE_I2C1 FALSE #define AT32_I2C_USE_I2C2 FALSE #define AT32_I2C_BUSY_TIMEOUT 50 -#define AT32_I2C_I2C1_IRQ_PRIORITY 5 -#define AT32_I2C_I2C2_IRQ_PRIORITY 5 #define AT32_I2C_I2C1_DMA_PRIORITY 3 #define AT32_I2C_I2C2_DMA_PRIORITY 3 +#define AT32_I2C_I2C1_IRQ_PRIORITY 5 +#define AT32_I2C_I2C2_IRQ_PRIORITY 5 #define AT32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure") /* @@ -151,8 +151,6 @@ #define AT32_ICU_USE_TMR4 FALSE #define AT32_ICU_USE_TMR5 FALSE #define AT32_ICU_USE_TMR9 FALSE -#define AT32_ICU_USE_TMR10 FALSE -#define AT32_ICU_USE_TMR11 FALSE /* * PWM driver system settings. @@ -216,9 +214,13 @@ #define AT32_UART_USE_USART1 FALSE #define AT32_UART_USE_USART2 FALSE #define AT32_UART_USE_USART3 FALSE +#define AT32_UART_USE_UART4 FALSE +#define AT32_UART_USE_UART5 FALSE #define AT32_UART_USART1_DMA_PRIORITY 0 #define AT32_UART_USART2_DMA_PRIORITY 0 #define AT32_UART_USART3_DMA_PRIORITY 0 +#define AT32_UART_UART4_DMA_PRIORITY 0 +#define AT32_UART_UART5_DMA_PRIORITY 0 #define AT32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure") /* diff --git a/platforms/chibios/chibios_config.h b/platforms/chibios/chibios_config.h index 95136baf30..9ef8e9b4fe 100644 --- a/platforms/chibios/chibios_config.h +++ b/platforms/chibios/chibios_config.h @@ -149,8 +149,8 @@ # if defined(AT32F415) # define USE_GPIOV1 # define USE_I2CV1 -# define PAL_MODE_ALTERNATE_OPENDRAIN PAL_MODE_AT32_ALTERNATE_OPENDRAIN -# define PAL_MODE_ALTERNATE_PUSHPULL PAL_MODE_AT32_ALTERNATE_PUSHPULL +# define PAL_MODE_ALTERNATE_OPENDRAIN PAL_MODE_AT32_MUX_OPENDRAIN +# define PAL_MODE_ALTERNATE_PUSHPULL PAL_MODE_AT32_MUX_PUSHPULL # define AUDIO_PWM_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL # endif #endif -- cgit v1.2.3 From 5c33ff8be4a61a3246df187486021b858fa7b55d Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 20 Jan 2025 15:24:14 +0000 Subject: Remove DEFAULT_FOLDER where keyboard aliases already exists (#24838) --- keyboards/aeboards/constellation/rules.mk | 1 - keyboards/bpiphany/pegasushoof/rules.mk | 1 - keyboards/dp3000/rules.mk | 1 - keyboards/eek/rules.mk | 1 - keyboards/exclusive/e85/rules.mk | 1 - keyboards/keebio/dsp40/rules.mk | 1 - keyboards/keycapsss/plaid_pad/rules.mk | 1 - keyboards/kprepublic/jj40/rules.mk | 1 - keyboards/kprepublic/jj50/rules.mk | 1 - keyboards/lfkeyboards/lfk78/rules.mk | 1 - keyboards/lfkeyboards/smk65/rules.mk | 1 - keyboards/mechlovin/adelais/rgb_led/rules.mk | 1 - keyboards/mechlovin/adelais/standard_led/rules.mk | 1 - keyboards/mechlovin/delphine/rules.mk | 1 - keyboards/mechlovin/hannah60rgb/rules.mk | 1 - keyboards/mechlovin/hannah910/rules.mk | 1 - keyboards/mechlovin/hex4b/rules.mk | 1 - keyboards/melgeek/z70ultra/rules.mk | 1 - keyboards/montsinger/rebound/rules.mk | 1 - keyboards/polilla/rules.mk | 1 - keyboards/primekb/prime_l/rules.mk | 1 - keyboards/projectkb/alice/rules.mk | 1 - keyboards/rgbkb/pan/rev1/rules.mk | 2 -- keyboards/tkw/stoutgat/v2/rules.mk | 1 - keyboards/whale/sk/rules.mk | 1 - keyboards/ymdk/melody96/rules.mk | 1 - 26 files changed, 27 deletions(-) delete mode 100755 keyboards/aeboards/constellation/rules.mk delete mode 100644 keyboards/bpiphany/pegasushoof/rules.mk delete mode 100644 keyboards/dp3000/rules.mk delete mode 100644 keyboards/eek/rules.mk delete mode 100644 keyboards/exclusive/e85/rules.mk delete mode 100644 keyboards/keebio/dsp40/rules.mk delete mode 100644 keyboards/keycapsss/plaid_pad/rules.mk delete mode 100644 keyboards/kprepublic/jj40/rules.mk delete mode 100644 keyboards/kprepublic/jj50/rules.mk delete mode 100644 keyboards/lfkeyboards/lfk78/rules.mk delete mode 100644 keyboards/lfkeyboards/smk65/rules.mk delete mode 100644 keyboards/mechlovin/adelais/rgb_led/rules.mk delete mode 100644 keyboards/mechlovin/adelais/standard_led/rules.mk delete mode 100644 keyboards/mechlovin/delphine/rules.mk delete mode 100644 keyboards/mechlovin/hannah60rgb/rules.mk delete mode 100644 keyboards/mechlovin/hannah910/rules.mk delete mode 100644 keyboards/mechlovin/hex4b/rules.mk delete mode 100644 keyboards/melgeek/z70ultra/rules.mk delete mode 100644 keyboards/montsinger/rebound/rules.mk delete mode 100644 keyboards/polilla/rules.mk delete mode 100644 keyboards/primekb/prime_l/rules.mk delete mode 100644 keyboards/projectkb/alice/rules.mk delete mode 100644 keyboards/rgbkb/pan/rev1/rules.mk delete mode 100644 keyboards/tkw/stoutgat/v2/rules.mk delete mode 100644 keyboards/whale/sk/rules.mk delete mode 100644 keyboards/ymdk/melody96/rules.mk (limited to 'keyboards') diff --git a/keyboards/aeboards/constellation/rules.mk b/keyboards/aeboards/constellation/rules.mk deleted file mode 100755 index bd2af5d22b..0000000000 --- a/keyboards/aeboards/constellation/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = aeboards/constellation/rev1 diff --git a/keyboards/bpiphany/pegasushoof/rules.mk b/keyboards/bpiphany/pegasushoof/rules.mk deleted file mode 100644 index 20adecaa08..0000000000 --- a/keyboards/bpiphany/pegasushoof/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER=bpiphany/pegasushoof/2013 diff --git a/keyboards/dp3000/rules.mk b/keyboards/dp3000/rules.mk deleted file mode 100644 index 0f44aefd44..0000000000 --- a/keyboards/dp3000/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dp3000/rev1 diff --git a/keyboards/eek/rules.mk b/keyboards/eek/rules.mk deleted file mode 100644 index 65b8265b53..0000000000 --- a/keyboards/eek/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = eek/silk_down diff --git a/keyboards/exclusive/e85/rules.mk b/keyboards/exclusive/e85/rules.mk deleted file mode 100644 index 8eef46d0ab..0000000000 --- a/keyboards/exclusive/e85/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = exclusive/e85/hotswap diff --git a/keyboards/keebio/dsp40/rules.mk b/keyboards/keebio/dsp40/rules.mk deleted file mode 100644 index 3e8e9be18c..0000000000 --- a/keyboards/keebio/dsp40/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/dsp40/rev1 diff --git a/keyboards/keycapsss/plaid_pad/rules.mk b/keyboards/keycapsss/plaid_pad/rules.mk deleted file mode 100644 index 0ab7cc3141..0000000000 --- a/keyboards/keycapsss/plaid_pad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keycapsss/plaid_pad/rev1 diff --git a/keyboards/kprepublic/jj40/rules.mk b/keyboards/kprepublic/jj40/rules.mk deleted file mode 100644 index fa09523958..0000000000 --- a/keyboards/kprepublic/jj40/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kprepublic/jj40/rev1 diff --git a/keyboards/kprepublic/jj50/rules.mk b/keyboards/kprepublic/jj50/rules.mk deleted file mode 100644 index 8f77c68db2..0000000000 --- a/keyboards/kprepublic/jj50/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kprepublic/jj50/rev1 diff --git a/keyboards/lfkeyboards/lfk78/rules.mk b/keyboards/lfkeyboards/lfk78/rules.mk deleted file mode 100644 index 5ebd387c83..0000000000 --- a/keyboards/lfkeyboards/lfk78/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lfkeyboards/lfk78/revj diff --git a/keyboards/lfkeyboards/smk65/rules.mk b/keyboards/lfkeyboards/smk65/rules.mk deleted file mode 100644 index b2d7497663..0000000000 --- a/keyboards/lfkeyboards/smk65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lfkeyboards/smk65/revb diff --git a/keyboards/mechlovin/adelais/rgb_led/rules.mk b/keyboards/mechlovin/adelais/rgb_led/rules.mk deleted file mode 100644 index 18047f12c7..0000000000 --- a/keyboards/mechlovin/adelais/rgb_led/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/adelais/rgb_led/rev1 diff --git a/keyboards/mechlovin/adelais/standard_led/rules.mk b/keyboards/mechlovin/adelais/standard_led/rules.mk deleted file mode 100644 index a1d2ba038d..0000000000 --- a/keyboards/mechlovin/adelais/standard_led/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/adelais/standard_led/arm/rev2 diff --git a/keyboards/mechlovin/delphine/rules.mk b/keyboards/mechlovin/delphine/rules.mk deleted file mode 100644 index 819bce1cd3..0000000000 --- a/keyboards/mechlovin/delphine/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/delphine/mono_led diff --git a/keyboards/mechlovin/hannah60rgb/rules.mk b/keyboards/mechlovin/hannah60rgb/rules.mk deleted file mode 100644 index e876a56afb..0000000000 --- a/keyboards/mechlovin/hannah60rgb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/hannah60rgb/rev1 diff --git a/keyboards/mechlovin/hannah910/rules.mk b/keyboards/mechlovin/hannah910/rules.mk deleted file mode 100644 index a356867197..0000000000 --- a/keyboards/mechlovin/hannah910/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/hannah910/rev1 diff --git a/keyboards/mechlovin/hex4b/rules.mk b/keyboards/mechlovin/hex4b/rules.mk deleted file mode 100644 index e3d9ab46b4..0000000000 --- a/keyboards/mechlovin/hex4b/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/hex4b/rev1 diff --git a/keyboards/melgeek/z70ultra/rules.mk b/keyboards/melgeek/z70ultra/rules.mk deleted file mode 100644 index 8cc384b91f..0000000000 --- a/keyboards/melgeek/z70ultra/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = melgeek/z70ultra/rev1 diff --git a/keyboards/montsinger/rebound/rules.mk b/keyboards/montsinger/rebound/rules.mk deleted file mode 100644 index d277d184e1..0000000000 --- a/keyboards/montsinger/rebound/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = montsinger/rebound/rev1 diff --git a/keyboards/polilla/rules.mk b/keyboards/polilla/rules.mk deleted file mode 100644 index 0d72c40bb6..0000000000 --- a/keyboards/polilla/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = polilla/rev1 \ No newline at end of file diff --git a/keyboards/primekb/prime_l/rules.mk b/keyboards/primekb/prime_l/rules.mk deleted file mode 100644 index 235bfea925..0000000000 --- a/keyboards/primekb/prime_l/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = primekb/prime_l/v1 diff --git a/keyboards/projectkb/alice/rules.mk b/keyboards/projectkb/alice/rules.mk deleted file mode 100644 index d672576992..0000000000 --- a/keyboards/projectkb/alice/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = projectkb/alice/rev1 diff --git a/keyboards/rgbkb/pan/rev1/rules.mk b/keyboards/rgbkb/pan/rev1/rules.mk deleted file mode 100644 index 4d3c0f6679..0000000000 --- a/keyboards/rgbkb/pan/rev1/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -# The default configuration is a atmega32a -DEFAULT_FOLDER = rgbkb/pan/rev1/32a diff --git a/keyboards/tkw/stoutgat/v2/rules.mk b/keyboards/tkw/stoutgat/v2/rules.mk deleted file mode 100644 index 1a660af26c..0000000000 --- a/keyboards/tkw/stoutgat/v2/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = tkw/stoutgat/v2/f411 diff --git a/keyboards/whale/sk/rules.mk b/keyboards/whale/sk/rules.mk deleted file mode 100644 index 1a4ddedfa7..0000000000 --- a/keyboards/whale/sk/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = whale/sk/v3 diff --git a/keyboards/ymdk/melody96/rules.mk b/keyboards/ymdk/melody96/rules.mk deleted file mode 100644 index 806543977b..0000000000 --- a/keyboards/ymdk/melody96/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ymdk/melody96/soldered -- cgit v1.2.3 From 47575d4af16700e2dea8353c446dd4874e38d333 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 21 Jan 2025 02:30:19 +1100 Subject: LED drivers: remove deprecated defines (#24837) --- drivers/led/aw20216s.h | 260 ----------------------- drivers/led/issi/is31fl3731-mono.h | 27 --- drivers/led/issi/is31fl3731.h | 27 --- drivers/led/issi/is31fl3733-mono.h | 32 --- drivers/led/issi/is31fl3733.h | 262 ----------------------- drivers/led/issi/is31fl3736-mono.h | 140 ------------- drivers/led/issi/is31fl3736.h | 42 ---- drivers/led/issi/is31fl3737-mono.h | 30 --- drivers/led/issi/is31fl3737.h | 203 ------------------ drivers/led/issi/is31fl3741-mono.h | 401 ----------------------------------- drivers/led/issi/is31fl3741.h | 416 ------------------------------------- drivers/led/issi/is31fl3743a.h | 211 ------------------- drivers/led/snled27351-mono.h | 237 --------------------- drivers/led/snled27351.h | 249 ---------------------- keyboards/zsa/voyager/voyager.c | 2 +- 15 files changed, 1 insertion(+), 2538 deletions(-) (limited to 'keyboards') diff --git a/drivers/led/aw20216s.h b/drivers/led/aw20216s.h index b2c097125f..79b980fcdb 100644 --- a/drivers/led/aw20216s.h +++ b/drivers/led/aw20216s.h @@ -22,36 +22,6 @@ #include "gpio.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef AW_SCALING_MAX -# define AW20216S_SCALING_MAX AW_SCALING_MAX -#endif -#ifdef AW_GLOBAL_CURRENT_MAX -# define AW20216S_GLOBAL_CURRENT_MAX AW_GLOBAL_CURRENT_MAX -#endif -#ifdef AW_SPI_MODE -# define AW20216S_SPI_MODE AW_SPI_MODE -#endif -#ifdef AW_SPI_DIVISOR -# define AW20216S_SPI_DIVISOR AW_SPI_DIVISOR -#endif -#ifdef DRIVER_1_CS -# define AW20216S_CS_PIN_1 DRIVER_1_CS -#endif -#ifdef DRIVER_2_CS -# define AW20216S_CS_PIN_2 DRIVER_2_CS -#endif -#ifdef DRIVER_1_EN -# define AW20216S_EN_PIN DRIVER_1_EN -#endif -#ifdef AW20216S_EN_PIN_1 -# define AW20216S_EN_PIN AW20216S_EN_PIN_1 -#endif - -#define aw_led aw20216s_led_t -#define g_aw_leds g_aw20216s_leds -// ======== - #define AW20216S_ID (0b1010 << 4) #define AW20216S_WRITE 0 #define AW20216S_READ 1 @@ -328,233 +298,3 @@ void aw20216s_flush(void); #define SW12_CS16 0xD5 #define SW12_CS17 0xD6 #define SW12_CS18 0xD7 - -// DEPRECATED - DO NOT USE - -#define CS1_SW1 SW1_CS1 -#define CS2_SW1 SW1_CS2 -#define CS3_SW1 SW1_CS3 -#define CS4_SW1 SW1_CS4 -#define CS5_SW1 SW1_CS5 -#define CS6_SW1 SW1_CS6 -#define CS7_SW1 SW1_CS7 -#define CS8_SW1 SW1_CS8 -#define CS9_SW1 SW1_CS9 -#define CS10_SW1 SW1_CS10 -#define CS11_SW1 SW1_CS11 -#define CS12_SW1 SW1_CS12 -#define CS13_SW1 SW1_CS13 -#define CS14_SW1 SW1_CS14 -#define CS15_SW1 SW1_CS15 -#define CS16_SW1 SW1_CS16 -#define CS17_SW1 SW1_CS17 -#define CS18_SW1 SW1_CS18 - -#define CS1_SW2 SW2_CS1 -#define CS2_SW2 SW2_CS2 -#define CS3_SW2 SW2_CS3 -#define CS4_SW2 SW2_CS4 -#define CS5_SW2 SW2_CS5 -#define CS6_SW2 SW2_CS6 -#define CS7_SW2 SW2_CS7 -#define CS8_SW2 SW2_CS8 -#define CS9_SW2 SW2_CS9 -#define CS10_SW2 SW2_CS10 -#define CS11_SW2 SW2_CS11 -#define CS12_SW2 SW2_CS12 -#define CS13_SW2 SW2_CS13 -#define CS14_SW2 SW2_CS14 -#define CS15_SW2 SW2_CS15 -#define CS16_SW2 SW2_CS16 -#define CS17_SW2 SW2_CS17 -#define CS18_SW2 SW2_CS18 - -#define CS1_SW3 SW3_CS1 -#define CS2_SW3 SW3_CS2 -#define CS3_SW3 SW3_CS3 -#define CS4_SW3 SW3_CS4 -#define CS5_SW3 SW3_CS5 -#define CS6_SW3 SW3_CS6 -#define CS7_SW3 SW3_CS7 -#define CS8_SW3 SW3_CS8 -#define CS9_SW3 SW3_CS9 -#define CS10_SW3 SW3_CS10 -#define CS11_SW3 SW3_CS11 -#define CS12_SW3 SW3_CS12 -#define CS13_SW3 SW3_CS13 -#define CS14_SW3 SW3_CS14 -#define CS15_SW3 SW3_CS15 -#define CS16_SW3 SW3_CS16 -#define CS17_SW3 SW3_CS17 -#define CS18_SW3 SW3_CS18 - -#define CS1_SW4 SW4_CS1 -#define CS2_SW4 SW4_CS2 -#define CS3_SW4 SW4_CS3 -#define CS4_SW4 SW4_CS4 -#define CS5_SW4 SW4_CS5 -#define CS6_SW4 SW4_CS6 -#define CS7_SW4 SW4_CS7 -#define CS8_SW4 SW4_CS8 -#define CS9_SW4 SW4_CS9 -#define CS10_SW4 SW4_CS10 -#define CS11_SW4 SW4_CS11 -#define CS12_SW4 SW4_CS12 -#define CS13_SW4 SW4_CS13 -#define CS14_SW4 SW4_CS14 -#define CS15_SW4 SW4_CS15 -#define CS16_SW4 SW4_CS16 -#define CS17_SW4 SW4_CS17 -#define CS18_SW4 SW4_CS18 - -#define CS1_SW5 SW5_CS1 -#define CS2_SW5 SW5_CS2 -#define CS3_SW5 SW5_CS3 -#define CS4_SW5 SW5_CS4 -#define CS5_SW5 SW5_CS5 -#define CS6_SW5 SW5_CS6 -#define CS7_SW5 SW5_CS7 -#define CS8_SW5 SW5_CS8 -#define CS9_SW5 SW5_CS9 -#define CS10_SW5 SW5_CS10 -#define CS11_SW5 SW5_CS11 -#define CS12_SW5 SW5_CS12 -#define CS13_SW5 SW5_CS13 -#define CS14_SW5 SW5_CS14 -#define CS15_SW5 SW5_CS15 -#define CS16_SW5 SW5_CS16 -#define CS17_SW5 SW5_CS17 -#define CS18_SW5 SW5_CS18 - -#define CS1_SW6 SW6_CS1 -#define CS2_SW6 SW6_CS2 -#define CS3_SW6 SW6_CS3 -#define CS4_SW6 SW6_CS4 -#define CS5_SW6 SW6_CS5 -#define CS6_SW6 SW6_CS6 -#define CS7_SW6 SW6_CS7 -#define CS8_SW6 SW6_CS8 -#define CS9_SW6 SW6_CS9 -#define CS10_SW6 SW6_CS10 -#define CS11_SW6 SW6_CS11 -#define CS12_SW6 SW6_CS12 -#define CS13_SW6 SW6_CS13 -#define CS14_SW6 SW6_CS14 -#define CS15_SW6 SW6_CS15 -#define CS16_SW6 SW6_CS16 -#define CS17_SW6 SW6_CS17 -#define CS18_SW6 SW6_CS18 - -#define CS1_SW7 SW7_CS1 -#define CS2_SW7 SW7_CS2 -#define CS3_SW7 SW7_CS3 -#define CS4_SW7 SW7_CS4 -#define CS5_SW7 SW7_CS5 -#define CS6_SW7 SW7_CS6 -#define CS7_SW7 SW7_CS7 -#define CS8_SW7 SW7_CS8 -#define CS9_SW7 SW7_CS9 -#define CS10_SW7 SW7_CS10 -#define CS11_SW7 SW7_CS11 -#define CS12_SW7 SW7_CS12 -#define CS13_SW7 SW7_CS13 -#define CS14_SW7 SW7_CS14 -#define CS15_SW7 SW7_CS15 -#define CS16_SW7 SW7_CS16 -#define CS17_SW7 SW7_CS17 -#define CS18_SW7 SW7_CS18 - -#define CS1_SW8 SW8_CS1 -#define CS2_SW8 SW8_CS2 -#define CS3_SW8 SW8_CS3 -#define CS4_SW8 SW8_CS4 -#define CS5_SW8 SW8_CS5 -#define CS6_SW8 SW8_CS6 -#define CS7_SW8 SW8_CS7 -#define CS8_SW8 SW8_CS8 -#define CS9_SW8 SW8_CS9 -#define CS10_SW8 SW8_CS10 -#define CS11_SW8 SW8_CS11 -#define CS12_SW8 SW8_CS12 -#define CS13_SW8 SW8_CS13 -#define CS14_SW8 SW8_CS14 -#define CS15_SW8 SW8_CS15 -#define CS16_SW8 SW8_CS16 -#define CS17_SW8 SW8_CS17 -#define CS18_SW8 SW8_CS18 - -#define CS1_SW9 SW9_CS1 -#define CS2_SW9 SW9_CS2 -#define CS3_SW9 SW9_CS3 -#define CS4_SW9 SW9_CS4 -#define CS5_SW9 SW9_CS5 -#define CS6_SW9 SW9_CS6 -#define CS7_SW9 SW9_CS7 -#define CS8_SW9 SW9_CS8 -#define CS9_SW9 SW9_CS9 -#define CS10_SW9 SW9_CS10 -#define CS11_SW9 SW9_CS11 -#define CS12_SW9 SW9_CS12 -#define CS13_SW9 SW9_CS13 -#define CS14_SW9 SW9_CS14 -#define CS15_SW9 SW9_CS15 -#define CS16_SW9 SW9_CS16 -#define CS17_SW9 SW9_CS17 -#define CS18_SW9 SW9_CS18 - -#define CS1_SW10 SW10_CS1 -#define CS2_SW10 SW10_CS2 -#define CS3_SW10 SW10_CS3 -#define CS4_SW10 SW10_CS4 -#define CS5_SW10 SW10_CS5 -#define CS6_SW10 SW10_CS6 -#define CS7_SW10 SW10_CS7 -#define CS8_SW10 SW10_CS8 -#define CS9_SW10 SW10_CS9 -#define CS10_SW10 SW10_CS10 -#define CS11_SW10 SW10_CS11 -#define CS12_SW10 SW10_CS12 -#define CS13_SW10 SW10_CS13 -#define CS14_SW10 SW10_CS14 -#define CS15_SW10 SW10_CS15 -#define CS16_SW10 SW10_CS16 -#define CS17_SW10 SW10_CS17 -#define CS18_SW10 SW10_CS18 - -#define CS1_SW11 SW11_CS1 -#define CS2_SW11 SW11_CS2 -#define CS3_SW11 SW11_CS3 -#define CS4_SW11 SW11_CS4 -#define CS5_SW11 SW11_CS5 -#define CS6_SW11 SW11_CS6 -#define CS7_SW11 SW11_CS7 -#define CS8_SW11 SW11_CS8 -#define CS9_SW11 SW11_CS9 -#define CS10_SW11 SW11_CS10 -#define CS11_SW11 SW11_CS11 -#define CS12_SW11 SW11_CS12 -#define CS13_SW11 SW11_CS13 -#define CS14_SW11 SW11_CS14 -#define CS15_SW11 SW11_CS15 -#define CS16_SW11 SW11_CS16 -#define CS17_SW11 SW11_CS17 -#define CS18_SW11 SW11_CS18 - -#define CS1_SW12 SW12_CS1 -#define CS2_SW12 SW12_CS2 -#define CS3_SW12 SW12_CS3 -#define CS4_SW12 SW12_CS4 -#define CS5_SW12 SW12_CS5 -#define CS6_SW12 SW12_CS6 -#define CS7_SW12 SW12_CS7 -#define CS8_SW12 SW12_CS8 -#define CS9_SW12 SW12_CS9 -#define CS10_SW12 SW12_CS10 -#define CS11_SW12 SW12_CS11 -#define CS12_SW12 SW12_CS12 -#define CS13_SW12 SW12_CS13 -#define CS14_SW12 SW12_CS14 -#define CS15_SW12 SW12_CS15 -#define CS16_SW12 SW12_CS16 -#define CS17_SW12 SW12_CS17 -#define CS18_SW12 SW12_CS18 diff --git a/drivers/led/issi/is31fl3731-mono.h b/drivers/led/issi/is31fl3731-mono.h index e6e107d309..cc59b45cb3 100644 --- a/drivers/led/issi/is31fl3731-mono.h +++ b/drivers/led/issi/is31fl3731-mono.h @@ -23,33 +23,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef LED_DRIVER_ADDR_1 -# define IS31FL3731_I2C_ADDRESS_1 LED_DRIVER_ADDR_1 -#endif -#ifdef LED_DRIVER_ADDR_2 -# define IS31FL3731_I2C_ADDRESS_2 LED_DRIVER_ADDR_2 -#endif -#ifdef LED_DRIVER_ADDR_3 -# define IS31FL3731_I2C_ADDRESS_3 LED_DRIVER_ADDR_3 -#endif -#ifdef LED_DRIVER_ADDR_4 -# define IS31FL3731_I2C_ADDRESS_4 LED_DRIVER_ADDR_4 -#endif -#ifdef ISSI_TIMEOUT -# define IS31FL3731_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3731_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_3731_DEGHOST -# define IS31FL3731_DEGHOST ISSI_3731_DEGHOST -#endif - -#define is31_led is31fl3731_led_t -#define g_is31_leds g_is31fl3731_leds -// ======== - #define IS31FL3731_REG_COMMAND 0xFD #define IS31FL3731_COMMAND_FRAME_1 0x00 #define IS31FL3731_COMMAND_FRAME_2 0x01 diff --git a/drivers/led/issi/is31fl3731.h b/drivers/led/issi/is31fl3731.h index dc229c876d..947b7dc8e9 100644 --- a/drivers/led/issi/is31fl3731.h +++ b/drivers/led/issi/is31fl3731.h @@ -22,33 +22,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef DRIVER_ADDR_1 -# define IS31FL3731_I2C_ADDRESS_1 DRIVER_ADDR_1 -#endif -#ifdef DRIVER_ADDR_2 -# define IS31FL3731_I2C_ADDRESS_2 DRIVER_ADDR_2 -#endif -#ifdef DRIVER_ADDR_3 -# define IS31FL3731_I2C_ADDRESS_3 DRIVER_ADDR_3 -#endif -#ifdef DRIVER_ADDR_4 -# define IS31FL3731_I2C_ADDRESS_4 DRIVER_ADDR_4 -#endif -#ifdef ISSI_TIMEOUT -# define IS31FL3731_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3731_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_3731_DEGHOST -# define IS31FL3731_DEGHOST ISSI_3731_DEGHOST -#endif - -#define is31_led is31fl3731_led_t -#define g_is31_leds g_is31fl3731_leds -// ======== - #define IS31FL3731_REG_COMMAND 0xFD #define IS31FL3731_COMMAND_FRAME_1 0x00 #define IS31FL3731_COMMAND_FRAME_2 0x01 diff --git a/drivers/led/issi/is31fl3733-mono.h b/drivers/led/issi/is31fl3733-mono.h index 3786b2ed71..40d340a70d 100644 --- a/drivers/led/issi/is31fl3733-mono.h +++ b/drivers/led/issi/is31fl3733-mono.h @@ -25,38 +25,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef ISSI_TIMEOUT -# define IS31FL3733_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3733_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_PWM_FREQUENCY -# define IS31FL3733_PWM_FREQUENCY ISSI_PWM_FREQUENCY -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3733_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3733_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3733_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define is31_led is31fl3733_led_t -#define g_is31_leds g_is31fl3733_leds - -#define PUR_0R IS31FL3733_PUR_0_OHM -#define PUR_05KR IS31FL3733_PUR_1K_OHM -#define PUR_3KR IS31FL3733_PUR_2K_OHM -#define PUR_4KR IS31FL3733_PUR_4K_OHM -#define PUR_8KR IS31FL3733_PUR_8K_OHM -#define PUR_16KR IS31FL3733_PUR_16K_OHM -#define PUR_32KR IS31FL3733_PUR_32K_OHM -// ======== - #define IS31FL3733_REG_INTERRUPT_MASK 0xF0 #define IS31FL3733_REG_INTERRUPT_STATUS 0xF1 diff --git a/drivers/led/issi/is31fl3733.h b/drivers/led/issi/is31fl3733.h index fb60c76c2d..8757d5ab07 100644 --- a/drivers/led/issi/is31fl3733.h +++ b/drivers/led/issi/is31fl3733.h @@ -24,62 +24,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef DRIVER_ADDR_1 -# define IS31FL3733_I2C_ADDRESS_1 DRIVER_ADDR_1 -#endif -#ifdef DRIVER_ADDR_2 -# define IS31FL3733_I2C_ADDRESS_2 DRIVER_ADDR_2 -#endif -#ifdef DRIVER_ADDR_3 -# define IS31FL3733_I2C_ADDRESS_3 DRIVER_ADDR_3 -#endif -#ifdef DRIVER_ADDR_4 -# define IS31FL3733_I2C_ADDRESS_4 DRIVER_ADDR_4 -#endif -#ifdef DRIVER_SYNC_1 -# define IS31FL3733_SYNC_1 DRIVER_SYNC_1 -#endif -#ifdef DRIVER_SYNC_2 -# define IS31FL3733_SYNC_2 DRIVER_SYNC_2 -#endif -#ifdef DRIVER_SYNC_3 -# define IS31FL3733_SYNC_3 DRIVER_SYNC_3 -#endif -#ifdef DRIVER_SYNC_4 -# define IS31FL3733_SYNC_4 DRIVER_SYNC_4 -#endif -#ifdef ISSI_TIMEOUT -# define IS31FL3733_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3733_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_PWM_FREQUENCY -# define IS31FL3733_PWM_FREQUENCY ISSI_PWM_FREQUENCY -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3733_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3733_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3733_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define is31_led is31fl3733_led_t -#define g_is31_leds g_is31fl3733_leds - -#define PUR_0R IS31FL3733_PUR_0_OHM -#define PUR_05KR IS31FL3733_PUR_1K_OHM -#define PUR_3KR IS31FL3733_PUR_2K_OHM -#define PUR_4KR IS31FL3733_PUR_4K_OHM -#define PUR_8KR IS31FL3733_PUR_8K_OHM -#define PUR_16KR IS31FL3733_PUR_16K_OHM -#define PUR_32KR IS31FL3733_PUR_32K_OHM -// ======== - #define IS31FL3733_REG_INTERRUPT_MASK 0xF0 #define IS31FL3733_REG_INTERRUPT_STATUS 0xF1 @@ -389,209 +333,3 @@ void is31fl3733_flush(void); #define SW12_CS14 0xBD #define SW12_CS15 0xBE #define SW12_CS16 0xBF - -// DEPRECATED - DO NOT USE - -#define A_1 SW1_CS1 -#define A_2 SW1_CS2 -#define A_3 SW1_CS3 -#define A_4 SW1_CS4 -#define A_5 SW1_CS5 -#define A_6 SW1_CS6 -#define A_7 SW1_CS7 -#define A_8 SW1_CS8 -#define A_9 SW1_CS9 -#define A_10 SW1_CS10 -#define A_11 SW1_CS11 -#define A_12 SW1_CS12 -#define A_13 SW1_CS13 -#define A_14 SW1_CS14 -#define A_15 SW1_CS15 -#define A_16 SW1_CS16 - -#define B_1 SW2_CS1 -#define B_2 SW2_CS2 -#define B_3 SW2_CS3 -#define B_4 SW2_CS4 -#define B_5 SW2_CS5 -#define B_6 SW2_CS6 -#define B_7 SW2_CS7 -#define B_8 SW2_CS8 -#define B_9 SW2_CS9 -#define B_10 SW2_CS10 -#define B_11 SW2_CS11 -#define B_12 SW2_CS12 -#define B_13 SW2_CS13 -#define B_14 SW2_CS14 -#define B_15 SW2_CS15 -#define B_16 SW2_CS16 - -#define C_1 SW3_CS1 -#define C_2 SW3_CS2 -#define C_3 SW3_CS3 -#define C_4 SW3_CS4 -#define C_5 SW3_CS5 -#define C_6 SW3_CS6 -#define C_7 SW3_CS7 -#define C_8 SW3_CS8 -#define C_9 SW3_CS9 -#define C_10 SW3_CS10 -#define C_11 SW3_CS11 -#define C_12 SW3_CS12 -#define C_13 SW3_CS13 -#define C_14 SW3_CS14 -#define C_15 SW3_CS15 -#define C_16 SW3_CS16 - -#define D_1 SW4_CS1 -#define D_2 SW4_CS2 -#define D_3 SW4_CS3 -#define D_4 SW4_CS4 -#define D_5 SW4_CS5 -#define D_6 SW4_CS6 -#define D_7 SW4_CS7 -#define D_8 SW4_CS8 -#define D_9 SW4_CS9 -#define D_10 SW4_CS10 -#define D_11 SW4_CS11 -#define D_12 SW4_CS12 -#define D_13 SW4_CS13 -#define D_14 SW4_CS14 -#define D_15 SW4_CS15 -#define D_16 SW4_CS16 - -#define E_1 SW5_CS1 -#define E_2 SW5_CS2 -#define E_3 SW5_CS3 -#define E_4 SW5_CS4 -#define E_5 SW5_CS5 -#define E_6 SW5_CS6 -#define E_7 SW5_CS7 -#define E_8 SW5_CS8 -#define E_9 SW5_CS9 -#define E_10 SW5_CS10 -#define E_11 SW5_CS11 -#define E_12 SW5_CS12 -#define E_13 SW5_CS13 -#define E_14 SW5_CS14 -#define E_15 SW5_CS15 -#define E_16 SW5_CS16 - -#define F_1 SW6_CS1 -#define F_2 SW6_CS2 -#define F_3 SW6_CS3 -#define F_4 SW6_CS4 -#define F_5 SW6_CS5 -#define F_6 SW6_CS6 -#define F_7 SW6_CS7 -#define F_8 SW6_CS8 -#define F_9 SW6_CS9 -#define F_10 SW6_CS10 -#define F_11 SW6_CS11 -#define F_12 SW6_CS12 -#define F_13 SW6_CS13 -#define F_14 SW6_CS14 -#define F_15 SW6_CS15 -#define F_16 SW6_CS16 - -#define G_1 SW7_CS1 -#define G_2 SW7_CS2 -#define G_3 SW7_CS3 -#define G_4 SW7_CS4 -#define G_5 SW7_CS5 -#define G_6 SW7_CS6 -#define G_7 SW7_CS7 -#define G_8 SW7_CS8 -#define G_9 SW7_CS9 -#define G_10 SW7_CS10 -#define G_11 SW7_CS11 -#define G_12 SW7_CS12 -#define G_13 SW7_CS13 -#define G_14 SW7_CS14 -#define G_15 SW7_CS15 -#define G_16 SW7_CS16 - -#define H_1 SW8_CS1 -#define H_2 SW8_CS2 -#define H_3 SW8_CS3 -#define H_4 SW8_CS4 -#define H_5 SW8_CS5 -#define H_6 SW8_CS6 -#define H_7 SW8_CS7 -#define H_8 SW8_CS8 -#define H_9 SW8_CS9 -#define H_10 SW8_CS10 -#define H_11 SW8_CS11 -#define H_12 SW8_CS12 -#define H_13 SW8_CS13 -#define H_14 SW8_CS14 -#define H_15 SW8_CS15 -#define H_16 SW8_CS16 - -#define I_1 SW9_CS1 -#define I_2 SW9_CS2 -#define I_3 SW9_CS3 -#define I_4 SW9_CS4 -#define I_5 SW9_CS5 -#define I_6 SW9_CS6 -#define I_7 SW9_CS7 -#define I_8 SW9_CS8 -#define I_9 SW9_CS9 -#define I_10 SW9_CS10 -#define I_11 SW9_CS11 -#define I_12 SW9_CS12 -#define I_13 SW9_CS13 -#define I_14 SW9_CS14 -#define I_15 SW9_CS15 -#define I_16 SW9_CS16 - -#define J_1 SW10_CS1 -#define J_2 SW10_CS2 -#define J_3 SW10_CS3 -#define J_4 SW10_CS4 -#define J_5 SW10_CS5 -#define J_6 SW10_CS6 -#define J_7 SW10_CS7 -#define J_8 SW10_CS8 -#define J_9 SW10_CS9 -#define J_10 SW10_CS10 -#define J_11 SW10_CS11 -#define J_12 SW10_CS12 -#define J_13 SW10_CS13 -#define J_14 SW10_CS14 -#define J_15 SW10_CS15 -#define J_16 SW10_CS16 - -#define K_1 SW11_CS1 -#define K_2 SW11_CS2 -#define K_3 SW11_CS3 -#define K_4 SW11_CS4 -#define K_5 SW11_CS5 -#define K_6 SW11_CS6 -#define K_7 SW11_CS7 -#define K_8 SW11_CS8 -#define K_9 SW11_CS9 -#define K_10 SW11_CS10 -#define K_11 SW11_CS11 -#define K_12 SW11_CS12 -#define K_13 SW11_CS13 -#define K_14 SW11_CS14 -#define K_15 SW11_CS15 -#define K_16 SW11_CS16 - -#define L_1 SW12_CS1 -#define L_2 SW12_CS2 -#define L_3 SW12_CS3 -#define L_4 SW12_CS4 -#define L_5 SW12_CS5 -#define L_6 SW12_CS6 -#define L_7 SW12_CS7 -#define L_8 SW12_CS8 -#define L_9 SW12_CS9 -#define L_10 SW12_CS10 -#define L_11 SW12_CS11 -#define L_12 SW12_CS12 -#define L_13 SW12_CS13 -#define L_14 SW12_CS14 -#define L_15 SW12_CS15 -#define L_16 SW12_CS16 diff --git a/drivers/led/issi/is31fl3736-mono.h b/drivers/led/issi/is31fl3736-mono.h index 91c2e0420b..73441ea551 100644 --- a/drivers/led/issi/is31fl3736-mono.h +++ b/drivers/led/issi/is31fl3736-mono.h @@ -22,36 +22,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef ISSI_TIMEOUT -# define IS31FL3736_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3736_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3736_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3736_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3736_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define is31_led is31fl3736_led_t -#define g_is31_leds g_is31fl3736_leds - -#define PUR_0R IS31FL3736_PUR_0_OHM -#define PUR_05KR IS31FL3736_PUR_05K_OHM -#define PUR_1KR IS31FL3736_PUR_1K_OHM -#define PUR_2KR IS31FL3736_PUR_2K_OHM -#define PUR_4KR IS31FL3736_PUR_4K_OHM -#define PUR_8KR IS31FL3736_PUR_8K_OHM -#define PUR_16KR IS31FL3736_PUR_16K_OHM -#define PUR_32KR IS31FL3736_PUR_32K_OHM -// ======== - #define IS31FL3736_REG_INTERRUPT_MASK 0xF0 #define IS31FL3736_REG_INTERRUPT_STATUS 0xF1 @@ -259,113 +229,3 @@ void is31fl3736_flush(void); #define SW12_CS6 0xBA #define SW12_CS7 0xBC #define SW12_CS8 0xBE - -// DEPRECATED - DO NOT USE - -#define A_1 SW1_CS1 -#define A_2 SW1_CS2 -#define A_3 SW1_CS3 -#define A_4 SW1_CS4 -#define A_5 SW1_CS5 -#define A_6 SW1_CS6 -#define A_7 SW1_CS7 -#define A_8 SW1_CS8 - -#define B_1 SW2_CS1 -#define B_2 SW2_CS2 -#define B_3 SW2_CS3 -#define B_4 SW2_CS4 -#define B_5 SW2_CS5 -#define B_6 SW2_CS6 -#define B_7 SW2_CS7 -#define B_8 SW2_CS8 - -#define C_1 SW3_CS1 -#define C_2 SW3_CS2 -#define C_3 SW3_CS3 -#define C_4 SW3_CS4 -#define C_5 SW3_CS5 -#define C_6 SW3_CS6 -#define C_7 SW3_CS7 -#define C_8 SW3_CS8 - -#define D_1 SW4_CS1 -#define D_2 SW4_CS2 -#define D_3 SW4_CS3 -#define D_4 SW4_CS4 -#define D_5 SW4_CS5 -#define D_6 SW4_CS6 -#define D_7 SW4_CS7 -#define D_8 SW4_CS8 - -#define E_1 SW5_CS1 -#define E_2 SW5_CS2 -#define E_3 SW5_CS3 -#define E_4 SW5_CS4 -#define E_5 SW5_CS5 -#define E_6 SW5_CS6 -#define E_7 SW5_CS7 -#define E_8 SW5_CS8 - -#define F_1 SW6_CS1 -#define F_2 SW6_CS2 -#define F_3 SW6_CS3 -#define F_4 SW6_CS4 -#define F_5 SW6_CS5 -#define F_6 SW6_CS6 -#define F_7 SW6_CS7 -#define F_8 SW6_CS8 - -#define G_1 SW7_CS1 -#define G_2 SW7_CS2 -#define G_3 SW7_CS3 -#define G_4 SW7_CS4 -#define G_5 SW7_CS5 -#define G_6 SW7_CS6 -#define G_7 SW7_CS7 -#define G_8 SW7_CS8 - -#define H_1 SW8_CS1 -#define H_2 SW8_CS2 -#define H_3 SW8_CS3 -#define H_4 SW8_CS4 -#define H_5 SW8_CS5 -#define H_6 SW8_CS6 -#define H_7 SW8_CS7 -#define H_8 SW8_CS8 - -#define I_1 SW9_CS1 -#define I_2 SW9_CS2 -#define I_3 SW9_CS3 -#define I_4 SW9_CS4 -#define I_5 SW9_CS5 -#define I_6 SW9_CS6 -#define I_7 SW9_CS7 -#define I_8 SW9_CS8 - -#define J_1 SW10_CS1 -#define J_2 SW10_CS2 -#define J_3 SW10_CS3 -#define J_4 SW10_CS4 -#define J_5 SW10_CS5 -#define J_6 SW10_CS6 -#define J_7 SW10_CS7 -#define J_8 SW10_CS8 - -#define K_1 SW11_CS1 -#define K_2 SW11_CS2 -#define K_3 SW11_CS3 -#define K_4 SW11_CS4 -#define K_5 SW11_CS5 -#define K_6 SW11_CS6 -#define K_7 SW11_CS7 -#define K_8 SW11_CS8 - -#define L_1 SW12_CS1 -#define L_2 SW12_CS2 -#define L_3 SW12_CS3 -#define L_4 SW12_CS4 -#define L_5 SW12_CS5 -#define L_6 SW12_CS6 -#define L_7 SW12_CS7 -#define L_8 SW12_CS8 diff --git a/drivers/led/issi/is31fl3736.h b/drivers/led/issi/is31fl3736.h index dae7b3c812..f0eabad819 100644 --- a/drivers/led/issi/is31fl3736.h +++ b/drivers/led/issi/is31fl3736.h @@ -22,48 +22,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef DRIVER_ADDR_1 -# define IS31FL3736_I2C_ADDRESS_1 DRIVER_ADDR_1 -#endif -#ifdef DRIVER_ADDR_2 -# define IS31FL3736_I2C_ADDRESS_2 DRIVER_ADDR_2 -#endif -#ifdef DRIVER_ADDR_3 -# define IS31FL3736_I2C_ADDRESS_3 DRIVER_ADDR_3 -#endif -#ifdef DRIVER_ADDR_4 -# define IS31FL3736_I2C_ADDRESS_4 DRIVER_ADDR_4 -#endif -#ifdef ISSI_TIMEOUT -# define IS31FL3736_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3736_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3736_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3736_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3736_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define is31_led is31fl3736_led_t -#define g_is31_leds g_is31fl3736_leds - -#define PUR_0R IS31FL3736_PUR_0_OHM -#define PUR_05KR IS31FL3736_PUR_0K5_OHM -#define PUR_1KR IS31FL3736_PUR_1K_OHM -#define PUR_2KR IS31FL3736_PUR_2K_OHM -#define PUR_4KR IS31FL3736_PUR_4K_OHM -#define PUR_8KR IS31FL3736_PUR_8K_OHM -#define PUR_16KR IS31FL3736_PUR_16K_OHM -#define PUR_32KR IS31FL3736_PUR_32K_OHM -// ======== - #define IS31FL3736_REG_INTERRUPT_MASK 0xF0 #define IS31FL3736_REG_INTERRUPT_STATUS 0xF1 diff --git a/drivers/led/issi/is31fl3737-mono.h b/drivers/led/issi/is31fl3737-mono.h index 99151c1e7a..40380f9006 100644 --- a/drivers/led/issi/is31fl3737-mono.h +++ b/drivers/led/issi/is31fl3737-mono.h @@ -24,36 +24,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef ISSI_TIMEOUT -# define IS31FL3737_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3737_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_PWM_FREQUENCY -# define IS31FL3737_PWM_FREQUENCY ISSI_PWM_FREQUENCY -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3737_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3737_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3737_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define PUR_0R IS31FL3737_PUR_0_OHM -#define PUR_05KR IS31FL3737_PUR_0K5_OHM -#define PUR_1KR IS31FL3737_PUR_1K_OHM -#define PUR_2KR IS31FL3737_PUR_2K_OHM -#define PUR_4KR IS31FL3737_PUR_4K_OHM -#define PUR_8KR IS31FL3737_PUR_8K_OHM -#define PUR_16KR IS31FL3737_PUR_16K_OHM -#define PUR_32KR IS31FL3737_PUR_32K_OHM -// ======== - #define IS31FL3737_REG_INTERRUPT_MASK 0xF0 #define IS31FL3737_REG_INTERRUPT_STATUS 0xF1 diff --git a/drivers/led/issi/is31fl3737.h b/drivers/led/issi/is31fl3737.h index 735a3a1e30..c1a9306a87 100644 --- a/drivers/led/issi/is31fl3737.h +++ b/drivers/led/issi/is31fl3737.h @@ -24,51 +24,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef DRIVER_ADDR_1 -# define IS31FL3737_I2C_ADDRESS_1 DRIVER_ADDR_1 -#endif -#ifdef DRIVER_ADDR_2 -# define IS31FL3737_I2C_ADDRESS_2 DRIVER_ADDR_2 -#endif -#ifdef DRIVER_ADDR_3 -# define IS31FL3737_I2C_ADDRESS_3 DRIVER_ADDR_3 -#endif -#ifdef DRIVER_ADDR_4 -# define IS31FL3737_I2C_ADDRESS_4 DRIVER_ADDR_4 -#endif -#ifdef ISSI_TIMEOUT -# define IS31FL3737_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3737_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_PWM_FREQUENCY -# define IS31FL3737_PWM_FREQUENCY ISSI_PWM_FREQUENCY -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3737_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3737_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3737_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define is31_led is31fl3737_led_t -#define g_is31_leds g_is31fl3737_leds - -#define PUR_0R IS31FL3737_PUR_0_OHM -#define PUR_05KR IS31FL3737_PUR_0K5_OHM -#define PUR_1KR IS31FL3737_PUR_1K_OHM -#define PUR_2KR IS31FL3737_PUR_2K_OHM -#define PUR_4KR IS31FL3737_PUR_4K_OHM -#define PUR_8KR IS31FL3737_PUR_8K_OHM -#define PUR_16KR IS31FL3737_PUR_16K_OHM -#define PUR_32KR IS31FL3737_PUR_32K_OHM -// ======== - #define IS31FL3737_REG_INTERRUPT_MASK 0xF0 #define IS31FL3737_REG_INTERRUPT_STATUS 0xF1 @@ -314,161 +269,3 @@ void is31fl3737_flush(void); #define SW12_CS10 0xBB #define SW12_CS11 0xBC #define SW12_CS12 0xBD - -// DEPRECATED - DO NOT USE - -#define A_1 SW1_CS1 -#define A_2 SW1_CS2 -#define A_3 SW1_CS3 -#define A_4 SW1_CS4 -#define A_5 SW1_CS5 -#define A_6 SW1_CS6 -#define A_7 SW1_CS7 -#define A_8 SW1_CS8 -#define A_9 SW1_CS9 -#define A_10 SW1_CS10 -#define A_11 SW1_CS11 -#define A_12 SW1_CS12 - -#define B_1 SW2_CS1 -#define B_2 SW2_CS2 -#define B_3 SW2_CS3 -#define B_4 SW2_CS4 -#define B_5 SW2_CS5 -#define B_6 SW2_CS6 -#define B_7 SW2_CS7 -#define B_8 SW2_CS8 -#define B_9 SW2_CS9 -#define B_10 SW2_CS10 -#define B_11 SW2_CS11 -#define B_12 SW2_CS12 - -#define C_1 SW3_CS1 -#define C_2 SW3_CS2 -#define C_3 SW3_CS3 -#define C_4 SW3_CS4 -#define C_5 SW3_CS5 -#define C_6 SW3_CS6 -#define C_7 SW3_CS7 -#define C_8 SW3_CS8 -#define C_9 SW3_CS9 -#define C_10 SW3_CS10 -#define C_11 SW3_CS11 -#define C_12 SW3_CS12 - -#define D_1 SW4_CS1 -#define D_2 SW4_CS2 -#define D_3 SW4_CS3 -#define D_4 SW4_CS4 -#define D_5 SW4_CS5 -#define D_6 SW4_CS6 -#define D_7 SW4_CS7 -#define D_8 SW4_CS8 -#define D_9 SW4_CS9 -#define D_10 SW4_CS10 -#define D_11 SW4_CS11 -#define D_12 SW4_CS12 - -#define E_1 SW5_CS1 -#define E_2 SW5_CS2 -#define E_3 SW5_CS3 -#define E_4 SW5_CS4 -#define E_5 SW5_CS5 -#define E_6 SW5_CS6 -#define E_7 SW5_CS7 -#define E_8 SW5_CS8 -#define E_9 SW5_CS9 -#define E_10 SW5_CS10 -#define E_11 SW5_CS11 -#define E_12 SW5_CS12 - -#define F_1 SW6_CS1 -#define F_2 SW6_CS2 -#define F_3 SW6_CS3 -#define F_4 SW6_CS4 -#define F_5 SW6_CS5 -#define F_6 SW6_CS6 -#define F_7 SW6_CS7 -#define F_8 SW6_CS8 -#define F_9 SW6_CS9 -#define F_10 SW6_CS10 -#define F_11 SW6_CS11 -#define F_12 SW6_CS12 - -#define G_1 SW7_CS1 -#define G_2 SW7_CS2 -#define G_3 SW7_CS3 -#define G_4 SW7_CS4 -#define G_5 SW7_CS5 -#define G_6 SW7_CS6 -#define G_7 SW7_CS7 -#define G_8 SW7_CS8 -#define G_9 SW7_CS9 -#define G_10 SW7_CS10 -#define G_11 SW7_CS11 -#define G_12 SW7_CS12 - -#define H_1 SW8_CS1 -#define H_2 SW8_CS2 -#define H_3 SW8_CS3 -#define H_4 SW8_CS4 -#define H_5 SW8_CS5 -#define H_6 SW8_CS6 -#define H_7 SW8_CS7 -#define H_8 SW8_CS8 -#define H_9 SW8_CS9 -#define H_10 SW8_CS10 -#define H_11 SW8_CS11 -#define H_12 SW8_CS12 - -#define I_1 SW9_CS1 -#define I_2 SW9_CS2 -#define I_3 SW9_CS3 -#define I_4 SW9_CS4 -#define I_5 SW9_CS5 -#define I_6 SW9_CS6 -#define I_7 SW9_CS7 -#define I_8 SW9_CS8 -#define I_9 SW9_CS9 -#define I_10 SW9_CS10 -#define I_11 SW9_CS11 -#define I_12 SW9_CS12 - -#define J_1 SW10_CS1 -#define J_2 SW10_CS2 -#define J_3 SW10_CS3 -#define J_4 SW10_CS4 -#define J_5 SW10_CS5 -#define J_6 SW10_CS6 -#define J_7 SW10_CS7 -#define J_8 SW10_CS8 -#define J_9 SW10_CS9 -#define J_10 SW10_CS10 -#define J_11 SW10_CS11 -#define J_12 SW10_CS12 - -#define K_1 SW11_CS1 -#define K_2 SW11_CS2 -#define K_3 SW11_CS3 -#define K_4 SW11_CS4 -#define K_5 SW11_CS5 -#define K_6 SW11_CS6 -#define K_7 SW11_CS7 -#define K_8 SW11_CS8 -#define K_9 SW11_CS9 -#define K_10 SW11_CS10 -#define K_11 SW11_CS11 -#define K_12 SW11_CS12 - -#define L_1 SW12_CS1 -#define L_2 SW12_CS2 -#define L_3 SW12_CS3 -#define L_4 SW12_CS4 -#define L_5 SW12_CS5 -#define L_6 SW12_CS6 -#define L_7 SW12_CS7 -#define L_8 SW12_CS8 -#define L_9 SW12_CS9 -#define L_10 SW12_CS10 -#define L_11 SW12_CS11 -#define L_12 SW12_CS12 diff --git a/drivers/led/issi/is31fl3741-mono.h b/drivers/led/issi/is31fl3741-mono.h index 6d4f70b1b3..d8797bda32 100644 --- a/drivers/led/issi/is31fl3741-mono.h +++ b/drivers/led/issi/is31fl3741-mono.h @@ -24,36 +24,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef ISSI_TIMEOUT -# define IS31FL3741_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3741_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_CONFIGURATION -# define IS31FL3741_CONFIGURATION ISSI_CONFIGURATION -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3741_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3741_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3741_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define PUR_0R IS31FL3741_PUR_0_OHM -#define PUR_05KR IS31FL3741_PUR_0K5_OHM -#define PUR_1KR IS31FL3741_PUR_1K_OHM -#define PUR_2KR IS31FL3741_PUR_2K_OHM -#define PUR_4KR IS31FL3741_PUR_4K_OHM -#define PUR_8KR IS31FL3741_PUR_8K_OHM -#define PUR_16KR IS31FL3741_PUR_16K_OHM -#define PUR_32KR IS31FL3741_PUR_32K_OHM -// ======== - #define IS31FL3741_REG_INTERRUPT_MASK 0xF0 #define IS31FL3741_REG_INTERRUPT_STATUS 0xF1 #define IS31FL3741_REG_ID 0xFC @@ -514,374 +484,3 @@ void is31fl3741_flush(void); #define SW9_CS37 0x1A8 #define SW9_CS38 0x1A9 #define SW9_CS39 0x1AA - -// DEPRECATED - DO NOT USE - -#define CS1_SW1 SW1_CS1 -#define CS2_SW1 SW1_CS2 -#define CS3_SW1 SW1_CS3 -#define CS4_SW1 SW1_CS4 -#define CS5_SW1 SW1_CS5 -#define CS6_SW1 SW1_CS6 -#define CS7_SW1 SW1_CS7 -#define CS8_SW1 SW1_CS8 -#define CS9_SW1 SW1_CS9 -#define CS10_SW1 SW1_CS10 -#define CS11_SW1 SW1_CS11 -#define CS12_SW1 SW1_CS12 -#define CS13_SW1 SW1_CS13 -#define CS14_SW1 SW1_CS14 -#define CS15_SW1 SW1_CS15 -#define CS16_SW1 SW1_CS16 -#define CS17_SW1 SW1_CS17 -#define CS18_SW1 SW1_CS18 -#define CS19_SW1 SW1_CS19 -#define CS20_SW1 SW1_CS20 -#define CS21_SW1 SW1_CS21 -#define CS22_SW1 SW1_CS22 -#define CS23_SW1 SW1_CS23 -#define CS24_SW1 SW1_CS24 -#define CS25_SW1 SW1_CS25 -#define CS26_SW1 SW1_CS26 -#define CS27_SW1 SW1_CS27 -#define CS28_SW1 SW1_CS28 -#define CS29_SW1 SW1_CS29 -#define CS30_SW1 SW1_CS30 - -#define CS1_SW2 SW2_CS1 -#define CS2_SW2 SW2_CS2 -#define CS3_SW2 SW2_CS3 -#define CS4_SW2 SW2_CS4 -#define CS5_SW2 SW2_CS5 -#define CS6_SW2 SW2_CS6 -#define CS7_SW2 SW2_CS7 -#define CS8_SW2 SW2_CS8 -#define CS9_SW2 SW2_CS9 -#define CS10_SW2 SW2_CS10 -#define CS11_SW2 SW2_CS11 -#define CS12_SW2 SW2_CS12 -#define CS13_SW2 SW2_CS13 -#define CS14_SW2 SW2_CS14 -#define CS15_SW2 SW2_CS15 -#define CS16_SW2 SW2_CS16 -#define CS17_SW2 SW2_CS17 -#define CS18_SW2 SW2_CS18 -#define CS19_SW2 SW2_CS19 -#define CS20_SW2 SW2_CS20 -#define CS21_SW2 SW2_CS21 -#define CS22_SW2 SW2_CS22 -#define CS23_SW2 SW2_CS23 -#define CS24_SW2 SW2_CS24 -#define CS25_SW2 SW2_CS25 -#define CS26_SW2 SW2_CS26 -#define CS27_SW2 SW2_CS27 -#define CS28_SW2 SW2_CS28 -#define CS29_SW2 SW2_CS29 -#define CS30_SW2 SW2_CS30 - -#define CS1_SW3 SW3_CS1 -#define CS2_SW3 SW3_CS2 -#define CS3_SW3 SW3_CS3 -#define CS4_SW3 SW3_CS4 -#define CS5_SW3 SW3_CS5 -#define CS6_SW3 SW3_CS6 -#define CS7_SW3 SW3_CS7 -#define CS8_SW3 SW3_CS8 -#define CS9_SW3 SW3_CS9 -#define CS10_SW3 SW3_CS10 -#define CS11_SW3 SW3_CS11 -#define CS12_SW3 SW3_CS12 -#define CS13_SW3 SW3_CS13 -#define CS14_SW3 SW3_CS14 -#define CS15_SW3 SW3_CS15 -#define CS16_SW3 SW3_CS16 -#define CS17_SW3 SW3_CS17 -#define CS18_SW3 SW3_CS18 -#define CS19_SW3 SW3_CS19 -#define CS20_SW3 SW3_CS20 -#define CS21_SW3 SW3_CS21 -#define CS22_SW3 SW3_CS22 -#define CS23_SW3 SW3_CS23 -#define CS24_SW3 SW3_CS24 -#define CS25_SW3 SW3_CS25 -#define CS26_SW3 SW3_CS26 -#define CS27_SW3 SW3_CS27 -#define CS28_SW3 SW3_CS28 -#define CS29_SW3 SW3_CS29 -#define CS30_SW3 SW3_CS30 - -#define CS1_SW4 SW4_CS1 -#define CS2_SW4 SW4_CS2 -#define CS3_SW4 SW4_CS3 -#define CS4_SW4 SW4_CS4 -#define CS5_SW4 SW4_CS5 -#define CS6_SW4 SW4_CS6 -#define CS7_SW4 SW4_CS7 -#define CS8_SW4 SW4_CS8 -#define CS9_SW4 SW4_CS9 -#define CS10_SW4 SW4_CS10 -#define CS11_SW4 SW4_CS11 -#define CS12_SW4 SW4_CS12 -#define CS13_SW4 SW4_CS13 -#define CS14_SW4 SW4_CS14 -#define CS15_SW4 SW4_CS15 -#define CS16_SW4 SW4_CS16 -#define CS17_SW4 SW4_CS17 -#define CS18_SW4 SW4_CS18 -#define CS19_SW4 SW4_CS19 -#define CS20_SW4 SW4_CS20 -#define CS21_SW4 SW4_CS21 -#define CS22_SW4 SW4_CS22 -#define CS23_SW4 SW4_CS23 -#define CS24_SW4 SW4_CS24 -#define CS25_SW4 SW4_CS25 -#define CS26_SW4 SW4_CS26 -#define CS27_SW4 SW4_CS27 -#define CS28_SW4 SW4_CS28 -#define CS29_SW4 SW4_CS29 -#define CS30_SW4 SW4_CS30 - -#define CS1_SW5 SW5_CS1 -#define CS2_SW5 SW5_CS2 -#define CS3_SW5 SW5_CS3 -#define CS4_SW5 SW5_CS4 -#define CS5_SW5 SW5_CS5 -#define CS6_SW5 SW5_CS6 -#define CS7_SW5 SW5_CS7 -#define CS8_SW5 SW5_CS8 -#define CS9_SW5 SW5_CS9 -#define CS10_SW5 SW5_CS10 -#define CS11_SW5 SW5_CS11 -#define CS12_SW5 SW5_CS12 -#define CS13_SW5 SW5_CS13 -#define CS14_SW5 SW5_CS14 -#define CS15_SW5 SW5_CS15 -#define CS16_SW5 SW5_CS16 -#define CS17_SW5 SW5_CS17 -#define CS18_SW5 SW5_CS18 -#define CS19_SW5 SW5_CS19 -#define CS20_SW5 SW5_CS20 -#define CS21_SW5 SW5_CS21 -#define CS22_SW5 SW5_CS22 -#define CS23_SW5 SW5_CS23 -#define CS24_SW5 SW5_CS24 -#define CS25_SW5 SW5_CS25 -#define CS26_SW5 SW5_CS26 -#define CS27_SW5 SW5_CS27 -#define CS28_SW5 SW5_CS28 -#define CS29_SW5 SW5_CS29 -#define CS30_SW5 SW5_CS30 - -#define CS1_SW6 SW6_CS1 -#define CS2_SW6 SW6_CS2 -#define CS3_SW6 SW6_CS3 -#define CS4_SW6 SW6_CS4 -#define CS5_SW6 SW6_CS5 -#define CS6_SW6 SW6_CS6 -#define CS7_SW6 SW6_CS7 -#define CS8_SW6 SW6_CS8 -#define CS9_SW6 SW6_CS9 -#define CS10_SW6 SW6_CS10 -#define CS11_SW6 SW6_CS11 -#define CS12_SW6 SW6_CS12 -#define CS13_SW6 SW6_CS13 -#define CS14_SW6 SW6_CS14 -#define CS15_SW6 SW6_CS15 -#define CS16_SW6 SW6_CS16 -#define CS17_SW6 SW6_CS17 -#define CS18_SW6 SW6_CS18 -#define CS19_SW6 SW6_CS19 -#define CS20_SW6 SW6_CS20 -#define CS21_SW6 SW6_CS21 -#define CS22_SW6 SW6_CS22 -#define CS23_SW6 SW6_CS23 -#define CS24_SW6 SW6_CS24 -#define CS25_SW6 SW6_CS25 -#define CS26_SW6 SW6_CS26 -#define CS27_SW6 SW6_CS27 -#define CS28_SW6 SW6_CS28 -#define CS29_SW6 SW6_CS29 -#define CS30_SW6 SW6_CS30 - -#define CS1_SW7 SW7_CS1 -#define CS2_SW7 SW7_CS2 -#define CS3_SW7 SW7_CS3 -#define CS4_SW7 SW7_CS4 -#define CS5_SW7 SW7_CS5 -#define CS6_SW7 SW7_CS6 -#define CS7_SW7 SW7_CS7 -#define CS8_SW7 SW7_CS8 -#define CS9_SW7 SW7_CS9 -#define CS10_SW7 SW7_CS10 -#define CS11_SW7 SW7_CS11 -#define CS12_SW7 SW7_CS12 -#define CS13_SW7 SW7_CS13 -#define CS14_SW7 SW7_CS14 -#define CS15_SW7 SW7_CS15 -#define CS16_SW7 SW7_CS16 -#define CS17_SW7 SW7_CS17 -#define CS18_SW7 SW7_CS18 -#define CS19_SW7 SW7_CS19 -#define CS20_SW7 SW7_CS20 -#define CS21_SW7 SW7_CS21 -#define CS22_SW7 SW7_CS22 -#define CS23_SW7 SW7_CS23 -#define CS24_SW7 SW7_CS24 -#define CS25_SW7 SW7_CS25 -#define CS26_SW7 SW7_CS26 -#define CS27_SW7 SW7_CS27 -#define CS28_SW7 SW7_CS28 -#define CS29_SW7 SW7_CS29 -#define CS30_SW7 SW7_CS30 - -#define CS1_SW8 SW8_CS1 -#define CS2_SW8 SW8_CS2 -#define CS3_SW8 SW8_CS3 -#define CS4_SW8 SW8_CS4 -#define CS5_SW8 SW8_CS5 -#define CS6_SW8 SW8_CS6 -#define CS7_SW8 SW8_CS7 -#define CS8_SW8 SW8_CS8 -#define CS9_SW8 SW8_CS9 -#define CS10_SW8 SW8_CS10 -#define CS11_SW8 SW8_CS11 -#define CS12_SW8 SW8_CS12 -#define CS13_SW8 SW8_CS13 -#define CS14_SW8 SW8_CS14 -#define CS15_SW8 SW8_CS15 -#define CS16_SW8 SW8_CS16 -#define CS17_SW8 SW8_CS17 -#define CS18_SW8 SW8_CS18 -#define CS19_SW8 SW8_CS19 -#define CS20_SW8 SW8_CS20 -#define CS21_SW8 SW8_CS21 -#define CS22_SW8 SW8_CS22 -#define CS23_SW8 SW8_CS23 -#define CS24_SW8 SW8_CS24 -#define CS25_SW8 SW8_CS25 -#define CS26_SW8 SW8_CS26 -#define CS27_SW8 SW8_CS27 -#define CS28_SW8 SW8_CS28 -#define CS29_SW8 SW8_CS29 -#define CS30_SW8 SW8_CS30 - -#define CS1_SW9 SW9_CS1 -#define CS2_SW9 SW9_CS2 -#define CS3_SW9 SW9_CS3 -#define CS4_SW9 SW9_CS4 -#define CS5_SW9 SW9_CS5 -#define CS6_SW9 SW9_CS6 -#define CS7_SW9 SW9_CS7 -#define CS8_SW9 SW9_CS8 -#define CS9_SW9 SW9_CS9 -#define CS10_SW9 SW9_CS10 -#define CS11_SW9 SW9_CS11 -#define CS12_SW9 SW9_CS12 -#define CS13_SW9 SW9_CS13 -#define CS14_SW9 SW9_CS14 -#define CS15_SW9 SW9_CS15 -#define CS16_SW9 SW9_CS16 -#define CS17_SW9 SW9_CS17 -#define CS18_SW9 SW9_CS18 -#define CS19_SW9 SW9_CS19 -#define CS20_SW9 SW9_CS20 -#define CS21_SW9 SW9_CS21 -#define CS22_SW9 SW9_CS22 -#define CS23_SW9 SW9_CS23 -#define CS24_SW9 SW9_CS24 -#define CS25_SW9 SW9_CS25 -#define CS26_SW9 SW9_CS26 -#define CS27_SW9 SW9_CS27 -#define CS28_SW9 SW9_CS28 -#define CS29_SW9 SW9_CS29 -#define CS30_SW9 SW9_CS30 - -#define CS31_SW1 SW1_CS31 -#define CS32_SW1 SW1_CS32 -#define CS33_SW1 SW1_CS33 -#define CS34_SW1 SW1_CS34 -#define CS35_SW1 SW1_CS35 -#define CS36_SW1 SW1_CS36 -#define CS37_SW1 SW1_CS37 -#define CS38_SW1 SW1_CS38 -#define CS39_SW1 SW1_CS39 - -#define CS31_SW2 SW2_CS31 -#define CS32_SW2 SW2_CS32 -#define CS33_SW2 SW2_CS33 -#define CS34_SW2 SW2_CS34 -#define CS35_SW2 SW2_CS35 -#define CS36_SW2 SW2_CS36 -#define CS37_SW2 SW2_CS37 -#define CS38_SW2 SW2_CS38 -#define CS39_SW2 SW2_CS39 - -#define CS31_SW3 SW3_CS31 -#define CS32_SW3 SW3_CS32 -#define CS33_SW3 SW3_CS33 -#define CS34_SW3 SW3_CS34 -#define CS35_SW3 SW3_CS35 -#define CS36_SW3 SW3_CS36 -#define CS37_SW3 SW3_CS37 -#define CS38_SW3 SW3_CS38 -#define CS39_SW3 SW3_CS39 - -#define CS31_SW4 SW4_CS31 -#define CS32_SW4 SW4_CS32 -#define CS33_SW4 SW4_CS33 -#define CS34_SW4 SW4_CS34 -#define CS35_SW4 SW4_CS35 -#define CS36_SW4 SW4_CS36 -#define CS37_SW4 SW4_CS37 -#define CS38_SW4 SW4_CS38 -#define CS39_SW4 SW4_CS39 - -#define CS31_SW5 SW5_CS31 -#define CS32_SW5 SW5_CS32 -#define CS33_SW5 SW5_CS33 -#define CS34_SW5 SW5_CS34 -#define CS35_SW5 SW5_CS35 -#define CS36_SW5 SW5_CS36 -#define CS37_SW5 SW5_CS37 -#define CS38_SW5 SW5_CS38 -#define CS39_SW5 SW5_CS39 - -#define CS31_SW6 SW6_CS31 -#define CS32_SW6 SW6_CS32 -#define CS33_SW6 SW6_CS33 -#define CS34_SW6 SW6_CS34 -#define CS35_SW6 SW6_CS35 -#define CS36_SW6 SW6_CS36 -#define CS37_SW6 SW6_CS37 -#define CS38_SW6 SW6_CS38 -#define CS39_SW6 SW6_CS39 - -#define CS31_SW7 SW7_CS31 -#define CS32_SW7 SW7_CS32 -#define CS33_SW7 SW7_CS33 -#define CS34_SW7 SW7_CS34 -#define CS35_SW7 SW7_CS35 -#define CS36_SW7 SW7_CS36 -#define CS37_SW7 SW7_CS37 -#define CS38_SW7 SW7_CS38 -#define CS39_SW7 SW7_CS39 - -#define CS31_SW8 SW8_CS31 -#define CS32_SW8 SW8_CS32 -#define CS33_SW8 SW8_CS33 -#define CS34_SW8 SW8_CS34 -#define CS35_SW8 SW8_CS35 -#define CS36_SW8 SW8_CS36 -#define CS37_SW8 SW8_CS37 -#define CS38_SW8 SW8_CS38 -#define CS39_SW8 SW8_CS39 - -#define CS31_SW9 SW9_CS31 -#define CS32_SW9 SW9_CS32 -#define CS33_SW9 SW9_CS33 -#define CS34_SW9 SW9_CS34 -#define CS35_SW9 SW9_CS35 -#define CS36_SW9 SW9_CS36 -#define CS37_SW9 SW9_CS37 -#define CS38_SW9 SW9_CS38 -#define CS39_SW9 SW9_CS39 diff --git a/drivers/led/issi/is31fl3741.h b/drivers/led/issi/is31fl3741.h index cc9637a4e8..343dffe068 100644 --- a/drivers/led/issi/is31fl3741.h +++ b/drivers/led/issi/is31fl3741.h @@ -24,51 +24,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef DRIVER_ADDR_1 -# define IS31FL3741_I2C_ADDRESS_1 DRIVER_ADDR_1 -#endif -#ifdef DRIVER_ADDR_2 -# define IS31FL3741_I2C_ADDRESS_2 DRIVER_ADDR_2 -#endif -#ifdef DRIVER_ADDR_3 -# define IS31FL3741_I2C_ADDRESS_3 DRIVER_ADDR_3 -#endif -#ifdef DRIVER_ADDR_4 -# define IS31FL3741_I2C_ADDRESS_4 DRIVER_ADDR_4 -#endif -#ifdef ISSI_TIMEOUT -# define IS31FL3741_I2C_TIMEOUT ISSI_TIMEOUT -#endif -#ifdef ISSI_PERSISTENCE -# define IS31FL3741_I2C_PERSISTENCE ISSI_PERSISTENCE -#endif -#ifdef ISSI_CONFIGURATION -# define IS31FL3741_CONFIGURATION ISSI_CONFIGURATION -#endif -#ifdef ISSI_SWPULLUP -# define IS31FL3741_SW_PULLUP ISSI_SWPULLUP -#endif -#ifdef ISSI_CSPULLUP -# define IS31FL3741_CS_PULLDOWN ISSI_CSPULLUP -#endif -#ifdef ISSI_GLOBALCURRENT -# define IS31FL3741_GLOBAL_CURRENT ISSI_GLOBALCURRENT -#endif - -#define is31_led is31fl3741_led_t -#define g_is31_leds g_is31fl3741_leds - -#define PUR_0R IS31FL3741_PUR_0_OHM -#define PUR_05KR IS31FL3741_PUR_0K5_OHM -#define PUR_1KR IS31FL3741_PUR_1K_OHM -#define PUR_2KR IS31FL3741_PUR_2K_OHM -#define PUR_4KR IS31FL3741_PUR_4K_OHM -#define PUR_8KR IS31FL3741_PUR_8K_OHM -#define PUR_16KR IS31FL3741_PUR_16K_OHM -#define PUR_32KR IS31FL3741_PUR_32K_OHM -// ======== - #define IS31FL3741_REG_INTERRUPT_MASK 0xF0 #define IS31FL3741_REG_INTERRUPT_STATUS 0xF1 #define IS31FL3741_REG_ID 0xFC @@ -531,374 +486,3 @@ void is31fl3741_flush(void); #define SW9_CS37 0x1A8 #define SW9_CS38 0x1A9 #define SW9_CS39 0x1AA - -// DEPRECATED - DO NOT USE - -#define CS1_SW1 SW1_CS1 -#define CS2_SW1 SW1_CS2 -#define CS3_SW1 SW1_CS3 -#define CS4_SW1 SW1_CS4 -#define CS5_SW1 SW1_CS5 -#define CS6_SW1 SW1_CS6 -#define CS7_SW1 SW1_CS7 -#define CS8_SW1 SW1_CS8 -#define CS9_SW1 SW1_CS9 -#define CS10_SW1 SW1_CS10 -#define CS11_SW1 SW1_CS11 -#define CS12_SW1 SW1_CS12 -#define CS13_SW1 SW1_CS13 -#define CS14_SW1 SW1_CS14 -#define CS15_SW1 SW1_CS15 -#define CS16_SW1 SW1_CS16 -#define CS17_SW1 SW1_CS17 -#define CS18_SW1 SW1_CS18 -#define CS19_SW1 SW1_CS19 -#define CS20_SW1 SW1_CS20 -#define CS21_SW1 SW1_CS21 -#define CS22_SW1 SW1_CS22 -#define CS23_SW1 SW1_CS23 -#define CS24_SW1 SW1_CS24 -#define CS25_SW1 SW1_CS25 -#define CS26_SW1 SW1_CS26 -#define CS27_SW1 SW1_CS27 -#define CS28_SW1 SW1_CS28 -#define CS29_SW1 SW1_CS29 -#define CS30_SW1 SW1_CS30 - -#define CS1_SW2 SW2_CS1 -#define CS2_SW2 SW2_CS2 -#define CS3_SW2 SW2_CS3 -#define CS4_SW2 SW2_CS4 -#define CS5_SW2 SW2_CS5 -#define CS6_SW2 SW2_CS6 -#define CS7_SW2 SW2_CS7 -#define CS8_SW2 SW2_CS8 -#define CS9_SW2 SW2_CS9 -#define CS10_SW2 SW2_CS10 -#define CS11_SW2 SW2_CS11 -#define CS12_SW2 SW2_CS12 -#define CS13_SW2 SW2_CS13 -#define CS14_SW2 SW2_CS14 -#define CS15_SW2 SW2_CS15 -#define CS16_SW2 SW2_CS16 -#define CS17_SW2 SW2_CS17 -#define CS18_SW2 SW2_CS18 -#define CS19_SW2 SW2_CS19 -#define CS20_SW2 SW2_CS20 -#define CS21_SW2 SW2_CS21 -#define CS22_SW2 SW2_CS22 -#define CS23_SW2 SW2_CS23 -#define CS24_SW2 SW2_CS24 -#define CS25_SW2 SW2_CS25 -#define CS26_SW2 SW2_CS26 -#define CS27_SW2 SW2_CS27 -#define CS28_SW2 SW2_CS28 -#define CS29_SW2 SW2_CS29 -#define CS30_SW2 SW2_CS30 - -#define CS1_SW3 SW3_CS1 -#define CS2_SW3 SW3_CS2 -#define CS3_SW3 SW3_CS3 -#define CS4_SW3 SW3_CS4 -#define CS5_SW3 SW3_CS5 -#define CS6_SW3 SW3_CS6 -#define CS7_SW3 SW3_CS7 -#define CS8_SW3 SW3_CS8 -#define CS9_SW3 SW3_CS9 -#define CS10_SW3 SW3_CS10 -#define CS11_SW3 SW3_CS11 -#define CS12_SW3 SW3_CS12 -#define CS13_SW3 SW3_CS13 -#define CS14_SW3 SW3_CS14 -#define CS15_SW3 SW3_CS15 -#define CS16_SW3 SW3_CS16 -#define CS17_SW3 SW3_CS17 -#define CS18_SW3 SW3_CS18 -#define CS19_SW3 SW3_CS19 -#define CS20_SW3 SW3_CS20 -#define CS21_SW3 SW3_CS21 -#define CS22_SW3 SW3_CS22 -#define CS23_SW3 SW3_CS23 -#define CS24_SW3 SW3_CS24 -#define CS25_SW3 SW3_CS25 -#define CS26_SW3 SW3_CS26 -#define CS27_SW3 SW3_CS27 -#define CS28_SW3 SW3_CS28 -#define CS29_SW3 SW3_CS29 -#define CS30_SW3 SW3_CS30 - -#define CS1_SW4 SW4_CS1 -#define CS2_SW4 SW4_CS2 -#define CS3_SW4 SW4_CS3 -#define CS4_SW4 SW4_CS4 -#define CS5_SW4 SW4_CS5 -#define CS6_SW4 SW4_CS6 -#define CS7_SW4 SW4_CS7 -#define CS8_SW4 SW4_CS8 -#define CS9_SW4 SW4_CS9 -#define CS10_SW4 SW4_CS10 -#define CS11_SW4 SW4_CS11 -#define CS12_SW4 SW4_CS12 -#define CS13_SW4 SW4_CS13 -#define CS14_SW4 SW4_CS14 -#define CS15_SW4 SW4_CS15 -#define CS16_SW4 SW4_CS16 -#define CS17_SW4 SW4_CS17 -#define CS18_SW4 SW4_CS18 -#define CS19_SW4 SW4_CS19 -#define CS20_SW4 SW4_CS20 -#define CS21_SW4 SW4_CS21 -#define CS22_SW4 SW4_CS22 -#define CS23_SW4 SW4_CS23 -#define CS24_SW4 SW4_CS24 -#define CS25_SW4 SW4_CS25 -#define CS26_SW4 SW4_CS26 -#define CS27_SW4 SW4_CS27 -#define CS28_SW4 SW4_CS28 -#define CS29_SW4 SW4_CS29 -#define CS30_SW4 SW4_CS30 - -#define CS1_SW5 SW5_CS1 -#define CS2_SW5 SW5_CS2 -#define CS3_SW5 SW5_CS3 -#define CS4_SW5 SW5_CS4 -#define CS5_SW5 SW5_CS5 -#define CS6_SW5 SW5_CS6 -#define CS7_SW5 SW5_CS7 -#define CS8_SW5 SW5_CS8 -#define CS9_SW5 SW5_CS9 -#define CS10_SW5 SW5_CS10 -#define CS11_SW5 SW5_CS11 -#define CS12_SW5 SW5_CS12 -#define CS13_SW5 SW5_CS13 -#define CS14_SW5 SW5_CS14 -#define CS15_SW5 SW5_CS15 -#define CS16_SW5 SW5_CS16 -#define CS17_SW5 SW5_CS17 -#define CS18_SW5 SW5_CS18 -#define CS19_SW5 SW5_CS19 -#define CS20_SW5 SW5_CS20 -#define CS21_SW5 SW5_CS21 -#define CS22_SW5 SW5_CS22 -#define CS23_SW5 SW5_CS23 -#define CS24_SW5 SW5_CS24 -#define CS25_SW5 SW5_CS25 -#define CS26_SW5 SW5_CS26 -#define CS27_SW5 SW5_CS27 -#define CS28_SW5 SW5_CS28 -#define CS29_SW5 SW5_CS29 -#define CS30_SW5 SW5_CS30 - -#define CS1_SW6 SW6_CS1 -#define CS2_SW6 SW6_CS2 -#define CS3_SW6 SW6_CS3 -#define CS4_SW6 SW6_CS4 -#define CS5_SW6 SW6_CS5 -#define CS6_SW6 SW6_CS6 -#define CS7_SW6 SW6_CS7 -#define CS8_SW6 SW6_CS8 -#define CS9_SW6 SW6_CS9 -#define CS10_SW6 SW6_CS10 -#define CS11_SW6 SW6_CS11 -#define CS12_SW6 SW6_CS12 -#define CS13_SW6 SW6_CS13 -#define CS14_SW6 SW6_CS14 -#define CS15_SW6 SW6_CS15 -#define CS16_SW6 SW6_CS16 -#define CS17_SW6 SW6_CS17 -#define CS18_SW6 SW6_CS18 -#define CS19_SW6 SW6_CS19 -#define CS20_SW6 SW6_CS20 -#define CS21_SW6 SW6_CS21 -#define CS22_SW6 SW6_CS22 -#define CS23_SW6 SW6_CS23 -#define CS24_SW6 SW6_CS24 -#define CS25_SW6 SW6_CS25 -#define CS26_SW6 SW6_CS26 -#define CS27_SW6 SW6_CS27 -#define CS28_SW6 SW6_CS28 -#define CS29_SW6 SW6_CS29 -#define CS30_SW6 SW6_CS30 - -#define CS1_SW7 SW7_CS1 -#define CS2_SW7 SW7_CS2 -#define CS3_SW7 SW7_CS3 -#define CS4_SW7 SW7_CS4 -#define CS5_SW7 SW7_CS5 -#define CS6_SW7 SW7_CS6 -#define CS7_SW7 SW7_CS7 -#define CS8_SW7 SW7_CS8 -#define CS9_SW7 SW7_CS9 -#define CS10_SW7 SW7_CS10 -#define CS11_SW7 SW7_CS11 -#define CS12_SW7 SW7_CS12 -#define CS13_SW7 SW7_CS13 -#define CS14_SW7 SW7_CS14 -#define CS15_SW7 SW7_CS15 -#define CS16_SW7 SW7_CS16 -#define CS17_SW7 SW7_CS17 -#define CS18_SW7 SW7_CS18 -#define CS19_SW7 SW7_CS19 -#define CS20_SW7 SW7_CS20 -#define CS21_SW7 SW7_CS21 -#define CS22_SW7 SW7_CS22 -#define CS23_SW7 SW7_CS23 -#define CS24_SW7 SW7_CS24 -#define CS25_SW7 SW7_CS25 -#define CS26_SW7 SW7_CS26 -#define CS27_SW7 SW7_CS27 -#define CS28_SW7 SW7_CS28 -#define CS29_SW7 SW7_CS29 -#define CS30_SW7 SW7_CS30 - -#define CS1_SW8 SW8_CS1 -#define CS2_SW8 SW8_CS2 -#define CS3_SW8 SW8_CS3 -#define CS4_SW8 SW8_CS4 -#define CS5_SW8 SW8_CS5 -#define CS6_SW8 SW8_CS6 -#define CS7_SW8 SW8_CS7 -#define CS8_SW8 SW8_CS8 -#define CS9_SW8 SW8_CS9 -#define CS10_SW8 SW8_CS10 -#define CS11_SW8 SW8_CS11 -#define CS12_SW8 SW8_CS12 -#define CS13_SW8 SW8_CS13 -#define CS14_SW8 SW8_CS14 -#define CS15_SW8 SW8_CS15 -#define CS16_SW8 SW8_CS16 -#define CS17_SW8 SW8_CS17 -#define CS18_SW8 SW8_CS18 -#define CS19_SW8 SW8_CS19 -#define CS20_SW8 SW8_CS20 -#define CS21_SW8 SW8_CS21 -#define CS22_SW8 SW8_CS22 -#define CS23_SW8 SW8_CS23 -#define CS24_SW8 SW8_CS24 -#define CS25_SW8 SW8_CS25 -#define CS26_SW8 SW8_CS26 -#define CS27_SW8 SW8_CS27 -#define CS28_SW8 SW8_CS28 -#define CS29_SW8 SW8_CS29 -#define CS30_SW8 SW8_CS30 - -#define CS1_SW9 SW9_CS1 -#define CS2_SW9 SW9_CS2 -#define CS3_SW9 SW9_CS3 -#define CS4_SW9 SW9_CS4 -#define CS5_SW9 SW9_CS5 -#define CS6_SW9 SW9_CS6 -#define CS7_SW9 SW9_CS7 -#define CS8_SW9 SW9_CS8 -#define CS9_SW9 SW9_CS9 -#define CS10_SW9 SW9_CS10 -#define CS11_SW9 SW9_CS11 -#define CS12_SW9 SW9_CS12 -#define CS13_SW9 SW9_CS13 -#define CS14_SW9 SW9_CS14 -#define CS15_SW9 SW9_CS15 -#define CS16_SW9 SW9_CS16 -#define CS17_SW9 SW9_CS17 -#define CS18_SW9 SW9_CS18 -#define CS19_SW9 SW9_CS19 -#define CS20_SW9 SW9_CS20 -#define CS21_SW9 SW9_CS21 -#define CS22_SW9 SW9_CS22 -#define CS23_SW9 SW9_CS23 -#define CS24_SW9 SW9_CS24 -#define CS25_SW9 SW9_CS25 -#define CS26_SW9 SW9_CS26 -#define CS27_SW9 SW9_CS27 -#define CS28_SW9 SW9_CS28 -#define CS29_SW9 SW9_CS29 -#define CS30_SW9 SW9_CS30 - -#define CS31_SW1 SW1_CS31 -#define CS32_SW1 SW1_CS32 -#define CS33_SW1 SW1_CS33 -#define CS34_SW1 SW1_CS34 -#define CS35_SW1 SW1_CS35 -#define CS36_SW1 SW1_CS36 -#define CS37_SW1 SW1_CS37 -#define CS38_SW1 SW1_CS38 -#define CS39_SW1 SW1_CS39 - -#define CS31_SW2 SW2_CS31 -#define CS32_SW2 SW2_CS32 -#define CS33_SW2 SW2_CS33 -#define CS34_SW2 SW2_CS34 -#define CS35_SW2 SW2_CS35 -#define CS36_SW2 SW2_CS36 -#define CS37_SW2 SW2_CS37 -#define CS38_SW2 SW2_CS38 -#define CS39_SW2 SW2_CS39 - -#define CS31_SW3 SW3_CS31 -#define CS32_SW3 SW3_CS32 -#define CS33_SW3 SW3_CS33 -#define CS34_SW3 SW3_CS34 -#define CS35_SW3 SW3_CS35 -#define CS36_SW3 SW3_CS36 -#define CS37_SW3 SW3_CS37 -#define CS38_SW3 SW3_CS38 -#define CS39_SW3 SW3_CS39 - -#define CS31_SW4 SW4_CS31 -#define CS32_SW4 SW4_CS32 -#define CS33_SW4 SW4_CS33 -#define CS34_SW4 SW4_CS34 -#define CS35_SW4 SW4_CS35 -#define CS36_SW4 SW4_CS36 -#define CS37_SW4 SW4_CS37 -#define CS38_SW4 SW4_CS38 -#define CS39_SW4 SW4_CS39 - -#define CS31_SW5 SW5_CS31 -#define CS32_SW5 SW5_CS32 -#define CS33_SW5 SW5_CS33 -#define CS34_SW5 SW5_CS34 -#define CS35_SW5 SW5_CS35 -#define CS36_SW5 SW5_CS36 -#define CS37_SW5 SW5_CS37 -#define CS38_SW5 SW5_CS38 -#define CS39_SW5 SW5_CS39 - -#define CS31_SW6 SW6_CS31 -#define CS32_SW6 SW6_CS32 -#define CS33_SW6 SW6_CS33 -#define CS34_SW6 SW6_CS34 -#define CS35_SW6 SW6_CS35 -#define CS36_SW6 SW6_CS36 -#define CS37_SW6 SW6_CS37 -#define CS38_SW6 SW6_CS38 -#define CS39_SW6 SW6_CS39 - -#define CS31_SW7 SW7_CS31 -#define CS32_SW7 SW7_CS32 -#define CS33_SW7 SW7_CS33 -#define CS34_SW7 SW7_CS34 -#define CS35_SW7 SW7_CS35 -#define CS36_SW7 SW7_CS36 -#define CS37_SW7 SW7_CS37 -#define CS38_SW7 SW7_CS38 -#define CS39_SW7 SW7_CS39 - -#define CS31_SW8 SW8_CS31 -#define CS32_SW8 SW8_CS32 -#define CS33_SW8 SW8_CS33 -#define CS34_SW8 SW8_CS34 -#define CS35_SW8 SW8_CS35 -#define CS36_SW8 SW8_CS36 -#define CS37_SW8 SW8_CS37 -#define CS38_SW8 SW8_CS38 -#define CS39_SW8 SW8_CS39 - -#define CS31_SW9 SW9_CS31 -#define CS32_SW9 SW9_CS32 -#define CS33_SW9 SW9_CS33 -#define CS34_SW9 SW9_CS34 -#define CS35_SW9 SW9_CS35 -#define CS36_SW9 SW9_CS36 -#define CS37_SW9 SW9_CS37 -#define CS38_SW9 SW9_CS38 -#define CS39_SW9 SW9_CS39 diff --git a/drivers/led/issi/is31fl3743a.h b/drivers/led/issi/is31fl3743a.h index 48aeab46ab..bfff904047 100644 --- a/drivers/led/issi/is31fl3743a.h +++ b/drivers/led/issi/is31fl3743a.h @@ -328,214 +328,3 @@ void is31fl3743a_flush(void); #define SW11_CS16 0xC3 #define SW11_CS17 0xC4 #define SW11_CS18 0xC5 - -// DEPRECATED - DO NOT USE - -#define CS1_SW1 SW1_CS1 -#define CS2_SW1 SW1_CS2 -#define CS3_SW1 SW1_CS3 -#define CS4_SW1 SW1_CS4 -#define CS5_SW1 SW1_CS5 -#define CS6_SW1 SW1_CS6 -#define CS7_SW1 SW1_CS7 -#define CS8_SW1 SW1_CS8 -#define CS9_SW1 SW1_CS9 -#define CS10_SW1 SW1_CS10 -#define CS11_SW1 SW1_CS11 -#define CS12_SW1 SW1_CS12 -#define CS13_SW1 SW1_CS13 -#define CS14_SW1 SW1_CS14 -#define CS15_SW1 SW1_CS15 -#define CS16_SW1 SW1_CS16 -#define CS17_SW1 SW1_CS17 -#define CS18_SW1 SW1_CS18 - -#define CS1_SW2 SW2_CS1 -#define CS2_SW2 SW2_CS2 -#define CS3_SW2 SW2_CS3 -#define CS4_SW2 SW2_CS4 -#define CS5_SW2 SW2_CS5 -#define CS6_SW2 SW2_CS6 -#define CS7_SW2 SW2_CS7 -#define CS8_SW2 SW2_CS8 -#define CS9_SW2 SW2_CS9 -#define CS10_SW2 SW2_CS10 -#define CS11_SW2 SW2_CS11 -#define CS12_SW2 SW2_CS12 -#define CS13_SW2 SW2_CS13 -#define CS14_SW2 SW2_CS14 -#define CS15_SW2 SW2_CS15 -#define CS16_SW2 SW2_CS16 -#define CS17_SW2 SW2_CS17 -#define CS18_SW2 SW2_CS18 - -#define CS1_SW3 SW3_CS1 -#define CS2_SW3 SW3_CS2 -#define CS3_SW3 SW3_CS3 -#define CS4_SW3 SW3_CS4 -#define CS5_SW3 SW3_CS5 -#define CS6_SW3 SW3_CS6 -#define CS7_SW3 SW3_CS7 -#define CS8_SW3 SW3_CS8 -#define CS9_SW3 SW3_CS9 -#define CS10_SW3 SW3_CS10 -#define CS11_SW3 SW3_CS11 -#define CS12_SW3 SW3_CS12 -#define CS13_SW3 SW3_CS13 -#define CS14_SW3 SW3_CS14 -#define CS15_SW3 SW3_CS15 -#define CS16_SW3 SW3_CS16 -#define CS17_SW3 SW3_CS17 -#define CS18_SW3 SW3_CS18 - -#define CS1_SW4 SW4_CS1 -#define CS2_SW4 SW4_CS2 -#define CS3_SW4 SW4_CS3 -#define CS4_SW4 SW4_CS4 -#define CS5_SW4 SW4_CS5 -#define CS6_SW4 SW4_CS6 -#define CS7_SW4 SW4_CS7 -#define CS8_SW4 SW4_CS8 -#define CS9_SW4 SW4_CS9 -#define CS10_SW4 SW4_CS10 -#define CS11_SW4 SW4_CS11 -#define CS12_SW4 SW4_CS12 -#define CS13_SW4 SW4_CS13 -#define CS14_SW4 SW4_CS14 -#define CS15_SW4 SW4_CS15 -#define CS16_SW4 SW4_CS16 -#define CS17_SW4 SW4_CS17 -#define CS18_SW4 SW4_CS18 - -#define CS1_SW5 SW5_CS1 -#define CS2_SW5 SW5_CS2 -#define CS3_SW5 SW5_CS3 -#define CS4_SW5 SW5_CS4 -#define CS5_SW5 SW5_CS5 -#define CS6_SW5 SW5_CS6 -#define CS7_SW5 SW5_CS7 -#define CS8_SW5 SW5_CS8 -#define CS9_SW5 SW5_CS9 -#define CS10_SW5 SW5_CS10 -#define CS11_SW5 SW5_CS11 -#define CS12_SW5 SW5_CS12 -#define CS13_SW5 SW5_CS13 -#define CS14_SW5 SW5_CS14 -#define CS15_SW5 SW5_CS15 -#define CS16_SW5 SW5_CS16 -#define CS17_SW5 SW5_CS17 -#define CS18_SW5 SW5_CS18 - -#define CS1_SW6 SW6_CS1 -#define CS2_SW6 SW6_CS2 -#define CS3_SW6 SW6_CS3 -#define CS4_SW6 SW6_CS4 -#define CS5_SW6 SW6_CS5 -#define CS6_SW6 SW6_CS6 -#define CS7_SW6 SW6_CS7 -#define CS8_SW6 SW6_CS8 -#define CS9_SW6 SW6_CS9 -#define CS10_SW6 SW6_CS10 -#define CS11_SW6 SW6_CS11 -#define CS12_SW6 SW6_CS12 -#define CS13_SW6 SW6_CS13 -#define CS14_SW6 SW6_CS14 -#define CS15_SW6 SW6_CS15 -#define CS16_SW6 SW6_CS16 -#define CS17_SW6 SW6_CS17 -#define CS18_SW6 SW6_CS18 - -#define CS1_SW7 SW7_CS1 -#define CS2_SW7 SW7_CS2 -#define CS3_SW7 SW7_CS3 -#define CS4_SW7 SW7_CS4 -#define CS5_SW7 SW7_CS5 -#define CS6_SW7 SW7_CS6 -#define CS7_SW7 SW7_CS7 -#define CS8_SW7 SW7_CS8 -#define CS9_SW7 SW7_CS9 -#define CS10_SW7 SW7_CS10 -#define CS11_SW7 SW7_CS11 -#define CS12_SW7 SW7_CS12 -#define CS13_SW7 SW7_CS13 -#define CS14_SW7 SW7_CS14 -#define CS15_SW7 SW7_CS15 -#define CS16_SW7 SW7_CS16 -#define CS17_SW7 SW7_CS17 -#define CS18_SW7 SW7_CS18 - -#define CS1_SW8 SW8_CS1 -#define CS2_SW8 SW8_CS2 -#define CS3_SW8 SW8_CS3 -#define CS4_SW8 SW8_CS4 -#define CS5_SW8 SW8_CS5 -#define CS6_SW8 SW8_CS6 -#define CS7_SW8 SW8_CS7 -#define CS8_SW8 SW8_CS8 -#define CS9_SW8 SW8_CS9 -#define CS10_SW8 SW8_CS10 -#define CS11_SW8 SW8_CS11 -#define CS12_SW8 SW8_CS12 -#define CS13_SW8 SW8_CS13 -#define CS14_SW8 SW8_CS14 -#define CS15_SW8 SW8_CS15 -#define CS16_SW8 SW8_CS16 -#define CS17_SW8 SW8_CS17 -#define CS18_SW8 SW8_CS18 - -#define CS1_SW9 SW9_CS1 -#define CS2_SW9 SW9_CS2 -#define CS3_SW9 SW9_CS3 -#define CS4_SW9 SW9_CS4 -#define CS5_SW9 SW9_CS5 -#define CS6_SW9 SW9_CS6 -#define CS7_SW9 SW9_CS7 -#define CS8_SW9 SW9_CS8 -#define CS9_SW9 SW9_CS9 -#define CS10_SW9 SW9_CS10 -#define CS11_SW9 SW9_CS11 -#define CS12_SW9 SW9_CS12 -#define CS13_SW9 SW9_CS13 -#define CS14_SW9 SW9_CS14 -#define CS15_SW9 SW9_CS15 -#define CS16_SW9 SW9_CS16 -#define CS17_SW9 SW9_CS17 -#define CS18_SW9 SW9_CS18 - -#define CS1_SW10 SW10_CS1 -#define CS2_SW10 SW10_CS2 -#define CS3_SW10 SW10_CS3 -#define CS4_SW10 SW10_CS4 -#define CS5_SW10 SW10_CS5 -#define CS6_SW10 SW10_CS6 -#define CS7_SW10 SW10_CS7 -#define CS8_SW10 SW10_CS8 -#define CS9_SW10 SW10_CS9 -#define CS10_SW10 SW10_CS10 -#define CS11_SW10 SW10_CS11 -#define CS12_SW10 SW10_CS12 -#define CS13_SW10 SW10_CS13 -#define CS14_SW10 SW10_CS14 -#define CS15_SW10 SW10_CS15 -#define CS16_SW10 SW10_CS16 -#define CS17_SW10 SW10_CS17 -#define CS18_SW10 SW10_CS18 - -#define CS1_SW11 SW11_CS1 -#define CS2_SW11 SW11_CS2 -#define CS3_SW11 SW11_CS3 -#define CS4_SW11 SW11_CS4 -#define CS5_SW11 SW11_CS5 -#define CS6_SW11 SW11_CS6 -#define CS7_SW11 SW11_CS7 -#define CS8_SW11 SW11_CS8 -#define CS9_SW11 SW11_CS9 -#define CS10_SW11 SW11_CS10 -#define CS11_SW11 SW11_CS11 -#define CS12_SW11 SW11_CS12 -#define CS13_SW11 SW11_CS13 -#define CS14_SW11 SW11_CS14 -#define CS15_SW11 SW11_CS15 -#define CS16_SW11 SW11_CS16 -#define CS17_SW11 SW11_CS17 -#define CS18_SW11 SW11_CS18 diff --git a/drivers/led/snled27351-mono.h b/drivers/led/snled27351-mono.h index 43d39934cb..b88ef25f76 100644 --- a/drivers/led/snled27351-mono.h +++ b/drivers/led/snled27351-mono.h @@ -21,37 +21,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef CKLED2001_TIMEOUT -# define SNLED27351_I2C_TIMEOUT CKLED2001_TIMEOUT -#endif -#ifdef CKLED2001_PERSISTENCE -# define SNLED27351_I2C_PERSISTENCE CKLED2001_PERSISTENCE -#endif -#ifdef PHASE_CHANNEL -# define SNLED27351_PHASE_CHANNEL PHASE_CHANNEL -#endif -#ifdef CKLED2001_CURRENT_TUNE -# define SNLED27351_CURRENT_TUNE CKLED2001_CURRENT_TUNE -#endif - -#define MSKPHASE_12CHANNEL SNLED27351_SCAN_PHASE_12_CHANNEL -#define MSKPHASE_11CHANNEL SNLED27351_SCAN_PHASE_11_CHANNEL -#define MSKPHASE_10CHANNEL SNLED27351_SCAN_PHASE_10_CHANNEL -#define MSKPHASE_9CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL -#define MSKPHASE_8CHANNEL SNLED27351_SCAN_PHASE_8_CHANNEL -#define MSKPHASE_7CHANNEL SNLED27351_SCAN_PHASE_7_CHANNEL -#define MSKPHASE_6CHANNEL SNLED27351_SCAN_PHASE_6_CHANNEL -#define MSKPHASE_5CHANNEL SNLED27351_SCAN_PHASE_5_CHANNEL -#define MSKPHASE_4CHANNEL SNLED27351_SCAN_PHASE_4_CHANNEL -#define MSKPHASE_3CHANNEL SNLED27351_SCAN_PHASE_3_CHANNEL -#define MSKPHASE_2CHANNEL SNLED27351_SCAN_PHASE_2_CHANNEL -#define MSKPHASE_1CHANNEL SNLED27351_SCAN_PHASE_1_CHANNEL - -#define ckled2001_led snled27351_led_t -#define g_ckled2001_leds g_snled27351_leds -// ======== - #define SNLED27351_REG_COMMAND 0xFD #define SNLED27351_COMMAND_LED_CONTROL 0x00 #define SNLED27351_COMMAND_PWM 0x01 @@ -378,209 +347,3 @@ void snled27351_sw_shutdown(uint8_t index); #define CB12_CA14 0xBD #define CB12_CA15 0xBE #define CB12_CA16 0xBF - -// DEPRECATED - DO NOT USE - -#define A_1 CB1_CA1 -#define A_2 CB1_CA2 -#define A_3 CB1_CA3 -#define A_4 CB1_CA4 -#define A_5 CB1_CA5 -#define A_6 CB1_CA6 -#define A_7 CB1_CA7 -#define A_8 CB1_CA8 -#define A_9 CB1_CA9 -#define A_10 CB1_CA10 -#define A_11 CB1_CA11 -#define A_12 CB1_CA12 -#define A_13 CB1_CA13 -#define A_14 CB1_CA14 -#define A_15 CB1_CA15 -#define A_16 CB1_CA16 - -#define B_1 CB2_CA1 -#define B_2 CB2_CA2 -#define B_3 CB2_CA3 -#define B_4 CB2_CA4 -#define B_5 CB2_CA5 -#define B_6 CB2_CA6 -#define B_7 CB2_CA7 -#define B_8 CB2_CA8 -#define B_9 CB2_CA9 -#define B_10 CB2_CA10 -#define B_11 CB2_CA11 -#define B_12 CB2_CA12 -#define B_13 CB2_CA13 -#define B_14 CB2_CA14 -#define B_15 CB2_CA15 -#define B_16 CB2_CA16 - -#define C_1 CB3_CA1 -#define C_2 CB3_CA2 -#define C_3 CB3_CA3 -#define C_4 CB3_CA4 -#define C_5 CB3_CA5 -#define C_6 CB3_CA6 -#define C_7 CB3_CA7 -#define C_8 CB3_CA8 -#define C_9 CB3_CA9 -#define C_10 CB3_CA10 -#define C_11 CB3_CA11 -#define C_12 CB3_CA12 -#define C_13 CB3_CA13 -#define C_14 CB3_CA14 -#define C_15 CB3_CA15 -#define C_16 CB3_CA16 - -#define D_1 CB4_CA1 -#define D_2 CB4_CA2 -#define D_3 CB4_CA3 -#define D_4 CB4_CA4 -#define D_5 CB4_CA5 -#define D_6 CB4_CA6 -#define D_7 CB4_CA7 -#define D_8 CB4_CA8 -#define D_9 CB4_CA9 -#define D_10 CB4_CA10 -#define D_11 CB4_CA11 -#define D_12 CB4_CA12 -#define D_13 CB4_CA13 -#define D_14 CB4_CA14 -#define D_15 CB4_CA15 -#define D_16 CB4_CA16 - -#define E_1 CB5_CA1 -#define E_2 CB5_CA2 -#define E_3 CB5_CA3 -#define E_4 CB5_CA4 -#define E_5 CB5_CA5 -#define E_6 CB5_CA6 -#define E_7 CB5_CA7 -#define E_8 CB5_CA8 -#define E_9 CB5_CA9 -#define E_10 CB5_CA10 -#define E_11 CB5_CA11 -#define E_12 CB5_CA12 -#define E_13 CB5_CA13 -#define E_14 CB5_CA14 -#define E_15 CB5_CA15 -#define E_16 CB5_CA16 - -#define F_1 CB6_CA1 -#define F_2 CB6_CA2 -#define F_3 CB6_CA3 -#define F_4 CB6_CA4 -#define F_5 CB6_CA5 -#define F_6 CB6_CA6 -#define F_7 CB6_CA7 -#define F_8 CB6_CA8 -#define F_9 CB6_CA9 -#define F_10 CB6_CA10 -#define F_11 CB6_CA11 -#define F_12 CB6_CA12 -#define F_13 CB6_CA13 -#define F_14 CB6_CA14 -#define F_15 CB6_CA15 -#define F_16 CB6_CA16 - -#define G_1 CB7_CA1 -#define G_2 CB7_CA2 -#define G_3 CB7_CA3 -#define G_4 CB7_CA4 -#define G_5 CB7_CA5 -#define G_6 CB7_CA6 -#define G_7 CB7_CA7 -#define G_8 CB7_CA8 -#define G_9 CB7_CA9 -#define G_10 CB7_CA10 -#define G_11 CB7_CA11 -#define G_12 CB7_CA12 -#define G_13 CB7_CA13 -#define G_14 CB7_CA14 -#define G_15 CB7_CA15 -#define G_16 CB7_CA16 - -#define H_1 CB8_CA1 -#define H_2 CB8_CA2 -#define H_3 CB8_CA3 -#define H_4 CB8_CA4 -#define H_5 CB8_CA5 -#define H_6 CB8_CA6 -#define H_7 CB8_CA7 -#define H_8 CB8_CA8 -#define H_9 CB8_CA9 -#define H_10 CB8_CA10 -#define H_11 CB8_CA11 -#define H_12 CB8_CA12 -#define H_13 CB8_CA13 -#define H_14 CB8_CA14 -#define H_15 CB8_CA15 -#define H_16 CB8_CA16 - -#define I_1 CB9_CA1 -#define I_2 CB9_CA2 -#define I_3 CB9_CA3 -#define I_4 CB9_CA4 -#define I_5 CB9_CA5 -#define I_6 CB9_CA6 -#define I_7 CB9_CA7 -#define I_8 CB9_CA8 -#define I_9 CB9_CA9 -#define I_10 CB9_CA10 -#define I_11 CB9_CA11 -#define I_12 CB9_CA12 -#define I_13 CB9_CA13 -#define I_14 CB9_CA14 -#define I_15 CB9_CA15 -#define I_16 CB9_CA16 - -#define J_1 CB10_CA1 -#define J_2 CB10_CA2 -#define J_3 CB10_CA3 -#define J_4 CB10_CA4 -#define J_5 CB10_CA5 -#define J_6 CB10_CA6 -#define J_7 CB10_CA7 -#define J_8 CB10_CA8 -#define J_9 CB10_CA9 -#define J_10 CB10_CA10 -#define J_11 CB10_CA11 -#define J_12 CB10_CA12 -#define J_13 CB10_CA13 -#define J_14 CB10_CA14 -#define J_15 CB10_CA15 -#define J_16 CB10_CA16 - -#define K_1 CB11_CA1 -#define K_2 CB11_CA2 -#define K_3 CB11_CA3 -#define K_4 CB11_CA4 -#define K_5 CB11_CA5 -#define K_6 CB11_CA6 -#define K_7 CB11_CA7 -#define K_8 CB11_CA8 -#define K_9 CB11_CA9 -#define K_10 CB11_CA10 -#define K_11 CB11_CA11 -#define K_12 CB11_CA12 -#define K_13 CB11_CA13 -#define K_14 CB11_CA14 -#define K_15 CB11_CA15 -#define K_16 CB11_CA16 - -#define L_1 CB12_CA1 -#define L_2 CB12_CA2 -#define L_3 CB12_CA3 -#define L_4 CB12_CA4 -#define L_5 CB12_CA5 -#define L_6 CB12_CA6 -#define L_7 CB12_CA7 -#define L_8 CB12_CA8 -#define L_9 CB12_CA9 -#define L_10 CB12_CA10 -#define L_11 CB12_CA11 -#define L_12 CB12_CA12 -#define L_13 CB12_CA13 -#define L_14 CB12_CA14 -#define L_15 CB12_CA15 -#define L_16 CB12_CA16 diff --git a/drivers/led/snled27351.h b/drivers/led/snled27351.h index d902744d14..1b7f05c285 100644 --- a/drivers/led/snled27351.h +++ b/drivers/led/snled27351.h @@ -21,49 +21,6 @@ #include "progmem.h" #include "util.h" -// ======== DEPRECATED DEFINES - DO NOT USE ======== -#ifdef DRIVER_ADDR_1 -# define SNLED27351_I2C_ADDRESS_1 DRIVER_ADDR_1 -#endif -#ifdef DRIVER_ADDR_2 -# define SNLED27351_I2C_ADDRESS_2 DRIVER_ADDR_2 -#endif -#ifdef DRIVER_ADDR_3 -# define SNLED27351_I2C_ADDRESS_3 DRIVER_ADDR_3 -#endif -#ifdef DRIVER_ADDR_4 -# define SNLED27351_I2C_ADDRESS_4 DRIVER_ADDR_4 -#endif -#ifdef CKLED2001_TIMEOUT -# define SNLED27351_I2C_TIMEOUT CKLED2001_TIMEOUT -#endif -#ifdef CKLED2001_PERSISTENCE -# define SNLED27351_I2C_PERSISTENCE CKLED2001_PERSISTENCE -#endif -#ifdef PHASE_CHANNEL -# define SNLED27351_PHASE_CHANNEL PHASE_CHANNEL -#endif -#ifdef CKLED2001_CURRENT_TUNE -# define SNLED27351_CURRENT_TUNE CKLED2001_CURRENT_TUNE -#endif - -#define MSKPHASE_12CHANNEL SNLED27351_SCAN_PHASE_12_CHANNEL -#define MSKPHASE_11CHANNEL SNLED27351_SCAN_PHASE_11_CHANNEL -#define MSKPHASE_10CHANNEL SNLED27351_SCAN_PHASE_10_CHANNEL -#define MSKPHASE_9CHANNEL SNLED27351_SCAN_PHASE_9_CHANNEL -#define MSKPHASE_8CHANNEL SNLED27351_SCAN_PHASE_8_CHANNEL -#define MSKPHASE_7CHANNEL SNLED27351_SCAN_PHASE_7_CHANNEL -#define MSKPHASE_6CHANNEL SNLED27351_SCAN_PHASE_6_CHANNEL -#define MSKPHASE_5CHANNEL SNLED27351_SCAN_PHASE_5_CHANNEL -#define MSKPHASE_4CHANNEL SNLED27351_SCAN_PHASE_4_CHANNEL -#define MSKPHASE_3CHANNEL SNLED27351_SCAN_PHASE_3_CHANNEL -#define MSKPHASE_2CHANNEL SNLED27351_SCAN_PHASE_2_CHANNEL -#define MSKPHASE_1CHANNEL SNLED27351_SCAN_PHASE_1_CHANNEL - -#define ckled2001_led snled27351_led_t -#define g_ckled2001_leds g_snled27351_leds -// ======== - #define SNLED27351_REG_COMMAND 0xFD #define SNLED27351_COMMAND_LED_CONTROL 0x00 #define SNLED27351_COMMAND_PWM 0x01 @@ -392,209 +349,3 @@ void snled27351_sw_shutdown(uint8_t index); #define CB12_CA14 0xBD #define CB12_CA15 0xBE #define CB12_CA16 0xBF - -// DEPRECATED - DO NOT USE - -#define A_1 CB1_CA1 -#define A_2 CB1_CA2 -#define A_3 CB1_CA3 -#define A_4 CB1_CA4 -#define A_5 CB1_CA5 -#define A_6 CB1_CA6 -#define A_7 CB1_CA7 -#define A_8 CB1_CA8 -#define A_9 CB1_CA9 -#define A_10 CB1_CA10 -#define A_11 CB1_CA11 -#define A_12 CB1_CA12 -#define A_13 CB1_CA13 -#define A_14 CB1_CA14 -#define A_15 CB1_CA15 -#define A_16 CB1_CA16 - -#define B_1 CB2_CA1 -#define B_2 CB2_CA2 -#define B_3 CB2_CA3 -#define B_4 CB2_CA4 -#define B_5 CB2_CA5 -#define B_6 CB2_CA6 -#define B_7 CB2_CA7 -#define B_8 CB2_CA8 -#define B_9 CB2_CA9 -#define B_10 CB2_CA10 -#define B_11 CB2_CA11 -#define B_12 CB2_CA12 -#define B_13 CB2_CA13 -#define B_14 CB2_CA14 -#define B_15 CB2_CA15 -#define B_16 CB2_CA16 - -#define C_1 CB3_CA1 -#define C_2 CB3_CA2 -#define C_3 CB3_CA3 -#define C_4 CB3_CA4 -#define C_5 CB3_CA5 -#define C_6 CB3_CA6 -#define C_7 CB3_CA7 -#define C_8 CB3_CA8 -#define C_9 CB3_CA9 -#define C_10 CB3_CA10 -#define C_11 CB3_CA11 -#define C_12 CB3_CA12 -#define C_13 CB3_CA13 -#define C_14 CB3_CA14 -#define C_15 CB3_CA15 -#define C_16 CB3_CA16 - -#define D_1 CB4_CA1 -#define D_2 CB4_CA2 -#define D_3 CB4_CA3 -#define D_4 CB4_CA4 -#define D_5 CB4_CA5 -#define D_6 CB4_CA6 -#define D_7 CB4_CA7 -#define D_8 CB4_CA8 -#define D_9 CB4_CA9 -#define D_10 CB4_CA10 -#define D_11 CB4_CA11 -#define D_12 CB4_CA12 -#define D_13 CB4_CA13 -#define D_14 CB4_CA14 -#define D_15 CB4_CA15 -#define D_16 CB4_CA16 - -#define E_1 CB5_CA1 -#define E_2 CB5_CA2 -#define E_3 CB5_CA3 -#define E_4 CB5_CA4 -#define E_5 CB5_CA5 -#define E_6 CB5_CA6 -#define E_7 CB5_CA7 -#define E_8 CB5_CA8 -#define E_9 CB5_CA9 -#define E_10 CB5_CA10 -#define E_11 CB5_CA11 -#define E_12 CB5_CA12 -#define E_13 CB5_CA13 -#define E_14 CB5_CA14 -#define E_15 CB5_CA15 -#define E_16 CB5_CA16 - -#define F_1 CB6_CA1 -#define F_2 CB6_CA2 -#define F_3 CB6_CA3 -#define F_4 CB6_CA4 -#define F_5 CB6_CA5 -#define F_6 CB6_CA6 -#define F_7 CB6_CA7 -#define F_8 CB6_CA8 -#define F_9 CB6_CA9 -#define F_10 CB6_CA10 -#define F_11 CB6_CA11 -#define F_12 CB6_CA12 -#define F_13 CB6_CA13 -#define F_14 CB6_CA14 -#define F_15 CB6_CA15 -#define F_16 CB6_CA16 - -#define G_1 CB7_CA1 -#define G_2 CB7_CA2 -#define G_3 CB7_CA3 -#define G_4 CB7_CA4 -#define G_5 CB7_CA5 -#define G_6 CB7_CA6 -#define G_7 CB7_CA7 -#define G_8 CB7_CA8 -#define G_9 CB7_CA9 -#define G_10 CB7_CA10 -#define G_11 CB7_CA11 -#define G_12 CB7_CA12 -#define G_13 CB7_CA13 -#define G_14 CB7_CA14 -#define G_15 CB7_CA15 -#define G_16 CB7_CA16 - -#define H_1 CB8_CA1 -#define H_2 CB8_CA2 -#define H_3 CB8_CA3 -#define H_4 CB8_CA4 -#define H_5 CB8_CA5 -#define H_6 CB8_CA6 -#define H_7 CB8_CA7 -#define H_8 CB8_CA8 -#define H_9 CB8_CA9 -#define H_10 CB8_CA10 -#define H_11 CB8_CA11 -#define H_12 CB8_CA12 -#define H_13 CB8_CA13 -#define H_14 CB8_CA14 -#define H_15 CB8_CA15 -#define H_16 CB8_CA16 - -#define I_1 CB9_CA1 -#define I_2 CB9_CA2 -#define I_3 CB9_CA3 -#define I_4 CB9_CA4 -#define I_5 CB9_CA5 -#define I_6 CB9_CA6 -#define I_7 CB9_CA7 -#define I_8 CB9_CA8 -#define I_9 CB9_CA9 -#define I_10 CB9_CA10 -#define I_11 CB9_CA11 -#define I_12 CB9_CA12 -#define I_13 CB9_CA13 -#define I_14 CB9_CA14 -#define I_15 CB9_CA15 -#define I_16 CB9_CA16 - -#define J_1 CB10_CA1 -#define J_2 CB10_CA2 -#define J_3 CB10_CA3 -#define J_4 CB10_CA4 -#define J_5 CB10_CA5 -#define J_6 CB10_CA6 -#define J_7 CB10_CA7 -#define J_8 CB10_CA8 -#define J_9 CB10_CA9 -#define J_10 CB10_CA10 -#define J_11 CB10_CA11 -#define J_12 CB10_CA12 -#define J_13 CB10_CA13 -#define J_14 CB10_CA14 -#define J_15 CB10_CA15 -#define J_16 CB10_CA16 - -#define K_1 CB11_CA1 -#define K_2 CB11_CA2 -#define K_3 CB11_CA3 -#define K_4 CB11_CA4 -#define K_5 CB11_CA5 -#define K_6 CB11_CA6 -#define K_7 CB11_CA7 -#define K_8 CB11_CA8 -#define K_9 CB11_CA9 -#define K_10 CB11_CA10 -#define K_11 CB11_CA11 -#define K_12 CB11_CA12 -#define K_13 CB11_CA13 -#define K_14 CB11_CA14 -#define K_15 CB11_CA15 -#define K_16 CB11_CA16 - -#define L_1 CB12_CA1 -#define L_2 CB12_CA2 -#define L_3 CB12_CA3 -#define L_4 CB12_CA4 -#define L_5 CB12_CA5 -#define L_6 CB12_CA6 -#define L_7 CB12_CA7 -#define L_8 CB12_CA8 -#define L_9 CB12_CA9 -#define L_10 CB12_CA10 -#define L_11 CB12_CA11 -#define L_12 CB12_CA12 -#define L_13 CB12_CA13 -#define L_14 CB12_CA14 -#define L_15 CB12_CA15 -#define L_16 CB12_CA16 diff --git a/keyboards/zsa/voyager/voyager.c b/keyboards/zsa/voyager/voyager.c index 6d4f6c5f26..b7ca8f748f 100644 --- a/keyboards/zsa/voyager/voyager.c +++ b/keyboards/zsa/voyager/voyager.c @@ -121,7 +121,7 @@ layer_state_t layer_state_set_kb(layer_state_t state) { #ifdef RGB_MATRIX_ENABLE // clang-format off -const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = { +const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver * | R location -- cgit v1.2.3 From 7431401116c744e4e3d8e92e5047c9dc3baebb9f Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 21 Jan 2025 08:54:41 +1100 Subject: Fix up CI with `DEFAULT_FOLDER`. (#24842) --- keyboards/rgbkb/pan/rules.mk | 2 -- 1 file changed, 2 deletions(-) (limited to 'keyboards') diff --git a/keyboards/rgbkb/pan/rules.mk b/keyboards/rgbkb/pan/rules.mk index b6f1d46a65..9a69649289 100644 --- a/keyboards/rgbkb/pan/rules.mk +++ b/keyboards/rgbkb/pan/rules.mk @@ -1,3 +1 @@ WS2812_DRIVER_REQUIRED = yes - -DEFAULT_FOLDER = rgbkb/pan/rev1 -- cgit v1.2.3 From 1a30e2b32b5255ed32d156abe26a897fa86db8a4 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 20 Jan 2025 22:26:25 +0000 Subject: Migrate some DEFAULT_FOLDER to keyboard_aliases.hjson (#24835) --- data/mappings/keyboard_aliases.hjson | 547 +++++++++++++++++++++ keyboards/0_sixty/rules.mk | 1 - keyboards/0xcb/splaytoraid/rules.mk | 1 - keyboards/1upkeyboards/pi40/rules.mk | 1 - keyboards/1upkeyboards/pi50/rules.mk | 1 - keyboards/1upkeyboards/sweet16/rules.mk | 1 - keyboards/40percentclub/i75/rules.mk | 1 - keyboards/40percentclub/polyandry/rules.mk | 1 - keyboards/8pack/rules.mk | 1 - keyboards/adkb96/rules.mk | 1 - keyboards/adm42/rules.mk | 1 - keyboards/aeboards/satellite/rules.mk | 1 - keyboards/atreus/rules.mk | 1 - keyboards/atreyu/rules.mk | 1 - keyboards/binepad/bn009/rules.mk | 3 - keyboards/binepad/bnr1/rules.mk | 1 - keyboards/boston_meetup/rules.mk | 1 - keyboards/bpiphany/frosty_flake/rules.mk | 1 - keyboards/buzzard/rules.mk | 1 - keyboards/clickety_split/leeloo/rules.mk | 2 - keyboards/crkbd/rules.mk | 1 - keyboards/dailycraft/bat43/rules.mk | 1 - keyboards/dailycraft/claw44/rules.mk | 1 - keyboards/dailycraft/sandbox/rules.mk | 1 - keyboards/dailycraft/wings42/rules.mk | 1 - keyboards/delikeeb/vanana/rules.mk | 1 - keyboards/delikeeb/waaffle/rev3/rules.mk | 1 - keyboards/deltasplit75/rules.mk | 1 - keyboards/duck/octagon/rules.mk | 1 - keyboards/duck/orion/rules.mk | 1 - keyboards/ducky/one2mini/rules.mk | 1 - keyboards/ducky/one2sf/rules.mk | 1 - keyboards/dumbpad/rules.mk | 1 - keyboards/durgod/galaxy/rules.mk | 1 - keyboards/durgod/venus/rules.mk | 1 - keyboards/dztech/tofu/ii/rules.mk | 1 - keyboards/dztech/tofu/jr/rules.mk | 1 - keyboards/eco/rules.mk | 1 - keyboards/ergoslab/rules.mk | 1 - keyboards/ergotravel/rules.mk | 1 - keyboards/evyd13/atom47/rules.mk | 1 - keyboards/fortitude60/rules.mk | 1 - keyboards/fruitykeeb/fruitbar/r1/rules.mk | 1 - keyboards/ghs/jem/rules.mk | 1 - keyboards/hadron/rules.mk | 1 - keyboards/handwired/bento/rules.mk | 1 - keyboards/handwired/dactyl_manuform/6x6/rules.mk | 1 - keyboards/handwired/ms_sculpt_mobile/rules.mk | 1 - keyboards/handwired/onekey/rules.mk | 1 - keyboards/handwired/pill60/rules.mk | 1 - keyboards/handwired/postageboard/rules.mk | 1 - keyboards/handwired/qc60/rules.mk | 1 - keyboards/handwired/sono1/rules.mk | 1 - keyboards/handwired/splittest/rules.mk | 1 - keyboards/handwired/stef9998/split_5x7/rules.mk | 1 - .../handwired/symmetric70_proto/promicro/rules.mk | 1 - .../handwired/symmetric70_proto/proton_c/rules.mk | 1 - keyboards/handwired/unk/rules.mk | 1 - keyboards/hillside/46/rules.mk | 1 - keyboards/hillside/48/rules.mk | 1 - keyboards/hillside/52/rules.mk | 1 - keyboards/ibnuda/squiggle/rules.mk | 1 - keyboards/idobao/id80/v1/rules.mk | 2 - keyboards/idobao/id80/v3/rules.mk | 2 - keyboards/inett_studio/sq80/rules.mk | 1 - keyboards/jacky_studio/bear_65/rules.mk | 1 - keyboards/jadookb/jkb65/rules.mk | 1 - keyboards/jian/rules.mk | 1 - keyboards/jiran/rules.mk | 1 - keyboards/jorne/rules.mk | 1 - keyboards/junco/rules.mk | 1 - keyboards/kakunpc/business_card/rules.mk | 1 - keyboards/kakunpc/suihankey/rules.mk | 1 - keyboards/kapcave/paladinpad/rules.mk | 1 - keyboards/kapl/rules.mk | 1 - keyboards/kbdfans/d45/rules.mk | 1 - keyboards/kbdfans/kbd75/rules.mk | 1 - keyboards/keebio/bdn9/rules.mk | 1 - keyboards/keebio/convolution/rules.mk | 1 - keyboards/keebio/foldkb/rules.mk | 1 - keyboards/keebio/kbo5000/rules.mk | 1 - keyboards/keebio/levinson/rules.mk | 1 - keyboards/keebio/quefrency/rules.mk | 1 - keyboards/keebio/rorschach/rules.mk | 1 - keyboards/keebio/sinc/rules.mk | 1 - keyboards/keebio/viterbi/rules.mk | 1 - keyboards/keycapsss/kimiko/rules.mk | 1 - keyboards/kin80/rules.mk | 1 - keyboards/kumaokobo/kudox/rules.mk | 1 - keyboards/kumaokobo/kudox_full/rules.mk | 1 - keyboards/kumaokobo/kudox_game/rules.mk | 1 - keyboards/kumaokobo/pico/rules.mk | 1 - keyboards/lazydesigners/dimple/rules.mk | 1 - keyboards/lets_split/rules.mk | 1 - keyboards/lfkeyboards/lfk87/rules.mk | 1 - keyboards/lily58/rules.mk | 1 - keyboards/lime/rules.mk | 1 - keyboards/maple_computing/ivy/rules.mk | 1 - keyboards/maple_computing/launchpad/rules.mk | 1 - keyboards/maple_computing/minidox/rules.mk | 1 - keyboards/mariorion_v25/rules.mk | 1 - keyboards/marksard/rhymestone/rules.mk | 1 - keyboards/marksard/treadstone48/rules.mk | 1 - keyboards/maxipad/rules.mk | 1 - keyboards/mechkeys/mechmini/rules.mk | 1 - keyboards/mechllama/g35/rules.mk | 1 - keyboards/mechlovin/adelais/rules.mk | 1 - .../adelais/standard_led/arm/rev4/rules.mk | 1 - .../mechlovin/adelais/standard_led/arm/rules.mk | 1 - .../mechlovin/adelais/standard_led/avr/rules.mk | 2 - keyboards/mechlovin/infinity87/rev1/rules.mk | 1 - keyboards/mechlovin/infinity87/rules.mk | 1 - keyboards/mechlovin/mechlovin9/rules.mk | 1 - keyboards/mechlovin/olly/jf/rules.mk | 1 - keyboards/mechlovin/zed1800/rules.mk | 1 - keyboards/mechlovin/zed65/no_backlight/rules.mk | 1 - keyboards/mechlovin/zed65/rules.mk | 1 - keyboards/mechwild/bde/rules.mk | 1 - keyboards/mechwild/mokulua/rules.mk | 1 - keyboards/mechwild/obe/f401/rules.mk | 1 - keyboards/mechwild/obe/f411/rules.mk | 1 - keyboards/mechwild/obe/rules.mk | 1 - keyboards/mechwild/waka60/f401/rules.mk | 1 - keyboards/mechwild/waka60/f411/rules.mk | 1 - keyboards/mechwild/waka60/rules.mk | 1 - keyboards/murcielago/rules.mk | 1 - keyboards/nullbitsco/scramble/rules.mk | 1 - keyboards/omkbd/ergodash/rules.mk | 1 - keyboards/omkbd/runner3680/rules.mk | 1 - keyboards/orthodox/rules.mk | 1 - keyboards/peej/rosaline/rules.mk | 1 - keyboards/peej/tripel/rules.mk | 1 - keyboards/peranekofactory/tone/rules.mk | 1 - keyboards/phase_studio/titan65/rules.mk | 1 - keyboards/pica40/rules.mk | 1 - keyboards/pinky/rules.mk | 1 - keyboards/primekb/meridian/rules.mk | 1 - keyboards/primekb/prime_e/rules.mk | 1 - keyboards/program_yoink/rules.mk | 1 - keyboards/projectcain/vault35/rules.mk | 1 - keyboards/qpockets/space_space/rules.mk | 1 - keyboards/qwertyydox/rules.mk | 1 - keyboards/redox/rev1/rules.mk | 1 - keyboards/rgbkb/mun/rules.mk | 1 - keyboards/rgbkb/sol/rules.mk | 1 - keyboards/rgbkb/sol3/rules.mk | 1 - keyboards/rgbkb/zen/rules.mk | 1 - keyboards/rgbkb/zygomorph/rules.mk | 1 - keyboards/rmi_kb/herringbone/rules.mk | 1 - keyboards/rmi_kb/mona/rules.mk | 1 - keyboards/rmi_kb/tkl_ff/rules.mk | 1 - keyboards/rmi_kb/wete/rules.mk | 1 - keyboards/rookiebwoy/late9/rules.mk | 1 - keyboards/rookiebwoy/neopad/rules.mk | 1 - keyboards/rura66/rules.mk | 1 - keyboards/sawnsprojects/okayu/rules.mk | 1 - keyboards/smoll/lefty/rules.mk | 1 - keyboards/sofle/rules.mk | 1 - keyboards/spacetime/rules.mk | 1 - keyboards/splitkb/aurora/corne/rules.mk | 16 - keyboards/splitkb/aurora/helix/rules.mk | 1 - keyboards/splitkb/aurora/lily58/rules.mk | 16 - keyboards/splitkb/aurora/sofle_v2/rules.mk | 1 - keyboards/splitkb/aurora/sweep/rules.mk | 16 - keyboards/splitkb/kyria/rev1/rules.mk | 1 - keyboards/splitkb/kyria/rev2/rules.mk | 1 - keyboards/splitty/rules.mk | 1 - keyboards/studiokestra/galatea/rules.mk | 1 - keyboards/takashiski/hecomi/rules.mk | 1 - keyboards/themadnoodle/noodlepad/rules.mk | 3 - keyboards/tkw/grandiceps/rules.mk | 1 - keyboards/tominabox1/littlefoot_lx/rules.mk | 1 - keyboards/tominabox1/underscore33/rules.mk | 1 - keyboards/trnthsn/e8ghty/rules.mk | 1 - keyboards/trnthsn/s6xty5neor2/rules.mk | 1 - keyboards/tweetydabird/lotus58/rules.mk | 1 - keyboards/unison/rules.mk | 1 - keyboards/uzu42/rules.mk | 1 - keyboards/vitamins_included/rules.mk | 1 - keyboards/yanghu/unicorne/rules.mk | 1 - keyboards/yosino58/rules.mk | 1 - keyboards/yushakobo/navpad/10/rules.mk | 1 - keyboards/yynmt/acperience12/rules.mk | 1 - 183 files changed, 547 insertions(+), 235 deletions(-) delete mode 100644 keyboards/0_sixty/rules.mk delete mode 100644 keyboards/0xcb/splaytoraid/rules.mk delete mode 100644 keyboards/1upkeyboards/pi40/rules.mk delete mode 100644 keyboards/1upkeyboards/pi50/rules.mk delete mode 100644 keyboards/1upkeyboards/sweet16/rules.mk delete mode 100644 keyboards/40percentclub/i75/rules.mk delete mode 100644 keyboards/40percentclub/polyandry/rules.mk delete mode 100644 keyboards/8pack/rules.mk delete mode 100644 keyboards/adkb96/rules.mk delete mode 100644 keyboards/adm42/rules.mk delete mode 100644 keyboards/aeboards/satellite/rules.mk delete mode 100644 keyboards/atreus/rules.mk delete mode 100644 keyboards/atreyu/rules.mk delete mode 100644 keyboards/binepad/bn009/rules.mk delete mode 100755 keyboards/binepad/bnr1/rules.mk delete mode 100644 keyboards/boston_meetup/rules.mk delete mode 100644 keyboards/bpiphany/frosty_flake/rules.mk delete mode 100644 keyboards/buzzard/rules.mk delete mode 100644 keyboards/clickety_split/leeloo/rules.mk delete mode 100644 keyboards/crkbd/rules.mk delete mode 100644 keyboards/dailycraft/bat43/rules.mk delete mode 100644 keyboards/dailycraft/claw44/rules.mk delete mode 100644 keyboards/dailycraft/sandbox/rules.mk delete mode 100644 keyboards/dailycraft/wings42/rules.mk delete mode 100644 keyboards/delikeeb/vanana/rules.mk delete mode 100644 keyboards/delikeeb/waaffle/rev3/rules.mk delete mode 100644 keyboards/deltasplit75/rules.mk delete mode 100644 keyboards/duck/octagon/rules.mk delete mode 100644 keyboards/duck/orion/rules.mk delete mode 100644 keyboards/ducky/one2mini/rules.mk delete mode 100644 keyboards/ducky/one2sf/rules.mk delete mode 100644 keyboards/dumbpad/rules.mk delete mode 100644 keyboards/durgod/galaxy/rules.mk delete mode 100644 keyboards/durgod/venus/rules.mk delete mode 100644 keyboards/dztech/tofu/ii/rules.mk delete mode 100644 keyboards/dztech/tofu/jr/rules.mk delete mode 100644 keyboards/eco/rules.mk delete mode 100644 keyboards/ergoslab/rules.mk delete mode 100644 keyboards/ergotravel/rules.mk delete mode 100644 keyboards/evyd13/atom47/rules.mk delete mode 100644 keyboards/fortitude60/rules.mk delete mode 100644 keyboards/fruitykeeb/fruitbar/r1/rules.mk delete mode 100644 keyboards/ghs/jem/rules.mk delete mode 100644 keyboards/hadron/rules.mk delete mode 100644 keyboards/handwired/bento/rules.mk delete mode 100644 keyboards/handwired/dactyl_manuform/6x6/rules.mk delete mode 100644 keyboards/handwired/ms_sculpt_mobile/rules.mk delete mode 100644 keyboards/handwired/onekey/rules.mk delete mode 100644 keyboards/handwired/pill60/rules.mk delete mode 100644 keyboards/handwired/postageboard/rules.mk delete mode 100644 keyboards/handwired/qc60/rules.mk delete mode 100644 keyboards/handwired/sono1/rules.mk delete mode 100644 keyboards/handwired/splittest/rules.mk delete mode 100644 keyboards/handwired/stef9998/split_5x7/rules.mk delete mode 100644 keyboards/handwired/symmetric70_proto/promicro/rules.mk delete mode 100644 keyboards/handwired/symmetric70_proto/proton_c/rules.mk delete mode 100644 keyboards/handwired/unk/rules.mk delete mode 100644 keyboards/hillside/46/rules.mk delete mode 100644 keyboards/hillside/48/rules.mk delete mode 100644 keyboards/hillside/52/rules.mk delete mode 100644 keyboards/ibnuda/squiggle/rules.mk delete mode 100644 keyboards/idobao/id80/v1/rules.mk delete mode 100644 keyboards/idobao/id80/v3/rules.mk delete mode 100644 keyboards/inett_studio/sq80/rules.mk delete mode 100644 keyboards/jacky_studio/bear_65/rules.mk delete mode 100644 keyboards/jadookb/jkb65/rules.mk delete mode 100644 keyboards/jian/rules.mk delete mode 100644 keyboards/jiran/rules.mk delete mode 100644 keyboards/jorne/rules.mk delete mode 100644 keyboards/junco/rules.mk delete mode 100644 keyboards/kakunpc/business_card/rules.mk delete mode 100644 keyboards/kakunpc/suihankey/rules.mk delete mode 100644 keyboards/kapcave/paladinpad/rules.mk delete mode 100644 keyboards/kapl/rules.mk delete mode 100644 keyboards/kbdfans/d45/rules.mk delete mode 100644 keyboards/kbdfans/kbd75/rules.mk delete mode 100644 keyboards/keebio/bdn9/rules.mk delete mode 100644 keyboards/keebio/convolution/rules.mk delete mode 100644 keyboards/keebio/foldkb/rules.mk delete mode 100644 keyboards/keebio/kbo5000/rules.mk delete mode 100644 keyboards/keebio/levinson/rules.mk delete mode 100644 keyboards/keebio/quefrency/rules.mk delete mode 100644 keyboards/keebio/rorschach/rules.mk delete mode 100644 keyboards/keebio/sinc/rules.mk delete mode 100644 keyboards/keebio/viterbi/rules.mk delete mode 100644 keyboards/keycapsss/kimiko/rules.mk delete mode 100644 keyboards/kin80/rules.mk delete mode 100644 keyboards/kumaokobo/kudox/rules.mk delete mode 100644 keyboards/kumaokobo/kudox_full/rules.mk delete mode 100644 keyboards/kumaokobo/kudox_game/rules.mk delete mode 100644 keyboards/kumaokobo/pico/rules.mk delete mode 100644 keyboards/lazydesigners/dimple/rules.mk delete mode 100644 keyboards/lets_split/rules.mk delete mode 100644 keyboards/lfkeyboards/lfk87/rules.mk delete mode 100644 keyboards/lily58/rules.mk delete mode 100644 keyboards/lime/rules.mk delete mode 100644 keyboards/maple_computing/ivy/rules.mk delete mode 100644 keyboards/maple_computing/launchpad/rules.mk delete mode 100644 keyboards/maple_computing/minidox/rules.mk delete mode 100644 keyboards/mariorion_v25/rules.mk delete mode 100644 keyboards/marksard/rhymestone/rules.mk delete mode 100644 keyboards/marksard/treadstone48/rules.mk delete mode 100644 keyboards/maxipad/rules.mk delete mode 100644 keyboards/mechkeys/mechmini/rules.mk delete mode 100644 keyboards/mechllama/g35/rules.mk delete mode 100644 keyboards/mechlovin/adelais/rules.mk delete mode 100644 keyboards/mechlovin/adelais/standard_led/arm/rev4/rules.mk delete mode 100644 keyboards/mechlovin/adelais/standard_led/arm/rules.mk delete mode 100644 keyboards/mechlovin/adelais/standard_led/avr/rules.mk delete mode 100644 keyboards/mechlovin/infinity87/rev1/rules.mk delete mode 100644 keyboards/mechlovin/infinity87/rules.mk delete mode 100644 keyboards/mechlovin/mechlovin9/rules.mk delete mode 100644 keyboards/mechlovin/olly/jf/rules.mk delete mode 100644 keyboards/mechlovin/zed1800/rules.mk delete mode 100644 keyboards/mechlovin/zed65/no_backlight/rules.mk delete mode 100644 keyboards/mechlovin/zed65/rules.mk delete mode 100644 keyboards/mechwild/bde/rules.mk delete mode 100644 keyboards/mechwild/mokulua/rules.mk delete mode 100644 keyboards/mechwild/obe/f401/rules.mk delete mode 100644 keyboards/mechwild/obe/f411/rules.mk delete mode 100644 keyboards/mechwild/obe/rules.mk delete mode 100644 keyboards/mechwild/waka60/f401/rules.mk delete mode 100644 keyboards/mechwild/waka60/f411/rules.mk delete mode 100644 keyboards/mechwild/waka60/rules.mk delete mode 100644 keyboards/murcielago/rules.mk delete mode 100644 keyboards/nullbitsco/scramble/rules.mk delete mode 100644 keyboards/omkbd/ergodash/rules.mk delete mode 100644 keyboards/omkbd/runner3680/rules.mk delete mode 100644 keyboards/orthodox/rules.mk delete mode 100644 keyboards/peej/rosaline/rules.mk delete mode 100644 keyboards/peej/tripel/rules.mk delete mode 100644 keyboards/peranekofactory/tone/rules.mk delete mode 100644 keyboards/phase_studio/titan65/rules.mk delete mode 100644 keyboards/pica40/rules.mk delete mode 100644 keyboards/pinky/rules.mk delete mode 100644 keyboards/primekb/meridian/rules.mk delete mode 100644 keyboards/primekb/prime_e/rules.mk delete mode 100644 keyboards/program_yoink/rules.mk delete mode 100644 keyboards/projectcain/vault35/rules.mk delete mode 100644 keyboards/qpockets/space_space/rules.mk delete mode 100644 keyboards/qwertyydox/rules.mk delete mode 100644 keyboards/redox/rev1/rules.mk delete mode 100644 keyboards/rgbkb/mun/rules.mk delete mode 100644 keyboards/rgbkb/sol/rules.mk delete mode 100644 keyboards/rgbkb/sol3/rules.mk delete mode 100644 keyboards/rgbkb/zen/rules.mk delete mode 100644 keyboards/rgbkb/zygomorph/rules.mk delete mode 100644 keyboards/rmi_kb/herringbone/rules.mk delete mode 100644 keyboards/rmi_kb/mona/rules.mk delete mode 100644 keyboards/rmi_kb/tkl_ff/rules.mk delete mode 100644 keyboards/rmi_kb/wete/rules.mk delete mode 100755 keyboards/rookiebwoy/late9/rules.mk delete mode 100755 keyboards/rookiebwoy/neopad/rules.mk delete mode 100644 keyboards/rura66/rules.mk delete mode 100644 keyboards/sawnsprojects/okayu/rules.mk delete mode 100644 keyboards/smoll/lefty/rules.mk delete mode 100644 keyboards/sofle/rules.mk delete mode 100644 keyboards/spacetime/rules.mk delete mode 100644 keyboards/splitkb/aurora/corne/rules.mk delete mode 100644 keyboards/splitkb/aurora/helix/rules.mk delete mode 100644 keyboards/splitkb/aurora/lily58/rules.mk delete mode 100644 keyboards/splitkb/aurora/sofle_v2/rules.mk delete mode 100644 keyboards/splitkb/aurora/sweep/rules.mk delete mode 100644 keyboards/splitkb/kyria/rev1/rules.mk delete mode 100644 keyboards/splitkb/kyria/rev2/rules.mk delete mode 100644 keyboards/splitty/rules.mk delete mode 100644 keyboards/studiokestra/galatea/rules.mk delete mode 100644 keyboards/takashiski/hecomi/rules.mk delete mode 100644 keyboards/themadnoodle/noodlepad/rules.mk delete mode 100644 keyboards/tkw/grandiceps/rules.mk delete mode 100644 keyboards/tominabox1/littlefoot_lx/rules.mk delete mode 100644 keyboards/tominabox1/underscore33/rules.mk delete mode 100644 keyboards/trnthsn/e8ghty/rules.mk delete mode 100644 keyboards/trnthsn/s6xty5neor2/rules.mk delete mode 100644 keyboards/tweetydabird/lotus58/rules.mk delete mode 100644 keyboards/unison/rules.mk delete mode 100644 keyboards/uzu42/rules.mk delete mode 100644 keyboards/vitamins_included/rules.mk delete mode 100644 keyboards/yanghu/unicorne/rules.mk delete mode 100644 keyboards/yosino58/rules.mk delete mode 100644 keyboards/yushakobo/navpad/10/rules.mk delete mode 100644 keyboards/yynmt/acperience12/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 4fd959c4eb..745faee801 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1558,5 +1558,552 @@ }, "dnworks/9973": { "target": "dnworks/tkl87" + }, + // DEFAULT_FOLDER removed during 2025 Q1 cycle + "0_sixty": { + "target": "0_sixty/base" + }, + "0xcb/splaytoraid": { + "target": "0xcb/splaytoraid/rp2040_ce" + }, + "1upkeyboards/pi40": { + "target": "1upkeyboards/pi40/mit_v1_0" + }, + "1upkeyboards/pi50": { + "target": "1upkeyboards/pi50/grid" + }, + "1upkeyboards/sweet16": { + "target": "1upkeyboards/sweet16/v1" + }, + "40percentclub/i75": { + "target": "40percentclub/i75/promicro" + }, + "40percentclub/polyandry": { + "target": "40percentclub/polyandry/promicro" + }, + "8pack": { + "target": "8pack/rev12" + }, + "adkb96": { + "target": "adkb96/rev1" + }, + "adm42": { + "target": "adm42/rev4" + }, + "aeboards/satellite": { + "target": "aeboards/satellite/rev1" + }, + "atreus": { + "target": "atreus/astar" + }, + "atreyu": { + "target": "atreyu/rev1" + }, + "binepad/bn009": { + "target": "binepad/bn009/r2" + }, + "binepad/bnr1": { + "target": "binepad/bnr1/v2" + }, + "boston_meetup": { + "target": "boston_meetup/2019" + }, + "bpiphany/frosty_flake": { + "target": "bpiphany/frosty_flake/20140521" + }, + "buzzard": { + "target": "buzzard/rev1" + }, + "clickety_split/leeloo": { + "target": "clickety_split/leeloo/rev3" + }, + "crkbd": { + "target": "crkbd/rev1" + }, + "dailycraft/bat43": { + "target": "dailycraft/bat43/rev2" + }, + "dailycraft/claw44": { + "target": "dailycraft/claw44/rev1" + }, + "dailycraft/sandbox": { + "target": "dailycraft/sandbox/rev2" + }, + "dailycraft/wings42": { + "target": "dailycraft/wings42/rev2" + }, + "delikeeb/vanana": { + "target": "delikeeb/vanana/rev2" + }, + "delikeeb/waaffle/rev3": { + "target": "delikeeb/waaffle/rev3/pro_micro" + }, + "deltasplit75": { + "target": "deltasplit75/v2" + }, + "duck/octagon": { + "target": "duck/octagon/v2" + }, + "duck/orion": { + "target": "duck/orion/v3" + }, + "ducky/one2mini": { + "target": "ducky/one2mini/1861st" + }, + "ducky/one2sf": { + "target": "ducky/one2sf/1967st" + }, + "dumbpad": { + "target": "dumbpad/v0x" + }, + "durgod/galaxy": { + "target": "durgod/dgk6x/galaxy" + }, + "durgod/venus": { + "target": "durgod/dgk6x/venus" + }, + "dztech/tofu/ii": { + "target": "dztech/tofu/ii/v1" + }, + "dztech/tofu/jr": { + "target": "dztech/tofu/jr/v1" + }, + "eco": { + "target": "eco/rev2" + }, + "ergoslab": { + "target": "ergoslab/rev1" + }, + "ergotravel": { + "target": "ergotravel/rev1" + }, + "evyd13/atom47": { + "target": "evyd13/atom47/rev4" + }, + "fortitude60": { + "target": "fortitude60/rev1" + }, + "fruitykeeb/fruitbar/r1": { + "target": "fruitykeeb/fruitbar/r1/promicro" + }, + "ghs/jem": { + "target": "ghs/jem/soldered" + }, + "hadron": { + "target": "hadron/ver2" + }, + "handwired/bento": { + "target": "handwired/bento/rev1" + }, + "handwired/dactyl_manuform/6x6": { + "target": "handwired/dactyl_manuform/6x6/promicro" + }, + "handwired/ms_sculpt_mobile": { + "target": "handwired/ms_sculpt_mobile/teensy2pp" + }, + "handwired/onekey": { + "target": "handwired/onekey/promicro" + }, + "handwired/pill60": { + "target": "handwired/pill60/bluepill" + }, + "handwired/postageboard": { + "target": "handwired/postageboard/mini" + }, + "handwired/qc60": { + "target": "handwired/qc60/proto" + }, + "handwired/sono1": { + "target": "handwired/sono1/t2pp" + }, + "handwired/splittest": { + "target": "handwired/splittest/promicro" + }, + "handwired/stef9998/split_5x7": { + "target": "handwired/stef9998/split_5x7/rev1" + }, + "handwired/symmetric70_proto/promicro": { + "target": "handwired/symmetric70_proto/promicro/base" + }, + "handwired/symmetric70_proto/proton_c": { + "target": "handwired/symmetric70_proto/proton_c/base" + }, + "handwired/unk": { + "target": "handwired/unk/rev1" + }, + "hillside/46": { + "target": "hillside/46/0_1" + }, + "hillside/48": { + "target": "hillside/48/0_1" + }, + "hillside/52": { + "target": "hillside/52/0_1" + }, + "ibnuda/squiggle": { + "target": "ibnuda/squiggle/rev1" + }, + "idobao/id80/v1": { + "target": "idobao/id80/v2/ansi" + }, + "idobao/id80/v3": { + "target": "idobao/id80/v3/ansi" + }, + "inett_studio/sq80": { + "target": "inett_studio/sq80/hotswap_layout_i" + }, + "jacky_studio/bear_65": { + "target": "jacky_studio/bear_65/rev1" + }, + "jadookb/jkb65": { + "target": "jadookb/jkb65/r1" + }, + "jian": { + "target": "jian/rev2" + }, + "jiran": { + "target": "jiran/rev1" + }, + "jorne": { + "target": "jorne/rev1" + }, + "junco": { + "target": "junco/rev1" + }, + "kakunpc/business_card": { + "target": "kakunpc/business_card/beta" + }, + "kakunpc/suihankey": { + "target": "kakunpc/suihankey/rev1" + }, + "kapcave/paladinpad": { + "target": "kapcave/paladinpad/rev2" + }, + "kapl": { + "target": "kapl/rev1" + }, + "kbdfans/d45": { + "target": "kbdfans/d45/v2" + }, + "kbdfans/kbd75": { + "target": "kbdfans/kbd75/rev1" + }, + "keebio/bdn9": { + "target": "keebio/bdn9/rev1" + }, + "keebio/convolution": { + "target": "keebio/convolution/rev1" + }, + "keebio/foldkb": { + "target": "keebio/foldkb/rev1" + }, + "keebio/kbo5000": { + "target": "keebio/kbo5000/rev1" + }, + "keebio/levinson": { + "target": "keebio/levinson/rev2" + }, + "keebio/quefrency": { + "target": "keebio/quefrency/rev1" + }, + "keebio/rorschach": { + "target": "keebio/rorschach/rev1" + }, + "keebio/sinc": { + "target": "keebio/sinc/rev1" + }, + "keebio/viterbi": { + "target": "keebio/viterbi/rev2" + }, + "keycapsss/kimiko": { + "target": "keycapsss/kimiko/rev2" + }, + "kin80": { + "target": "kin80/blackpill401" + }, + "kumaokobo/kudox_full": { + "target": "kumaokobo/kudox_full/rev1" + }, + "kumaokobo/kudox_game": { + "target": "kumaokobo/kudox_game/rev2" + }, + "kumaokobo/kudox": { + "target": "kumaokobo/kudox/rev3" + }, + "kumaokobo/pico": { + "target": "kumaokobo/pico/65keys" + }, + "lazydesigners/dimple": { + "target": "lazydesigners/dimple/staggered/rev1" + }, + "lets_split": { + "target": "lets_split/rev2" + }, + "lfkeyboards/lfk87": { + "target": "lfkeyboards/lfk78/revc" + }, + "lily58": { + "target": "lily58/rev1" + }, + "lime": { + "target": "lime/rev1" + }, + "maple_computing/ivy": { + "target": "maple_computing/ivy/rev1" + }, + "maple_computing/launchpad": { + "target": "maple_computing/launchpad/rev1" + }, + "maple_computing/minidox": { + "target": "maple_computing/minidox/rev1" + }, + "mariorion_v25": { + "target": "mariorion_v25/prod" + }, + "marksard/rhymestone": { + "target": "marksard/rhymestone/rev1" + }, + "marksard/treadstone48": { + "target": "marksard/treadstone48/rev1" + }, + "maxipad": { + "target": "maxipad/promicro" + }, + "mechkeys/mechmini": { + "target": "mechkeys/mechmini/v2" + }, + "mechllama/g35": { + "target": "mechllama/g35/v2" + }, + "mechlovin/adelais": { + "target": "mechlovin/adelais/standard_led/arm/rev2" + }, + "mechlovin/adelais/standard_led/arm/rev4": { + "target": "mechlovin/adelais/standard_led/arm/rev4/stm32f303" + }, + "mechlovin/adelais/standard_led/arm": { + "target": "mechlovin/adelais/standard_led/arm/rev2" + }, + "mechlovin/adelais/standard_led/avr": { + "target": "mechlovin/adelais/standard_led/avr/rev1" + }, + "mechlovin/infinity87/rev1": { + "target": "mechlovin/infinity87/rev1/standard" + }, + "mechlovin/infinity87": { + "target": "mechlovin/infinity87/rgb_rev1" + }, + "mechlovin/mechlovin9": { + "target": "mechlovin/mechlovin9/rev1" + }, + "mechlovin/olly/jf": { + "target": "mechlovin/olly/jf/rev1" + }, + "mechlovin/zed1800": { + "target": "mechlovin/zed1800/saber" + }, + "mechlovin/zed65/no_backlight": { + "target": "mechlovin/zed65/no_backlight/wearhaus66" + }, + "mechlovin/zed65": { + "target": "mechlovin/zed65/no_backlight/wearhaus66" + }, + "mechwild/bde": { + "target": "mechwild/bde/rev2" + }, + "mechwild/mokulua": { + "target": "mechwild/mokulua/standard" + }, + "mechwild/obe/f401": { + "target": "mechwild/obe/f401/base" + }, + "mechwild/obe/f411": { + "target": "mechwild/obe/f411/base" + }, + "mechwild/obe": { + "target": "mechwild/obe/f401/base" + }, + "mechwild/waka60/f401": { + "target": "mechwild/waka60/f401/base" + }, + "mechwild/waka60/f411": { + "target": "mechwild/waka60/f411/base" + }, + "mechwild/waka60": { + "target": "mechwild/waka60/f401/base" + }, + "murcielago": { + "target": "murcielago/rev1" + }, + "nullbitsco/scramble": { + "target": "nullbitsco/scramble/v2" + }, + "omkbd/ergodash": { + "target": "omkbd/ergodash/rev1" + }, + "omkbd/runner3680": { + "target": "omkbd/runner3680/5x8" + }, + "orthodox": { + "target": "orthodox/rev3" + }, + "peej/rosaline": { + "target": "peej/rosaline/staggered" + }, + "peej/tripel": { + "target": "peej/tripel/left" + }, + "peranekofactory/tone": { + "target": "peranekofactory/tone/rev2" + }, + "phase_studio/titan65": { + "target": "phase_studio/titan65/hotswap" + }, + "pica40": { + "target": "pica40/rev2" + }, + "pinky": { + "target": "pinky/3" + }, + "primekb/meridian": { + "target": "primekb/meridian/ktr1010" + }, + "primekb/prime_e": { + "target": "primekb/prime_e/std" + }, + "program_yoink": { + "target": "program_yoink/staggered" + }, + "projectcain/vault35": { + "target": "projectcain/vault35/atmega32u4" + }, + "qpockets/space_space": { + "target": "qpockets/space_space/rev2" + }, + "qwertyydox": { + "target": "qwertyydox/rev1" + }, + "redox/rev1": { + "target": "redox/rev1/base" + }, + "rgbkb/mun": { + "target": "rgbkb/mun/rev1" + }, + "rgbkb/sol3": { + "target": "rgbkb/sol3/rev1" + }, + "rgbkb/sol": { + "target": "rgbkb/sol/rev2" + }, + "rgbkb/zen": { + "target": "rgbkb/zen/rev2" + }, + "rgbkb/zygomorph": { + "target": "rgbkb/zygomorph/rev1" + }, + "rmi_kb/herringbone": { + "target": "rmi_kb/herringbone/v1" + }, + "rmi_kb/mona": { + "target": "rmi_kb/mona/v1_1" + }, + "rmi_kb/tkl_ff": { + "target": "rmi_kb/tkl_ff/v1" + }, + "rmi_kb/wete": { + "target": "rmi_kb/wete/v2" + }, + "rookiebwoy/late9": { + "target": "rookiebwoy/late9/rev1" + }, + "rookiebwoy/neopad": { + "target": "rookiebwoy/neopad/rev1" + }, + "rura66": { + "target": "rura66/rev1" + }, + "sawnsprojects/okayu": { + "target": "sawnsprojects/okayu/stm32f072" + }, + "smoll/lefty": { + "target": "smoll/lefty/rev2" + }, + "sofle": { + "target": "sofle/rev1" + }, + "spacetime": { + "target": "spacetime/rev1" + }, + "splitkb/aurora/corne": { + "target": "splitkb/aurora/corne/rev1" + }, + "splitkb/aurora/helix": { + "target": "splitkb/aurora/helix/rev1" + }, + "splitkb/aurora/lily58": { + "target": "splitkb/aurora/lily58/rev1" + }, + "splitkb/aurora/sofle_v2": { + "target": "splitkb/aurora/sofle_v2/rev1" + }, + "splitkb/aurora/sweep": { + "target": "splitkb/aurora/sweep/rev1" + }, + "splitkb/kyria/rev1": { + "target": "splitkb/kyria/rev1/base" + }, + "splitkb/kyria/rev2": { + "target": "splitkb/kyria/rev2/base" + }, + "splitty": { + "target": "splitty/rev1" + }, + "studiokestra/galatea": { + "target": "studiokestra/galatea/rev1" + }, + "takashiski/hecomi": { + "target": "takashiski/hecomi/alpha" + }, + "themadnoodle/noodlepad": { + "target": "themadnoodle/noodlepad/v1" + }, + "tkw/grandiceps": { + "target": "tkw/grandiceps/rev1" + }, + "tominabox1/littlefoot_lx": { + "target": "tominabox1/littlefoot_lx/rev1" + }, + "tominabox1/underscore33": { + "target": "tominabox1/underscore33/rev1" + }, + "trnthsn/e8ghty": { + "target": "trnthsn/e8ghty/stm32f103" + }, + "trnthsn/s6xty5neor2": { + "target": "trnthsn/s6xty5neor2/stm32f103" + }, + "tweetydabird/lotus58": { + "target": "tweetydabird/lotus58/promicro" + }, + "unison": { + "target": "unison/v04" + }, + "uzu42": { + "target": "uzu42/rev1" + }, + "vitamins_included": { + "target": "vitamins_included/rev2" + }, + "yanghu/unicorne": { + "target": "yanghu/unicorne/f411" + }, + "yosino58": { + "target": "yosino58/rev1" + }, + "yushakobo/navpad/10": { + "target": "yushakobo/navpad/10/rev1" + }, + "yynmt/acperience12": { + "target": "yynmt/acperience12/rev1" } } diff --git a/keyboards/0_sixty/rules.mk b/keyboards/0_sixty/rules.mk deleted file mode 100644 index a0d06a89dd..0000000000 --- a/keyboards/0_sixty/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 0_sixty/base diff --git a/keyboards/0xcb/splaytoraid/rules.mk b/keyboards/0xcb/splaytoraid/rules.mk deleted file mode 100644 index 65884dec4f..0000000000 --- a/keyboards/0xcb/splaytoraid/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 0xcb/splaytoraid/rp2040_ce diff --git a/keyboards/1upkeyboards/pi40/rules.mk b/keyboards/1upkeyboards/pi40/rules.mk deleted file mode 100644 index 48aea570e0..0000000000 --- a/keyboards/1upkeyboards/pi40/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 1upkeyboards/pi40/mit_v1_0 diff --git a/keyboards/1upkeyboards/pi50/rules.mk b/keyboards/1upkeyboards/pi50/rules.mk deleted file mode 100644 index a9660074af..0000000000 --- a/keyboards/1upkeyboards/pi50/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 1upkeyboards/pi50/grid diff --git a/keyboards/1upkeyboards/sweet16/rules.mk b/keyboards/1upkeyboards/sweet16/rules.mk deleted file mode 100644 index 7d269ac93f..0000000000 --- a/keyboards/1upkeyboards/sweet16/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 1upkeyboards/sweet16/v1 diff --git a/keyboards/40percentclub/i75/rules.mk b/keyboards/40percentclub/i75/rules.mk deleted file mode 100644 index 48b0427550..0000000000 --- a/keyboards/40percentclub/i75/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 40percentclub/i75/promicro diff --git a/keyboards/40percentclub/polyandry/rules.mk b/keyboards/40percentclub/polyandry/rules.mk deleted file mode 100644 index 3064c8202c..0000000000 --- a/keyboards/40percentclub/polyandry/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 40percentclub/polyandry/promicro diff --git a/keyboards/8pack/rules.mk b/keyboards/8pack/rules.mk deleted file mode 100644 index 81024a7119..0000000000 --- a/keyboards/8pack/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 8pack/rev12 diff --git a/keyboards/adkb96/rules.mk b/keyboards/adkb96/rules.mk deleted file mode 100644 index ac7561b21d..0000000000 --- a/keyboards/adkb96/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = adkb96/rev1 diff --git a/keyboards/adm42/rules.mk b/keyboards/adm42/rules.mk deleted file mode 100644 index 06fc88e9f6..0000000000 --- a/keyboards/adm42/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = adm42/rev4 \ No newline at end of file diff --git a/keyboards/aeboards/satellite/rules.mk b/keyboards/aeboards/satellite/rules.mk deleted file mode 100644 index bc32615d2b..0000000000 --- a/keyboards/aeboards/satellite/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = aeboards/satellite/rev1 diff --git a/keyboards/atreus/rules.mk b/keyboards/atreus/rules.mk deleted file mode 100644 index d933cb327d..0000000000 --- a/keyboards/atreus/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = atreus/astar diff --git a/keyboards/atreyu/rules.mk b/keyboards/atreyu/rules.mk deleted file mode 100644 index 4daffe6b9d..0000000000 --- a/keyboards/atreyu/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = atreyu/rev1 diff --git a/keyboards/binepad/bn009/rules.mk b/keyboards/binepad/bn009/rules.mk deleted file mode 100644 index 74214d60ed..0000000000 --- a/keyboards/binepad/bn009/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -# This file is mostly left blank - -DEFAULT_FOLDER = binepad/bn009/r2 diff --git a/keyboards/binepad/bnr1/rules.mk b/keyboards/binepad/bnr1/rules.mk deleted file mode 100755 index ce85c57404..0000000000 --- a/keyboards/binepad/bnr1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = binepad/bnr1/v2 diff --git a/keyboards/boston_meetup/rules.mk b/keyboards/boston_meetup/rules.mk deleted file mode 100644 index 6d6745a0e5..0000000000 --- a/keyboards/boston_meetup/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = boston_meetup/2019 diff --git a/keyboards/bpiphany/frosty_flake/rules.mk b/keyboards/bpiphany/frosty_flake/rules.mk deleted file mode 100644 index e5402b32f7..0000000000 --- a/keyboards/bpiphany/frosty_flake/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER=bpiphany/frosty_flake/20140521 diff --git a/keyboards/buzzard/rules.mk b/keyboards/buzzard/rules.mk deleted file mode 100644 index 2f66720b77..0000000000 --- a/keyboards/buzzard/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = buzzard/rev1 diff --git a/keyboards/clickety_split/leeloo/rules.mk b/keyboards/clickety_split/leeloo/rules.mk deleted file mode 100644 index 9d35960f7c..0000000000 --- a/keyboards/clickety_split/leeloo/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -# Default Folder -DEFAULT_FOLDER = clickety_split/leeloo/rev3 diff --git a/keyboards/crkbd/rules.mk b/keyboards/crkbd/rules.mk deleted file mode 100644 index 836587e45e..0000000000 --- a/keyboards/crkbd/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = crkbd/rev1 diff --git a/keyboards/dailycraft/bat43/rules.mk b/keyboards/dailycraft/bat43/rules.mk deleted file mode 100644 index b152851948..0000000000 --- a/keyboards/dailycraft/bat43/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dailycraft/bat43/rev2 diff --git a/keyboards/dailycraft/claw44/rules.mk b/keyboards/dailycraft/claw44/rules.mk deleted file mode 100644 index 0344b3ee28..0000000000 --- a/keyboards/dailycraft/claw44/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dailycraft/claw44/rev1 diff --git a/keyboards/dailycraft/sandbox/rules.mk b/keyboards/dailycraft/sandbox/rules.mk deleted file mode 100644 index c62f01e18f..0000000000 --- a/keyboards/dailycraft/sandbox/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dailycraft/sandbox/rev2 diff --git a/keyboards/dailycraft/wings42/rules.mk b/keyboards/dailycraft/wings42/rules.mk deleted file mode 100644 index b027fec9b9..0000000000 --- a/keyboards/dailycraft/wings42/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dailycraft/wings42/rev2 diff --git a/keyboards/delikeeb/vanana/rules.mk b/keyboards/delikeeb/vanana/rules.mk deleted file mode 100644 index ff3dc1df61..0000000000 --- a/keyboards/delikeeb/vanana/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = delikeeb/vanana/rev2 diff --git a/keyboards/delikeeb/waaffle/rev3/rules.mk b/keyboards/delikeeb/waaffle/rev3/rules.mk deleted file mode 100644 index dbd58ca5bf..0000000000 --- a/keyboards/delikeeb/waaffle/rev3/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = delikeeb/waaffle/rev3/pro_micro diff --git a/keyboards/deltasplit75/rules.mk b/keyboards/deltasplit75/rules.mk deleted file mode 100644 index ee888337e5..0000000000 --- a/keyboards/deltasplit75/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = deltasplit75/v2 diff --git a/keyboards/duck/octagon/rules.mk b/keyboards/duck/octagon/rules.mk deleted file mode 100644 index 46bd457bb7..0000000000 --- a/keyboards/duck/octagon/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = duck/octagon/v2 \ No newline at end of file diff --git a/keyboards/duck/orion/rules.mk b/keyboards/duck/orion/rules.mk deleted file mode 100644 index 3788e0fbfb..0000000000 --- a/keyboards/duck/orion/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = duck/orion/v3 diff --git a/keyboards/ducky/one2mini/rules.mk b/keyboards/ducky/one2mini/rules.mk deleted file mode 100644 index 628be832ee..0000000000 --- a/keyboards/ducky/one2mini/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ducky/one2mini/1861st diff --git a/keyboards/ducky/one2sf/rules.mk b/keyboards/ducky/one2sf/rules.mk deleted file mode 100644 index 0c9ddb957f..0000000000 --- a/keyboards/ducky/one2sf/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ducky/one2sf/1967st diff --git a/keyboards/dumbpad/rules.mk b/keyboards/dumbpad/rules.mk deleted file mode 100644 index 87ec1ab01b..0000000000 --- a/keyboards/dumbpad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dumbpad/v0x diff --git a/keyboards/durgod/galaxy/rules.mk b/keyboards/durgod/galaxy/rules.mk deleted file mode 100644 index ff1e1ff205..0000000000 --- a/keyboards/durgod/galaxy/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER=durgod/dgk6x/galaxy diff --git a/keyboards/durgod/venus/rules.mk b/keyboards/durgod/venus/rules.mk deleted file mode 100644 index 57acf2a48c..0000000000 --- a/keyboards/durgod/venus/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER=durgod/dgk6x/venus diff --git a/keyboards/dztech/tofu/ii/rules.mk b/keyboards/dztech/tofu/ii/rules.mk deleted file mode 100644 index c08cfdaae9..0000000000 --- a/keyboards/dztech/tofu/ii/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dztech/tofu/ii/v1 diff --git a/keyboards/dztech/tofu/jr/rules.mk b/keyboards/dztech/tofu/jr/rules.mk deleted file mode 100644 index 7333c613fd..0000000000 --- a/keyboards/dztech/tofu/jr/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = dztech/tofu/jr/v1 diff --git a/keyboards/eco/rules.mk b/keyboards/eco/rules.mk deleted file mode 100644 index a3d419658b..0000000000 --- a/keyboards/eco/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = eco/rev2 diff --git a/keyboards/ergoslab/rules.mk b/keyboards/ergoslab/rules.mk deleted file mode 100644 index 8eb40c77d5..0000000000 --- a/keyboards/ergoslab/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ergoslab/rev1 diff --git a/keyboards/ergotravel/rules.mk b/keyboards/ergotravel/rules.mk deleted file mode 100644 index 3f30277bb5..0000000000 --- a/keyboards/ergotravel/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ergotravel/rev1 diff --git a/keyboards/evyd13/atom47/rules.mk b/keyboards/evyd13/atom47/rules.mk deleted file mode 100644 index 9d5b753077..0000000000 --- a/keyboards/evyd13/atom47/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = evyd13/atom47/rev4 diff --git a/keyboards/fortitude60/rules.mk b/keyboards/fortitude60/rules.mk deleted file mode 100644 index ef158b8cf0..0000000000 --- a/keyboards/fortitude60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = fortitude60/rev1 diff --git a/keyboards/fruitykeeb/fruitbar/r1/rules.mk b/keyboards/fruitykeeb/fruitbar/r1/rules.mk deleted file mode 100644 index 3328de6095..0000000000 --- a/keyboards/fruitykeeb/fruitbar/r1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = fruitykeeb/fruitbar/r1/promicro diff --git a/keyboards/ghs/jem/rules.mk b/keyboards/ghs/jem/rules.mk deleted file mode 100644 index e96c00e5c0..0000000000 --- a/keyboards/ghs/jem/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ghs/jem/soldered diff --git a/keyboards/hadron/rules.mk b/keyboards/hadron/rules.mk deleted file mode 100644 index 8498675750..0000000000 --- a/keyboards/hadron/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = hadron/ver2 diff --git a/keyboards/handwired/bento/rules.mk b/keyboards/handwired/bento/rules.mk deleted file mode 100644 index e160faab83..0000000000 --- a/keyboards/handwired/bento/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/bento/rev1 diff --git a/keyboards/handwired/dactyl_manuform/6x6/rules.mk b/keyboards/handwired/dactyl_manuform/6x6/rules.mk deleted file mode 100644 index 29194b429e..0000000000 --- a/keyboards/handwired/dactyl_manuform/6x6/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/dactyl_manuform/6x6/promicro diff --git a/keyboards/handwired/ms_sculpt_mobile/rules.mk b/keyboards/handwired/ms_sculpt_mobile/rules.mk deleted file mode 100644 index 8a3cc6858c..0000000000 --- a/keyboards/handwired/ms_sculpt_mobile/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/ms_sculpt_mobile/teensy2pp diff --git a/keyboards/handwired/onekey/rules.mk b/keyboards/handwired/onekey/rules.mk deleted file mode 100644 index 2094801ed9..0000000000 --- a/keyboards/handwired/onekey/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/onekey/promicro diff --git a/keyboards/handwired/pill60/rules.mk b/keyboards/handwired/pill60/rules.mk deleted file mode 100644 index 9299a64d61..0000000000 --- a/keyboards/handwired/pill60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/pill60/bluepill diff --git a/keyboards/handwired/postageboard/rules.mk b/keyboards/handwired/postageboard/rules.mk deleted file mode 100644 index a7fcf6bea6..0000000000 --- a/keyboards/handwired/postageboard/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER=handwired/postageboard/mini diff --git a/keyboards/handwired/qc60/rules.mk b/keyboards/handwired/qc60/rules.mk deleted file mode 100644 index 4905848cf9..0000000000 --- a/keyboards/handwired/qc60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/qc60/proto diff --git a/keyboards/handwired/sono1/rules.mk b/keyboards/handwired/sono1/rules.mk deleted file mode 100644 index 9b472f28f2..0000000000 --- a/keyboards/handwired/sono1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/sono1/t2pp diff --git a/keyboards/handwired/splittest/rules.mk b/keyboards/handwired/splittest/rules.mk deleted file mode 100644 index ae4d823b53..0000000000 --- a/keyboards/handwired/splittest/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/splittest/promicro diff --git a/keyboards/handwired/stef9998/split_5x7/rules.mk b/keyboards/handwired/stef9998/split_5x7/rules.mk deleted file mode 100644 index f06c490f00..0000000000 --- a/keyboards/handwired/stef9998/split_5x7/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/stef9998/split_5x7/rev1 diff --git a/keyboards/handwired/symmetric70_proto/promicro/rules.mk b/keyboards/handwired/symmetric70_proto/promicro/rules.mk deleted file mode 100644 index 7aa985b3f1..0000000000 --- a/keyboards/handwired/symmetric70_proto/promicro/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/symmetric70_proto/promicro/base diff --git a/keyboards/handwired/symmetric70_proto/proton_c/rules.mk b/keyboards/handwired/symmetric70_proto/proton_c/rules.mk deleted file mode 100644 index 28c4536e4b..0000000000 --- a/keyboards/handwired/symmetric70_proto/proton_c/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/symmetric70_proto/proton_c/base diff --git a/keyboards/handwired/unk/rules.mk b/keyboards/handwired/unk/rules.mk deleted file mode 100644 index d4536e0cbb..0000000000 --- a/keyboards/handwired/unk/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = handwired/unk/rev1 diff --git a/keyboards/hillside/46/rules.mk b/keyboards/hillside/46/rules.mk deleted file mode 100644 index f3e926a8dc..0000000000 --- a/keyboards/hillside/46/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = hillside/46/0_1 \ No newline at end of file diff --git a/keyboards/hillside/48/rules.mk b/keyboards/hillside/48/rules.mk deleted file mode 100644 index d8d69d9ec1..0000000000 --- a/keyboards/hillside/48/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = hillside/48/0_1 diff --git a/keyboards/hillside/52/rules.mk b/keyboards/hillside/52/rules.mk deleted file mode 100644 index 402bc6bb95..0000000000 --- a/keyboards/hillside/52/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = hillside/52/0_1 diff --git a/keyboards/ibnuda/squiggle/rules.mk b/keyboards/ibnuda/squiggle/rules.mk deleted file mode 100644 index 0214333999..0000000000 --- a/keyboards/ibnuda/squiggle/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ibnuda/squiggle/rev1 diff --git a/keyboards/idobao/id80/v1/rules.mk b/keyboards/idobao/id80/v1/rules.mk deleted file mode 100644 index 20283f04be..0000000000 --- a/keyboards/idobao/id80/v1/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -# Defalt to the ansi version -DEFAULT_FOLDER = idobao/id80/v2/ansi diff --git a/keyboards/idobao/id80/v3/rules.mk b/keyboards/idobao/id80/v3/rules.mk deleted file mode 100644 index 218fc05539..0000000000 --- a/keyboards/idobao/id80/v3/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -# Defalt to the ansi version -DEFAULT_FOLDER = idobao/id80/v3/ansi diff --git a/keyboards/inett_studio/sq80/rules.mk b/keyboards/inett_studio/sq80/rules.mk deleted file mode 100644 index d4f8260d93..0000000000 --- a/keyboards/inett_studio/sq80/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = inett_studio/sq80/hotswap_layout_i diff --git a/keyboards/jacky_studio/bear_65/rules.mk b/keyboards/jacky_studio/bear_65/rules.mk deleted file mode 100644 index 91bb6f74b9..0000000000 --- a/keyboards/jacky_studio/bear_65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jacky_studio/bear_65/rev1 diff --git a/keyboards/jadookb/jkb65/rules.mk b/keyboards/jadookb/jkb65/rules.mk deleted file mode 100644 index 2bbb2a41ce..0000000000 --- a/keyboards/jadookb/jkb65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jadookb/jkb65/r1 diff --git a/keyboards/jian/rules.mk b/keyboards/jian/rules.mk deleted file mode 100644 index c19fa00b5c..0000000000 --- a/keyboards/jian/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jian/rev2 diff --git a/keyboards/jiran/rules.mk b/keyboards/jiran/rules.mk deleted file mode 100644 index 3ffe13302d..0000000000 --- a/keyboards/jiran/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jiran/rev1 diff --git a/keyboards/jorne/rules.mk b/keyboards/jorne/rules.mk deleted file mode 100644 index c43649b348..0000000000 --- a/keyboards/jorne/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jorne/rev1 diff --git a/keyboards/junco/rules.mk b/keyboards/junco/rules.mk deleted file mode 100644 index bb94741e5a..0000000000 --- a/keyboards/junco/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = junco/rev1 diff --git a/keyboards/kakunpc/business_card/rules.mk b/keyboards/kakunpc/business_card/rules.mk deleted file mode 100644 index 4525d52332..0000000000 --- a/keyboards/kakunpc/business_card/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kakunpc/business_card/beta diff --git a/keyboards/kakunpc/suihankey/rules.mk b/keyboards/kakunpc/suihankey/rules.mk deleted file mode 100644 index 46a0114bd5..0000000000 --- a/keyboards/kakunpc/suihankey/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kakunpc/suihankey/rev1 diff --git a/keyboards/kapcave/paladinpad/rules.mk b/keyboards/kapcave/paladinpad/rules.mk deleted file mode 100644 index 02685414e3..0000000000 --- a/keyboards/kapcave/paladinpad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kapcave/paladinpad/rev2 diff --git a/keyboards/kapl/rules.mk b/keyboards/kapl/rules.mk deleted file mode 100644 index a5dd22ce1c..0000000000 --- a/keyboards/kapl/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kapl/rev1 diff --git a/keyboards/kbdfans/d45/rules.mk b/keyboards/kbdfans/d45/rules.mk deleted file mode 100644 index 041e632f65..0000000000 --- a/keyboards/kbdfans/d45/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kbdfans/d45/v2 diff --git a/keyboards/kbdfans/kbd75/rules.mk b/keyboards/kbdfans/kbd75/rules.mk deleted file mode 100644 index 5c46171316..0000000000 --- a/keyboards/kbdfans/kbd75/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kbdfans/kbd75/rev1 diff --git a/keyboards/keebio/bdn9/rules.mk b/keyboards/keebio/bdn9/rules.mk deleted file mode 100644 index 431a8ad027..0000000000 --- a/keyboards/keebio/bdn9/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/bdn9/rev1 diff --git a/keyboards/keebio/convolution/rules.mk b/keyboards/keebio/convolution/rules.mk deleted file mode 100644 index 9df8bd1c47..0000000000 --- a/keyboards/keebio/convolution/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/convolution/rev1 diff --git a/keyboards/keebio/foldkb/rules.mk b/keyboards/keebio/foldkb/rules.mk deleted file mode 100644 index 6a0522a902..0000000000 --- a/keyboards/keebio/foldkb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/foldkb/rev1 diff --git a/keyboards/keebio/kbo5000/rules.mk b/keyboards/keebio/kbo5000/rules.mk deleted file mode 100644 index 06d2f2f412..0000000000 --- a/keyboards/keebio/kbo5000/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/kbo5000/rev1 diff --git a/keyboards/keebio/levinson/rules.mk b/keyboards/keebio/levinson/rules.mk deleted file mode 100644 index 44cdce9d12..0000000000 --- a/keyboards/keebio/levinson/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/levinson/rev2 diff --git a/keyboards/keebio/quefrency/rules.mk b/keyboards/keebio/quefrency/rules.mk deleted file mode 100644 index fb40fc8a56..0000000000 --- a/keyboards/keebio/quefrency/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/quefrency/rev1 diff --git a/keyboards/keebio/rorschach/rules.mk b/keyboards/keebio/rorschach/rules.mk deleted file mode 100644 index 6cdac68a4e..0000000000 --- a/keyboards/keebio/rorschach/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/rorschach/rev1 diff --git a/keyboards/keebio/sinc/rules.mk b/keyboards/keebio/sinc/rules.mk deleted file mode 100644 index 1419957479..0000000000 --- a/keyboards/keebio/sinc/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/sinc/rev1 diff --git a/keyboards/keebio/viterbi/rules.mk b/keyboards/keebio/viterbi/rules.mk deleted file mode 100644 index ecf6a3fa87..0000000000 --- a/keyboards/keebio/viterbi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keebio/viterbi/rev2 diff --git a/keyboards/keycapsss/kimiko/rules.mk b/keyboards/keycapsss/kimiko/rules.mk deleted file mode 100644 index cb9f69d6bb..0000000000 --- a/keyboards/keycapsss/kimiko/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keycapsss/kimiko/rev2 diff --git a/keyboards/kin80/rules.mk b/keyboards/kin80/rules.mk deleted file mode 100644 index b264c9cfc5..0000000000 --- a/keyboards/kin80/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kin80/blackpill401 diff --git a/keyboards/kumaokobo/kudox/rules.mk b/keyboards/kumaokobo/kudox/rules.mk deleted file mode 100644 index 16c27e7c3b..0000000000 --- a/keyboards/kumaokobo/kudox/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kumaokobo/kudox/rev3 diff --git a/keyboards/kumaokobo/kudox_full/rules.mk b/keyboards/kumaokobo/kudox_full/rules.mk deleted file mode 100644 index c912dcd2e5..0000000000 --- a/keyboards/kumaokobo/kudox_full/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kumaokobo/kudox_full/rev1 diff --git a/keyboards/kumaokobo/kudox_game/rules.mk b/keyboards/kumaokobo/kudox_game/rules.mk deleted file mode 100644 index 28918ca489..0000000000 --- a/keyboards/kumaokobo/kudox_game/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kumaokobo/kudox_game/rev2 diff --git a/keyboards/kumaokobo/pico/rules.mk b/keyboards/kumaokobo/pico/rules.mk deleted file mode 100644 index df859afa0f..0000000000 --- a/keyboards/kumaokobo/pico/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kumaokobo/pico/65keys diff --git a/keyboards/lazydesigners/dimple/rules.mk b/keyboards/lazydesigners/dimple/rules.mk deleted file mode 100644 index cd05623d84..0000000000 --- a/keyboards/lazydesigners/dimple/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lazydesigners/dimple/staggered/rev1 diff --git a/keyboards/lets_split/rules.mk b/keyboards/lets_split/rules.mk deleted file mode 100644 index 0fb6d36204..0000000000 --- a/keyboards/lets_split/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lets_split/rev2 diff --git a/keyboards/lfkeyboards/lfk87/rules.mk b/keyboards/lfkeyboards/lfk87/rules.mk deleted file mode 100644 index 05b80ac74a..0000000000 --- a/keyboards/lfkeyboards/lfk87/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lfkeyboards/lfk78/revc diff --git a/keyboards/lily58/rules.mk b/keyboards/lily58/rules.mk deleted file mode 100644 index a63bd42ad3..0000000000 --- a/keyboards/lily58/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lily58/rev1 diff --git a/keyboards/lime/rules.mk b/keyboards/lime/rules.mk deleted file mode 100644 index 4643abab93..0000000000 --- a/keyboards/lime/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = lime/rev1 diff --git a/keyboards/maple_computing/ivy/rules.mk b/keyboards/maple_computing/ivy/rules.mk deleted file mode 100644 index 2665d44abd..0000000000 --- a/keyboards/maple_computing/ivy/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = maple_computing/ivy/rev1 diff --git a/keyboards/maple_computing/launchpad/rules.mk b/keyboards/maple_computing/launchpad/rules.mk deleted file mode 100644 index 8c35a608a6..0000000000 --- a/keyboards/maple_computing/launchpad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = maple_computing/launchpad/rev1 diff --git a/keyboards/maple_computing/minidox/rules.mk b/keyboards/maple_computing/minidox/rules.mk deleted file mode 100644 index d5a7f49e40..0000000000 --- a/keyboards/maple_computing/minidox/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = maple_computing/minidox/rev1 diff --git a/keyboards/mariorion_v25/rules.mk b/keyboards/mariorion_v25/rules.mk deleted file mode 100644 index f0bfa47284..0000000000 --- a/keyboards/mariorion_v25/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mariorion_v25/prod diff --git a/keyboards/marksard/rhymestone/rules.mk b/keyboards/marksard/rhymestone/rules.mk deleted file mode 100644 index 1833888708..0000000000 --- a/keyboards/marksard/rhymestone/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = marksard/rhymestone/rev1 diff --git a/keyboards/marksard/treadstone48/rules.mk b/keyboards/marksard/treadstone48/rules.mk deleted file mode 100644 index 23865d27e6..0000000000 --- a/keyboards/marksard/treadstone48/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = marksard/treadstone48/rev1 diff --git a/keyboards/maxipad/rules.mk b/keyboards/maxipad/rules.mk deleted file mode 100644 index 98a712a7b8..0000000000 --- a/keyboards/maxipad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = maxipad/promicro diff --git a/keyboards/mechkeys/mechmini/rules.mk b/keyboards/mechkeys/mechmini/rules.mk deleted file mode 100644 index 9d63d875eb..0000000000 --- a/keyboards/mechkeys/mechmini/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechkeys/mechmini/v2 diff --git a/keyboards/mechllama/g35/rules.mk b/keyboards/mechllama/g35/rules.mk deleted file mode 100644 index 36acf8d17f..0000000000 --- a/keyboards/mechllama/g35/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechllama/g35/v2 diff --git a/keyboards/mechlovin/adelais/rules.mk b/keyboards/mechlovin/adelais/rules.mk deleted file mode 100644 index a1d2ba038d..0000000000 --- a/keyboards/mechlovin/adelais/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/adelais/standard_led/arm/rev2 diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rev4/rules.mk b/keyboards/mechlovin/adelais/standard_led/arm/rev4/rules.mk deleted file mode 100644 index d348ae660f..0000000000 --- a/keyboards/mechlovin/adelais/standard_led/arm/rev4/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/adelais/standard_led/arm/rev4/stm32f303 diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rules.mk b/keyboards/mechlovin/adelais/standard_led/arm/rules.mk deleted file mode 100644 index 16a636a342..0000000000 --- a/keyboards/mechlovin/adelais/standard_led/arm/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/adelais/standard_led/arm/rev2 \ No newline at end of file diff --git a/keyboards/mechlovin/adelais/standard_led/avr/rules.mk b/keyboards/mechlovin/adelais/standard_led/avr/rules.mk deleted file mode 100644 index f33198890d..0000000000 --- a/keyboards/mechlovin/adelais/standard_led/avr/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ - -DEFAULT_FOLDER = mechlovin/adelais/standard_led/avr/rev1 \ No newline at end of file diff --git a/keyboards/mechlovin/infinity87/rev1/rules.mk b/keyboards/mechlovin/infinity87/rev1/rules.mk deleted file mode 100644 index 101153f240..0000000000 --- a/keyboards/mechlovin/infinity87/rev1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/infinity87/rev1/standard diff --git a/keyboards/mechlovin/infinity87/rules.mk b/keyboards/mechlovin/infinity87/rules.mk deleted file mode 100644 index 4aa072cae7..0000000000 --- a/keyboards/mechlovin/infinity87/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/infinity87/rgb_rev1 diff --git a/keyboards/mechlovin/mechlovin9/rules.mk b/keyboards/mechlovin/mechlovin9/rules.mk deleted file mode 100644 index 79de7c7d31..0000000000 --- a/keyboards/mechlovin/mechlovin9/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/mechlovin9/rev1 diff --git a/keyboards/mechlovin/olly/jf/rules.mk b/keyboards/mechlovin/olly/jf/rules.mk deleted file mode 100644 index fa0eceeb8a..0000000000 --- a/keyboards/mechlovin/olly/jf/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/olly/jf/rev1 diff --git a/keyboards/mechlovin/zed1800/rules.mk b/keyboards/mechlovin/zed1800/rules.mk deleted file mode 100644 index e0088c95c3..0000000000 --- a/keyboards/mechlovin/zed1800/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/zed1800/saber diff --git a/keyboards/mechlovin/zed65/no_backlight/rules.mk b/keyboards/mechlovin/zed65/no_backlight/rules.mk deleted file mode 100644 index a699765498..0000000000 --- a/keyboards/mechlovin/zed65/no_backlight/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/zed65/no_backlight/wearhaus66 diff --git a/keyboards/mechlovin/zed65/rules.mk b/keyboards/mechlovin/zed65/rules.mk deleted file mode 100644 index a699765498..0000000000 --- a/keyboards/mechlovin/zed65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/zed65/no_backlight/wearhaus66 diff --git a/keyboards/mechwild/bde/rules.mk b/keyboards/mechwild/bde/rules.mk deleted file mode 100644 index 138a291916..0000000000 --- a/keyboards/mechwild/bde/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/bde/rev2 diff --git a/keyboards/mechwild/mokulua/rules.mk b/keyboards/mechwild/mokulua/rules.mk deleted file mode 100644 index 3a87a143e5..0000000000 --- a/keyboards/mechwild/mokulua/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/mokulua/standard \ No newline at end of file diff --git a/keyboards/mechwild/obe/f401/rules.mk b/keyboards/mechwild/obe/f401/rules.mk deleted file mode 100644 index 8709dbb4de..0000000000 --- a/keyboards/mechwild/obe/f401/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/obe/f401/base diff --git a/keyboards/mechwild/obe/f411/rules.mk b/keyboards/mechwild/obe/f411/rules.mk deleted file mode 100644 index e24fe60509..0000000000 --- a/keyboards/mechwild/obe/f411/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/obe/f411/base diff --git a/keyboards/mechwild/obe/rules.mk b/keyboards/mechwild/obe/rules.mk deleted file mode 100644 index 8709dbb4de..0000000000 --- a/keyboards/mechwild/obe/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/obe/f401/base diff --git a/keyboards/mechwild/waka60/f401/rules.mk b/keyboards/mechwild/waka60/f401/rules.mk deleted file mode 100644 index a0d74c14eb..0000000000 --- a/keyboards/mechwild/waka60/f401/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/waka60/f401/base diff --git a/keyboards/mechwild/waka60/f411/rules.mk b/keyboards/mechwild/waka60/f411/rules.mk deleted file mode 100644 index 0dd69ff65f..0000000000 --- a/keyboards/mechwild/waka60/f411/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/waka60/f411/base diff --git a/keyboards/mechwild/waka60/rules.mk b/keyboards/mechwild/waka60/rules.mk deleted file mode 100644 index a0d74c14eb..0000000000 --- a/keyboards/mechwild/waka60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechwild/waka60/f401/base diff --git a/keyboards/murcielago/rules.mk b/keyboards/murcielago/rules.mk deleted file mode 100644 index 661563697a..0000000000 --- a/keyboards/murcielago/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = murcielago/rev1 \ No newline at end of file diff --git a/keyboards/nullbitsco/scramble/rules.mk b/keyboards/nullbitsco/scramble/rules.mk deleted file mode 100644 index 5753f7786d..0000000000 --- a/keyboards/nullbitsco/scramble/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = nullbitsco/scramble/v2 diff --git a/keyboards/omkbd/ergodash/rules.mk b/keyboards/omkbd/ergodash/rules.mk deleted file mode 100644 index 492cdde65d..0000000000 --- a/keyboards/omkbd/ergodash/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = omkbd/ergodash/rev1 diff --git a/keyboards/omkbd/runner3680/rules.mk b/keyboards/omkbd/runner3680/rules.mk deleted file mode 100644 index 3460ad8964..0000000000 --- a/keyboards/omkbd/runner3680/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = omkbd/runner3680/5x8 diff --git a/keyboards/orthodox/rules.mk b/keyboards/orthodox/rules.mk deleted file mode 100644 index fd71b6c8fb..0000000000 --- a/keyboards/orthodox/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = orthodox/rev3 diff --git a/keyboards/peej/rosaline/rules.mk b/keyboards/peej/rosaline/rules.mk deleted file mode 100644 index 928164362a..0000000000 --- a/keyboards/peej/rosaline/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = peej/rosaline/staggered diff --git a/keyboards/peej/tripel/rules.mk b/keyboards/peej/tripel/rules.mk deleted file mode 100644 index 8d89700456..0000000000 --- a/keyboards/peej/tripel/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = peej/tripel/left diff --git a/keyboards/peranekofactory/tone/rules.mk b/keyboards/peranekofactory/tone/rules.mk deleted file mode 100644 index e87862a9f6..0000000000 --- a/keyboards/peranekofactory/tone/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = peranekofactory/tone/rev2 diff --git a/keyboards/phase_studio/titan65/rules.mk b/keyboards/phase_studio/titan65/rules.mk deleted file mode 100644 index d55ca35d7a..0000000000 --- a/keyboards/phase_studio/titan65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = phase_studio/titan65/hotswap diff --git a/keyboards/pica40/rules.mk b/keyboards/pica40/rules.mk deleted file mode 100644 index 9670889712..0000000000 --- a/keyboards/pica40/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = pica40/rev2 diff --git a/keyboards/pinky/rules.mk b/keyboards/pinky/rules.mk deleted file mode 100644 index 89b708f68f..0000000000 --- a/keyboards/pinky/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = pinky/3 diff --git a/keyboards/primekb/meridian/rules.mk b/keyboards/primekb/meridian/rules.mk deleted file mode 100644 index 585a04ad28..0000000000 --- a/keyboards/primekb/meridian/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = primekb/meridian/ktr1010 diff --git a/keyboards/primekb/prime_e/rules.mk b/keyboards/primekb/prime_e/rules.mk deleted file mode 100644 index debb966e0d..0000000000 --- a/keyboards/primekb/prime_e/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = primekb/prime_e/std diff --git a/keyboards/program_yoink/rules.mk b/keyboards/program_yoink/rules.mk deleted file mode 100644 index a7cc1a2dbf..0000000000 --- a/keyboards/program_yoink/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = program_yoink/staggered diff --git a/keyboards/projectcain/vault35/rules.mk b/keyboards/projectcain/vault35/rules.mk deleted file mode 100644 index 3cf3a331d8..0000000000 --- a/keyboards/projectcain/vault35/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = projectcain/vault35/atmega32u4 diff --git a/keyboards/qpockets/space_space/rules.mk b/keyboards/qpockets/space_space/rules.mk deleted file mode 100644 index 0ffe2efbf2..0000000000 --- a/keyboards/qpockets/space_space/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = qpockets/space_space/rev2 diff --git a/keyboards/qwertyydox/rules.mk b/keyboards/qwertyydox/rules.mk deleted file mode 100644 index 688444b566..0000000000 --- a/keyboards/qwertyydox/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = qwertyydox/rev1 diff --git a/keyboards/redox/rev1/rules.mk b/keyboards/redox/rev1/rules.mk deleted file mode 100644 index c971da1680..0000000000 --- a/keyboards/redox/rev1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = redox/rev1/base diff --git a/keyboards/rgbkb/mun/rules.mk b/keyboards/rgbkb/mun/rules.mk deleted file mode 100644 index 317c4d5a87..0000000000 --- a/keyboards/rgbkb/mun/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rgbkb/mun/rev1 diff --git a/keyboards/rgbkb/sol/rules.mk b/keyboards/rgbkb/sol/rules.mk deleted file mode 100644 index f8325017f9..0000000000 --- a/keyboards/rgbkb/sol/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rgbkb/sol/rev2 diff --git a/keyboards/rgbkb/sol3/rules.mk b/keyboards/rgbkb/sol3/rules.mk deleted file mode 100644 index 74804682a2..0000000000 --- a/keyboards/rgbkb/sol3/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rgbkb/sol3/rev1 diff --git a/keyboards/rgbkb/zen/rules.mk b/keyboards/rgbkb/zen/rules.mk deleted file mode 100644 index ee94832d4d..0000000000 --- a/keyboards/rgbkb/zen/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rgbkb/zen/rev2 diff --git a/keyboards/rgbkb/zygomorph/rules.mk b/keyboards/rgbkb/zygomorph/rules.mk deleted file mode 100644 index 8544e8767d..0000000000 --- a/keyboards/rgbkb/zygomorph/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rgbkb/zygomorph/rev1 diff --git a/keyboards/rmi_kb/herringbone/rules.mk b/keyboards/rmi_kb/herringbone/rules.mk deleted file mode 100644 index 1efe9fa4f5..0000000000 --- a/keyboards/rmi_kb/herringbone/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rmi_kb/herringbone/v1 diff --git a/keyboards/rmi_kb/mona/rules.mk b/keyboards/rmi_kb/mona/rules.mk deleted file mode 100644 index 54aa705d96..0000000000 --- a/keyboards/rmi_kb/mona/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rmi_kb/mona/v1_1 diff --git a/keyboards/rmi_kb/tkl_ff/rules.mk b/keyboards/rmi_kb/tkl_ff/rules.mk deleted file mode 100644 index c8847cc266..0000000000 --- a/keyboards/rmi_kb/tkl_ff/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rmi_kb/tkl_ff/v1 diff --git a/keyboards/rmi_kb/wete/rules.mk b/keyboards/rmi_kb/wete/rules.mk deleted file mode 100644 index cda6fbfbe4..0000000000 --- a/keyboards/rmi_kb/wete/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rmi_kb/wete/v2 diff --git a/keyboards/rookiebwoy/late9/rules.mk b/keyboards/rookiebwoy/late9/rules.mk deleted file mode 100755 index 358facb3ca..0000000000 --- a/keyboards/rookiebwoy/late9/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rookiebwoy/late9/rev1 diff --git a/keyboards/rookiebwoy/neopad/rules.mk b/keyboards/rookiebwoy/neopad/rules.mk deleted file mode 100755 index c34c04435e..0000000000 --- a/keyboards/rookiebwoy/neopad/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rookiebwoy/neopad/rev1 diff --git a/keyboards/rura66/rules.mk b/keyboards/rura66/rules.mk deleted file mode 100644 index 556ec17655..0000000000 --- a/keyboards/rura66/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rura66/rev1 diff --git a/keyboards/sawnsprojects/okayu/rules.mk b/keyboards/sawnsprojects/okayu/rules.mk deleted file mode 100644 index 59655554eb..0000000000 --- a/keyboards/sawnsprojects/okayu/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = sawnsprojects/okayu/stm32f072 \ No newline at end of file diff --git a/keyboards/smoll/lefty/rules.mk b/keyboards/smoll/lefty/rules.mk deleted file mode 100644 index 6bc5abbdc5..0000000000 --- a/keyboards/smoll/lefty/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = smoll/lefty/rev2 diff --git a/keyboards/sofle/rules.mk b/keyboards/sofle/rules.mk deleted file mode 100644 index a7307c3499..0000000000 --- a/keyboards/sofle/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = sofle/rev1 diff --git a/keyboards/spacetime/rules.mk b/keyboards/spacetime/rules.mk deleted file mode 100644 index ac339c2cef..0000000000 --- a/keyboards/spacetime/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = spacetime/rev1 diff --git a/keyboards/splitkb/aurora/corne/rules.mk b/keyboards/splitkb/aurora/corne/rules.mk deleted file mode 100644 index 9b4b90e972..0000000000 --- a/keyboards/splitkb/aurora/corne/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2022 splitkb.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 . - -DEFAULT_FOLDER = splitkb/aurora/corne/rev1 diff --git a/keyboards/splitkb/aurora/helix/rules.mk b/keyboards/splitkb/aurora/helix/rules.mk deleted file mode 100644 index 8130273c1f..0000000000 --- a/keyboards/splitkb/aurora/helix/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = splitkb/aurora/helix/rev1 \ No newline at end of file diff --git a/keyboards/splitkb/aurora/lily58/rules.mk b/keyboards/splitkb/aurora/lily58/rules.mk deleted file mode 100644 index 1f5b922836..0000000000 --- a/keyboards/splitkb/aurora/lily58/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2022 splitkb.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 . - -DEFAULT_FOLDER = splitkb/aurora/lily58/rev1 diff --git a/keyboards/splitkb/aurora/sofle_v2/rules.mk b/keyboards/splitkb/aurora/sofle_v2/rules.mk deleted file mode 100644 index 4a50c4dbb1..0000000000 --- a/keyboards/splitkb/aurora/sofle_v2/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = splitkb/aurora/sofle_v2/rev1 \ No newline at end of file diff --git a/keyboards/splitkb/aurora/sweep/rules.mk b/keyboards/splitkb/aurora/sweep/rules.mk deleted file mode 100644 index ec1e102039..0000000000 --- a/keyboards/splitkb/aurora/sweep/rules.mk +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2022 splitkb.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 . - -DEFAULT_FOLDER = splitkb/aurora/sweep/rev1 diff --git a/keyboards/splitkb/kyria/rev1/rules.mk b/keyboards/splitkb/kyria/rev1/rules.mk deleted file mode 100644 index 3a8bfbe089..0000000000 --- a/keyboards/splitkb/kyria/rev1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = splitkb/kyria/rev1/base diff --git a/keyboards/splitkb/kyria/rev2/rules.mk b/keyboards/splitkb/kyria/rev2/rules.mk deleted file mode 100644 index fb808070bf..0000000000 --- a/keyboards/splitkb/kyria/rev2/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = splitkb/kyria/rev2/base diff --git a/keyboards/splitty/rules.mk b/keyboards/splitty/rules.mk deleted file mode 100644 index 68b3198bfb..0000000000 --- a/keyboards/splitty/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = splitty/rev1 diff --git a/keyboards/studiokestra/galatea/rules.mk b/keyboards/studiokestra/galatea/rules.mk deleted file mode 100644 index b5b1db4238..0000000000 --- a/keyboards/studiokestra/galatea/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = studiokestra/galatea/rev1 \ No newline at end of file diff --git a/keyboards/takashiski/hecomi/rules.mk b/keyboards/takashiski/hecomi/rules.mk deleted file mode 100644 index 41002fe272..0000000000 --- a/keyboards/takashiski/hecomi/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = takashiski/hecomi/alpha diff --git a/keyboards/themadnoodle/noodlepad/rules.mk b/keyboards/themadnoodle/noodlepad/rules.mk deleted file mode 100644 index 318832e121..0000000000 --- a/keyboards/themadnoodle/noodlepad/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -# Default folder for noodlepad -DEFAULT_FOLDER = themadnoodle/noodlepad/v1 - diff --git a/keyboards/tkw/grandiceps/rules.mk b/keyboards/tkw/grandiceps/rules.mk deleted file mode 100644 index ab8aeff268..0000000000 --- a/keyboards/tkw/grandiceps/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = tkw/grandiceps/rev1 diff --git a/keyboards/tominabox1/littlefoot_lx/rules.mk b/keyboards/tominabox1/littlefoot_lx/rules.mk deleted file mode 100644 index 4756f7600f..0000000000 --- a/keyboards/tominabox1/littlefoot_lx/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = tominabox1/littlefoot_lx/rev1 diff --git a/keyboards/tominabox1/underscore33/rules.mk b/keyboards/tominabox1/underscore33/rules.mk deleted file mode 100644 index b5e13fd420..0000000000 --- a/keyboards/tominabox1/underscore33/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = tominabox1/underscore33/rev1 diff --git a/keyboards/trnthsn/e8ghty/rules.mk b/keyboards/trnthsn/e8ghty/rules.mk deleted file mode 100644 index e06e8fe182..0000000000 --- a/keyboards/trnthsn/e8ghty/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = trnthsn/e8ghty/stm32f103 diff --git a/keyboards/trnthsn/s6xty5neor2/rules.mk b/keyboards/trnthsn/s6xty5neor2/rules.mk deleted file mode 100644 index 1fc77fba72..0000000000 --- a/keyboards/trnthsn/s6xty5neor2/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = trnthsn/s6xty5neor2/stm32f103 diff --git a/keyboards/tweetydabird/lotus58/rules.mk b/keyboards/tweetydabird/lotus58/rules.mk deleted file mode 100644 index 4cd2262cc7..0000000000 --- a/keyboards/tweetydabird/lotus58/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = tweetydabird/lotus58/promicro \ No newline at end of file diff --git a/keyboards/unison/rules.mk b/keyboards/unison/rules.mk deleted file mode 100644 index 69c33d71a2..0000000000 --- a/keyboards/unison/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = unison/v04 diff --git a/keyboards/uzu42/rules.mk b/keyboards/uzu42/rules.mk deleted file mode 100644 index 277e74b715..0000000000 --- a/keyboards/uzu42/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = uzu42/rev1 diff --git a/keyboards/vitamins_included/rules.mk b/keyboards/vitamins_included/rules.mk deleted file mode 100644 index e3452d41db..0000000000 --- a/keyboards/vitamins_included/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = vitamins_included/rev2 diff --git a/keyboards/yanghu/unicorne/rules.mk b/keyboards/yanghu/unicorne/rules.mk deleted file mode 100644 index 96852c8abf..0000000000 --- a/keyboards/yanghu/unicorne/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = yanghu/unicorne/f411 diff --git a/keyboards/yosino58/rules.mk b/keyboards/yosino58/rules.mk deleted file mode 100644 index c700b6f5b5..0000000000 --- a/keyboards/yosino58/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = yosino58/rev1 diff --git a/keyboards/yushakobo/navpad/10/rules.mk b/keyboards/yushakobo/navpad/10/rules.mk deleted file mode 100644 index 32daeef814..0000000000 --- a/keyboards/yushakobo/navpad/10/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = yushakobo/navpad/10/rev1 diff --git a/keyboards/yynmt/acperience12/rules.mk b/keyboards/yynmt/acperience12/rules.mk deleted file mode 100644 index cfe8b8ac18..0000000000 --- a/keyboards/yynmt/acperience12/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = yynmt/acperience12/rev1 -- cgit v1.2.3 From 207dc01d49be315a1bbe77dbb9b48d49e54c1b9e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 20 Jan 2025 22:47:42 +0000 Subject: rgbkb/pan - Remove invalid build target (#24844) --- keyboards/rgbkb/pan/rev1/32a/rules.mk | 2 ++ keyboards/rgbkb/pan/rev1/proton_c/rules.mk | 1 + keyboards/rgbkb/pan/rules.mk | 1 - 3 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 keyboards/rgbkb/pan/rev1/proton_c/rules.mk delete mode 100644 keyboards/rgbkb/pan/rules.mk (limited to 'keyboards') diff --git a/keyboards/rgbkb/pan/rev1/32a/rules.mk b/keyboards/rgbkb/pan/rev1/32a/rules.mk index c2ee0bc86f..f54ef3e987 100644 --- a/keyboards/rgbkb/pan/rev1/32a/rules.mk +++ b/keyboards/rgbkb/pan/rev1/32a/rules.mk @@ -1,2 +1,4 @@ # Processor frequency F_CPU = 16000000 + +WS2812_DRIVER_REQUIRED = yes diff --git a/keyboards/rgbkb/pan/rev1/proton_c/rules.mk b/keyboards/rgbkb/pan/rev1/proton_c/rules.mk new file mode 100644 index 0000000000..9a69649289 --- /dev/null +++ b/keyboards/rgbkb/pan/rev1/proton_c/rules.mk @@ -0,0 +1 @@ +WS2812_DRIVER_REQUIRED = yes diff --git a/keyboards/rgbkb/pan/rules.mk b/keyboards/rgbkb/pan/rules.mk deleted file mode 100644 index 9a69649289..0000000000 --- a/keyboards/rgbkb/pan/rules.mk +++ /dev/null @@ -1 +0,0 @@ -WS2812_DRIVER_REQUIRED = yes -- cgit v1.2.3 From 68130cc8a5557ac997a4aa6c95c7f4c67d07229b Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 21 Jan 2025 09:53:46 +1100 Subject: `ferris/0_1`: update I2C API usage (#24839) --- keyboards/ferris/0_1/matrix.c | 45 +++++++++++++++++--------------------- keyboards/ferris/0_2/matrix.c | 3 +-- platforms/avr/drivers/i2c_master.h | 3 --- 3 files changed, 21 insertions(+), 30 deletions(-) (limited to 'keyboards') diff --git a/keyboards/ferris/0_1/matrix.c b/keyboards/ferris/0_1/matrix.c index a3e2bebba6..c05b193c1a 100644 --- a/keyboards/ferris/0_1/matrix.c +++ b/keyboards/ferris/0_1/matrix.c @@ -29,7 +29,7 @@ along with this program. If not, see . #include "i2c_master.h" extern i2c_status_t mcp23017_status; -#define I2C_TIMEOUT 1000 +#define MCP23017_I2C_TIMEOUT 1000 // For a better understanding of the i2c protocol, this is a good read: // https://www.robot-electronics.co.uk/i2c-tutorial @@ -41,9 +41,7 @@ extern i2c_status_t mcp23017_status; // All address pins of the mcp23017 are connected to the ground on the ferris // | 0 | 1 | 0 | 0 | A2 | A1 | A0 | // | 0 | 1 | 0 | 0 | 0 | 0 | 0 | -#define I2C_ADDR 0b0100000 -#define I2C_ADDR_WRITE ((I2C_ADDR << 1) | I2C_WRITE) -#define I2C_ADDR_READ ((I2C_ADDR << 1) | I2C_READ) +#define I2C_ADDR (0b0100000 << 1) // Register addresses // See https://github.com/adafruit/Adafruit-MCP23017-Arduino-Library/blob/master/Adafruit_MCP23017.h @@ -51,8 +49,8 @@ extern i2c_status_t mcp23017_status; #define IODIRB 0x01 #define GPPUA 0x0C // GPIO pull-up resistor register #define GPPUB 0x0D -#define GPIOA 0x12 // general purpose i/o port register (write modifies OLAT) -#define GPIOB 0x13 +#define MCP23017_GPIOA 0x12 // general purpose i/o port register (write modifies OLAT) +#define MCP23017_GPIOB 0x13 #define OLATA 0x14 // output latch register #define OLATB 0x15 @@ -60,14 +58,14 @@ bool i2c_initialized = 0; i2c_status_t mcp23017_status = I2C_ADDR; uint8_t init_mcp23017(void) { - print("starting init"); + print("init mcp23017\n"); mcp23017_status = I2C_ADDR; // I2C subsystem if (i2c_initialized == 0) { i2c_init(); // on pins D(1,0) i2c_initialized = true; - wait_ms(I2C_TIMEOUT); + wait_ms(MCP23017_I2C_TIMEOUT); } // set pin direction @@ -76,8 +74,10 @@ uint8_t init_mcp23017(void) { // - driving : output : 0 // This means: we will read all the bits on GPIOA // This means: we will write to the pins 0-4 on GPIOB (in select_rows) - uint8_t buf[] = {IODIRA, 0b11111111, 0b11110000}; - mcp23017_status = i2c_transmit(I2C_ADDR_WRITE, buf, sizeof(buf), I2C_TIMEOUT); + uint8_t buf[] = {0b11111111, 0b11110000}; + print("before transmit\n"); + mcp23017_status = i2c_write_register(I2C_ADDR, IODIRA, buf, sizeof(buf), MCP23017_I2C_TIMEOUT); + uprintf("after transmit %i\n", mcp23017_status); if (!mcp23017_status) { // set pull-up // - unused : on : 1 @@ -85,8 +85,8 @@ uint8_t init_mcp23017(void) { // - driving : off : 0 // This means: we will read all the bits on GPIOA // This means: we will write to the pins 0-4 on GPIOB (in select_rows) - uint8_t pullup_buf[] = {GPPUA, 0b11111111, 0b11110000}; - mcp23017_status = i2c_transmit(I2C_ADDR_WRITE, pullup_buf, sizeof(pullup_buf), I2C_TIMEOUT); + mcp23017_status = i2c_write_register(I2C_ADDR, GPPUA, buf, sizeof(buf), MCP23017_I2C_TIMEOUT); + uprintf("after transmit2 %i\n", mcp23017_status); } return mcp23017_status; } @@ -144,12 +144,12 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) { // if (++mcp23017_reset_loop >= 1300) { // since mcp23017_reset_loop is 8 bit - we'll try to reset once in 255 matrix scans // this will be approx bit more frequent than once per second - dprint("trying to reset mcp23017\n"); + print("trying to reset mcp23017\n"); mcp23017_status = init_mcp23017(); if (mcp23017_status) { - dprint("right side not responding\n"); + print("right side not responding\n"); } else { - dprint("right side attached\n"); + print("right side attached\n"); } } } @@ -204,18 +204,13 @@ static matrix_row_t read_cols(uint8_t row) { if (mcp23017_status) { // if there was an error return 0; } else { - uint8_t buf[] = {GPIOA}; - mcp23017_status = i2c_transmit(I2C_ADDR_WRITE, buf, sizeof(buf), I2C_TIMEOUT); // We read all the pins on GPIOA. // The initial state was all ones and any depressed key at a given column for the currently selected row will have its bit flipped to zero. // The return value is a row as represented in the generic matrix code were the rightmost bits represent the lower columns and zeroes represent non-depressed keys while ones represent depressed keys. // Since the pins connected to eact columns are sequential, and counting from zero up (col 5 -> GPIOA0, col 6 -> GPIOA1 and so on), the only transformation needed is a bitwise not to swap all zeroes and ones. uint8_t data[] = {0}; - if (!mcp23017_status) { - mcp23017_status = i2c_receive(I2C_ADDR_READ, data, sizeof(data), I2C_TIMEOUT); - data[0] = ~(data[0]); - } - return data[0]; + mcp23017_status = i2c_read_register(I2C_ADDR, MCP23017_GPIOA, data, sizeof(data), MCP23017_I2C_TIMEOUT); + return ~data[0]; } } } @@ -236,7 +231,7 @@ static void unselect_rows(void) { static void select_row(uint8_t row) { if (row < MATRIX_ROWS_PER_SIDE) { - // select on atmega32u4 + // select on MCU pin_t matrix_row_pins_mcu[MATRIX_ROWS_PER_SIDE] = MATRIX_ROW_PINS_MCU; pin_t pin = matrix_row_pins_mcu[row]; gpio_set_pin_output(pin); @@ -248,8 +243,8 @@ static void select_row(uint8_t row) { } else { // Select the desired row by writing a byte for the entire GPIOB bus where only the bit representing the row we want to select is a zero (write instruction) and every other bit is a one. // Note that the row - MATRIX_ROWS_PER_SIDE reflects the fact that being on the right hand, the columns are numbered from MATRIX_ROWS_PER_SIDE to MATRIX_ROWS, but the pins we want to write to are indexed from zero up on the GPIOB bus. - uint8_t buf[] = {GPIOB, 0xFF & ~(1 << (row - MATRIX_ROWS_PER_SIDE))}; - mcp23017_status = i2c_transmit(I2C_ADDR_WRITE, buf, sizeof(buf), I2C_TIMEOUT); + uint8_t buf[] = {0xFF & ~(1 << (row - MATRIX_ROWS_PER_SIDE))}; + mcp23017_status = i2c_write_register(I2C_ADDR, MCP23017_GPIOB, buf, sizeof(buf), MCP23017_I2C_TIMEOUT); } } } diff --git a/keyboards/ferris/0_2/matrix.c b/keyboards/ferris/0_2/matrix.c index 74fab717a1..76bbcaf7b5 100644 --- a/keyboards/ferris/0_2/matrix.c +++ b/keyboards/ferris/0_2/matrix.c @@ -30,8 +30,7 @@ along with this program. If not, see . extern i2c_status_t mcp23017_status; #define MCP23017_I2C_TIMEOUT 1000 -#define I2C_WRITE 0x00 -#define I2C_READ 0x01 + // For a better understanding of the i2c protocol, this is a good read: // https://www.robot-electronics.co.uk/i2c-tutorial diff --git a/platforms/avr/drivers/i2c_master.h b/platforms/avr/drivers/i2c_master.h index 258bb2b9bf..ad92caa55a 100644 --- a/platforms/avr/drivers/i2c_master.h +++ b/platforms/avr/drivers/i2c_master.h @@ -21,9 +21,6 @@ #include -#define I2C_READ 0x01 -#define I2C_WRITE 0x00 - typedef int16_t i2c_status_t; #define I2C_STATUS_SUCCESS (0) -- cgit v1.2.3 From a6e931400ead19d3d34ca4a57785d1512dc2d12b Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 25 Jan 2025 17:38:12 +1100 Subject: Relocate base WS2812 code (#24850) --- builddefs/common_features.mk | 2 + drivers/led/ws2812.c | 15 +++++ drivers/led/ws2812.h | 97 +++++++++++++++++++++++++++ drivers/ws2812.c | 15 ----- drivers/ws2812.h | 97 --------------------------- keyboards/ibm/model_m/mschwingen/mschwingen.c | 5 +- 6 files changed, 118 insertions(+), 113 deletions(-) create mode 100644 drivers/led/ws2812.c create mode 100644 drivers/led/ws2812.h delete mode 100644 drivers/ws2812.c delete mode 100644 drivers/ws2812.h (limited to 'keyboards') diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index 989048d717..c88ce36011 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -944,6 +944,8 @@ ifeq ($(strip $(WS2812_DRIVER_REQUIRED)), yes) OPT_DEFS += -DWS2812_$(strip $(shell echo $(WS2812_DRIVER) | tr '[:lower:]' '[:upper:]')) + COMMON_VPATH += $(DRIVER_PATH)/led + SRC += ws2812.c ws2812_$(strip $(WS2812_DRIVER)).c ifeq ($(strip $(PLATFORM)), CHIBIOS) diff --git a/drivers/led/ws2812.c b/drivers/led/ws2812.c new file mode 100644 index 0000000000..bf234c6f7d --- /dev/null +++ b/drivers/led/ws2812.c @@ -0,0 +1,15 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "ws2812.h" + +#if defined(WS2812_RGBW) +void ws2812_rgb_to_rgbw(ws2812_led_t *led) { + // Determine lowest value in all three colors, put that into + // the white channel and then shift all colors by that amount + led->w = MIN(led->r, MIN(led->g, led->b)); + led->r -= led->w; + led->g -= led->w; + led->b -= led->w; +} +#endif diff --git a/drivers/led/ws2812.h b/drivers/led/ws2812.h new file mode 100644 index 0000000000..8013e5bd2d --- /dev/null +++ b/drivers/led/ws2812.h @@ -0,0 +1,97 @@ +/* + * 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 . + */ + +#pragma once + +#include "util.h" + +/* + * The WS2812 datasheets define T1H 900ns, T0H 350ns, T1L 350ns, T0L 900ns. Hence, by default, these + * are chosen to be conservative and avoid problems rather than for maximum throughput; in the code, + * this is done by default using a WS2812_TIMING parameter that accounts for the whole window (1250ns) + * and defining T1H and T0H; T1L and T0L are obtained by subtracting their low counterparts from the window. + * + * However, there are certain "WS2812"-like LEDs, like the SK6812s, which work in a similar + * communication topology but use different timings for the window and the T1L, T1H, T0L and T0H. + * This means that, albeit the same driver being applicable, the timings must be adapted. + */ + +#ifndef WS2812_TIMING +# define WS2812_TIMING 1250 +#endif + +#ifndef WS2812_T1H +# define WS2812_T1H 900 // Width of a 1 bit in ns +#endif + +#ifndef WS2812_T1L +# define WS2812_T1L (WS2812_TIMING - WS2812_T1H) // Width of a 1 bit in ns +#endif + +#ifndef WS2812_T0H +# define WS2812_T0H 350 // Width of a 0 bit in ns +#endif + +#ifndef WS2812_T0L +# define WS2812_T0L (WS2812_TIMING - WS2812_T0H) // Width of a 0 bit in ns +#endif + +/* + * Older WS2812s can handle a reset time (TRST) of 50us, but recent + * component revisions require a minimum of 280us. + */ +#if !defined(WS2812_TRST_US) +# define WS2812_TRST_US 280 +#endif + +#if defined(RGBLIGHT_WS2812) +# define WS2812_LED_COUNT RGBLIGHT_LED_COUNT +#elif defined(RGB_MATRIX_WS2812) +# define WS2812_LED_COUNT RGB_MATRIX_LED_COUNT +#endif + +#define WS2812_BYTE_ORDER_RGB 0 +#define WS2812_BYTE_ORDER_GRB 1 +#define WS2812_BYTE_ORDER_BGR 2 + +#ifndef WS2812_BYTE_ORDER +# define WS2812_BYTE_ORDER WS2812_BYTE_ORDER_GRB +#endif + +typedef struct PACKED ws2812_led_t { +#if (WS2812_BYTE_ORDER == WS2812_BYTE_ORDER_GRB) + uint8_t g; + uint8_t r; + uint8_t b; +#elif (WS2812_BYTE_ORDER == WS2812_BYTE_ORDER_RGB) + uint8_t r; + uint8_t g; + uint8_t b; +#elif (WS2812_BYTE_ORDER == WS2812_BYTE_ORDER_BGR) + uint8_t b; + uint8_t g; + uint8_t r; +#endif +#ifdef WS2812_RGBW + uint8_t w; +#endif +} ws2812_led_t; + +void ws2812_init(void); +void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue); +void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue); +void ws2812_flush(void); + +void ws2812_rgb_to_rgbw(ws2812_led_t *led); diff --git a/drivers/ws2812.c b/drivers/ws2812.c deleted file mode 100644 index bf234c6f7d..0000000000 --- a/drivers/ws2812.c +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2024 QMK -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "ws2812.h" - -#if defined(WS2812_RGBW) -void ws2812_rgb_to_rgbw(ws2812_led_t *led) { - // Determine lowest value in all three colors, put that into - // the white channel and then shift all colors by that amount - led->w = MIN(led->r, MIN(led->g, led->b)); - led->r -= led->w; - led->g -= led->w; - led->b -= led->w; -} -#endif diff --git a/drivers/ws2812.h b/drivers/ws2812.h deleted file mode 100644 index 8013e5bd2d..0000000000 --- a/drivers/ws2812.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * 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 . - */ - -#pragma once - -#include "util.h" - -/* - * The WS2812 datasheets define T1H 900ns, T0H 350ns, T1L 350ns, T0L 900ns. Hence, by default, these - * are chosen to be conservative and avoid problems rather than for maximum throughput; in the code, - * this is done by default using a WS2812_TIMING parameter that accounts for the whole window (1250ns) - * and defining T1H and T0H; T1L and T0L are obtained by subtracting their low counterparts from the window. - * - * However, there are certain "WS2812"-like LEDs, like the SK6812s, which work in a similar - * communication topology but use different timings for the window and the T1L, T1H, T0L and T0H. - * This means that, albeit the same driver being applicable, the timings must be adapted. - */ - -#ifndef WS2812_TIMING -# define WS2812_TIMING 1250 -#endif - -#ifndef WS2812_T1H -# define WS2812_T1H 900 // Width of a 1 bit in ns -#endif - -#ifndef WS2812_T1L -# define WS2812_T1L (WS2812_TIMING - WS2812_T1H) // Width of a 1 bit in ns -#endif - -#ifndef WS2812_T0H -# define WS2812_T0H 350 // Width of a 0 bit in ns -#endif - -#ifndef WS2812_T0L -# define WS2812_T0L (WS2812_TIMING - WS2812_T0H) // Width of a 0 bit in ns -#endif - -/* - * Older WS2812s can handle a reset time (TRST) of 50us, but recent - * component revisions require a minimum of 280us. - */ -#if !defined(WS2812_TRST_US) -# define WS2812_TRST_US 280 -#endif - -#if defined(RGBLIGHT_WS2812) -# define WS2812_LED_COUNT RGBLIGHT_LED_COUNT -#elif defined(RGB_MATRIX_WS2812) -# define WS2812_LED_COUNT RGB_MATRIX_LED_COUNT -#endif - -#define WS2812_BYTE_ORDER_RGB 0 -#define WS2812_BYTE_ORDER_GRB 1 -#define WS2812_BYTE_ORDER_BGR 2 - -#ifndef WS2812_BYTE_ORDER -# define WS2812_BYTE_ORDER WS2812_BYTE_ORDER_GRB -#endif - -typedef struct PACKED ws2812_led_t { -#if (WS2812_BYTE_ORDER == WS2812_BYTE_ORDER_GRB) - uint8_t g; - uint8_t r; - uint8_t b; -#elif (WS2812_BYTE_ORDER == WS2812_BYTE_ORDER_RGB) - uint8_t r; - uint8_t g; - uint8_t b; -#elif (WS2812_BYTE_ORDER == WS2812_BYTE_ORDER_BGR) - uint8_t b; - uint8_t g; - uint8_t r; -#endif -#ifdef WS2812_RGBW - uint8_t w; -#endif -} ws2812_led_t; - -void ws2812_init(void); -void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue); -void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue); -void ws2812_flush(void); - -void ws2812_rgb_to_rgbw(ws2812_led_t *led); diff --git a/keyboards/ibm/model_m/mschwingen/mschwingen.c b/keyboards/ibm/model_m/mschwingen/mschwingen.c index cb4854d8d1..34a878c769 100644 --- a/keyboards/ibm/model_m/mschwingen/mschwingen.c +++ b/keyboards/ibm/model_m/mschwingen/mschwingen.c @@ -19,9 +19,12 @@ #include "uart.h" #include "print.h" #include "sendchar.h" -#include "ws2812.h" #include "sleep_led.h" +#ifdef KEYBOARD_ibm_model_m_mschwingen_led_ws2812 +#include "ws2812.h" +#endif + #ifdef UART_DEBUG # undef sendchar static int8_t capture_sendchar(uint8_t c) { -- cgit v1.2.3 From ee63d39058deee162b794c62d7180d61f540914a Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 27 Jan 2025 08:37:37 +1100 Subject: Unify spi_master headers (#24857) * Move default config to .c file * Explicitly define PAL modes for boards with custom init * Unify spi_master headers--- docs/drivers/spi.md | 8 +- drivers/spi_master.h | 116 +++++++++++++++++++++++ keyboards/darkproject/kd83a_bfg_edition/config.h | 3 + keyboards/darkproject/kd87a_bfg_edition/config.h | 3 + keyboards/gmmk/gmmk2/p96/config.h | 3 + keyboards/jukaie/jk01/config.h | 3 + keyboards/projectd/65/projectd_65_ansi/config.h | 3 + keyboards/projectd/75/ansi/config.h | 3 + keyboards/projectd/75/iso/config.h | 3 + platforms/avr/drivers/spi_master.h | 68 ------------- platforms/chibios/drivers/spi_master.c | 43 ++++++++- platforms/chibios/drivers/spi_master.h | 102 -------------------- 12 files changed, 183 insertions(+), 175 deletions(-) create mode 100644 drivers/spi_master.h delete mode 100644 platforms/avr/drivers/spi_master.h delete mode 100644 platforms/chibios/drivers/spi_master.h (limited to 'keyboards') diff --git a/docs/drivers/spi.md b/docs/drivers/spi.md index 43d2a056d5..140b204945 100644 --- a/docs/drivers/spi.md +++ b/docs/drivers/spi.md @@ -88,7 +88,7 @@ Start an SPI transaction. #### Arguments {#api-spi-start-arguments} - `pin_t slavePin` - The QMK pin to assert as the slave select pin, eg. `B4`. + The GPIO pin connected to the desired device's `SS` line. - `bool lsbFirst` Determines the endianness of the transmission. If `true`, the least significant bit of each byte is sent first. - `uint8_t mode` @@ -106,7 +106,7 @@ Start an SPI transaction. #### Return Value {#api-spi-start-return} -`false` if the supplied parameters are invalid or the SPI peripheral is already in use, or `true`. +`true` if the operation was successful, otherwise `false` if the supplied parameters are invalid or the SPI peripheral is already in use. --- @@ -131,7 +131,7 @@ Read a byte from the selected SPI device. #### Return Value {#api-spi-read-return} -`SPI_STATUS_TIMEOUT` if the timeout period elapses, or the byte read from the device. +`SPI_STATUS_TIMEOUT` if the timeout period elapses, otherwise the byte read from the device. --- @@ -159,7 +159,7 @@ Receive multiple bytes from the selected SPI device. #### Arguments {#api-spi-receive-arguments} - `uint8_t *data` - A pointer to the buffer to read into. + A pointer to a buffer to read into. - `uint16_t length` The number of bytes to read. Take care not to overrun the length of `data`. diff --git a/drivers/spi_master.h b/drivers/spi_master.h new file mode 100644 index 0000000000..d206b812bf --- /dev/null +++ b/drivers/spi_master.h @@ -0,0 +1,116 @@ +// Copyright 2025 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include +#include +#include "gpio.h" + +/** + * \file + * + * \defgroup spi_master SPI Master API + * + * \brief API to communicate with SPI devices. + * \{ + */ + +// Hardware SS pin is defined in the header so that user code can refer to it +#ifdef __AVR__ +# if defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) +# define SPI_SS_PIN B0 +# elif defined(__AVR_ATmega32A__) +# define SPI_SS_PIN B4 +# elif defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__) +# define SPI_SS_PIN B2 +# endif +#endif + +typedef int16_t spi_status_t; + +#define SPI_STATUS_SUCCESS (0) +#define SPI_STATUS_ERROR (-1) +#define SPI_STATUS_TIMEOUT (-2) + +#define SPI_TIMEOUT_IMMEDIATE (0) +#define SPI_TIMEOUT_INFINITE (0xFFFF) + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct spi_start_config_t { + pin_t slave_pin; + bool lsb_first; + uint8_t mode; + uint16_t divisor; + bool cs_active_low; +} spi_start_config_t; + +/** + * \brief Initialize the SPI driver. This function must be called only once, before any of the below functions can be called. + */ +void spi_init(void); + +/** + * \brief Start an SPI transaction. + * + * \param slavePin The GPIO pin connected to the desired device's `SS` line. + * \param lsbFirst Determines the endianness of the transmission. If `true`, the least significant bit of each byte is sent first. + * \param mode The SPI mode to use. + * \param divisor The SPI clock divisor. + * + * \return `true` if the operation was successful, otherwise `false` if the supplied parameters are invalid or the SPI peripheral is already in use. + */ +bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor); + +bool spi_start_extended(spi_start_config_t *start_config); + +/** + * \brief Write a byte to the selected SPI device. + * + * \param data The byte to write. + * + * \return `SPI_STATUS_TIMEOUT` if the timeout period elapses, or `SPI_STATUS_SUCCESS`. + */ +spi_status_t spi_write(uint8_t data); + +/** + * \brief Read a byte from the selected SPI device. + * + * \return `SPI_STATUS_TIMEOUT` if the timeout period elapses, otherwise the byte read from the device. + */ +spi_status_t spi_read(void); + +/** + * \brief Send multiple bytes to the selected SPI device. + * + * \param data A pointer to the data to write from. + * \param length The number of bytes to write. Take care not to overrun the length of `data`. + * + * \return `SPI_STATUS_TIMEOUT` if the timeout period elapses, `SPI_STATUS_ERROR` if some other error occurs, otherwise `SPI_STATUS_SUCCESS`. + */ +spi_status_t spi_transmit(const uint8_t *data, uint16_t length); + +/** + * \brief Receive multiple bytes from the selected SPI device. + * + * \param data A pointer to a buffer to read into. + * \param length The number of bytes to read. Take care not to overrun the length of `data`. + * + * \return `SPI_STATUS_TIMEOUT` if the timeout period elapses, `SPI_STATUS_ERROR` if some other error occurs, otherwise `SPI_STATUS_SUCCESS`. + */ +spi_status_t spi_receive(uint8_t *data, uint16_t length); + +/** + * \brief End the current SPI transaction. This will deassert the slave select pin and reset the endianness, mode and divisor configured by `spi_start()`. + * + */ +void spi_stop(void); + +#ifdef __cplusplus +} +#endif + +/** \} */ diff --git a/keyboards/darkproject/kd83a_bfg_edition/config.h b/keyboards/darkproject/kd83a_bfg_edition/config.h index 880aabd5d7..fce00d29ab 100644 --- a/keyboards/darkproject/kd83a_bfg_edition/config.h +++ b/keyboards/darkproject/kd83a_bfg_edition/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_CS_PIN_2 B15 diff --git a/keyboards/darkproject/kd87a_bfg_edition/config.h b/keyboards/darkproject/kd87a_bfg_edition/config.h index a32f712231..9e68844daf 100644 --- a/keyboards/darkproject/kd87a_bfg_edition/config.h +++ b/keyboards/darkproject/kd87a_bfg_edition/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_CS_PIN_2 B15 diff --git a/keyboards/gmmk/gmmk2/p96/config.h b/keyboards/gmmk/gmmk2/p96/config.h index 1b246e4f3f..852d29df65 100644 --- a/keyboards/gmmk/gmmk2/p96/config.h +++ b/keyboards/gmmk/gmmk2/p96/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_CS_PIN_2 B15 diff --git a/keyboards/jukaie/jk01/config.h b/keyboards/jukaie/jk01/config.h index d8dfb9f535..41534ce6c4 100644 --- a/keyboards/jukaie/jk01/config.h +++ b/keyboards/jukaie/jk01/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_CS_PIN_2 B15 diff --git a/keyboards/projectd/65/projectd_65_ansi/config.h b/keyboards/projectd/65/projectd_65_ansi/config.h index c8da5c42a7..6e23afc902 100644 --- a/keyboards/projectd/65/projectd_65_ansi/config.h +++ b/keyboards/projectd/65/projectd_65_ansi/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_EN_PIN C13 diff --git a/keyboards/projectd/75/ansi/config.h b/keyboards/projectd/75/ansi/config.h index 282e20a8e2..acbe853949 100644 --- a/keyboards/projectd/75/ansi/config.h +++ b/keyboards/projectd/75/ansi/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_CS_PIN_2 B15 diff --git a/keyboards/projectd/75/iso/config.h b/keyboards/projectd/75/iso/config.h index 282e20a8e2..acbe853949 100644 --- a/keyboards/projectd/75/iso/config.h +++ b/keyboards/projectd/75/iso/config.h @@ -22,8 +22,11 @@ /* SPI Config for LED Driver */ #define SPI_DRIVER SPIDQ #define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 #define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 #define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 #define AW20216S_CS_PIN_1 A15 #define AW20216S_CS_PIN_2 B15 diff --git a/platforms/avr/drivers/spi_master.h b/platforms/avr/drivers/spi_master.h deleted file mode 100644 index ebbf7ddeab..0000000000 --- a/platforms/avr/drivers/spi_master.h +++ /dev/null @@ -1,68 +0,0 @@ -/* Copyright 2020 - * - * 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 3 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 . - */ - -#pragma once - -#include - -#include "gpio.h" - -typedef int16_t spi_status_t; - -// Hardware SS pin is defined in the header so that user code can refer to it -#if defined(__AVR_AT90USB162__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) -# define SPI_SS_PIN B0 -#elif defined(__AVR_ATmega32A__) -# define SPI_SS_PIN B4 -#elif defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328__) -# define SPI_SS_PIN B2 -#endif - -#define SPI_STATUS_SUCCESS (0) -#define SPI_STATUS_ERROR (-1) -#define SPI_STATUS_TIMEOUT (-2) - -#define SPI_TIMEOUT_IMMEDIATE (0) -#define SPI_TIMEOUT_INFINITE (0xFFFF) - -#ifdef __cplusplus -extern "C" { -#endif -typedef struct spi_start_config_t { - pin_t slave_pin; - bool lsb_first; - uint8_t mode; - uint16_t divisor; - bool cs_active_low; -} spi_start_config_t; - -void spi_init(void); - -bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor); -bool spi_start_extended(spi_start_config_t *start_config); - -spi_status_t spi_write(uint8_t data); - -spi_status_t spi_read(void); - -spi_status_t spi_transmit(const uint8_t *data, uint16_t length); - -spi_status_t spi_receive(uint8_t *data, uint16_t length); - -void spi_stop(void); -#ifdef __cplusplus -} -#endif diff --git a/platforms/chibios/drivers/spi_master.c b/platforms/chibios/drivers/spi_master.c index 414e5b10a3..f5e48edfda 100644 --- a/platforms/chibios/drivers/spi_master.c +++ b/platforms/chibios/drivers/spi_master.c @@ -15,8 +15,49 @@ */ #include "spi_master.h" +#include "chibios_config.h" +#include +#include -#include "timer.h" +#ifndef SPI_DRIVER +# define SPI_DRIVER SPID2 +#endif + +#ifndef SPI_SCK_PIN +# define SPI_SCK_PIN B13 +#endif + +#ifndef SPI_SCK_PAL_MODE +# ifdef USE_GPIOV1 +# define SPI_SCK_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL +# else +# define SPI_SCK_PAL_MODE 5 +# endif +#endif + +#ifndef SPI_MOSI_PIN +# define SPI_MOSI_PIN B15 +#endif + +#ifndef SPI_MOSI_PAL_MODE +# ifdef USE_GPIOV1 +# define SPI_MOSI_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL +# else +# define SPI_MOSI_PAL_MODE 5 +# endif +#endif + +#ifndef SPI_MISO_PIN +# define SPI_MISO_PIN B14 +#endif + +#ifndef SPI_MISO_PAL_MODE +# ifdef USE_GPIOV1 +# define SPI_MISO_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL +# else +# define SPI_MISO_PAL_MODE 5 +# endif +#endif static bool spiStarted = false; #if SPI_SELECT_MODE == SPI_SELECT_MODE_NONE diff --git a/platforms/chibios/drivers/spi_master.h b/platforms/chibios/drivers/spi_master.h deleted file mode 100644 index 4ad6144091..0000000000 --- a/platforms/chibios/drivers/spi_master.h +++ /dev/null @@ -1,102 +0,0 @@ -/* Copyright 2020 Nick Brassel (tzarc) - * - * 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 3 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 . - */ - -#pragma once - -#include -#include -#include - -#include "gpio.h" -#include "chibios_config.h" - -#ifndef SPI_DRIVER -# define SPI_DRIVER SPID2 -#endif - -#ifndef SPI_SCK_PIN -# define SPI_SCK_PIN B13 -#endif - -#ifndef SPI_SCK_PAL_MODE -# if defined(USE_GPIOV1) -# define SPI_SCK_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL -# else -# define SPI_SCK_PAL_MODE 5 -# endif -#endif - -#ifndef SPI_MOSI_PIN -# define SPI_MOSI_PIN B15 -#endif - -#ifndef SPI_MOSI_PAL_MODE -# if defined(USE_GPIOV1) -# define SPI_MOSI_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL -# else -# define SPI_MOSI_PAL_MODE 5 -# endif -#endif - -#ifndef SPI_MISO_PIN -# define SPI_MISO_PIN B14 -#endif - -#ifndef SPI_MISO_PAL_MODE -# if defined(USE_GPIOV1) -# define SPI_MISO_PAL_MODE PAL_MODE_ALTERNATE_PUSHPULL -# else -# define SPI_MISO_PAL_MODE 5 -# endif -#endif - -typedef int16_t spi_status_t; - -#define SPI_STATUS_SUCCESS (0) -#define SPI_STATUS_ERROR (-1) -#define SPI_STATUS_TIMEOUT (-2) - -#define SPI_TIMEOUT_IMMEDIATE (0) -#define SPI_TIMEOUT_INFINITE (0xFFFF) - -#ifdef __cplusplus -extern "C" { -#endif -typedef struct spi_start_config_t { - pin_t slave_pin; - bool lsb_first; - uint8_t mode; - uint16_t divisor; - bool cs_active_low; -} spi_start_config_t; - -void spi_init(void); - -bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor); -bool spi_start_extended(spi_start_config_t *start_config); - -spi_status_t spi_write(uint8_t data); - -spi_status_t spi_read(void); - -spi_status_t spi_transmit(const uint8_t *data, uint16_t length); - -spi_status_t spi_receive(uint8_t *data, uint16_t length); - -void spi_stop(void); -#ifdef __cplusplus -} -#endif -- cgit v1.2.3 From c7904502e535b4368bd39cb12fa68f2717d0b3c1 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 28 Jan 2025 05:58:21 +0000 Subject: handwired/xealous - Remove DEFAULT_FOLDER (#24877) --- data/mappings/keyboard_aliases.hjson | 3 ++ keyboards/handwired/xealous/config.h | 32 -------------------- keyboards/handwired/xealous/matrix.c | 49 ------------------------------- keyboards/handwired/xealous/rev1/config.h | 13 ++++++++ keyboards/handwired/xealous/rules.mk | 3 -- 5 files changed, 16 insertions(+), 84 deletions(-) delete mode 100644 keyboards/handwired/xealous/config.h delete mode 100644 keyboards/handwired/xealous/matrix.c delete mode 100644 keyboards/handwired/xealous/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 745faee801..86fcdb8c29 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1731,6 +1731,9 @@ "handwired/unk": { "target": "handwired/unk/rev1" }, + "handwired/xealous": { + "target": "handwired/xealous/rev1" + }, "hillside/46": { "target": "hillside/46/0_1" }, diff --git a/keyboards/handwired/xealous/config.h b/keyboards/handwired/xealous/config.h deleted file mode 100644 index 6cc6b4d1de..0000000000 --- a/keyboards/handwired/xealous/config.h +++ /dev/null @@ -1,32 +0,0 @@ -/* -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -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 . -*/ - -#pragma once - -#define USE_I2C -#define SCL_CLOCK 800000UL - -//#define DEBUG_MATRIX_SCAN_RATE //Use this to determine scan-rate. - -#ifdef AUDIO_ENABLE - #define AUDIO_PIN C6 - #define STARTUP_SONG SONG(STARTUP_SOUND) - #define NO_MUSIC_MODE - #define TONE_QWERTY SONG(Q__NOTE(_E4)); - #define TONE_NUMPAD SONG(Q__NOTE(_D4)); -#endif diff --git a/keyboards/handwired/xealous/matrix.c b/keyboards/handwired/xealous/matrix.c deleted file mode 100644 index b8ae9fd738..0000000000 --- a/keyboards/handwired/xealous/matrix.c +++ /dev/null @@ -1,49 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -/* - * scan matrix - */ -#include -#include -#include -#include "wait.h" -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" -#include "split_util.h" -#include "timer.h" - -// Copy this code to split_common/matrix.c, -// and call it instead of the unoptimized col_reader. Scan-rate jumps from 1200->1920 -// Also remove the sleep_us(30), not necessary for this keyboard. -// In usb_descriptor.c, set .PollingIntervalMS = 0x01 -#define ROW_SHIFTER ((uint8_t)1) -inline static matrix_row_t optimized_col_reader(void) { - //MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6, F5, F4 } - return (PINB & (1 << 6) ? 0 : (ROW_SHIFTER << 0)) | - (PINB & (1 << 2) ? 0 : (ROW_SHIFTER << 1)) | - (PINB & (1 << 3) ? 0 : (ROW_SHIFTER << 2)) | - (PINB & (1 << 1) ? 0 : (ROW_SHIFTER << 3)) | - (PINF & (1 << 7) ? 0 : (ROW_SHIFTER << 4)) | - (PINF & (1 << 6) ? 0 : (ROW_SHIFTER << 5)) | - (PINF & (1 << 5) ? 0 : (ROW_SHIFTER << 6)) | - (PINF & (1 << 4) ? 0 : (ROW_SHIFTER << 7)); -} - - diff --git a/keyboards/handwired/xealous/rev1/config.h b/keyboards/handwired/xealous/rev1/config.h index 49be10cce4..2ea66a692c 100644 --- a/keyboards/handwired/xealous/rev1/config.h +++ b/keyboards/handwired/xealous/rev1/config.h @@ -18,6 +18,19 @@ along with this program. If not, see . #pragma once +#define USE_I2C +#define SCL_CLOCK 800000UL + +//#define DEBUG_MATRIX_SCAN_RATE //Use this to determine scan-rate. + +#ifdef AUDIO_ENABLE + #define AUDIO_PIN C6 + #define STARTUP_SONG SONG(STARTUP_SOUND) + #define NO_MUSIC_MODE + #define TONE_QWERTY SONG(Q__NOTE(_E4)); + #define TONE_NUMPAD SONG(Q__NOTE(_D4)); +#endif + /* * Feature disable options * These options are also useful to firmware size reduction. diff --git a/keyboards/handwired/xealous/rules.mk b/keyboards/handwired/xealous/rules.mk deleted file mode 100644 index 4a97d066df..0000000000 --- a/keyboards/handwired/xealous/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -SRC += matrix.c - -DEFAULT_FOLDER = handwired/xealous/rev1 -- cgit v1.2.3 From 8afa3f2f084ce16a2f55ae72efcc2b8db1b74269 Mon Sep 17 00:00:00 2001 From: muge Date: Tue, 28 Jan 2025 18:18:41 -0800 Subject: Add CXT Studio 12E3 keyboard (#24749) Co-authored-by: jack Co-authored-by: Joel Challis --- keyboards/cxt_studio/12e3/keyboard.json | 99 ++++++++++++++++++++++ keyboards/cxt_studio/12e3/keymaps/default/keymap.c | 40 +++++++++ keyboards/cxt_studio/12e3/keymaps/default/rules.mk | 1 + keyboards/cxt_studio/12e3/readme.md | 27 ++++++ 4 files changed, 167 insertions(+) create mode 100644 keyboards/cxt_studio/12e3/keyboard.json create mode 100644 keyboards/cxt_studio/12e3/keymaps/default/keymap.c create mode 100644 keyboards/cxt_studio/12e3/keymaps/default/rules.mk create mode 100644 keyboards/cxt_studio/12e3/readme.md (limited to 'keyboards') diff --git a/keyboards/cxt_studio/12e3/keyboard.json b/keyboards/cxt_studio/12e3/keyboard.json new file mode 100644 index 0000000000..763f6bd5b9 --- /dev/null +++ b/keyboards/cxt_studio/12e3/keyboard.json @@ -0,0 +1,99 @@ +{ + "manufacturer": "cxt_studio", + "keyboard_name": "cxt_studio 12E3", + "maintainer": "muge", + "bootloader": "atmel-dfu", + "diode_direction": "ROW2COL", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "encoder": true, + "rgb_matrix": true + }, + "ws2812": { + "pin": "F7" + }, + "matrix_pins": { + "cols": ["D4", "D7", "B4", "B5"], + "rows": ["C7", "C6", "D6", "F4"] + }, + "encoder": { + "rotary": [ + {"pin_a": "F5", "pin_b": "F6"}, + {"pin_a": "E6", "pin_b": "F0"}, + {"pin_a": "B3", "pin_b": "B2", "resolution": 2} + ] + }, + "processor": "atmega32u4", + "rgb_matrix": { + "animations": { + "breathing": true, + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "default": { + "animation": "solid_reactive_simple" + }, + "driver": "ws2812", + "layout": [ + {"flags": 4, "matrix": [0, 3], "x": 3, "y": 0}, + {"flags": 4, "matrix": [0, 2], "x": 2, "y": 0}, + {"flags": 4, "matrix": [0, 1], "x": 1, "y": 0}, + {"flags": 4, "matrix": [0, 0], "x": 0, "y": 0}, + {"flags": 4, "matrix": [1, 0], "x": 0, "y": 1}, + {"flags": 4, "matrix": [1, 1], "x": 1, "y": 1}, + {"flags": 4, "matrix": [1, 2], "x": 2, "y": 1}, + {"flags": 4, "matrix": [1, 3], "x": 3, "y": 1}, + {"flags": 4, "matrix": [2, 3], "x": 3, "y": 2}, + {"flags": 4, "matrix": [2, 2], "x": 2, "y": 2}, + {"flags": 4, "matrix": [2, 1], "x": 1, "y": 2}, + {"flags": 4, "matrix": [2, 0], "x": 0, "y": 2} + ] + }, + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x12E3", + "vid": "0x0215" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + + {"matrix": [3, 2], "x": 4, "y": 0}, + {"matrix": [3, 3], "x": 5, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + + {"matrix": [3, 1], "x": 4, "y": 1, "w": 2, "h": 2}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2} + ] + } + } +} + diff --git a/keyboards/cxt_studio/12e3/keymaps/default/keymap.c b/keyboards/cxt_studio/12e3/keymaps/default/keymap.c new file mode 100644 index 0000000000..78375680d4 --- /dev/null +++ b/keyboards/cxt_studio/12e3/keymaps/default/keymap.c @@ -0,0 +1,40 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum my_layers { + _BASE, + _RGBL, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_BASE] = LAYOUT( + KC_PSCR, KC_CUT, KC_COPY, KC_PSTE, MS_BTN3, RM_TOGG, + KC_CALC, KC_UNDO, KC_MPLY, KC_MNXT, KC_MUTE, + MO(1), KC_LGUI, KC_DEL, KC_APP + ), + + [_RGBL] = LAYOUT( + RM_NEXT, RM_SATU, KC_INS, KC_DEL, _______, _______, + RM_PREV, RM_SATD, KC_PGUP, KC_HOME, _______, + _______, QK_BOOT, KC_PGDN, KC_END + ), +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + // Encoders: Left, Right, Big + [_BASE] = { + ENCODER_CCW_CW(MS_WHLD, MS_WHLU), + ENCODER_CCW_CW(KC_PGDN, KC_PGUP), + ENCODER_CCW_CW(KC_VOLD, KC_VOLU) + }, + [_RGBL] = { + ENCODER_CCW_CW(RM_HUED, RM_HUEU), + ENCODER_CCW_CW(RM_SPDD, RM_SPDU), + ENCODER_CCW_CW(RM_VALD, RM_VALU) + }, +}; +#endif diff --git a/keyboards/cxt_studio/12e3/keymaps/default/rules.mk b/keyboards/cxt_studio/12e3/keymaps/default/rules.mk new file mode 100644 index 0000000000..ee32568148 --- /dev/null +++ b/keyboards/cxt_studio/12e3/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/cxt_studio/12e3/readme.md b/keyboards/cxt_studio/12e3/readme.md new file mode 100644 index 0000000000..8ea527f473 --- /dev/null +++ b/keyboards/cxt_studio/12e3/readme.md @@ -0,0 +1,27 @@ +# cxt_studio/12e3 + +![cxt_studio/12e3](https://i.postimg.cc/NFK8rY8N/M5rtTSP.png) + +3x4 ortho layout, with 3 encoders. + +* Keyboard Maintainer: [muge](https://github.com/muge) +* Hardware Supported: CXT Studio 12E3 +* Hardware Availability: AliExpress, Taobao + +Make example for this keyboard (after setting up your build environment): + + make cxt_studio/12e3:default + +Flashing example for this keyboard: + + make cxt_studio/12e3: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). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB, located under the large encoder, on the right side +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available. It is included in the default layout -- cgit v1.2.3 From 08dcc8856f078e50f6dbdd6a75647f131e270645 Mon Sep 17 00:00:00 2001 From: Joy Lee Date: Wed, 29 Jan 2025 11:09:12 +0800 Subject: Add more layout for skiller_sgk50_s4 (#24784) * Add more layout for skiller_sgk50_s4 * Update skiller_sgk50_s4 default keymap * update keymap.c Co-authored-by: Ryan * Update keymap.c Co-authored-by: Ryan * Update keyboard.json * Update keyboard.json * Update keyboard.json * Update keyboard.json --------- Co-authored-by: wb Co-authored-by: Ryan --- keyboards/sharkoon/skiller_sgk50_s4/keyboard.json | 130 ++++++++++++--------- .../skiller_sgk50_s4/keymaps/default/keymap.c | 12 +- 2 files changed, 80 insertions(+), 62 deletions(-) (limited to 'keyboards') diff --git a/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json b/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json index 7d36616e52..b7a628fd78 100644 --- a/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json +++ b/keyboards/sharkoon/skiller_sgk50_s4/keyboard.json @@ -21,7 +21,7 @@ "rgb_matrix": true }, "matrix_pins": { - "cols": ["C0", "C1", "C2", "C3", "A6", "B1", "B10", "B11", "B12", "B13", "B14", "B15", "C6", "C7"], + "cols": ["C0", "C1", "C2", "C3", "A6", "B1", "B10", "B11", "B12", "B13", "B14", "C6", "C7", "C8", "C9", "A8"], "rows": ["A0", "A1", "A2", "A3", "C13"] }, "processor": "WB32FQ95", @@ -77,11 +77,15 @@ "driver": "ws2812", "layout": [ {"matrix": [4, 6], "x": 103, "y": 64, "flags": 4}, + {"matrix": [4, 9], "x": 154, "y": 64, "flags": 4}, {"matrix": [4, 10], "x": 172, "y": 64, "flags": 4}, {"matrix": [4, 11], "x": 190, "y": 64, "flags": 4}, {"matrix": [4, 12], "x": 207, "y": 64, "flags": 4}, - {"matrix": [4, 13], "x": 224, "y": 64, "flags": 4}, - {"matrix": [3, 13], "x": 224, "y": 48, "flags": 4}, + {"matrix": [4, 15], "x": 224, "y": 64, "flags": 4}, + {"matrix": [3, 15], "x": 224, "y": 48, "flags": 4}, + {"matrix": [3, 14], "x": 224, "y": 48, "flags": 4}, + {"matrix": [3, 13], "x": 210, "y": 48, "flags": 4}, + {"matrix": [3, 12], "x": 200, "y": 48, "flags": 4}, {"matrix": [3, 11], "x": 190, "y": 48, "flags": 4}, {"matrix": [3, 10], "x": 172, "y": 48, "flags": 4}, {"matrix": [3, 9], "x": 155, "y": 48, "flags": 4}, @@ -93,6 +97,7 @@ {"matrix": [3, 3], "x": 52, "y": 48, "flags": 4}, {"matrix": [3, 2], "x": 34, "y": 48, "flags": 4}, {"matrix": [3, 1], "x": 17, "y": 48, "flags": 4}, + {"matrix": [4, 3], "x": 52, "y": 64, "flags": 4}, {"matrix": [4, 2], "x": 34, "y": 64, "flags": 4}, {"matrix": [4, 1], "x": 17, "y": 64, "flags": 4}, {"matrix": [4, 0], "x": 0, "y": 64, "flags": 4}, @@ -109,8 +114,10 @@ {"matrix": [2, 9], "x": 155, "y": 32, "flags": 4}, {"matrix": [2, 10], "x": 172, "y": 32, "flags": 4}, {"matrix": [2, 11], "x": 190, "y": 32, "flags": 4}, - {"matrix": [2, 13], "x": 207, "y": 32, "flags": 4}, - {"matrix": [2, 12], "x": 224, "y": 16, "flags": 4}, + {"matrix": [2, 12], "x": 200, "y": 32, "flags": 4}, + {"matrix": [2, 13], "x": 224, "y": 32, "flags": 4}, + {"matrix": [1, 14], "x": 224, "y": 16, "flags": 4}, + {"matrix": [1, 13], "x": 224, "y": 16, "flags": 4}, {"matrix": [1, 12], "x": 207, "y": 16, "flags": 4}, {"matrix": [1, 11], "x": 190, "y": 16, "flags": 4}, {"matrix": [1, 10], "x": 172, "y": 16, "flags": 4}, @@ -137,7 +144,9 @@ {"matrix": [0, 10], "x": 172, "y": 0, "flags": 4}, {"matrix": [0, 11], "x": 190, "y": 0, "flags": 4}, {"matrix": [0, 12], "x": 207, "y": 0, "flags": 4}, - {"matrix": [0, 13], "x": 224, "y": 0, "flags": 4} + {"matrix": [0, 13], "x": 210, "y": 0, "flags": 4}, + {"matrix": [0, 14], "x": 210, "y": 0, "flags": 4}, + {"matrix": [0, 15], "x": 224, "y": 0, "flags": 4} ], "max_brightness": 110, "sleep": true, @@ -145,13 +154,13 @@ }, "url": "", "usb": { - "device_version": "1.0.0", + "device_version": "1.1.0", "pid": "0x1020", "suspend_wakeup_delay": 1000, "vid": "0x6332" }, "ws2812": { - "pin": "A8" + "pin": "B15" }, "community_layouts": ["60_ansi", "60_iso"], "layouts": { @@ -170,7 +179,9 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [0, 13], "x": 13, "y": 0, "w": 0.5}, + {"matrix": [0, 14], "x": 13.5, "y": 0}, + {"matrix": [0, 15], "x": 14.5, "y": 0, "w": 0.5}, {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -184,7 +195,8 @@ {"matrix": [1, 10], "x": 10.5, "y": 1}, {"matrix": [1, 11], "x": 11.5, "y": 1}, {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [2, 12], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1}, + {"matrix": [1, 14], "x": 14.5, "y": 1, "w": 0.5}, {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -197,28 +209,34 @@ {"matrix": [2, 9], "x": 9.75, "y": 2}, {"matrix": [2, 10], "x": 10.75, "y": 2}, {"matrix": [2, 11], "x": 11.75, "y": 2}, - {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, - {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [2, 12], "x": 12.75, "y": 2}, + {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25}, + {"matrix": [3, 0], "x": 0, "y": 3, "w": 0.75}, + {"matrix": [3, 1], "x": 0.75, "y": 3, "w": 0.5}, + {"matrix": [3, 2], "x": 1.25, "y": 3}, + {"matrix": [3, 3], "x": 2.25, "y": 3}, + {"matrix": [3, 4], "x": 3.25, "y": 3}, + {"matrix": [3, 5], "x": 4.25, "y": 3}, + {"matrix": [3, 6], "x": 5.25, "y": 3}, + {"matrix": [3, 7], "x": 6.25, "y": 3}, + {"matrix": [3, 8], "x": 7.25, "y": 3}, + {"matrix": [3, 9], "x": 8.25, "y": 3}, + {"matrix": [3, 10], "x": 9.25, "y": 3}, + {"matrix": [3, 11], "x": 10.25, "y": 3}, + {"matrix": [3, 12], "x": 11.25, "y": 3}, + {"matrix": [3, 13], "x": 12.25, "y": 3}, + {"matrix": [3, 14], "x": 13.25, "y": 3, "w": 0.75}, + {"matrix": [3, 15], "x": 14, "y": 3}, {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, - {"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25}, + {"matrix": [4, 3], "x": 3.75, "y": 4}, + {"matrix": [4, 6], "x": 4.75, "y": 4, "w": 4.25}, + {"matrix": [4, 9], "x": 9, "y": 4}, {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, - {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} + {"matrix": [4, 15], "x": 13.75, "y": 4, "w": 1.25} ] }, "LAYOUT_60_ansi": { @@ -236,7 +254,7 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [0, 14], "x": 13, "y": 0, "w": 2}, {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -250,7 +268,7 @@ {"matrix": [1, 10], "x": 10.5, "y": 1}, {"matrix": [1, 11], "x": 11.5, "y": 1}, {"matrix": [1, 12], "x": 12.5, "y": 1}, - {"matrix": [2, 12], "x": 13.5, "y": 1, "w": 1.5}, + {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5}, {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, {"matrix": [2, 1], "x": 1.75, "y": 2}, {"matrix": [2, 2], "x": 2.75, "y": 2}, @@ -264,18 +282,18 @@ {"matrix": [2, 10], "x": 10.75, "y": 2}, {"matrix": [2, 11], "x": 11.75, "y": 2}, {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25}, - {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [3, 1], "x": 0, "y": 3, "w": 2.25}, + {"matrix": [3, 3], "x": 2.25, "y": 3}, + {"matrix": [3, 4], "x": 3.25, "y": 3}, + {"matrix": [3, 5], "x": 4.25, "y": 3}, + {"matrix": [3, 6], "x": 5.25, "y": 3}, + {"matrix": [3, 7], "x": 6.25, "y": 3}, + {"matrix": [3, 8], "x": 7.25, "y": 3}, + {"matrix": [3, 9], "x": 8.25, "y": 3}, + {"matrix": [3, 10], "x": 9.25, "y": 3}, + {"matrix": [3, 11], "x": 10.25, "y": 3}, + {"matrix": [3, 12], "x": 11.25, "y": 3}, + {"matrix": [3, 14], "x": 12.25, "y": 3, "w": 2.75}, {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, @@ -283,7 +301,7 @@ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, - {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} + {"matrix": [4, 15], "x": 13.75, "y": 4, "w": 1.25} ] }, "LAYOUT_60_iso": { @@ -301,7 +319,7 @@ {"matrix": [0, 10], "x": 10, "y": 0}, {"matrix": [0, 11], "x": 11, "y": 0}, {"matrix": [0, 12], "x": 12, "y": 0}, - {"matrix": [0, 13], "x": 13, "y": 0, "w": 2}, + {"matrix": [0, 14], "x": 13, "y": 0, "w": 2}, {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5}, {"matrix": [1, 1], "x": 1.5, "y": 1}, {"matrix": [1, 2], "x": 2.5, "y": 1}, @@ -328,20 +346,20 @@ {"matrix": [2, 10], "x": 10.75, "y": 2}, {"matrix": [2, 11], "x": 11.75, "y": 2}, {"matrix": [2, 12], "x": 12.75, "y": 2}, - {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, + {"matrix": [1, 14], "x": 13.75, "y": 1, "w": 1.25, "h": 2}, {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3}, - {"matrix": [3, 2], "x": 2.25, "y": 3}, - {"matrix": [3, 3], "x": 3.25, "y": 3}, - {"matrix": [3, 4], "x": 4.25, "y": 3}, - {"matrix": [3, 5], "x": 5.25, "y": 3}, - {"matrix": [3, 6], "x": 6.25, "y": 3}, - {"matrix": [3, 7], "x": 7.25, "y": 3}, - {"matrix": [3, 8], "x": 8.25, "y": 3}, - {"matrix": [3, 9], "x": 9.25, "y": 3}, - {"matrix": [3, 10], "x": 10.25, "y": 3}, - {"matrix": [3, 11], "x": 11.25, "y": 3}, - {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75}, + {"matrix": [3, 2], "x": 1.25, "y": 3}, + {"matrix": [3, 3], "x": 2.25, "y": 3}, + {"matrix": [3, 4], "x": 3.25, "y": 3}, + {"matrix": [3, 5], "x": 4.25, "y": 3}, + {"matrix": [3, 6], "x": 5.25, "y": 3}, + {"matrix": [3, 7], "x": 6.25, "y": 3}, + {"matrix": [3, 8], "x": 7.25, "y": 3}, + {"matrix": [3, 9], "x": 8.25, "y": 3}, + {"matrix": [3, 10], "x": 9.25, "y": 3}, + {"matrix": [3, 11], "x": 10.25, "y": 3}, + {"matrix": [3, 12], "x": 11.25, "y": 3}, + {"matrix": [3, 14], "x": 12.25, "y": 3, "w": 2.75}, {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25}, {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25}, {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25}, @@ -349,7 +367,7 @@ {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25}, {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25}, {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25}, - {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25} + {"matrix": [4, 15], "x": 13.75, "y": 4, "w": 1.25} ] } } diff --git a/keyboards/sharkoon/skiller_sgk50_s4/keymaps/default/keymap.c b/keyboards/sharkoon/skiller_sgk50_s4/keymaps/default/keymap.c index a8a64d1f2d..9a9e207113 100644 --- a/keyboards/sharkoon/skiller_sgk50_s4/keymaps/default/keymap.c +++ b/keyboards/sharkoon/skiller_sgk50_s4/keymaps/default/keymap.c @@ -4,18 +4,18 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT_60_iso( 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_BSPC, - 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_BSLS, - 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_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_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_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL ), - [1] = LAYOUT_all( + [1] = LAYOUT_60_iso( KC_GRV, 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_DEL, - _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_UP, KC_PAUS, KC_PGUP, KC_HOME, KC_PSCR, RM_VALU, - _______, _______, _______, _______, _______, _______, KC_SCRL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_END, _______, + _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_UP, KC_PAUS, KC_PGUP, KC_HOME, KC_PSCR, + _______, _______, _______, _______, _______, _______, KC_SCRL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_END, RM_VALU, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, RM_VALD, _______, _______, GU_TOGG, _______, _______, _______, _______, RM_HUEU, RM_NEXT ) -- cgit v1.2.3 From 7073ba3dbb0570309b63bbb6cb9642c4638b229b Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 29 Jan 2025 19:21:09 +0000 Subject: Migrate some DEFAULT_FOLDER to keyboard_aliases.hjson (#24845) --- data/mappings/keyboard_aliases.hjson | 84 +++++++++++++++++++++++ keyboards/25keys/aleth42/rules.mk | 1 - keyboards/25keys/zinc/rules.mk | 1 - keyboards/aeboards/ext65/rules.mk | 1 - keyboards/biacco42/ergo42/rules.mk | 1 - keyboards/custommk/genesis/rules.mk | 1 - keyboards/drhigsby/ogurec/rules.mk | 1 - keyboards/input_club/infinity60/rules.mk | 1 - keyboards/jacky_studio/piggy60/rev1/rules.mk | 1 - keyboards/jacky_studio/piggy60/rules.mk | 1 - keyboards/jones/rules.mk | 1 - keyboards/kakunpc/angel17/rules.mk | 1 - keyboards/kakunpc/suihankey/split/rules.mk | 1 - keyboards/keyhive/navi10/rules.mk | 1 - keyboards/keyhive/uno/rules.mk | 1 - keyboards/maple_computing/christmas_tree/rules.mk | 1 - keyboards/marksard/treadstone32/rules.mk | 1 - keyboards/mechlovin/hannah65/rev1/rules.mk | 1 - keyboards/mechlovin/hannah65/rules.mk | 1 - keyboards/rate/pistachio/rules.mk | 1 - keyboards/recompile_keys/choco60/rules.mk | 1 - keyboards/recompile_keys/nomu30/rules.mk | 1 - keyboards/salicylic_acid3/7skb/rules.mk | 1 - keyboards/salicylic_acid3/getta25/rules.mk | 1 - keyboards/salicylic_acid3/jisplit89/rules.mk | 1 - keyboards/salicylic_acid3/naked48/rules.mk | 1 - keyboards/salicylic_acid3/naked60/rules.mk | 1 - keyboards/salicylic_acid3/naked64/rules.mk | 1 - keyboards/salicylic_acid3/setta21/rules.mk | 1 - keyboards/spaceholdings/nebula68b/rules.mk | 1 - keyboards/splitkb/kyria/rules.mk | 1 - keyboards/takashiski/namecard2x4/rules.mk | 1 - keyboards/tominabox1/le_chiffre/rules.mk | 1 - keyboards/ymdk/yd60mq/rules.mk | 1 - 34 files changed, 84 insertions(+), 33 deletions(-) delete mode 100644 keyboards/25keys/aleth42/rules.mk delete mode 100644 keyboards/25keys/zinc/rules.mk delete mode 100644 keyboards/aeboards/ext65/rules.mk delete mode 100644 keyboards/biacco42/ergo42/rules.mk delete mode 100644 keyboards/custommk/genesis/rules.mk delete mode 100644 keyboards/drhigsby/ogurec/rules.mk delete mode 100644 keyboards/input_club/infinity60/rules.mk delete mode 100644 keyboards/jacky_studio/piggy60/rev1/rules.mk delete mode 100644 keyboards/jacky_studio/piggy60/rules.mk delete mode 100644 keyboards/jones/rules.mk delete mode 100644 keyboards/kakunpc/angel17/rules.mk delete mode 100644 keyboards/kakunpc/suihankey/split/rules.mk delete mode 100644 keyboards/keyhive/navi10/rules.mk delete mode 100644 keyboards/keyhive/uno/rules.mk delete mode 100644 keyboards/maple_computing/christmas_tree/rules.mk delete mode 100644 keyboards/marksard/treadstone32/rules.mk delete mode 100644 keyboards/mechlovin/hannah65/rev1/rules.mk delete mode 100644 keyboards/mechlovin/hannah65/rules.mk delete mode 100644 keyboards/rate/pistachio/rules.mk delete mode 100644 keyboards/recompile_keys/choco60/rules.mk delete mode 100644 keyboards/recompile_keys/nomu30/rules.mk delete mode 100644 keyboards/salicylic_acid3/7skb/rules.mk delete mode 100644 keyboards/salicylic_acid3/getta25/rules.mk delete mode 100644 keyboards/salicylic_acid3/jisplit89/rules.mk delete mode 100644 keyboards/salicylic_acid3/naked48/rules.mk delete mode 100644 keyboards/salicylic_acid3/naked60/rules.mk delete mode 100644 keyboards/salicylic_acid3/naked64/rules.mk delete mode 100644 keyboards/salicylic_acid3/setta21/rules.mk delete mode 100644 keyboards/spaceholdings/nebula68b/rules.mk delete mode 100644 keyboards/splitkb/kyria/rules.mk delete mode 100644 keyboards/takashiski/namecard2x4/rules.mk delete mode 100644 keyboards/tominabox1/le_chiffre/rules.mk delete mode 100644 keyboards/ymdk/yd60mq/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 86fcdb8c29..760e54b889 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1575,6 +1575,12 @@ "1upkeyboards/sweet16": { "target": "1upkeyboards/sweet16/v1" }, + "25keys/aleth42": { + "target": "25keys/aleth42/rev1" + }, + "25keys/zinc": { + "target": "25keys/zinc/rev1" + }, "40percentclub/i75": { "target": "40percentclub/i75/promicro" }, @@ -1599,6 +1605,9 @@ "atreyu": { "target": "atreyu/rev1" }, + "biacco42/ergo42": { + "target": "biacco42/ergo42/rev1" + }, "binepad/bn009": { "target": "binepad/bn009/r2" }, @@ -1641,6 +1650,9 @@ "deltasplit75": { "target": "deltasplit75/v2" }, + "drhigsby/ogurec": { + "target": "drhigsby/ogurec/left_pm" + }, "duck/octagon": { "target": "duck/octagon/v2" }, @@ -1755,9 +1767,15 @@ "inett_studio/sq80": { "target": "inett_studio/sq80/hotswap_layout_i" }, + "input_club/infinity60": { + "target": "input_club/infinity60/led" + }, "jacky_studio/bear_65": { "target": "jacky_studio/bear_65/rev1" }, + "jacky_studio/piggy60/rev1": { + "target": "jacky_studio/piggy60/rev1/solder" + }, "jadookb/jkb65": { "target": "jadookb/jkb65/r1" }, @@ -1773,12 +1791,18 @@ "junco": { "target": "junco/rev1" }, + "kakunpc/angel17": { + "target": "kakunpc/angel17/rev1" + }, "kakunpc/business_card": { "target": "kakunpc/business_card/beta" }, "kakunpc/suihankey": { "target": "kakunpc/suihankey/rev1" }, + "kakunpc/suihankey/split": { + "target": "kakunpc/suihankey/split/rev1" + }, "kapcave/paladinpad": { "target": "kapcave/paladinpad/rev2" }, @@ -1821,6 +1845,12 @@ "keycapsss/kimiko": { "target": "keycapsss/kimiko/rev2" }, + "keyhive/navi10": { + "target": "keyhive/navi10/rev3" + }, + "keyhive/uno": { + "target": "keyhive/uno/rev1" + }, "kin80": { "target": "kin80/blackpill401" }, @@ -1851,6 +1881,9 @@ "lime": { "target": "lime/rev1" }, + "maple_computing/christmas_tree": { + "target": "maple_computing/christmas_tree/v2017" + }, "maple_computing/ivy": { "target": "maple_computing/ivy/rev1" }, @@ -1866,6 +1899,9 @@ "marksard/rhymestone": { "target": "marksard/rhymestone/rev1" }, + "marksard/treadstone32": { + "target": "marksard/treadstone32/rev1" + }, "marksard/treadstone48": { "target": "marksard/treadstone48/rev1" }, @@ -1890,6 +1926,9 @@ "mechlovin/adelais/standard_led/avr": { "target": "mechlovin/adelais/standard_led/avr/rev1" }, + "mechlovin/hannah65/rev1": { + "target": "mechlovin/hannah65/rev1/haus" + }, "mechlovin/infinity87/rev1": { "target": "mechlovin/infinity87/rev1/standard" }, @@ -1986,6 +2025,15 @@ "qwertyydox": { "target": "qwertyydox/rev1" }, + "rate/pistachio": { + "target": "rate/pistachio/rev2" + }, + "recompile_keys/choco60": { + "target": "recompile_keys/choco60/rev1" + }, + "recompile_keys/nomu30": { + "target": "recompile_keys/nomu30/rev1" + }, "redox/rev1": { "target": "redox/rev1/base" }, @@ -2025,6 +2073,27 @@ "rura66": { "target": "rura66/rev1" }, + "salicylic_acid3/7skb": { + "target": "salicylic_acid3/7skb/rev1" + }, + "salicylic_acid3/getta25": { + "target": "salicylic_acid3/getta25/rev1" + }, + "salicylic_acid3/jisplit89": { + "target": "salicylic_acid3/jisplit89/rev1" + }, + "salicylic_acid3/naked48": { + "target": "salicylic_acid3/naked48/rev1" + }, + "salicylic_acid3/naked60": { + "target": "salicylic_acid3/naked60/rev1" + }, + "salicylic_acid3/naked64": { + "target": "salicylic_acid3/naked64/rev1" + }, + "salicylic_acid3/setta21": { + "target": "salicylic_acid3/setta21/rev1" + }, "sawnsprojects/okayu": { "target": "sawnsprojects/okayu/stm32f072" }, @@ -2034,6 +2103,9 @@ "sofle": { "target": "sofle/rev1" }, + "spaceholdings/nebula68b": { + "target": "spaceholdings/nebula68b/solder" + }, "spacetime": { "target": "spacetime/rev1" }, @@ -2052,6 +2124,9 @@ "splitkb/aurora/sweep": { "target": "splitkb/aurora/sweep/rev1" }, + "splitkb/kyria": { + "target": "splitkb/kyria/rev3" + }, "splitkb/kyria/rev1": { "target": "splitkb/kyria/rev1/base" }, @@ -2067,12 +2142,18 @@ "takashiski/hecomi": { "target": "takashiski/hecomi/alpha" }, + "takashiski/namecard2x4": { + "target": "takashiski/namecard2x4/rev2" + }, "themadnoodle/noodlepad": { "target": "themadnoodle/noodlepad/v1" }, "tkw/grandiceps": { "target": "tkw/grandiceps/rev1" }, + "tominabox1/le_chiffre": { + "target": "tominabox1/le_chiffre/rev1" + }, "tominabox1/littlefoot_lx": { "target": "tominabox1/littlefoot_lx/rev1" }, @@ -2103,6 +2184,9 @@ "yosino58": { "target": "yosino58/rev1" }, + "ymdk/yd60mq": { + "target": "ymdk/yd60mq/12led" + }, "yushakobo/navpad/10": { "target": "yushakobo/navpad/10/rev1" }, diff --git a/keyboards/25keys/aleth42/rules.mk b/keyboards/25keys/aleth42/rules.mk deleted file mode 100644 index 8034ad5440..0000000000 --- a/keyboards/25keys/aleth42/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 25keys/aleth42/rev1 diff --git a/keyboards/25keys/zinc/rules.mk b/keyboards/25keys/zinc/rules.mk deleted file mode 100644 index 1edcb0a345..0000000000 --- a/keyboards/25keys/zinc/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = 25keys/zinc/rev1 diff --git a/keyboards/aeboards/ext65/rules.mk b/keyboards/aeboards/ext65/rules.mk deleted file mode 100644 index d8b0595a5d..0000000000 --- a/keyboards/aeboards/ext65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = aeboards/ext65/rev2 \ No newline at end of file diff --git a/keyboards/biacco42/ergo42/rules.mk b/keyboards/biacco42/ergo42/rules.mk deleted file mode 100644 index 18059c0a3b..0000000000 --- a/keyboards/biacco42/ergo42/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = biacco42/ergo42/rev1 diff --git a/keyboards/custommk/genesis/rules.mk b/keyboards/custommk/genesis/rules.mk deleted file mode 100644 index 3d64c0af2b..0000000000 --- a/keyboards/custommk/genesis/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = custommk/genesis/rev2 diff --git a/keyboards/drhigsby/ogurec/rules.mk b/keyboards/drhigsby/ogurec/rules.mk deleted file mode 100644 index ed83fb6386..0000000000 --- a/keyboards/drhigsby/ogurec/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = drhigsby/ogurec/left_pm diff --git a/keyboards/input_club/infinity60/rules.mk b/keyboards/input_club/infinity60/rules.mk deleted file mode 100644 index 9c4b1e74c2..0000000000 --- a/keyboards/input_club/infinity60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = input_club/infinity60/led diff --git a/keyboards/jacky_studio/piggy60/rev1/rules.mk b/keyboards/jacky_studio/piggy60/rev1/rules.mk deleted file mode 100644 index 873e9334ed..0000000000 --- a/keyboards/jacky_studio/piggy60/rev1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jacky_studio/piggy60/rev1/solder diff --git a/keyboards/jacky_studio/piggy60/rules.mk b/keyboards/jacky_studio/piggy60/rules.mk deleted file mode 100644 index 873e9334ed..0000000000 --- a/keyboards/jacky_studio/piggy60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jacky_studio/piggy60/rev1/solder diff --git a/keyboards/jones/rules.mk b/keyboards/jones/rules.mk deleted file mode 100644 index 9f0da2abec..0000000000 --- a/keyboards/jones/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = jones/v1 diff --git a/keyboards/kakunpc/angel17/rules.mk b/keyboards/kakunpc/angel17/rules.mk deleted file mode 100644 index 48095d37e6..0000000000 --- a/keyboards/kakunpc/angel17/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kakunpc/angel17/rev1 diff --git a/keyboards/kakunpc/suihankey/split/rules.mk b/keyboards/kakunpc/suihankey/split/rules.mk deleted file mode 100644 index 1dc7b014f0..0000000000 --- a/keyboards/kakunpc/suihankey/split/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = kakunpc/suihankey/split/rev1 diff --git a/keyboards/keyhive/navi10/rules.mk b/keyboards/keyhive/navi10/rules.mk deleted file mode 100644 index 6ebb2d0ceb..0000000000 --- a/keyboards/keyhive/navi10/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keyhive/navi10/rev3 diff --git a/keyboards/keyhive/uno/rules.mk b/keyboards/keyhive/uno/rules.mk deleted file mode 100644 index 3220994593..0000000000 --- a/keyboards/keyhive/uno/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = keyhive/uno/rev1 diff --git a/keyboards/maple_computing/christmas_tree/rules.mk b/keyboards/maple_computing/christmas_tree/rules.mk deleted file mode 100644 index 3a6633cf56..0000000000 --- a/keyboards/maple_computing/christmas_tree/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = maple_computing/christmas_tree/v2017 diff --git a/keyboards/marksard/treadstone32/rules.mk b/keyboards/marksard/treadstone32/rules.mk deleted file mode 100644 index 2d7ca16d86..0000000000 --- a/keyboards/marksard/treadstone32/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = marksard/treadstone32/rev1 diff --git a/keyboards/mechlovin/hannah65/rev1/rules.mk b/keyboards/mechlovin/hannah65/rev1/rules.mk deleted file mode 100644 index ae9bc176a4..0000000000 --- a/keyboards/mechlovin/hannah65/rev1/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/hannah65/rev1/haus diff --git a/keyboards/mechlovin/hannah65/rules.mk b/keyboards/mechlovin/hannah65/rules.mk deleted file mode 100644 index ae9bc176a4..0000000000 --- a/keyboards/mechlovin/hannah65/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = mechlovin/hannah65/rev1/haus diff --git a/keyboards/rate/pistachio/rules.mk b/keyboards/rate/pistachio/rules.mk deleted file mode 100644 index a5f4485316..0000000000 --- a/keyboards/rate/pistachio/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = rate/pistachio/rev2 diff --git a/keyboards/recompile_keys/choco60/rules.mk b/keyboards/recompile_keys/choco60/rules.mk deleted file mode 100644 index 6abfd34d47..0000000000 --- a/keyboards/recompile_keys/choco60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = recompile_keys/choco60/rev1 diff --git a/keyboards/recompile_keys/nomu30/rules.mk b/keyboards/recompile_keys/nomu30/rules.mk deleted file mode 100644 index 431b619249..0000000000 --- a/keyboards/recompile_keys/nomu30/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = recompile_keys/nomu30/rev1 diff --git a/keyboards/salicylic_acid3/7skb/rules.mk b/keyboards/salicylic_acid3/7skb/rules.mk deleted file mode 100644 index 15364c29a5..0000000000 --- a/keyboards/salicylic_acid3/7skb/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/7skb/rev1 diff --git a/keyboards/salicylic_acid3/getta25/rules.mk b/keyboards/salicylic_acid3/getta25/rules.mk deleted file mode 100644 index 069fe74b14..0000000000 --- a/keyboards/salicylic_acid3/getta25/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/getta25/rev1 diff --git a/keyboards/salicylic_acid3/jisplit89/rules.mk b/keyboards/salicylic_acid3/jisplit89/rules.mk deleted file mode 100644 index d54d2ccef4..0000000000 --- a/keyboards/salicylic_acid3/jisplit89/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/jisplit89/rev1 diff --git a/keyboards/salicylic_acid3/naked48/rules.mk b/keyboards/salicylic_acid3/naked48/rules.mk deleted file mode 100644 index dadfa7a257..0000000000 --- a/keyboards/salicylic_acid3/naked48/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/naked48/rev1 diff --git a/keyboards/salicylic_acid3/naked60/rules.mk b/keyboards/salicylic_acid3/naked60/rules.mk deleted file mode 100644 index 904309ea35..0000000000 --- a/keyboards/salicylic_acid3/naked60/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/naked60/rev1 diff --git a/keyboards/salicylic_acid3/naked64/rules.mk b/keyboards/salicylic_acid3/naked64/rules.mk deleted file mode 100644 index 0ac8d83bfc..0000000000 --- a/keyboards/salicylic_acid3/naked64/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/naked64/rev1 diff --git a/keyboards/salicylic_acid3/setta21/rules.mk b/keyboards/salicylic_acid3/setta21/rules.mk deleted file mode 100644 index 02e68b5748..0000000000 --- a/keyboards/salicylic_acid3/setta21/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = salicylic_acid3/setta21/rev1 diff --git a/keyboards/spaceholdings/nebula68b/rules.mk b/keyboards/spaceholdings/nebula68b/rules.mk deleted file mode 100644 index 8fe37f83b3..0000000000 --- a/keyboards/spaceholdings/nebula68b/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = spaceholdings/nebula68b/solder diff --git a/keyboards/splitkb/kyria/rules.mk b/keyboards/splitkb/kyria/rules.mk deleted file mode 100644 index 1342089f56..0000000000 --- a/keyboards/splitkb/kyria/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = splitkb/kyria/rev3 diff --git a/keyboards/takashiski/namecard2x4/rules.mk b/keyboards/takashiski/namecard2x4/rules.mk deleted file mode 100644 index f93cfc823d..0000000000 --- a/keyboards/takashiski/namecard2x4/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = takashiski/namecard2x4/rev2 diff --git a/keyboards/tominabox1/le_chiffre/rules.mk b/keyboards/tominabox1/le_chiffre/rules.mk deleted file mode 100644 index 57b3d94eab..0000000000 --- a/keyboards/tominabox1/le_chiffre/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = tominabox1/le_chiffre/rev1 diff --git a/keyboards/ymdk/yd60mq/rules.mk b/keyboards/ymdk/yd60mq/rules.mk deleted file mode 100644 index c37722c8bb..0000000000 --- a/keyboards/ymdk/yd60mq/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = ymdk/yd60mq/12led -- cgit v1.2.3 From 7fe168a8ed1577be2f75ec0f0a43a3997a7df199 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Fri, 7 Feb 2025 00:10:45 -0800 Subject: [Keyboard] Move Ergodox STM32 to handwired folder (#24903) * [Keyboard] Move Erogdox STM32 to handwired folder To minimize confusion with ZSA's ergodox EZ ST (stm32f303) and because this is basically a one-off board * Don't forget mapping * Fix readme--- data/mappings/keyboard_aliases.hjson | 3 + keyboards/ergodox_stm32/board.h | 39 ---- keyboards/ergodox_stm32/chconf.h | 61 ------ keyboards/ergodox_stm32/config.h | 31 --- keyboards/ergodox_stm32/ergodox_stm32.c | 74 ------- keyboards/ergodox_stm32/ergodox_stm32.h | 37 ---- keyboards/ergodox_stm32/halconf.h | 27 --- keyboards/ergodox_stm32/keyboard.json | 214 --------------------- keyboards/ergodox_stm32/keymaps/default/keymap.c | 52 ----- keyboards/ergodox_stm32/ld/stm32f103_bootloader.ld | 85 -------- keyboards/ergodox_stm32/matrix.c | 182 ------------------ keyboards/ergodox_stm32/mcuconf.h | 209 -------------------- keyboards/ergodox_stm32/readme.md | 9 - keyboards/ergodox_stm32/rules.mk | 8 - keyboards/handwired/ergodox_stm32/board.h | 39 ++++ keyboards/handwired/ergodox_stm32/chconf.h | 61 ++++++ keyboards/handwired/ergodox_stm32/config.h | 31 +++ keyboards/handwired/ergodox_stm32/ergodox_stm32.c | 74 +++++++ keyboards/handwired/ergodox_stm32/ergodox_stm32.h | 37 ++++ keyboards/handwired/ergodox_stm32/halconf.h | 27 +++ keyboards/handwired/ergodox_stm32/keyboard.json | 214 +++++++++++++++++++++ .../ergodox_stm32/keymaps/default/keymap.c | 52 +++++ .../ergodox_stm32/ld/stm32f103_bootloader.ld | 85 ++++++++ keyboards/handwired/ergodox_stm32/matrix.c | 182 ++++++++++++++++++ keyboards/handwired/ergodox_stm32/mcuconf.h | 209 ++++++++++++++++++++ keyboards/handwired/ergodox_stm32/readme.md | 9 + keyboards/handwired/ergodox_stm32/rules.mk | 8 + 27 files changed, 1031 insertions(+), 1028 deletions(-) delete mode 100644 keyboards/ergodox_stm32/board.h delete mode 100644 keyboards/ergodox_stm32/chconf.h delete mode 100644 keyboards/ergodox_stm32/config.h delete mode 100644 keyboards/ergodox_stm32/ergodox_stm32.c delete mode 100644 keyboards/ergodox_stm32/ergodox_stm32.h delete mode 100644 keyboards/ergodox_stm32/halconf.h delete mode 100644 keyboards/ergodox_stm32/keyboard.json delete mode 100644 keyboards/ergodox_stm32/keymaps/default/keymap.c delete mode 100644 keyboards/ergodox_stm32/ld/stm32f103_bootloader.ld delete mode 100644 keyboards/ergodox_stm32/matrix.c delete mode 100644 keyboards/ergodox_stm32/mcuconf.h delete mode 100644 keyboards/ergodox_stm32/readme.md delete mode 100644 keyboards/ergodox_stm32/rules.mk create mode 100644 keyboards/handwired/ergodox_stm32/board.h create mode 100644 keyboards/handwired/ergodox_stm32/chconf.h create mode 100644 keyboards/handwired/ergodox_stm32/config.h create mode 100644 keyboards/handwired/ergodox_stm32/ergodox_stm32.c create mode 100644 keyboards/handwired/ergodox_stm32/ergodox_stm32.h create mode 100644 keyboards/handwired/ergodox_stm32/halconf.h create mode 100644 keyboards/handwired/ergodox_stm32/keyboard.json create mode 100644 keyboards/handwired/ergodox_stm32/keymaps/default/keymap.c create mode 100644 keyboards/handwired/ergodox_stm32/ld/stm32f103_bootloader.ld create mode 100644 keyboards/handwired/ergodox_stm32/matrix.c create mode 100644 keyboards/handwired/ergodox_stm32/mcuconf.h create mode 100644 keyboards/handwired/ergodox_stm32/readme.md create mode 100644 keyboards/handwired/ergodox_stm32/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 760e54b889..d03ff33f2c 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -197,6 +197,9 @@ "ergodone": { "target": "ktec/ergodone" }, + "ergodox_stm32": { + "target": "handwired/ergodox_stm32" + }, "ergoinu": { "target": "dm9records/ergoinu" }, diff --git a/keyboards/ergodox_stm32/board.h b/keyboards/ergodox_stm32/board.h deleted file mode 100644 index c1c37c0659..0000000000 --- a/keyboards/ergodox_stm32/board.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -Copyright 2021 QMK - -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 . -*/ - -#pragma once - -#include_next - -#ifdef STM32_LSECLK -#undef STM32_LSECLK -#endif // STM32_LSECLK -#define STM32_LSECLK 32768 - -#ifdef STM32_HSECLK -#undef STM32_HSECLK -#endif // STM32_HSECLK -#define STM32_HSECLK 8000000 - -#undef VAL_GPIOACRL -#define VAL_GPIOACRL 0x88888888 - -#undef VAL_GPIOAODR -#define VAL_GPIOAODR 0xFFFFFFFF - -#undef VAL_GPIOCCRH -#define VAL_GPIOCCRH 0x88888888 diff --git a/keyboards/ergodox_stm32/chconf.h b/keyboards/ergodox_stm32/chconf.h deleted file mode 100644 index bc3672f6f7..0000000000 --- a/keyboards/ergodox_stm32/chconf.h +++ /dev/null @@ -1,61 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/ergodox_stm32/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_TIME_QUANTUM 20 - -#define CH_CFG_USE_REGISTRY TRUE - -#define CH_CFG_USE_WAITEXIT TRUE - -#define CH_CFG_USE_CONDVARS TRUE - -#define CH_CFG_USE_MESSAGES TRUE - -#define CH_CFG_USE_MAILBOXES TRUE - -#define CH_CFG_USE_HEAP TRUE - -#define CH_CFG_USE_MEMPOOLS TRUE - -#define CH_CFG_USE_OBJ_FIFOS TRUE - -#define CH_CFG_USE_PIPES TRUE - -#define CH_CFG_USE_DYNAMIC TRUE - -#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE - -#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE - -#define CH_CFG_FACTORY_SEMAPHORES TRUE - -#define CH_CFG_FACTORY_MAILBOXES TRUE - -#define CH_CFG_FACTORY_OBJ_FIFOS TRUE - -#define CH_CFG_FACTORY_PIPES TRUE - -#include_next - diff --git a/keyboards/ergodox_stm32/config.h b/keyboards/ergodox_stm32/config.h deleted file mode 100644 index f4f81e30bd..0000000000 --- a/keyboards/ergodox_stm32/config.h +++ /dev/null @@ -1,31 +0,0 @@ -/* -Copyright 2019 Yaotian Feng(Codetector) - -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 . -*/ -#pragma once - - -#define MATRIX_ROWS 14 -#define MATRIX_ROWS_PER_SIDE (MATRIX_ROWS / 2) -#define MATRIX_COLS 6 -/* key combination for command */ -#define IS_COMMAND() ( \ - keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ - keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ -) - -// i2c_master driver config -#define I2C1_CLOCK_SPEED 400000 -#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 diff --git a/keyboards/ergodox_stm32/ergodox_stm32.c b/keyboards/ergodox_stm32/ergodox_stm32.c deleted file mode 100644 index 99d51866f7..0000000000 --- a/keyboards/ergodox_stm32/ergodox_stm32.c +++ /dev/null @@ -1,74 +0,0 @@ -#include "ergodox_stm32.h" -#include "i2c_master.h" - -extern inline void ergodox_board_led_1_on(void); -extern inline void ergodox_board_led_2_on(void); -extern inline void ergodox_board_led_3_on(void); -extern inline void ergodox_board_led_1_off(void); -extern inline void ergodox_board_led_2_off(void); -extern inline void ergodox_board_led_3_off(void); -extern inline void ergodox_led_all_off(void); - -volatile int mcp23017_status = 0x20; -uint8_t i2c_initializied = 0; - -void board_init(void) { - AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE; -} - -void bootloader_jump(void) { - // This board doesn't use the "standard" stm32duino bootloader, and is resident in memory at the base location. All we can do here is reset. - NVIC_SystemReset(); -} - -void matrix_init_kb(void) -{ - // Init LED Ports - palSetPadMode(GPIOA, 10, PAL_MODE_OUTPUT_PUSHPULL); // LED 1 - palSetPadMode(GPIOA, 9, PAL_MODE_OUTPUT_PUSHPULL); // LED 2 - palSetPadMode(GPIOA, 8, PAL_MODE_OUTPUT_PUSHPULL); // LED 3 - - ergodox_blink_all_leds(); - - matrix_init_user(); -} - -void ergodox_blink_all_leds(void) -{ - ergodox_led_all_off(); - // ergodox_led_all_set(LED_BRIGHTNESS_DEFAULT); - ergodox_board_led_1_on(); - wait_ms(50); - ergodox_board_led_2_on(); - wait_ms(50); - ergodox_board_led_3_on(); - wait_ms(50); - ergodox_board_led_1_off(); - wait_ms(50); - ergodox_board_led_2_off(); - wait_ms(50); - ergodox_board_led_3_off(); -} - -uint8_t init_mcp23017(void) { - if (!i2c_initializied) { - i2c_init(); - i2c_initializied = 1; - } - - uint8_t data[2]; - data[0] = 0x0; - data[1] = 0b00111111; - mcp23017_status = i2c_write_register(I2C_ADDR, I2C_IODIRA, data, 2, 50000); - if (mcp23017_status) goto out; - data[0] = 0xFFU; - mcp23017_status = i2c_write_register(I2C_ADDR, I2C_GPIOA, data, 1, 5000); - if (mcp23017_status) goto out; - mcp23017_status = i2c_write_register(I2C_ADDR, I2C_GPPUB, data+1, 1, 2); - if (mcp23017_status) goto out; - - out: - return mcp23017_status; - // i2c_read_register(I2C_ADDR, ); -} - diff --git a/keyboards/ergodox_stm32/ergodox_stm32.h b/keyboards/ergodox_stm32/ergodox_stm32.h deleted file mode 100644 index 5a736ad818..0000000000 --- a/keyboards/ergodox_stm32/ergodox_stm32.h +++ /dev/null @@ -1,37 +0,0 @@ -#pragma once - -#include "quantum.h" -#include "action_layer.h" -#include -#include -#include - -// #define I2C_ADDR 0b01000000 -#define I2C_ADDR 0b01000000 -#define I2C_IODIRA 0x0 -#define I2C_IODIRB 0x1 -#define I2C_GPIOA 0x12 -#define I2C_GPIOB 0x13 -#define I2C_OLATA 0x14 -#define I2C_OLATB 0x15 -#define I2C_GPPUA 0x0C -#define I2C_GPPUB 0x0D - -inline void ergodox_board_led_1_on(void) { palSetPad(GPIOA, 10); } -inline void ergodox_board_led_2_on(void) { palSetPad(GPIOA, 9); } -inline void ergodox_board_led_3_on(void) { palSetPad(GPIOA, 8); } -inline void ergodox_board_led_1_off(void) { palClearPad(GPIOA, 10); } -inline void ergodox_board_led_2_off(void) { palClearPad(GPIOA, 9); } -inline void ergodox_board_led_3_off(void) { palClearPad(GPIOA, 8); } -inline void ergodox_led_all_off(void) -{ - palClearPad(GPIOA, 10); - palClearPad(GPIOA, 9); - palClearPad(GPIOA, 8); -} - -extern volatile int mcp23017_status; - -uint8_t init_mcp23017(void); - -void ergodox_blink_all_leds(void); diff --git a/keyboards/ergodox_stm32/halconf.h b/keyboards/ergodox_stm32/halconf.h deleted file mode 100644 index 71a1596c47..0000000000 --- a/keyboards/ergodox_stm32/halconf.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/ergodox_stm32/halconf.h -r platforms/chibios/common/configs/halconf.h` - */ - -#pragma once - -#define HAL_USE_I2C TRUE - -#include_next - diff --git a/keyboards/ergodox_stm32/keyboard.json b/keyboards/ergodox_stm32/keyboard.json deleted file mode 100644 index 49c0a858d4..0000000000 --- a/keyboards/ergodox_stm32/keyboard.json +++ /dev/null @@ -1,214 +0,0 @@ -{ - "keyboard_name": "ErgoDox STM32", - "manufacturer": "ErgoDox", - "url": "github.com/codetector1374", - "maintainer": "codetector1374", - "usb": { - "vid": "0xFEED", - "pid": "0x1308", - "device_version": "1.0.1" - }, - "features": { - "bootmagic": false, - "mousekey": false, - "extrakey": true, - "nkro": true, - "unicode": true - }, - "processor": "STM32F103", - "bootloader": "custom", - "community_layouts": ["ergodox"], - "layouts": { - "LAYOUT_ergodox": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5}, - {"matrix": [1, 0], "x": 1.5, "y": 0.375}, - {"matrix": [2, 0], "x": 2.5, "y": 0.125}, - {"matrix": [3, 0], "x": 3.5, "y": 0}, - {"matrix": [4, 0], "x": 4.5, "y": 0.125}, - {"matrix": [5, 0], "x": 5.5, "y": 0.25}, - {"matrix": [6, 0], "x": 6.5, "y": 0.25}, - - {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1.375}, - {"matrix": [2, 1], "x": 2.5, "y": 1.125}, - {"matrix": [3, 1], "x": 3.5, "y": 1}, - {"matrix": [4, 1], "x": 4.5, "y": 1.125}, - {"matrix": [5, 1], "x": 5.5, "y": 1.25}, - {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5}, - - {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5}, - {"matrix": [1, 2], "x": 1.5, "y": 2.375}, - {"matrix": [2, 2], "x": 2.5, "y": 2.125}, - {"matrix": [3, 2], "x": 3.5, "y": 2}, - {"matrix": [4, 2], "x": 4.5, "y": 2.125}, - {"matrix": [5, 2], "x": 5.5, "y": 2.25}, - - {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5}, - {"matrix": [1, 3], "x": 1.5, "y": 3.375}, - {"matrix": [2, 3], "x": 2.5, "y": 3.125}, - {"matrix": [3, 3], "x": 3.5, "y": 3}, - {"matrix": [4, 3], "x": 4.5, "y": 3.125}, - {"matrix": [5, 3], "x": 5.5, "y": 3.25}, - {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5}, - {"matrix": [0, 4], "x": 0.5, "y": 4.375}, - {"matrix": [1, 4], "x": 1.5, "y": 4.375}, - {"matrix": [2, 4], "x": 2.5, "y": 4.125}, - {"matrix": [3, 4], "x": 3.5, "y": 4}, - {"matrix": [4, 4], "x": 4.5, "y": 4.125}, - - {"matrix": [5, 5], "x": 6, "y": 5}, - {"matrix": [6, 5], "x": 7, "y": 5}, - {"matrix": [4, 5], "x": 7, "y": 6}, - - {"matrix": [3, 5], "x": 5, "y": 6, "h": 2}, - {"matrix": [2, 5], "x": 6, "y": 6, "h": 2}, - {"matrix": [1, 5], "x": 7, "y": 7}, - - {"matrix": [7, 0], "x": 9.5, "y": 0.25}, - {"matrix": [8, 0], "x": 10.5, "y": 0.25}, - {"matrix": [9, 0], "x": 11.5, "y": 0.125}, - {"matrix": [10, 0], "x": 12.5, "y": 0}, - {"matrix": [11, 0], "x": 13.5, "y": 0.125}, - {"matrix": [12, 0], "x": 14.5, "y": 0.375}, - {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5}, - - {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5}, - {"matrix": [8, 1], "x": 10.5, "y": 1.25}, - {"matrix": [9, 1], "x": 11.5, "y": 1.125}, - {"matrix": [10, 1], "x": 12.5, "y": 1}, - {"matrix": [11, 1], "x": 13.5, "y": 1.125}, - {"matrix": [12, 1], "x": 14.5, "y": 1.375}, - {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5}, - - {"matrix": [8, 2], "x": 10.5, "y": 2.25}, - {"matrix": [9, 2], "x": 11.5, "y": 2.125}, - {"matrix": [10, 2], "x": 12.5, "y": 2}, - {"matrix": [11, 2], "x": 13.5, "y": 2.125}, - {"matrix": [12, 2], "x": 14.5, "y": 2.375}, - {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5}, - - {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5}, - {"matrix": [8, 3], "x": 10.5, "y": 3.25}, - {"matrix": [9, 3], "x": 11.5, "y": 3.125}, - {"matrix": [10, 3], "x": 12.5, "y": 3}, - {"matrix": [11, 3], "x": 13.5, "y": 3.125}, - {"matrix": [12, 3], "x": 14.5, "y": 3.375}, - {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5}, - - {"matrix": [9, 4], "x": 11.5, "y": 4.125}, - {"matrix": [10, 4], "x": 12.5, "y": 4}, - {"matrix": [11, 4], "x": 13.5, "y": 4.125}, - {"matrix": [12, 4], "x": 14.5, "y": 4.375}, - {"matrix": [13, 4], "x": 15.5, "y": 4.375}, - - {"matrix": [7, 5], "x": 9, "y": 5}, - {"matrix": [8, 5], "x": 10, "y": 5}, - - {"matrix": [9, 5], "x": 9, "y": 6}, - - {"matrix": [12, 5], "x": 9, "y": 7}, - - {"matrix": [11, 5], "x": 10, "y": 6, "h": 2}, - {"matrix": [10, 5], "x": 11, "y": 6, "h": 2} - ] - }, - "LAYOUT_ergodox_pretty": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5}, - {"matrix": [1, 0], "x": 1.5, "y": 0.375}, - {"matrix": [2, 0], "x": 2.5, "y": 0.125}, - {"matrix": [3, 0], "x": 3.5, "y": 0}, - {"matrix": [4, 0], "x": 4.5, "y": 0.125}, - {"matrix": [5, 0], "x": 5.5, "y": 0.25}, - {"matrix": [6, 0], "x": 6.5, "y": 0.25}, - - {"matrix": [7, 0], "x": 9.5, "y": 0.25}, - {"matrix": [8, 0], "x": 10.5, "y": 0.25}, - {"matrix": [9, 0], "x": 11.5, "y": 0.125}, - {"matrix": [10, 0], "x": 12.5, "y": 0}, - {"matrix": [11, 0], "x": 13.5, "y": 0.125}, - {"matrix": [12, 0], "x": 14.5, "y": 0.375}, - {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5}, - - {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5}, - {"matrix": [1, 1], "x": 1.5, "y": 1.375}, - {"matrix": [2, 1], "x": 2.5, "y": 1.125}, - {"matrix": [3, 1], "x": 3.5, "y": 1}, - {"matrix": [4, 1], "x": 4.5, "y": 1.125}, - {"matrix": [5, 1], "x": 5.5, "y": 1.25}, - {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5}, - - {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5}, - {"matrix": [8, 1], "x": 10.5, "y": 1.25}, - {"matrix": [9, 1], "x": 11.5, "y": 1.125}, - {"matrix": [10, 1], "x": 12.5, "y": 1}, - {"matrix": [11, 1], "x": 13.5, "y": 1.125}, - {"matrix": [12, 1], "x": 14.5, "y": 1.375}, - {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5}, - - {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5}, - {"matrix": [1, 2], "x": 1.5, "y": 2.375}, - {"matrix": [2, 2], "x": 2.5, "y": 2.125}, - {"matrix": [3, 2], "x": 3.5, "y": 2}, - {"matrix": [4, 2], "x": 4.5, "y": 2.125}, - {"matrix": [5, 2], "x": 5.5, "y": 2.25}, - - {"matrix": [8, 2], "x": 10.5, "y": 2.25}, - {"matrix": [9, 2], "x": 11.5, "y": 2.125}, - {"matrix": [10, 2], "x": 12.5, "y": 2}, - {"matrix": [11, 2], "x": 13.5, "y": 2.125}, - {"matrix": [12, 2], "x": 14.5, "y": 2.375}, - {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5}, - - {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5}, - {"matrix": [1, 3], "x": 1.5, "y": 3.375}, - {"matrix": [2, 3], "x": 2.5, "y": 3.125}, - {"matrix": [3, 3], "x": 3.5, "y": 3}, - {"matrix": [4, 3], "x": 4.5, "y": 3.125}, - {"matrix": [5, 3], "x": 5.5, "y": 3.25}, - {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5}, - - {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5}, - {"matrix": [8, 3], "x": 10.5, "y": 3.25}, - {"matrix": [9, 3], "x": 11.5, "y": 3.125}, - {"matrix": [10, 3], "x": 12.5, "y": 3}, - {"matrix": [11, 3], "x": 13.5, "y": 3.125}, - {"matrix": [12, 3], "x": 14.5, "y": 3.375}, - {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5}, - - {"matrix": [0, 4], "x": 0.5, "y": 4.375}, - {"matrix": [1, 4], "x": 1.5, "y": 4.375}, - {"matrix": [2, 4], "x": 2.5, "y": 4.125}, - {"matrix": [3, 4], "x": 3.5, "y": 4}, - {"matrix": [4, 4], "x": 4.5, "y": 4.125}, - - {"matrix": [9, 4], "x": 11.5, "y": 4.125}, - {"matrix": [10, 4], "x": 12.5, "y": 4}, - {"matrix": [11, 4], "x": 13.5, "y": 4.125}, - {"matrix": [12, 4], "x": 14.5, "y": 4.375}, - {"matrix": [13, 4], "x": 15.5, "y": 4.375}, - - {"matrix": [5, 5], "x": 6, "y": 5}, - {"matrix": [6, 5], "x": 7, "y": 5}, - - {"matrix": [7, 5], "x": 9, "y": 5}, - {"matrix": [8, 5], "x": 10, "y": 5}, - - {"matrix": [4, 5], "x": 7, "y": 6}, - - {"matrix": [9, 5], "x": 9, "y": 6}, - - {"matrix": [3, 5], "x": 5, "y": 6, "h": 2}, - {"matrix": [2, 5], "x": 6, "y": 6, "h": 2}, - - {"matrix": [1, 5], "x": 7, "y": 7}, - - {"matrix": [12, 5], "x": 9, "y": 7}, - - {"matrix": [11, 5], "x": 10, "y": 6, "h": 2}, - {"matrix": [10, 5], "x": 11, "y": 6, "h": 2} - ] - } - } -} diff --git a/keyboards/ergodox_stm32/keymaps/default/keymap.c b/keyboards/ergodox_stm32/keymaps/default/keymap.c deleted file mode 100644 index 001d74b18d..0000000000 --- a/keyboards/ergodox_stm32/keymaps/default/keymap.c +++ /dev/null @@ -1,52 +0,0 @@ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_ergodox(KC_GRAVE,KC_1,KC_2,KC_3,KC_4,KC_5,KC_MINUS,KC_TAB,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_LPRN,KC_ESCAPE,KC_A,KC_S,KC_D,KC_F,KC_G,KC_LSFT,KC_Z,KC_X,KC_C,KC_V,KC_B,KC_RPRN,KC_LCTL,KC_LGUI,KC_LALT,KC_LGUI,KC_LALT,KC_INSERT,MO(1),KC_HOME,KC_SPACE,KC_DELETE,KC_END,KC_EQUAL,KC_6,KC_7,KC_8,KC_9,KC_0,KC_BSPC,KC_LBRC,KC_Y,KC_U,KC_I,KC_O,KC_P,KC_BSLS,KC_H,KC_J,KC_K,KC_L,KC_SCLN,KC_QUOTE,KC_RBRC,KC_N,KC_M,KC_COMMA,KC_DOT,KC_SLASH,KC_RSFT,KC_LEFT,KC_DOWN,KC_UP,KC_RIGHT,KC_RCTL,MO(1),TG(2),KC_PGUP,KC_PGDN,KC_BSPC,KC_ENTER), - - [1] = LAYOUT_ergodox(KC_TILD,KC_F1,KC_F2,KC_F3,KC_F4,KC_F5,KC_F6,KC_GRAVE,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_CAPS,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_MEDIA_PLAY_PAUSE,KC_TRANSPARENT,KC_TRANSPARENT,KC_F7,KC_F8,KC_F9,KC_F10,KC_F11,KC_F12,KC_BSPC,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,LCTL(LGUI(KC_Q)),KC_MEDIA_PREV_TRACK,KC_MEDIA_NEXT_TRACK,KC_AUDIO_VOL_DOWN,KC_AUDIO_VOL_UP), - - [2] = LAYOUT_ergodox(KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_NUM,KC_KP_SLASH,KC_KP_ASTERISK,KC_KP_MINUS,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_KP_7,KC_KP_8,KC_KP_9,KC_KP_PLUS,KC_TRANSPARENT,KC_TRANSPARENT,KC_KP_4,KC_KP_5,KC_KP_6,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_KP_1,KC_KP_2,KC_KP_3,KC_ENTER,KC_TRANSPARENT,KC_KP_DOT,KC_KP_0,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT), - -}; - -layer_state_t layer_state_set_user(layer_state_t state) { - - uint8_t layer = get_highest_layer(state); - - ergodox_led_all_off(); - ergodox_board_led_1_off(); - ergodox_board_led_2_off(); - ergodox_board_led_3_off(); - switch (layer) { - case 1: - ergodox_board_led_1_on(); - break; - case 2: - ergodox_board_led_2_on(); - break; - case 3: - ergodox_board_led_2_on(); - break; - case 4: - ergodox_board_led_1_on(); - ergodox_board_led_2_on(); - break; - case 5: - ergodox_board_led_1_on(); - ergodox_board_led_3_on(); - break; - case 6: - ergodox_board_led_2_on(); - ergodox_board_led_3_on(); - break; - case 7: - ergodox_board_led_1_on(); - ergodox_board_led_2_on(); - ergodox_board_led_3_on(); - break; - default: - break; - } - return state; - -}; diff --git a/keyboards/ergodox_stm32/ld/stm32f103_bootloader.ld b/keyboards/ergodox_stm32/ld/stm32f103_bootloader.ld deleted file mode 100644 index 77100fce38..0000000000 --- a/keyboards/ergodox_stm32/ld/stm32f103_bootloader.ld +++ /dev/null @@ -1,85 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -/* - * ST32F103xB memory setup for use with the originaljm60 bootloader. - */ -MEMORY -{ - flash0 : org = 0x08000000, len = 64k /* TODO */ - flash1 : org = 0x00000000, len = 0 - flash2 : org = 0x00000000, len = 0 - flash3 : org = 0x00000000, len = 0 - flash4 : org = 0x00000000, len = 0 - flash5 : org = 0x00000000, len = 0 - flash6 : org = 0x00000000, len = 0 - flash7 : org = 0x00000000, len = 0 - ram0 : org = 0x20000000, len = 20k - ram1 : org = 0x00000000, len = 0 - ram2 : org = 0x00000000, len = 0 - ram3 : org = 0x00000000, len = 0 - ram4 : org = 0x00000000, len = 0 - ram5 : org = 0x00000000, len = 0 - ram6 : org = 0x00000000, len = 0 - ram7 : org = 0x00000000, len = 0 -} - -/* For each data/text section two region are defined, a virtual region - and a load region (_LMA suffix).*/ - -/* Flash region to be used for exception vectors.*/ -REGION_ALIAS("VECTORS_FLASH", flash0); -REGION_ALIAS("VECTORS_FLASH_LMA", flash0); - -/* Flash region to be used for constructors and destructors.*/ -REGION_ALIAS("XTORS_FLASH", flash0); -REGION_ALIAS("XTORS_FLASH_LMA", flash0); - -/* Flash region to be used for code text.*/ -REGION_ALIAS("TEXT_FLASH", flash0); -REGION_ALIAS("TEXT_FLASH_LMA", flash0); - -/* Flash region to be used for read only data.*/ -REGION_ALIAS("RODATA_FLASH", flash0); -REGION_ALIAS("RODATA_FLASH_LMA", flash0); - -/* Flash region to be used for various.*/ -REGION_ALIAS("VARIOUS_FLASH", flash0); -REGION_ALIAS("VARIOUS_FLASH_LMA", flash0); - -/* Flash region to be used for RAM(n) initialization data.*/ -REGION_ALIAS("RAM_INIT_FLASH_LMA", flash0); - -/* RAM region to be used for Main stack. This stack accommodates the processing - of all exceptions and interrupts.*/ -REGION_ALIAS("MAIN_STACK_RAM", ram0); - -/* RAM region to be used for the process stack. This is the stack used by - the main() function.*/ -REGION_ALIAS("PROCESS_STACK_RAM", ram0); - -/* RAM region to be used for data segment.*/ -REGION_ALIAS("DATA_RAM", ram0); -REGION_ALIAS("DATA_RAM_LMA", flash0); - -/* RAM region to be used for BSS segment.*/ -REGION_ALIAS("BSS_RAM", ram0); - -/* RAM region to be used for the default heap.*/ -REGION_ALIAS("HEAP_RAM", ram0); - -/* Generic rules inclusion.*/ -INCLUDE rules.ld diff --git a/keyboards/ergodox_stm32/matrix.c b/keyboards/ergodox_stm32/matrix.c deleted file mode 100644 index 6acd2dda22..0000000000 --- a/keyboards/ergodox_stm32/matrix.c +++ /dev/null @@ -1,182 +0,0 @@ -#include "matrix.h" -#include -#include "timer.h" -#include "wait.h" -#include "debug.h" -#include "i2c_master.h" -#include "ergodox_stm32.h" - -#ifndef DEBOUNCE -#define DEBOUNCE 10 -#endif - -static uint8_t mcp23017_reset_loop = 0; - -volatile matrix_row_t matrix[MATRIX_ROWS]; -volatile matrix_row_t raw_matrix[MATRIX_ROWS]; -volatile uint8_t debounce_matrix[MATRIX_ROWS * MATRIX_COLS]; - -static matrix_row_t read_cols(uint8_t row); - -static void init_cols(void); - -static void unselect_rows(void); - -static void select_row(uint8_t row); - -static void init_rows(void); - -__attribute__((weak)) void matrix_init_user(void) {} - -__attribute__((weak)) void matrix_scan_user(void) {} - -__attribute__((weak)) void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__((weak)) void matrix_scan_kb(void) { - matrix_scan_user(); -} - -void matrix_init(void) { - mcp23017_status = init_mcp23017(); - (void) mcp23017_reset_loop; - init_rows(); - unselect_rows(); - init_cols(); - - - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - raw_matrix[i] = 0; - for (uint8_t j = 0; j < MATRIX_COLS; ++j) { - debounce_matrix[i * MATRIX_COLS + j] = 0; - } - } - matrix_init_kb(); -} - -void matrix_power_up(void) { - mcp23017_status = init_mcp23017(); - - init_rows(); - unselect_rows(); - init_cols(); - - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - } -} - -matrix_row_t debounce_mask(matrix_row_t rawcols, uint8_t row) { - matrix_row_t result = 0; - matrix_row_t change = rawcols ^raw_matrix[row]; - raw_matrix[row] = rawcols; - for (uint8_t i = 0; i < MATRIX_COLS; ++i) { - if (debounce_matrix[row * MATRIX_COLS + i]) { - --debounce_matrix[row * MATRIX_COLS + i]; - } else { - result |= (1 << i); - } - if (change & (1 << i)) { - debounce_matrix[row * MATRIX_COLS + i] = DEBOUNCE; - } - } - return result; -} - -matrix_row_t debounce_read_cols(uint8_t row) { - // Read the row without debouncing filtering and store it for later usage. - matrix_row_t cols = read_cols(row); - // Get the Debounce mask. - matrix_row_t mask = debounce_mask(cols, row); - // debounce the row and return the result. - return (cols & mask) | (matrix[row] & ~mask);; -} - -uint8_t matrix_scan(void) { - if (mcp23017_status) { - if (++mcp23017_reset_loop == 0) { - mcp23017_status = init_mcp23017(); - if (!mcp23017_status) { - ergodox_blink_all_leds(); - } - } - } - for (uint8_t i = 0; i < MATRIX_ROWS_PER_SIDE; i++) { - select_row(i); - select_row(i + MATRIX_ROWS_PER_SIDE); - - matrix[i] = debounce_read_cols(i); - matrix[i + MATRIX_ROWS_PER_SIDE] = debounce_read_cols(i + MATRIX_ROWS_PER_SIDE); - - unselect_rows(); - } - matrix_scan_kb(); - return 0; -} - -inline -bool matrix_is_on(uint8_t row, uint8_t col) { - return (matrix[row] & (1 << col)); -} - -inline -matrix_row_t matrix_get_row(uint8_t row) { - return matrix[row]; -} - -void matrix_print(void) { -} - -static matrix_row_t read_cols(uint8_t row) { - if (row < MATRIX_ROWS_PER_SIDE) { - uint8_t data = 0xFF; - if (!mcp23017_status) { - uint8_t regAddr = I2C_GPIOB; - mcp23017_status = i2c_read_register(I2C_ADDR, regAddr, &data, 1, 10); - } - if (mcp23017_status) { - return 0; - } - return (~data) & 0x3F; - } else { - uint8_t data_p = (GPIOB -> IDR); - uint8_t data = data_p; - return ((~data) & 0x3f); - } -} - -static void init_cols(void) { - palSetPadMode(GPIOB, 0, PAL_MODE_INPUT_PULLUP); - palSetPadMode(GPIOB, 1, PAL_MODE_INPUT_PULLUP); - palSetPadMode(GPIOB, 2, PAL_MODE_INPUT_PULLUP); - palSetPadMode(GPIOB, 3, PAL_MODE_INPUT_PULLUP); - palSetPadMode(GPIOB, 4, PAL_MODE_INPUT_PULLUP); - palSetPadMode(GPIOB, 5, PAL_MODE_INPUT_PULLUP); -} - -static void init_rows(void) { - palSetPadMode(GPIOB, 8, PAL_MODE_OUTPUT_PUSHPULL); - palSetPadMode(GPIOB, 9, PAL_MODE_OUTPUT_PUSHPULL); - palSetPadMode(GPIOB, 10, PAL_MODE_OUTPUT_PUSHPULL); - palSetPadMode(GPIOB, 11, PAL_MODE_OUTPUT_PUSHPULL); - palSetPadMode(GPIOB, 12, PAL_MODE_OUTPUT_PUSHPULL); - palSetPadMode(GPIOB, 13, PAL_MODE_OUTPUT_PUSHPULL); - palSetPadMode(GPIOB, 14, PAL_MODE_OUTPUT_PUSHPULL); -} - -static void unselect_rows(void) { - GPIOB->BSRR = 0b1111111 << 8; -} - -static void select_row(uint8_t row) { - if (row < MATRIX_ROWS_PER_SIDE) { - if (!mcp23017_status) { - uint8_t data = (0xFF & ~(1 << row)); - mcp23017_status = i2c_write_register(I2C_ADDR, I2C_GPIOA, &data, 1, 10); - } - } else { - GPIOB->BRR = 0x1 << (row+1); - } -} diff --git a/keyboards/ergodox_stm32/mcuconf.h b/keyboards/ergodox_stm32/mcuconf.h deleted file mode 100644 index 0494526e5e..0000000000 --- a/keyboards/ergodox_stm32/mcuconf.h +++ /dev/null @@ -1,209 +0,0 @@ -/* - ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef _MCUCONF_H_ -#define _MCUCONF_H_ - -#define STM32F103_MCUCONF - -/* - * STM32F103 drivers configuration. - * The following settings override the default settings present in - * the various device driver implementation headers. - * Note that the settings for each driver only have effect if the whole - * driver is enabled in halconf.h. - * - * IRQ priorities: - * 15...0 Lowest...Highest. - * - * DMA priorities: - * 0...3 Lowest...Highest. - */ - -/* - * HAL driver system settings. - */ -#define STM32_NO_INIT FALSE -#define STM32_HSI_ENABLED TRUE -#define STM32_LSI_ENABLED FALSE -#define STM32_HSE_ENABLED TRUE -#define STM32_LSE_ENABLED FALSE -#define STM32_SW STM32_SW_PLL -#define STM32_PLLSRC STM32_PLLSRC_HSE -#define STM32_PLLXTPRE STM32_PLLXTPRE_DIV1 -#define STM32_PLLMUL_VALUE 9 -#define STM32_HPRE STM32_HPRE_DIV1 -#define STM32_PPRE1 STM32_PPRE1_DIV2 -#define STM32_PPRE2 STM32_PPRE2_DIV2 -#define STM32_ADCPRE STM32_ADCPRE_DIV4 -#define STM32_USB_CLOCK_REQUIRED TRUE -#define STM32_USBPRE STM32_USBPRE_DIV1P5 -#define STM32_MCOSEL STM32_MCOSEL_NOCLOCK -#define STM32_RTCSEL STM32_RTCSEL_HSEDIV -#define STM32_PVD_ENABLE FALSE -#define STM32_PLS STM32_PLS_LEV0 - -/* - * ADC driver system settings. - */ -#define STM32_ADC_USE_ADC1 FALSE -#define STM32_ADC_ADC1_DMA_PRIORITY 2 -#define STM32_ADC_ADC1_IRQ_PRIORITY 6 - -/* - * CAN driver system settings. - */ -#define STM32_CAN_USE_CAN1 FALSE -#define STM32_CAN_CAN1_IRQ_PRIORITY 11 - -/* - * EXT driver system settings. - */ -#define STM32_EXT_EXTI0_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI1_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI2_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI3_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI4_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI5_9_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI10_15_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI16_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI17_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI18_IRQ_PRIORITY 6 -#define STM32_EXT_EXTI19_IRQ_PRIORITY 6 - -/* - * GPT driver system settings. - */ -#define STM32_GPT_USE_TIM1 FALSE -#define STM32_GPT_USE_TIM2 FALSE -#define STM32_GPT_USE_TIM3 FALSE -#define STM32_GPT_USE_TIM4 FALSE -#define STM32_GPT_USE_TIM5 FALSE -#define STM32_GPT_USE_TIM8 FALSE -#define STM32_GPT_TIM1_IRQ_PRIORITY 7 -#define STM32_GPT_TIM2_IRQ_PRIORITY 7 -#define STM32_GPT_TIM3_IRQ_PRIORITY 7 -#define STM32_GPT_TIM4_IRQ_PRIORITY 7 -#define STM32_GPT_TIM5_IRQ_PRIORITY 7 -#define STM32_GPT_TIM8_IRQ_PRIORITY 7 - -/* - * I2C driver system settings. - */ -#define STM32_I2C_USE_I2C1 TRUE -#define STM32_I2C_USE_I2C2 FALSE -#define STM32_I2C_BUSY_TIMEOUT 50 -#define STM32_I2C_I2C1_IRQ_PRIORITY 5 -#define STM32_I2C_I2C2_IRQ_PRIORITY 5 -#define STM32_I2C_I2C1_DMA_PRIORITY 3 -#define STM32_I2C_I2C2_DMA_PRIORITY 3 -#define STM32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure") - -/* - * ICU driver system settings. - */ -#define STM32_ICU_USE_TIM1 FALSE -#define STM32_ICU_USE_TIM2 FALSE -#define STM32_ICU_USE_TIM3 FALSE -#define STM32_ICU_USE_TIM4 FALSE -#define STM32_ICU_USE_TIM5 FALSE -#define STM32_ICU_USE_TIM8 FALSE -#define STM32_ICU_TIM1_IRQ_PRIORITY 7 -#define STM32_ICU_TIM2_IRQ_PRIORITY 7 -#define STM32_ICU_TIM3_IRQ_PRIORITY 7 -#define STM32_ICU_TIM4_IRQ_PRIORITY 7 -#define STM32_ICU_TIM5_IRQ_PRIORITY 7 -#define STM32_ICU_TIM8_IRQ_PRIORITY 7 - -/* - * PWM driver system settings. - */ -#define STM32_PWM_USE_ADVANCED FALSE -#define STM32_PWM_USE_TIM1 FALSE -#define STM32_PWM_USE_TIM2 FALSE -#define STM32_PWM_USE_TIM3 FALSE -#define STM32_PWM_USE_TIM4 FALSE -#define STM32_PWM_USE_TIM5 FALSE -#define STM32_PWM_USE_TIM8 FALSE -#define STM32_PWM_TIM1_IRQ_PRIORITY 7 -#define STM32_PWM_TIM2_IRQ_PRIORITY 7 -#define STM32_PWM_TIM3_IRQ_PRIORITY 7 -#define STM32_PWM_TIM4_IRQ_PRIORITY 7 -#define STM32_PWM_TIM5_IRQ_PRIORITY 7 -#define STM32_PWM_TIM8_IRQ_PRIORITY 7 - -/* - * RTC driver system settings. - */ -#define STM32_RTC_IRQ_PRIORITY 15 - -/* - * SERIAL driver system settings. - */ -#define STM32_SERIAL_USE_USART1 FALSE -#define STM32_SERIAL_USE_USART2 FALSE -#define STM32_SERIAL_USE_USART3 FALSE -#define STM32_SERIAL_USE_UART4 FALSE -#define STM32_SERIAL_USE_UART5 FALSE -#define STM32_SERIAL_USART1_PRIORITY 12 -#define STM32_SERIAL_USART2_PRIORITY 12 -#define STM32_SERIAL_USART3_PRIORITY 12 -#define STM32_SERIAL_UART4_PRIORITY 12 -#define STM32_SERIAL_UART5_PRIORITY 12 - -/* - * SPI driver system settings. - */ -#define STM32_SPI_USE_SPI1 FALSE -#define STM32_SPI_USE_SPI2 FALSE -#define STM32_SPI_USE_SPI3 FALSE -#define STM32_SPI_SPI1_DMA_PRIORITY 1 -#define STM32_SPI_SPI2_DMA_PRIORITY 1 -#define STM32_SPI_SPI3_DMA_PRIORITY 1 -#define STM32_SPI_SPI1_IRQ_PRIORITY 10 -#define STM32_SPI_SPI2_IRQ_PRIORITY 10 -#define STM32_SPI_SPI3_IRQ_PRIORITY 10 -#define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure") - -/* - * ST driver system settings. - */ -#define STM32_ST_IRQ_PRIORITY 8 -#define STM32_ST_USE_TIMER 2 - -/* - * UART driver system settings. - */ -#define STM32_UART_USE_USART1 FALSE -#define STM32_UART_USE_USART2 FALSE -#define STM32_UART_USE_USART3 FALSE -#define STM32_UART_USART1_IRQ_PRIORITY 12 -#define STM32_UART_USART2_IRQ_PRIORITY 12 -#define STM32_UART_USART3_IRQ_PRIORITY 12 -#define STM32_UART_USART1_DMA_PRIORITY 0 -#define STM32_UART_USART2_DMA_PRIORITY 0 -#define STM32_UART_USART3_DMA_PRIORITY 0 -#define STM32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure") - -/* - * USB driver system settings. - */ -#define STM32_USB_USE_USB1 TRUE -#define STM32_USB_LOW_POWER_ON_SUSPEND FALSE -#define STM32_USB_USB1_HP_IRQ_PRIORITY 13 -#define STM32_USB_USB1_LP_IRQ_PRIORITY 14 - -#endif /* _MCUCONF_H_ */ diff --git a/keyboards/ergodox_stm32/readme.md b/keyboards/ergodox_stm32/readme.md deleted file mode 100644 index f8b9c4c553..0000000000 --- a/keyboards/ergodox_stm32/readme.md +++ /dev/null @@ -1,9 +0,0 @@ -# ergodox_stm32 - -* Keyboard Maintainer: [Codetector1374](https://github.com/Codetector1374) - -Make example for this keyboard (after setting up your build environment): - - make ergodox_stm32: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). diff --git a/keyboards/ergodox_stm32/rules.mk b/keyboards/ergodox_stm32/rules.mk deleted file mode 100644 index a4e9df8c6a..0000000000 --- a/keyboards/ergodox_stm32/rules.mk +++ /dev/null @@ -1,8 +0,0 @@ -# custom bootloader -MCU_LDSCRIPT = stm32f103_bootloader -BOARD = ST_NUCLEO64_F103RB - -CUSTOM_MATRIX = yes - -SRC += matrix.c -I2C_DRIVER_REQUIRED = yes diff --git a/keyboards/handwired/ergodox_stm32/board.h b/keyboards/handwired/ergodox_stm32/board.h new file mode 100644 index 0000000000..c1c37c0659 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/board.h @@ -0,0 +1,39 @@ +/* +Copyright 2021 QMK + +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 . +*/ + +#pragma once + +#include_next + +#ifdef STM32_LSECLK +#undef STM32_LSECLK +#endif // STM32_LSECLK +#define STM32_LSECLK 32768 + +#ifdef STM32_HSECLK +#undef STM32_HSECLK +#endif // STM32_HSECLK +#define STM32_HSECLK 8000000 + +#undef VAL_GPIOACRL +#define VAL_GPIOACRL 0x88888888 + +#undef VAL_GPIOAODR +#define VAL_GPIOAODR 0xFFFFFFFF + +#undef VAL_GPIOCCRH +#define VAL_GPIOCCRH 0x88888888 diff --git a/keyboards/handwired/ergodox_stm32/chconf.h b/keyboards/handwired/ergodox_stm32/chconf.h new file mode 100644 index 0000000000..bc3672f6f7 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/chconf.h @@ -0,0 +1,61 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/ergodox_stm32/chconf.h -r platforms/chibios/common/configs/chconf.h` + */ + +#pragma once + +#define CH_CFG_ST_TIMEDELTA 0 + +#define CH_CFG_TIME_QUANTUM 20 + +#define CH_CFG_USE_REGISTRY TRUE + +#define CH_CFG_USE_WAITEXIT TRUE + +#define CH_CFG_USE_CONDVARS TRUE + +#define CH_CFG_USE_MESSAGES TRUE + +#define CH_CFG_USE_MAILBOXES TRUE + +#define CH_CFG_USE_HEAP TRUE + +#define CH_CFG_USE_MEMPOOLS TRUE + +#define CH_CFG_USE_OBJ_FIFOS TRUE + +#define CH_CFG_USE_PIPES TRUE + +#define CH_CFG_USE_DYNAMIC TRUE + +#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE + +#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE + +#define CH_CFG_FACTORY_SEMAPHORES TRUE + +#define CH_CFG_FACTORY_MAILBOXES TRUE + +#define CH_CFG_FACTORY_OBJ_FIFOS TRUE + +#define CH_CFG_FACTORY_PIPES TRUE + +#include_next + diff --git a/keyboards/handwired/ergodox_stm32/config.h b/keyboards/handwired/ergodox_stm32/config.h new file mode 100644 index 0000000000..f4f81e30bd --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/config.h @@ -0,0 +1,31 @@ +/* +Copyright 2019 Yaotian Feng(Codetector) + +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 . +*/ +#pragma once + + +#define MATRIX_ROWS 14 +#define MATRIX_ROWS_PER_SIDE (MATRIX_ROWS / 2) +#define MATRIX_COLS 6 +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ + keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ +) + +// i2c_master driver config +#define I2C1_CLOCK_SPEED 400000 +#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 diff --git a/keyboards/handwired/ergodox_stm32/ergodox_stm32.c b/keyboards/handwired/ergodox_stm32/ergodox_stm32.c new file mode 100644 index 0000000000..99d51866f7 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/ergodox_stm32.c @@ -0,0 +1,74 @@ +#include "ergodox_stm32.h" +#include "i2c_master.h" + +extern inline void ergodox_board_led_1_on(void); +extern inline void ergodox_board_led_2_on(void); +extern inline void ergodox_board_led_3_on(void); +extern inline void ergodox_board_led_1_off(void); +extern inline void ergodox_board_led_2_off(void); +extern inline void ergodox_board_led_3_off(void); +extern inline void ergodox_led_all_off(void); + +volatile int mcp23017_status = 0x20; +uint8_t i2c_initializied = 0; + +void board_init(void) { + AFIO->MAPR |= AFIO_MAPR_SWJ_CFG_JTAGDISABLE; +} + +void bootloader_jump(void) { + // This board doesn't use the "standard" stm32duino bootloader, and is resident in memory at the base location. All we can do here is reset. + NVIC_SystemReset(); +} + +void matrix_init_kb(void) +{ + // Init LED Ports + palSetPadMode(GPIOA, 10, PAL_MODE_OUTPUT_PUSHPULL); // LED 1 + palSetPadMode(GPIOA, 9, PAL_MODE_OUTPUT_PUSHPULL); // LED 2 + palSetPadMode(GPIOA, 8, PAL_MODE_OUTPUT_PUSHPULL); // LED 3 + + ergodox_blink_all_leds(); + + matrix_init_user(); +} + +void ergodox_blink_all_leds(void) +{ + ergodox_led_all_off(); + // ergodox_led_all_set(LED_BRIGHTNESS_DEFAULT); + ergodox_board_led_1_on(); + wait_ms(50); + ergodox_board_led_2_on(); + wait_ms(50); + ergodox_board_led_3_on(); + wait_ms(50); + ergodox_board_led_1_off(); + wait_ms(50); + ergodox_board_led_2_off(); + wait_ms(50); + ergodox_board_led_3_off(); +} + +uint8_t init_mcp23017(void) { + if (!i2c_initializied) { + i2c_init(); + i2c_initializied = 1; + } + + uint8_t data[2]; + data[0] = 0x0; + data[1] = 0b00111111; + mcp23017_status = i2c_write_register(I2C_ADDR, I2C_IODIRA, data, 2, 50000); + if (mcp23017_status) goto out; + data[0] = 0xFFU; + mcp23017_status = i2c_write_register(I2C_ADDR, I2C_GPIOA, data, 1, 5000); + if (mcp23017_status) goto out; + mcp23017_status = i2c_write_register(I2C_ADDR, I2C_GPPUB, data+1, 1, 2); + if (mcp23017_status) goto out; + + out: + return mcp23017_status; + // i2c_read_register(I2C_ADDR, ); +} + diff --git a/keyboards/handwired/ergodox_stm32/ergodox_stm32.h b/keyboards/handwired/ergodox_stm32/ergodox_stm32.h new file mode 100644 index 0000000000..5a736ad818 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/ergodox_stm32.h @@ -0,0 +1,37 @@ +#pragma once + +#include "quantum.h" +#include "action_layer.h" +#include +#include +#include + +// #define I2C_ADDR 0b01000000 +#define I2C_ADDR 0b01000000 +#define I2C_IODIRA 0x0 +#define I2C_IODIRB 0x1 +#define I2C_GPIOA 0x12 +#define I2C_GPIOB 0x13 +#define I2C_OLATA 0x14 +#define I2C_OLATB 0x15 +#define I2C_GPPUA 0x0C +#define I2C_GPPUB 0x0D + +inline void ergodox_board_led_1_on(void) { palSetPad(GPIOA, 10); } +inline void ergodox_board_led_2_on(void) { palSetPad(GPIOA, 9); } +inline void ergodox_board_led_3_on(void) { palSetPad(GPIOA, 8); } +inline void ergodox_board_led_1_off(void) { palClearPad(GPIOA, 10); } +inline void ergodox_board_led_2_off(void) { palClearPad(GPIOA, 9); } +inline void ergodox_board_led_3_off(void) { palClearPad(GPIOA, 8); } +inline void ergodox_led_all_off(void) +{ + palClearPad(GPIOA, 10); + palClearPad(GPIOA, 9); + palClearPad(GPIOA, 8); +} + +extern volatile int mcp23017_status; + +uint8_t init_mcp23017(void); + +void ergodox_blink_all_leds(void); diff --git a/keyboards/handwired/ergodox_stm32/halconf.h b/keyboards/handwired/ergodox_stm32/halconf.h new file mode 100644 index 0000000000..71a1596c47 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/halconf.h @@ -0,0 +1,27 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/ergodox_stm32/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_I2C TRUE + +#include_next + diff --git a/keyboards/handwired/ergodox_stm32/keyboard.json b/keyboards/handwired/ergodox_stm32/keyboard.json new file mode 100644 index 0000000000..49c0a858d4 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/keyboard.json @@ -0,0 +1,214 @@ +{ + "keyboard_name": "ErgoDox STM32", + "manufacturer": "ErgoDox", + "url": "github.com/codetector1374", + "maintainer": "codetector1374", + "usb": { + "vid": "0xFEED", + "pid": "0x1308", + "device_version": "1.0.1" + }, + "features": { + "bootmagic": false, + "mousekey": false, + "extrakey": true, + "nkro": true, + "unicode": true + }, + "processor": "STM32F103", + "bootloader": "custom", + "community_layouts": ["ergodox"], + "layouts": { + "LAYOUT_ergodox": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5}, + {"matrix": [1, 0], "x": 1.5, "y": 0.375}, + {"matrix": [2, 0], "x": 2.5, "y": 0.125}, + {"matrix": [3, 0], "x": 3.5, "y": 0}, + {"matrix": [4, 0], "x": 4.5, "y": 0.125}, + {"matrix": [5, 0], "x": 5.5, "y": 0.25}, + {"matrix": [6, 0], "x": 6.5, "y": 0.25}, + + {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1.375}, + {"matrix": [2, 1], "x": 2.5, "y": 1.125}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [4, 1], "x": 4.5, "y": 1.125}, + {"matrix": [5, 1], "x": 5.5, "y": 1.25}, + {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5}, + + {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5}, + {"matrix": [1, 2], "x": 1.5, "y": 2.375}, + {"matrix": [2, 2], "x": 2.5, "y": 2.125}, + {"matrix": [3, 2], "x": 3.5, "y": 2}, + {"matrix": [4, 2], "x": 4.5, "y": 2.125}, + {"matrix": [5, 2], "x": 5.5, "y": 2.25}, + + {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5}, + {"matrix": [1, 3], "x": 1.5, "y": 3.375}, + {"matrix": [2, 3], "x": 2.5, "y": 3.125}, + {"matrix": [3, 3], "x": 3.5, "y": 3}, + {"matrix": [4, 3], "x": 4.5, "y": 3.125}, + {"matrix": [5, 3], "x": 5.5, "y": 3.25}, + {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5}, + {"matrix": [0, 4], "x": 0.5, "y": 4.375}, + {"matrix": [1, 4], "x": 1.5, "y": 4.375}, + {"matrix": [2, 4], "x": 2.5, "y": 4.125}, + {"matrix": [3, 4], "x": 3.5, "y": 4}, + {"matrix": [4, 4], "x": 4.5, "y": 4.125}, + + {"matrix": [5, 5], "x": 6, "y": 5}, + {"matrix": [6, 5], "x": 7, "y": 5}, + {"matrix": [4, 5], "x": 7, "y": 6}, + + {"matrix": [3, 5], "x": 5, "y": 6, "h": 2}, + {"matrix": [2, 5], "x": 6, "y": 6, "h": 2}, + {"matrix": [1, 5], "x": 7, "y": 7}, + + {"matrix": [7, 0], "x": 9.5, "y": 0.25}, + {"matrix": [8, 0], "x": 10.5, "y": 0.25}, + {"matrix": [9, 0], "x": 11.5, "y": 0.125}, + {"matrix": [10, 0], "x": 12.5, "y": 0}, + {"matrix": [11, 0], "x": 13.5, "y": 0.125}, + {"matrix": [12, 0], "x": 14.5, "y": 0.375}, + {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5}, + + {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5}, + {"matrix": [8, 1], "x": 10.5, "y": 1.25}, + {"matrix": [9, 1], "x": 11.5, "y": 1.125}, + {"matrix": [10, 1], "x": 12.5, "y": 1}, + {"matrix": [11, 1], "x": 13.5, "y": 1.125}, + {"matrix": [12, 1], "x": 14.5, "y": 1.375}, + {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5}, + + {"matrix": [8, 2], "x": 10.5, "y": 2.25}, + {"matrix": [9, 2], "x": 11.5, "y": 2.125}, + {"matrix": [10, 2], "x": 12.5, "y": 2}, + {"matrix": [11, 2], "x": 13.5, "y": 2.125}, + {"matrix": [12, 2], "x": 14.5, "y": 2.375}, + {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5}, + + {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5}, + {"matrix": [8, 3], "x": 10.5, "y": 3.25}, + {"matrix": [9, 3], "x": 11.5, "y": 3.125}, + {"matrix": [10, 3], "x": 12.5, "y": 3}, + {"matrix": [11, 3], "x": 13.5, "y": 3.125}, + {"matrix": [12, 3], "x": 14.5, "y": 3.375}, + {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5}, + + {"matrix": [9, 4], "x": 11.5, "y": 4.125}, + {"matrix": [10, 4], "x": 12.5, "y": 4}, + {"matrix": [11, 4], "x": 13.5, "y": 4.125}, + {"matrix": [12, 4], "x": 14.5, "y": 4.375}, + {"matrix": [13, 4], "x": 15.5, "y": 4.375}, + + {"matrix": [7, 5], "x": 9, "y": 5}, + {"matrix": [8, 5], "x": 10, "y": 5}, + + {"matrix": [9, 5], "x": 9, "y": 6}, + + {"matrix": [12, 5], "x": 9, "y": 7}, + + {"matrix": [11, 5], "x": 10, "y": 6, "h": 2}, + {"matrix": [10, 5], "x": 11, "y": 6, "h": 2} + ] + }, + "LAYOUT_ergodox_pretty": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.375, "w": 1.5}, + {"matrix": [1, 0], "x": 1.5, "y": 0.375}, + {"matrix": [2, 0], "x": 2.5, "y": 0.125}, + {"matrix": [3, 0], "x": 3.5, "y": 0}, + {"matrix": [4, 0], "x": 4.5, "y": 0.125}, + {"matrix": [5, 0], "x": 5.5, "y": 0.25}, + {"matrix": [6, 0], "x": 6.5, "y": 0.25}, + + {"matrix": [7, 0], "x": 9.5, "y": 0.25}, + {"matrix": [8, 0], "x": 10.5, "y": 0.25}, + {"matrix": [9, 0], "x": 11.5, "y": 0.125}, + {"matrix": [10, 0], "x": 12.5, "y": 0}, + {"matrix": [11, 0], "x": 13.5, "y": 0.125}, + {"matrix": [12, 0], "x": 14.5, "y": 0.375}, + {"matrix": [13, 0], "x": 15.5, "y": 0.375, "w": 1.5}, + + {"matrix": [0, 1], "x": 0, "y": 1.375, "w": 1.5}, + {"matrix": [1, 1], "x": 1.5, "y": 1.375}, + {"matrix": [2, 1], "x": 2.5, "y": 1.125}, + {"matrix": [3, 1], "x": 3.5, "y": 1}, + {"matrix": [4, 1], "x": 4.5, "y": 1.125}, + {"matrix": [5, 1], "x": 5.5, "y": 1.25}, + {"matrix": [6, 1], "x": 6.5, "y": 1.25, "h": 1.5}, + + {"matrix": [7, 1], "x": 9.5, "y": 1.25, "h": 1.5}, + {"matrix": [8, 1], "x": 10.5, "y": 1.25}, + {"matrix": [9, 1], "x": 11.5, "y": 1.125}, + {"matrix": [10, 1], "x": 12.5, "y": 1}, + {"matrix": [11, 1], "x": 13.5, "y": 1.125}, + {"matrix": [12, 1], "x": 14.5, "y": 1.375}, + {"matrix": [13, 1], "x": 15.5, "y": 1.375, "w": 1.5}, + + {"matrix": [0, 2], "x": 0, "y": 2.375, "w": 1.5}, + {"matrix": [1, 2], "x": 1.5, "y": 2.375}, + {"matrix": [2, 2], "x": 2.5, "y": 2.125}, + {"matrix": [3, 2], "x": 3.5, "y": 2}, + {"matrix": [4, 2], "x": 4.5, "y": 2.125}, + {"matrix": [5, 2], "x": 5.5, "y": 2.25}, + + {"matrix": [8, 2], "x": 10.5, "y": 2.25}, + {"matrix": [9, 2], "x": 11.5, "y": 2.125}, + {"matrix": [10, 2], "x": 12.5, "y": 2}, + {"matrix": [11, 2], "x": 13.5, "y": 2.125}, + {"matrix": [12, 2], "x": 14.5, "y": 2.375}, + {"matrix": [13, 2], "x": 15.5, "y": 2.375, "w": 1.5}, + + {"matrix": [0, 3], "x": 0, "y": 3.375, "w": 1.5}, + {"matrix": [1, 3], "x": 1.5, "y": 3.375}, + {"matrix": [2, 3], "x": 2.5, "y": 3.125}, + {"matrix": [3, 3], "x": 3.5, "y": 3}, + {"matrix": [4, 3], "x": 4.5, "y": 3.125}, + {"matrix": [5, 3], "x": 5.5, "y": 3.25}, + {"matrix": [6, 3], "x": 6.5, "y": 2.75, "h": 1.5}, + + {"matrix": [7, 3], "x": 9.5, "y": 2.75, "h": 1.5}, + {"matrix": [8, 3], "x": 10.5, "y": 3.25}, + {"matrix": [9, 3], "x": 11.5, "y": 3.125}, + {"matrix": [10, 3], "x": 12.5, "y": 3}, + {"matrix": [11, 3], "x": 13.5, "y": 3.125}, + {"matrix": [12, 3], "x": 14.5, "y": 3.375}, + {"matrix": [13, 3], "x": 15.5, "y": 3.375, "w": 1.5}, + + {"matrix": [0, 4], "x": 0.5, "y": 4.375}, + {"matrix": [1, 4], "x": 1.5, "y": 4.375}, + {"matrix": [2, 4], "x": 2.5, "y": 4.125}, + {"matrix": [3, 4], "x": 3.5, "y": 4}, + {"matrix": [4, 4], "x": 4.5, "y": 4.125}, + + {"matrix": [9, 4], "x": 11.5, "y": 4.125}, + {"matrix": [10, 4], "x": 12.5, "y": 4}, + {"matrix": [11, 4], "x": 13.5, "y": 4.125}, + {"matrix": [12, 4], "x": 14.5, "y": 4.375}, + {"matrix": [13, 4], "x": 15.5, "y": 4.375}, + + {"matrix": [5, 5], "x": 6, "y": 5}, + {"matrix": [6, 5], "x": 7, "y": 5}, + + {"matrix": [7, 5], "x": 9, "y": 5}, + {"matrix": [8, 5], "x": 10, "y": 5}, + + {"matrix": [4, 5], "x": 7, "y": 6}, + + {"matrix": [9, 5], "x": 9, "y": 6}, + + {"matrix": [3, 5], "x": 5, "y": 6, "h": 2}, + {"matrix": [2, 5], "x": 6, "y": 6, "h": 2}, + + {"matrix": [1, 5], "x": 7, "y": 7}, + + {"matrix": [12, 5], "x": 9, "y": 7}, + + {"matrix": [11, 5], "x": 10, "y": 6, "h": 2}, + {"matrix": [10, 5], "x": 11, "y": 6, "h": 2} + ] + } + } +} diff --git a/keyboards/handwired/ergodox_stm32/keymaps/default/keymap.c b/keyboards/handwired/ergodox_stm32/keymaps/default/keymap.c new file mode 100644 index 0000000000..001d74b18d --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/keymaps/default/keymap.c @@ -0,0 +1,52 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ergodox(KC_GRAVE,KC_1,KC_2,KC_3,KC_4,KC_5,KC_MINUS,KC_TAB,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_LPRN,KC_ESCAPE,KC_A,KC_S,KC_D,KC_F,KC_G,KC_LSFT,KC_Z,KC_X,KC_C,KC_V,KC_B,KC_RPRN,KC_LCTL,KC_LGUI,KC_LALT,KC_LGUI,KC_LALT,KC_INSERT,MO(1),KC_HOME,KC_SPACE,KC_DELETE,KC_END,KC_EQUAL,KC_6,KC_7,KC_8,KC_9,KC_0,KC_BSPC,KC_LBRC,KC_Y,KC_U,KC_I,KC_O,KC_P,KC_BSLS,KC_H,KC_J,KC_K,KC_L,KC_SCLN,KC_QUOTE,KC_RBRC,KC_N,KC_M,KC_COMMA,KC_DOT,KC_SLASH,KC_RSFT,KC_LEFT,KC_DOWN,KC_UP,KC_RIGHT,KC_RCTL,MO(1),TG(2),KC_PGUP,KC_PGDN,KC_BSPC,KC_ENTER), + + [1] = LAYOUT_ergodox(KC_TILD,KC_F1,KC_F2,KC_F3,KC_F4,KC_F5,KC_F6,KC_GRAVE,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_CAPS,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_MEDIA_PLAY_PAUSE,KC_TRANSPARENT,KC_TRANSPARENT,KC_F7,KC_F8,KC_F9,KC_F10,KC_F11,KC_F12,KC_BSPC,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,LCTL(LGUI(KC_Q)),KC_MEDIA_PREV_TRACK,KC_MEDIA_NEXT_TRACK,KC_AUDIO_VOL_DOWN,KC_AUDIO_VOL_UP), + + [2] = LAYOUT_ergodox(KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_NUM,KC_KP_SLASH,KC_KP_ASTERISK,KC_KP_MINUS,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_KP_7,KC_KP_8,KC_KP_9,KC_KP_PLUS,KC_TRANSPARENT,KC_TRANSPARENT,KC_KP_4,KC_KP_5,KC_KP_6,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_KP_1,KC_KP_2,KC_KP_3,KC_ENTER,KC_TRANSPARENT,KC_KP_DOT,KC_KP_0,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT,KC_TRANSPARENT), + +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + + uint8_t layer = get_highest_layer(state); + + ergodox_led_all_off(); + ergodox_board_led_1_off(); + ergodox_board_led_2_off(); + ergodox_board_led_3_off(); + switch (layer) { + case 1: + ergodox_board_led_1_on(); + break; + case 2: + ergodox_board_led_2_on(); + break; + case 3: + ergodox_board_led_2_on(); + break; + case 4: + ergodox_board_led_1_on(); + ergodox_board_led_2_on(); + break; + case 5: + ergodox_board_led_1_on(); + ergodox_board_led_3_on(); + break; + case 6: + ergodox_board_led_2_on(); + ergodox_board_led_3_on(); + break; + case 7: + ergodox_board_led_1_on(); + ergodox_board_led_2_on(); + ergodox_board_led_3_on(); + break; + default: + break; + } + return state; + +}; diff --git a/keyboards/handwired/ergodox_stm32/ld/stm32f103_bootloader.ld b/keyboards/handwired/ergodox_stm32/ld/stm32f103_bootloader.ld new file mode 100644 index 0000000000..77100fce38 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/ld/stm32f103_bootloader.ld @@ -0,0 +1,85 @@ +/* + ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +/* + * ST32F103xB memory setup for use with the originaljm60 bootloader. + */ +MEMORY +{ + flash0 : org = 0x08000000, len = 64k /* TODO */ + flash1 : org = 0x00000000, len = 0 + flash2 : org = 0x00000000, len = 0 + flash3 : org = 0x00000000, len = 0 + flash4 : org = 0x00000000, len = 0 + flash5 : org = 0x00000000, len = 0 + flash6 : org = 0x00000000, len = 0 + flash7 : org = 0x00000000, len = 0 + ram0 : org = 0x20000000, len = 20k + ram1 : org = 0x00000000, len = 0 + ram2 : org = 0x00000000, len = 0 + ram3 : org = 0x00000000, len = 0 + ram4 : org = 0x00000000, len = 0 + ram5 : org = 0x00000000, len = 0 + ram6 : org = 0x00000000, len = 0 + ram7 : org = 0x00000000, len = 0 +} + +/* For each data/text section two region are defined, a virtual region + and a load region (_LMA suffix).*/ + +/* Flash region to be used for exception vectors.*/ +REGION_ALIAS("VECTORS_FLASH", flash0); +REGION_ALIAS("VECTORS_FLASH_LMA", flash0); + +/* Flash region to be used for constructors and destructors.*/ +REGION_ALIAS("XTORS_FLASH", flash0); +REGION_ALIAS("XTORS_FLASH_LMA", flash0); + +/* Flash region to be used for code text.*/ +REGION_ALIAS("TEXT_FLASH", flash0); +REGION_ALIAS("TEXT_FLASH_LMA", flash0); + +/* Flash region to be used for read only data.*/ +REGION_ALIAS("RODATA_FLASH", flash0); +REGION_ALIAS("RODATA_FLASH_LMA", flash0); + +/* Flash region to be used for various.*/ +REGION_ALIAS("VARIOUS_FLASH", flash0); +REGION_ALIAS("VARIOUS_FLASH_LMA", flash0); + +/* Flash region to be used for RAM(n) initialization data.*/ +REGION_ALIAS("RAM_INIT_FLASH_LMA", flash0); + +/* RAM region to be used for Main stack. This stack accommodates the processing + of all exceptions and interrupts.*/ +REGION_ALIAS("MAIN_STACK_RAM", ram0); + +/* RAM region to be used for the process stack. This is the stack used by + the main() function.*/ +REGION_ALIAS("PROCESS_STACK_RAM", ram0); + +/* RAM region to be used for data segment.*/ +REGION_ALIAS("DATA_RAM", ram0); +REGION_ALIAS("DATA_RAM_LMA", flash0); + +/* RAM region to be used for BSS segment.*/ +REGION_ALIAS("BSS_RAM", ram0); + +/* RAM region to be used for the default heap.*/ +REGION_ALIAS("HEAP_RAM", ram0); + +/* Generic rules inclusion.*/ +INCLUDE rules.ld diff --git a/keyboards/handwired/ergodox_stm32/matrix.c b/keyboards/handwired/ergodox_stm32/matrix.c new file mode 100644 index 0000000000..6acd2dda22 --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/matrix.c @@ -0,0 +1,182 @@ +#include "matrix.h" +#include +#include "timer.h" +#include "wait.h" +#include "debug.h" +#include "i2c_master.h" +#include "ergodox_stm32.h" + +#ifndef DEBOUNCE +#define DEBOUNCE 10 +#endif + +static uint8_t mcp23017_reset_loop = 0; + +volatile matrix_row_t matrix[MATRIX_ROWS]; +volatile matrix_row_t raw_matrix[MATRIX_ROWS]; +volatile uint8_t debounce_matrix[MATRIX_ROWS * MATRIX_COLS]; + +static matrix_row_t read_cols(uint8_t row); + +static void init_cols(void); + +static void unselect_rows(void); + +static void select_row(uint8_t row); + +static void init_rows(void); + +__attribute__((weak)) void matrix_init_user(void) {} + +__attribute__((weak)) void matrix_scan_user(void) {} + +__attribute__((weak)) void matrix_init_kb(void) { + matrix_init_user(); +} + +__attribute__((weak)) void matrix_scan_kb(void) { + matrix_scan_user(); +} + +void matrix_init(void) { + mcp23017_status = init_mcp23017(); + (void) mcp23017_reset_loop; + init_rows(); + unselect_rows(); + init_cols(); + + + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + matrix[i] = 0; + raw_matrix[i] = 0; + for (uint8_t j = 0; j < MATRIX_COLS; ++j) { + debounce_matrix[i * MATRIX_COLS + j] = 0; + } + } + matrix_init_kb(); +} + +void matrix_power_up(void) { + mcp23017_status = init_mcp23017(); + + init_rows(); + unselect_rows(); + init_cols(); + + for (uint8_t i = 0; i < MATRIX_ROWS; i++) { + matrix[i] = 0; + } +} + +matrix_row_t debounce_mask(matrix_row_t rawcols, uint8_t row) { + matrix_row_t result = 0; + matrix_row_t change = rawcols ^raw_matrix[row]; + raw_matrix[row] = rawcols; + for (uint8_t i = 0; i < MATRIX_COLS; ++i) { + if (debounce_matrix[row * MATRIX_COLS + i]) { + --debounce_matrix[row * MATRIX_COLS + i]; + } else { + result |= (1 << i); + } + if (change & (1 << i)) { + debounce_matrix[row * MATRIX_COLS + i] = DEBOUNCE; + } + } + return result; +} + +matrix_row_t debounce_read_cols(uint8_t row) { + // Read the row without debouncing filtering and store it for later usage. + matrix_row_t cols = read_cols(row); + // Get the Debounce mask. + matrix_row_t mask = debounce_mask(cols, row); + // debounce the row and return the result. + return (cols & mask) | (matrix[row] & ~mask);; +} + +uint8_t matrix_scan(void) { + if (mcp23017_status) { + if (++mcp23017_reset_loop == 0) { + mcp23017_status = init_mcp23017(); + if (!mcp23017_status) { + ergodox_blink_all_leds(); + } + } + } + for (uint8_t i = 0; i < MATRIX_ROWS_PER_SIDE; i++) { + select_row(i); + select_row(i + MATRIX_ROWS_PER_SIDE); + + matrix[i] = debounce_read_cols(i); + matrix[i + MATRIX_ROWS_PER_SIDE] = debounce_read_cols(i + MATRIX_ROWS_PER_SIDE); + + unselect_rows(); + } + matrix_scan_kb(); + return 0; +} + +inline +bool matrix_is_on(uint8_t row, uint8_t col) { + return (matrix[row] & (1 << col)); +} + +inline +matrix_row_t matrix_get_row(uint8_t row) { + return matrix[row]; +} + +void matrix_print(void) { +} + +static matrix_row_t read_cols(uint8_t row) { + if (row < MATRIX_ROWS_PER_SIDE) { + uint8_t data = 0xFF; + if (!mcp23017_status) { + uint8_t regAddr = I2C_GPIOB; + mcp23017_status = i2c_read_register(I2C_ADDR, regAddr, &data, 1, 10); + } + if (mcp23017_status) { + return 0; + } + return (~data) & 0x3F; + } else { + uint8_t data_p = (GPIOB -> IDR); + uint8_t data = data_p; + return ((~data) & 0x3f); + } +} + +static void init_cols(void) { + palSetPadMode(GPIOB, 0, PAL_MODE_INPUT_PULLUP); + palSetPadMode(GPIOB, 1, PAL_MODE_INPUT_PULLUP); + palSetPadMode(GPIOB, 2, PAL_MODE_INPUT_PULLUP); + palSetPadMode(GPIOB, 3, PAL_MODE_INPUT_PULLUP); + palSetPadMode(GPIOB, 4, PAL_MODE_INPUT_PULLUP); + palSetPadMode(GPIOB, 5, PAL_MODE_INPUT_PULLUP); +} + +static void init_rows(void) { + palSetPadMode(GPIOB, 8, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 9, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 10, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 11, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 12, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 13, PAL_MODE_OUTPUT_PUSHPULL); + palSetPadMode(GPIOB, 14, PAL_MODE_OUTPUT_PUSHPULL); +} + +static void unselect_rows(void) { + GPIOB->BSRR = 0b1111111 << 8; +} + +static void select_row(uint8_t row) { + if (row < MATRIX_ROWS_PER_SIDE) { + if (!mcp23017_status) { + uint8_t data = (0xFF & ~(1 << row)); + mcp23017_status = i2c_write_register(I2C_ADDR, I2C_GPIOA, &data, 1, 10); + } + } else { + GPIOB->BRR = 0x1 << (row+1); + } +} diff --git a/keyboards/handwired/ergodox_stm32/mcuconf.h b/keyboards/handwired/ergodox_stm32/mcuconf.h new file mode 100644 index 0000000000..0494526e5e --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/mcuconf.h @@ -0,0 +1,209 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#ifndef _MCUCONF_H_ +#define _MCUCONF_H_ + +#define STM32F103_MCUCONF + +/* + * STM32F103 drivers configuration. + * The following settings override the default settings present in + * the various device driver implementation headers. + * Note that the settings for each driver only have effect if the whole + * driver is enabled in halconf.h. + * + * IRQ priorities: + * 15...0 Lowest...Highest. + * + * DMA priorities: + * 0...3 Lowest...Highest. + */ + +/* + * HAL driver system settings. + */ +#define STM32_NO_INIT FALSE +#define STM32_HSI_ENABLED TRUE +#define STM32_LSI_ENABLED FALSE +#define STM32_HSE_ENABLED TRUE +#define STM32_LSE_ENABLED FALSE +#define STM32_SW STM32_SW_PLL +#define STM32_PLLSRC STM32_PLLSRC_HSE +#define STM32_PLLXTPRE STM32_PLLXTPRE_DIV1 +#define STM32_PLLMUL_VALUE 9 +#define STM32_HPRE STM32_HPRE_DIV1 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE2_DIV2 +#define STM32_ADCPRE STM32_ADCPRE_DIV4 +#define STM32_USB_CLOCK_REQUIRED TRUE +#define STM32_USBPRE STM32_USBPRE_DIV1P5 +#define STM32_MCOSEL STM32_MCOSEL_NOCLOCK +#define STM32_RTCSEL STM32_RTCSEL_HSEDIV +#define STM32_PVD_ENABLE FALSE +#define STM32_PLS STM32_PLS_LEV0 + +/* + * ADC driver system settings. + */ +#define STM32_ADC_USE_ADC1 FALSE +#define STM32_ADC_ADC1_DMA_PRIORITY 2 +#define STM32_ADC_ADC1_IRQ_PRIORITY 6 + +/* + * CAN driver system settings. + */ +#define STM32_CAN_USE_CAN1 FALSE +#define STM32_CAN_CAN1_IRQ_PRIORITY 11 + +/* + * EXT driver system settings. + */ +#define STM32_EXT_EXTI0_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI1_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI2_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI3_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI4_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI5_9_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI10_15_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI16_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI17_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI18_IRQ_PRIORITY 6 +#define STM32_EXT_EXTI19_IRQ_PRIORITY 6 + +/* + * GPT driver system settings. + */ +#define STM32_GPT_USE_TIM1 FALSE +#define STM32_GPT_USE_TIM2 FALSE +#define STM32_GPT_USE_TIM3 FALSE +#define STM32_GPT_USE_TIM4 FALSE +#define STM32_GPT_USE_TIM5 FALSE +#define STM32_GPT_USE_TIM8 FALSE +#define STM32_GPT_TIM1_IRQ_PRIORITY 7 +#define STM32_GPT_TIM2_IRQ_PRIORITY 7 +#define STM32_GPT_TIM3_IRQ_PRIORITY 7 +#define STM32_GPT_TIM4_IRQ_PRIORITY 7 +#define STM32_GPT_TIM5_IRQ_PRIORITY 7 +#define STM32_GPT_TIM8_IRQ_PRIORITY 7 + +/* + * I2C driver system settings. + */ +#define STM32_I2C_USE_I2C1 TRUE +#define STM32_I2C_USE_I2C2 FALSE +#define STM32_I2C_BUSY_TIMEOUT 50 +#define STM32_I2C_I2C1_IRQ_PRIORITY 5 +#define STM32_I2C_I2C2_IRQ_PRIORITY 5 +#define STM32_I2C_I2C1_DMA_PRIORITY 3 +#define STM32_I2C_I2C2_DMA_PRIORITY 3 +#define STM32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure") + +/* + * ICU driver system settings. + */ +#define STM32_ICU_USE_TIM1 FALSE +#define STM32_ICU_USE_TIM2 FALSE +#define STM32_ICU_USE_TIM3 FALSE +#define STM32_ICU_USE_TIM4 FALSE +#define STM32_ICU_USE_TIM5 FALSE +#define STM32_ICU_USE_TIM8 FALSE +#define STM32_ICU_TIM1_IRQ_PRIORITY 7 +#define STM32_ICU_TIM2_IRQ_PRIORITY 7 +#define STM32_ICU_TIM3_IRQ_PRIORITY 7 +#define STM32_ICU_TIM4_IRQ_PRIORITY 7 +#define STM32_ICU_TIM5_IRQ_PRIORITY 7 +#define STM32_ICU_TIM8_IRQ_PRIORITY 7 + +/* + * PWM driver system settings. + */ +#define STM32_PWM_USE_ADVANCED FALSE +#define STM32_PWM_USE_TIM1 FALSE +#define STM32_PWM_USE_TIM2 FALSE +#define STM32_PWM_USE_TIM3 FALSE +#define STM32_PWM_USE_TIM4 FALSE +#define STM32_PWM_USE_TIM5 FALSE +#define STM32_PWM_USE_TIM8 FALSE +#define STM32_PWM_TIM1_IRQ_PRIORITY 7 +#define STM32_PWM_TIM2_IRQ_PRIORITY 7 +#define STM32_PWM_TIM3_IRQ_PRIORITY 7 +#define STM32_PWM_TIM4_IRQ_PRIORITY 7 +#define STM32_PWM_TIM5_IRQ_PRIORITY 7 +#define STM32_PWM_TIM8_IRQ_PRIORITY 7 + +/* + * RTC driver system settings. + */ +#define STM32_RTC_IRQ_PRIORITY 15 + +/* + * SERIAL driver system settings. + */ +#define STM32_SERIAL_USE_USART1 FALSE +#define STM32_SERIAL_USE_USART2 FALSE +#define STM32_SERIAL_USE_USART3 FALSE +#define STM32_SERIAL_USE_UART4 FALSE +#define STM32_SERIAL_USE_UART5 FALSE +#define STM32_SERIAL_USART1_PRIORITY 12 +#define STM32_SERIAL_USART2_PRIORITY 12 +#define STM32_SERIAL_USART3_PRIORITY 12 +#define STM32_SERIAL_UART4_PRIORITY 12 +#define STM32_SERIAL_UART5_PRIORITY 12 + +/* + * SPI driver system settings. + */ +#define STM32_SPI_USE_SPI1 FALSE +#define STM32_SPI_USE_SPI2 FALSE +#define STM32_SPI_USE_SPI3 FALSE +#define STM32_SPI_SPI1_DMA_PRIORITY 1 +#define STM32_SPI_SPI2_DMA_PRIORITY 1 +#define STM32_SPI_SPI3_DMA_PRIORITY 1 +#define STM32_SPI_SPI1_IRQ_PRIORITY 10 +#define STM32_SPI_SPI2_IRQ_PRIORITY 10 +#define STM32_SPI_SPI3_IRQ_PRIORITY 10 +#define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure") + +/* + * ST driver system settings. + */ +#define STM32_ST_IRQ_PRIORITY 8 +#define STM32_ST_USE_TIMER 2 + +/* + * UART driver system settings. + */ +#define STM32_UART_USE_USART1 FALSE +#define STM32_UART_USE_USART2 FALSE +#define STM32_UART_USE_USART3 FALSE +#define STM32_UART_USART1_IRQ_PRIORITY 12 +#define STM32_UART_USART2_IRQ_PRIORITY 12 +#define STM32_UART_USART3_IRQ_PRIORITY 12 +#define STM32_UART_USART1_DMA_PRIORITY 0 +#define STM32_UART_USART2_DMA_PRIORITY 0 +#define STM32_UART_USART3_DMA_PRIORITY 0 +#define STM32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure") + +/* + * USB driver system settings. + */ +#define STM32_USB_USE_USB1 TRUE +#define STM32_USB_LOW_POWER_ON_SUSPEND FALSE +#define STM32_USB_USB1_HP_IRQ_PRIORITY 13 +#define STM32_USB_USB1_LP_IRQ_PRIORITY 14 + +#endif /* _MCUCONF_H_ */ diff --git a/keyboards/handwired/ergodox_stm32/readme.md b/keyboards/handwired/ergodox_stm32/readme.md new file mode 100644 index 0000000000..84accbb5fe --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/readme.md @@ -0,0 +1,9 @@ +# ergodox_stm32 + +* Keyboard Maintainer: [Codetector1374](https://github.com/Codetector1374) + +Make example for this keyboard (after setting up your build environment): + + make handwired/ergodox_stm32: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). diff --git a/keyboards/handwired/ergodox_stm32/rules.mk b/keyboards/handwired/ergodox_stm32/rules.mk new file mode 100644 index 0000000000..a4e9df8c6a --- /dev/null +++ b/keyboards/handwired/ergodox_stm32/rules.mk @@ -0,0 +1,8 @@ +# custom bootloader +MCU_LDSCRIPT = stm32f103_bootloader +BOARD = ST_NUCLEO64_F103RB + +CUSTOM_MATRIX = yes + +SRC += matrix.c +I2C_DRIVER_REQUIRED = yes -- cgit v1.2.3 From 8400fad3d8822a9499e72ea0752e59642d9f6ac3 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 13 Feb 2025 07:03:55 +0000 Subject: Remove readme dummy content (#24912) --- keyboards/al1/readme.md | 2 -- keyboards/alf/dc60/readme.md | 2 -- keyboards/biacco42/meishi2/readme.md | 3 +-- keyboards/bpiphany/unloved_bastard/readme.md | 4 ---- keyboards/cool836a/readme.md | 2 +- keyboards/deltapad/readme.md | 5 ----- keyboards/duck/jetfire/readme.md | 2 -- keyboards/ericrlau/numdiscipline/readme.md | 1 - keyboards/handwired/fc200rt_qmk/readme.md | 1 - keyboards/handwired/novem/readme.md | 2 -- keyboards/hineybush/h75_singa/readme.md | 2 -- keyboards/kakunpc/business_card/readme.md | 8 +------- keyboards/keebio/ergodicity/readme.md | 4 ---- keyboards/kira/kira75/readme.md | 2 -- keyboards/kprepublic/bm16a/v1/readme.md | 1 - keyboards/kprepublic/bm16s/readme.md | 1 - keyboards/marksard/treadstone32/readme.md | 4 +--- keyboards/marksard/treadstone48/readme.md | 4 +--- keyboards/masterworks/classy_tkl/readme.md | 2 -- keyboards/mb44/readme.md | 2 -- keyboards/mechlovin/delphine/readme.md | 2 -- keyboards/mechwild/mokulua/readme.md | 2 -- keyboards/meme/readme.md | 2 -- keyboards/mint60/readme.md | 3 --- keyboards/pegasus/readme.md | 2 -- keyboards/tgr/tris/readme.md | 2 -- keyboards/x16/readme.md | 1 - 27 files changed, 5 insertions(+), 63 deletions(-) (limited to 'keyboards') diff --git a/keyboards/al1/readme.md b/keyboards/al1/readme.md index 3531e2fdc6..4dcf83f05f 100644 --- a/keyboards/al1/readme.md +++ b/keyboards/al1/readme.md @@ -1,7 +1,5 @@ # TriangleLabs AL1 -![AL1](imgur.com image replace me!) - * Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin), [Olivia](https://github.com/olivia) * Hardware Supported: AL1 PCB * Hardware Availability: [GroupBuy](https://geekhack.org/index.php?topic=93258.0) diff --git a/keyboards/alf/dc60/readme.md b/keyboards/alf/dc60/readme.md index d8e20a8f4f..628878e8de 100644 --- a/keyboards/alf/dc60/readme.md +++ b/keyboards/alf/dc60/readme.md @@ -1,7 +1,5 @@ # dc60 -![dc60](imgur.com image replace me!) - A 60% PCB sold with the Alf DC60. Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin) diff --git a/keyboards/biacco42/meishi2/readme.md b/keyboards/biacco42/meishi2/readme.md index 97c5465f86..b190ff38ce 100644 --- a/keyboards/biacco42/meishi2/readme.md +++ b/keyboards/biacco42/meishi2/readme.md @@ -5,8 +5,7 @@ meishi2 - The better micro macro keyboard Keyboard Maintainer: [Biacco42](https://github.com/Biacco42) -Hardware Supported: The PCBs, controllers supported -Hardware Availability: [links to where you can find this hardware](https://github.com/Biacco42/meishi2) +Hardware Availability: https://github.com/Biacco42/meishi2 Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/bpiphany/unloved_bastard/readme.md b/keyboards/bpiphany/unloved_bastard/readme.md index 9909d5af3f..b11a9bfa77 100644 --- a/keyboards/bpiphany/unloved_bastard/readme.md +++ b/keyboards/bpiphany/unloved_bastard/readme.md @@ -1,9 +1,5 @@ # unloved_bastard -![unloved_bastard](imgur.com image replace me!) - -A short description of the keyboard/project - Keyboard Maintainer: [Alexander Fougner](https://github.com/fougner) Hardware Supported: CoolerMaster Masterkeys S PBT (Not the Pro versions with backlighting etc) Hardware Availability: Pretty much anywhere diff --git a/keyboards/cool836a/readme.md b/keyboards/cool836a/readme.md index dd3ace3cbc..9473b7136a 100644 --- a/keyboards/cool836a/readme.md +++ b/keyboards/cool836a/readme.md @@ -28,7 +28,7 @@ git clone のあと、 ----------------- ## English -- [Here](https://github.com/telzo2000/cool836A) are a full description of this project and build guide by the great Designer: [m.ki](imgur.com image replace me!) +- [Here](https://github.com/telzo2000/cool836A) are a full description of this project and build guide by the great Designer: m.ki - Each virsions(A, B+, C+) of cool836A has the same circuit and that means you can install this firmware on any of them. - However, this repository is currently(Jan 7, 2021) tested on ver.B+ (RED version) only. Feel free to contact [ME](https://github.com/ketcha-k) for any problems. diff --git a/keyboards/deltapad/readme.md b/keyboards/deltapad/readme.md index 858f99b436..f5dae4d9b0 100644 --- a/keyboards/deltapad/readme.md +++ b/keyboards/deltapad/readme.md @@ -1,15 +1,10 @@ # deltapad - - -*A short description of the keyboard/project* - A 4x4 keypad * Keyboard Maintainer: [Richard Snijder](https://github.com/rich239) * Hardware Supported: Atmel 32u4 based keypads - Make example for this keyboard (after setting up your build environment): make deltapad:default diff --git a/keyboards/duck/jetfire/readme.md b/keyboards/duck/jetfire/readme.md index 8de2f5ced6..2e12315d6b 100644 --- a/keyboards/duck/jetfire/readme.md +++ b/keyboards/duck/jetfire/readme.md @@ -1,7 +1,5 @@ # Jetfire -![jetfire](imgur.com image replace me!) - The Duck Jetfire is a hybrid full size and 1800 layout keyboard that went on Group Buy in November 2017. diff --git a/keyboards/ericrlau/numdiscipline/readme.md b/keyboards/ericrlau/numdiscipline/readme.md index bd040df2a5..9770432e56 100644 --- a/keyboards/ericrlau/numdiscipline/readme.md +++ b/keyboards/ericrlau/numdiscipline/readme.md @@ -13,7 +13,6 @@ A modified version of the through hole 65% Discipline keyboard by cftkb. Other Information: * Keyboard Maintainer: [ELau](https://github.com/ericrlau) -* Hardware Supported: The PCBs, controllers supported * Hardware Availability: https://github.com/ericrlau/NumDiscipline Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/handwired/fc200rt_qmk/readme.md b/keyboards/handwired/fc200rt_qmk/readme.md index 6490227806..2b7a0dd1ec 100644 --- a/keyboards/handwired/fc200rt_qmk/readme.md +++ b/keyboards/handwired/fc200rt_qmk/readme.md @@ -25,7 +25,6 @@ Choose any key from the corrosponding row and column and solder it to the pin on _NOTE: Some of the keys had mislabled columns and rows, so make sure the columns are all connected without diodes to one another, and that the rows are soldered after the diode_ * Keyboard Maintainer: [NaCly](https://github.com/Na-Cly) -* Hardware Supported: The PCBs, controllers supported * Hardware Availability: Leopold FC200RT + Teensy 2.0 Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/handwired/novem/readme.md b/keyboards/handwired/novem/readme.md index c259c2cb82..4ccf815236 100644 --- a/keyboards/handwired/novem/readme.md +++ b/keyboards/handwired/novem/readme.md @@ -2,8 +2,6 @@ ![novem](https://i.imgur.com/nPjBE9b.jpg) -A short description of the keyboard/project - * Keyboard Maintainer: [Jose I. Martinez](https://github.com/mechanicalguy21) * Hardware Supported: This is a handwired keyboard created over a 3d printed case. STL will be shared soon. diff --git a/keyboards/hineybush/h75_singa/readme.md b/keyboards/hineybush/h75_singa/readme.md index 815785834c..b110fd5b14 100644 --- a/keyboards/hineybush/h75_singa/readme.md +++ b/keyboards/hineybush/h75_singa/readme.md @@ -1,7 +1,5 @@ # h75_singa -![h75_singa](imgur.com image replace me!) - TBD - New 75% PCB for Singa Keyboards * Keyboard Maintainer: [hineybush](https://github.com/hineybush) diff --git a/keyboards/kakunpc/business_card/readme.md b/keyboards/kakunpc/business_card/readme.md index cbd05af410..98fdf1be90 100644 --- a/keyboards/kakunpc/business_card/readme.md +++ b/keyboards/kakunpc/business_card/readme.md @@ -1,12 +1,6 @@ # business_card -![business_card](imgur.com image replace me!) - -A short description of the keyboard/project - -Keyboard Maintainer: [kakunpc](https://github.com/kakunpc) -Hardware Supported: The PCBs, controllers supported -Hardware Availability: links to where you can find this hardware +* Keyboard Maintainer: [kakunpc](https://github.com/kakunpc) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/keebio/ergodicity/readme.md b/keyboards/keebio/ergodicity/readme.md index 0f841d6e3e..61f4ee658c 100644 --- a/keyboards/keebio/ergodicity/readme.md +++ b/keyboards/keebio/ergodicity/readme.md @@ -1,9 +1,5 @@ # Ergodicity -![ergodicity](imgur.com image replace me!) - -A short description of the keyboard/project - Keyboard Maintainer: [nooges/bakingpy](https://github.com/nooges) Hardware Supported: Ergodicity PCB w/ATmega32u4 Hardware Availability: [Keebio](https://keeb.io) diff --git a/keyboards/kira/kira75/readme.md b/keyboards/kira/kira75/readme.md index a30b60d179..237e81d06b 100644 --- a/keyboards/kira/kira75/readme.md +++ b/keyboards/kira/kira75/readme.md @@ -1,7 +1,5 @@ # Kira 75 -![kira75](imgur.com image replace me!) - 75% keyboard designed by thesiscamper Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin) diff --git a/keyboards/kprepublic/bm16a/v1/readme.md b/keyboards/kprepublic/bm16a/v1/readme.md index d24a879505..6ad3773371 100644 --- a/keyboards/kprepublic/bm16a/v1/readme.md +++ b/keyboards/kprepublic/bm16a/v1/readme.md @@ -5,7 +5,6 @@ A 16 key macropad, with USB C, RGB underglow and backlight. * Keyboard Maintainer: QMK Community -* Hardware Supported: The PCBs, controllers supported * Hardware Availability: [KPrepublic](https://kprepublic.com/products/bm16a-16-keys-custom-mechanical-keyboard-pcb-plate-programmed-numpad-layouts-qmk-firmware-with-rgb-bottom-underglow-alps-mx); [AliExpress](https://www.aliexpress.com/store/product/bm16a-16-keys-Custom-Mechanical-Keyboard-PCB-plate-programmed-numpad-layouts-qmk-firmware-with-rgb-bottom/3034003_32970629907.html) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/kprepublic/bm16s/readme.md b/keyboards/kprepublic/bm16s/readme.md index 6a887e553a..5b121cdaea 100644 --- a/keyboards/kprepublic/bm16s/readme.md +++ b/keyboards/kprepublic/bm16s/readme.md @@ -3,7 +3,6 @@ A 16-key macropad, with USB C and per-key RGB backlighting. This is a variant of the BM16A, but with low profile Choc switches. * Keyboard Maintainer: QMK Community -* Hardware Supported: The PCBs, controllers supported * Hardware Availability: [KPrepublic](https://kprepublic.com/collections/pcb/products/bm16s-16-keys-custom-mechanical-keyboard-pcb-plate-programmed-numpad-layouts-qmk-firmware-with-rgb-switch-leds-choc-switch); [AliExpress](https://www.aliexpress.com/item/bm16s-16-keys-Custom-Mechanical-Keyboard-PCB-plate-programmed-numpad-layouts-qmk-firmware-with-rgb-switch/32999247908.html); [Massdrop](https://www.massdrop.com/buy/78169) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/marksard/treadstone32/readme.md b/keyboards/marksard/treadstone32/readme.md index 170c6bc761..4e3d544698 100644 --- a/keyboards/marksard/treadstone32/readme.md +++ b/keyboards/marksard/treadstone32/readme.md @@ -4,9 +4,7 @@ A 32-key Symmetric staggered keyboard. -Keyboard Maintainer: [marksard](https://github.com/marksard) -Hardware Supported: The PCBs, controllers supported -Hardware Availability: links to where you can find this hardware +* Keyboard Maintainer: [marksard](https://github.com/marksard) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/marksard/treadstone48/readme.md b/keyboards/marksard/treadstone48/readme.md index c5f6f8f73f..692891447c 100644 --- a/keyboards/marksard/treadstone48/readme.md +++ b/keyboards/marksard/treadstone48/readme.md @@ -4,9 +4,7 @@ A 47 (or 48) keys Symmetric Staggered keyboard. -Keyboard Maintainer: [marksard](https://github.com/marksard) -Hardware Supported: The PCBs, controllers supported -Hardware Availability: links to where you can find this hardware +* Keyboard Maintainer: [marksard](https://github.com/marksard) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/masterworks/classy_tkl/readme.md b/keyboards/masterworks/classy_tkl/readme.md index 0557ed7f4c..1e5903483c 100644 --- a/keyboards/masterworks/classy_tkl/readme.md +++ b/keyboards/masterworks/classy_tkl/readme.md @@ -2,8 +2,6 @@ ![Classy TKL](https://i.imgur.com/p1dxfYKl.jpg) -A short description of the keyboard/project - * Keyboard Maintainer: [Mathias Andersson](https://github.com/wraul) * Hardware Supported: [Classy TKL PCB](https://github.com/4pplet/classyTKL) * Hardware Availability: https://geekhack.org/index.php?topic=105933 diff --git a/keyboards/mb44/readme.md b/keyboards/mb44/readme.md index 3cd59ecdb1..3029c69f9e 100644 --- a/keyboards/mb44/readme.md +++ b/keyboards/mb44/readme.md @@ -5,8 +5,6 @@ To reset and put into bootloader mode, please use the hardware reset button on the botton of the PCB. If the PCB is on the default firmware, software reset is available by holding the bottom left corner key and pressing `B` in the standard qwerty layout. * Keyboard Maintainer: [melonbred](https://github.com/melonbred) -* Hardware Supported: The PCBs, controllers supported -* Hardware Availability: Links to where you can find this hardware Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/mechlovin/delphine/readme.md b/keyboards/mechlovin/delphine/readme.md index 9a5389a5f3..397a0ada40 100644 --- a/keyboards/mechlovin/delphine/readme.md +++ b/keyboards/mechlovin/delphine/readme.md @@ -1,7 +1,5 @@ # delphine -![delphine](imgur.com image replace me!) - A Number-Pad PCB, Mono backlight and RGB backlight version, Dolpad compatible. * Keyboard Maintainer: [Mechlovin'](https://github.com/mechlovin) diff --git a/keyboards/mechwild/mokulua/readme.md b/keyboards/mechwild/mokulua/readme.md index 24f01b10d4..5a6b69e66e 100644 --- a/keyboards/mechwild/mokulua/readme.md +++ b/keyboards/mechwild/mokulua/readme.md @@ -2,8 +2,6 @@ ![Mokulua](https://i.imgur.com/7fifiQch.jpg) -*A short description of the keyboard/project* - * Keyboard Maintainer: [Kyle McCreery](https://github.com/kylemccreery) * Hardware Supported: Mokulua v1.3 * Hardware Availability: https://mechwild.com/product/mokulua/ diff --git a/keyboards/meme/readme.md b/keyboards/meme/readme.md index 94b55d746e..7b09a5e18f 100644 --- a/keyboards/meme/readme.md +++ b/keyboards/meme/readme.md @@ -1,7 +1,5 @@ # Meme -![meme](imgur.com image replace me!) - 65% gasket mount keyboard. Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin) diff --git a/keyboards/mint60/readme.md b/keyboards/mint60/readme.md index 1824c682f8..3a28f56181 100644 --- a/keyboards/mint60/readme.md +++ b/keyboards/mint60/readme.md @@ -2,11 +2,8 @@ ![Mint60](https://i.imgur.com/suOE8HN.jpg) -A short description of the keyboard/project - Keyboard Maintainer: [Eucalyn](https://github.com/eucalyn) [@eucalyn_](https://twitter.com/eucalyn_) Hardware Supported: The Mint60 PCBs, ProMicro supported -Hardware Availability: links to where you can find this hardware Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/pegasus/readme.md b/keyboards/pegasus/readme.md index c523c03540..9c6d575e92 100644 --- a/keyboards/pegasus/readme.md +++ b/keyboards/pegasus/readme.md @@ -5,8 +5,6 @@ Pegasus is a 40% keyboard with a 12.75u "WKL" layout with 0.75u blockers. * Keyboard Maintainer: [melonbred](https://github.com/melonbred) -* Hardware Supported: The PCBs, controllers supported -* Hardware Availability: Links to where you can find this hardware Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/tgr/tris/readme.md b/keyboards/tgr/tris/readme.md index c9cc199069..e01e7decaa 100644 --- a/keyboards/tgr/tris/readme.md +++ b/keyboards/tgr/tris/readme.md @@ -1,7 +1,5 @@ # TGR Tris/Tris CE -A short description of the keyboard/project - * Keyboard Maintainer: [poisonking](https://github.com/halfenergized) * Hardware Supported: Tris PCB * Hardware Availability: https://geekhack.org/index.php?topic=86221.0 diff --git a/keyboards/x16/readme.md b/keyboards/x16/readme.md index 6434af99c7..cfe83905d7 100644 --- a/keyboards/x16/readme.md +++ b/keyboards/x16/readme.md @@ -3,7 +3,6 @@ A 16 key macropad, with USB C * Keyboard Maintainer: QMK Community -* Hardware Supported: The PCBs, controllers supported * Hardware Availability: The x16 was discontinued by [x16](https://yinxianwei.github.io/x16/) Make example for this keyboard (after setting up your build environment): -- cgit v1.2.3 From 132efa907679832b81c06c57042c337241b17b8c Mon Sep 17 00:00:00 2001 From: Nizhegorodtsev Vyacheslav Sergeyevich Date: Sun, 16 Feb 2025 21:32:50 +0500 Subject: Update for 'A-JAZZ AKC084' ('A-JAZZ AKP846') (#24868) Fix indicators, image, bootloader instructions and default keymap for 'A-JAZZ AKC084'--- keyboards/a_jazz/akc084/keyboard.json | 2 +- keyboards/a_jazz/akc084/keymaps/default/keymap.c | 18 +++++++++--------- keyboards/a_jazz/akc084/readme.md | 6 +++--- 3 files changed, 13 insertions(+), 13 deletions(-) (limited to 'keyboards') diff --git a/keyboards/a_jazz/akc084/keyboard.json b/keyboards/a_jazz/akc084/keyboard.json index a489a5ade5..a8290ea75f 100644 --- a/keyboards/a_jazz/akc084/keyboard.json +++ b/keyboards/a_jazz/akc084/keyboard.json @@ -20,7 +20,7 @@ }, "indicators": { "caps_lock": "A9", - "num_lock": "A10" + "scroll_lock": "A10" }, "matrix_pins": { "cols": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10", "B11", "B12", "B13"], diff --git a/keyboards/a_jazz/akc084/keymaps/default/keymap.c b/keyboards/a_jazz/akc084/keymaps/default/keymap.c index 0ea7355fec..2bd7992707 100644 --- a/keyboards/a_jazz/akc084/keymaps/default/keymap.c +++ b/keyboards/a_jazz/akc084/keymaps/default/keymap.c @@ -25,19 +25,19 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( - 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_SCRL, KC_PAUS, KC_MUTE, + 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_PAUS, KC_DEL, KC_MUTE, KC_GRV, 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_HOME, - 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_BSLS, KC_DEL, - 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_PGUP, - KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, + 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_BSLS, 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_ENT, KC_PGDN, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), [1] = LAYOUT( - _______, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_MYCM, KC_CALC, _______, _______, _______, _______, + _______, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_MYCM, KC_CALC, _______, _______, KC_SCRL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCRL, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, GU_TOGG, _______, _______, _______, _______, _______, _______, _______, _______ ) }; \ No newline at end of file diff --git a/keyboards/a_jazz/akc084/readme.md b/keyboards/a_jazz/akc084/readme.md index d93c8a687d..4be104f581 100644 --- a/keyboards/a_jazz/akc084/readme.md +++ b/keyboards/a_jazz/akc084/readme.md @@ -1,8 +1,8 @@ -# A-JAZZ AKC084 +# A-JAZZ AKC084 (AKP846) A customizable 84keys keyboard -![akc084](https://i.imgur.com/381vaD7.png) +![akc084](https://i.imgur.com/6D0jBco.png) * Keyboard Maintainer: [Feng](https://github.com/fenggx-a-jazz) * Hardware Supported: [a-jazz](https://www.a-jazz.com) * Hardware Availability: [a-jazz](https://ajazzstore.com/collections/all/products/ajazz-akp846) @@ -18,6 +18,6 @@ Flashing example for this keyboard: See the build environment setup and the make instructions for more information. Brand new to QMK? Start with our Complete Newbs Guide. ## Bootloader ESC the bootloader in 3 ways: -* **Bootmagic reset: Hold down Enter in the keyboard then replug +* **Bootmagic reset: Hold down Esc in the keyboard then replug * **Physical reset button: Briefly press the button on the back of the PCB * **Keycode in layout: Press the key mapped to QK_BOOT -- cgit v1.2.3 From 164b7331c3b98165e49d38127bee366f9c545513 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 16 Feb 2025 21:39:29 +0000 Subject: Migrate some DEFAULT_FOLDER to keyboard_aliases.hjson (#24915) --- data/mappings/keyboard_aliases.hjson | 36 ++ keyboards/cannonkeys/db60/hotswap/rules.mk | 2 + keyboards/cannonkeys/db60/j02/rules.mk | 2 + keyboards/cannonkeys/db60/rev2/rules.mk | 2 + keyboards/cannonkeys/db60/rules.mk | 4 - keyboards/converter/palm_usb/config.h | 56 --- keyboards/converter/palm_usb/info.json | 20 -- keyboards/converter/palm_usb/matrix.c | 382 --------------------- keyboards/converter/palm_usb/readme.md | 97 ------ keyboards/converter/palm_usb/rules.mk | 7 - keyboards/converter/palm_usb/stowaway/config.h | 56 +++ .../converter/palm_usb/stowaway/keyboard.json | 18 + keyboards/converter/palm_usb/stowaway/matrix.c | 382 +++++++++++++++++++++ keyboards/converter/palm_usb/stowaway/readme.md | 97 ++++++ keyboards/converter/palm_usb/stowaway/rules.mk | 5 + .../handwired/meck_tkl/blackpill_f401/rules.mk | 2 + keyboards/handwired/meck_tkl/rules.mk | 4 - keyboards/hhkb/ansi/32u2/rules.mk | 4 + keyboards/hhkb/ansi/32u4/rules.mk | 4 + keyboards/hhkb/ansi/rules.mk | 6 - keyboards/kakunpc/angel64/alpha/rules.mk | 3 + keyboards/kakunpc/angel64/rev1/rules.mk | 3 + keyboards/kakunpc/angel64/rules.mk | 5 - keyboards/oddball/rules.mk | 3 - keyboards/oddball/v1/rules.mk | 1 + keyboards/oddball/v2/rules.mk | 1 + keyboards/oddball/v2_1/rules.mk | 1 + keyboards/teleport/native/ansi/rules.mk | 1 + keyboards/teleport/native/iso/rules.mk | 1 + keyboards/teleport/native/rules.mk | 3 - keyboards/westm/westm68/rev1/rules.mk | 2 + keyboards/westm/westm68/rev2/rules.mk | 2 + keyboards/westm/westm68/rules.mk | 4 - keyboards/westm/westm9/rev1/rules.mk | 2 + keyboards/westm/westm9/rev2/rules.mk | 2 + keyboards/westm/westm9/rules.mk | 4 - keyboards/woodkeys/meira/featherble/rules.mk | 3 + keyboards/woodkeys/meira/promicro/rules.mk | 3 + keyboards/woodkeys/meira/rules.mk | 4 - keyboards/work_louder/loop/post_rules.mk | 1 + keyboards/work_louder/loop/rules.mk | 3 - keyboards/work_louder/work_board/post_rules.mk | 1 + keyboards/work_louder/work_board/rules.mk | 3 - keyboards/zsa/planck_ez/base/rules.mk | 2 + keyboards/zsa/planck_ez/glow/rules.mk | 2 + keyboards/zsa/planck_ez/rules.mk | 4 - 46 files changed, 641 insertions(+), 609 deletions(-) create mode 100644 keyboards/cannonkeys/db60/hotswap/rules.mk create mode 100644 keyboards/cannonkeys/db60/j02/rules.mk create mode 100644 keyboards/cannonkeys/db60/rev2/rules.mk delete mode 100644 keyboards/cannonkeys/db60/rules.mk delete mode 100644 keyboards/converter/palm_usb/config.h delete mode 100644 keyboards/converter/palm_usb/info.json delete mode 100644 keyboards/converter/palm_usb/matrix.c delete mode 100644 keyboards/converter/palm_usb/readme.md delete mode 100644 keyboards/converter/palm_usb/rules.mk create mode 100644 keyboards/converter/palm_usb/stowaway/config.h create mode 100644 keyboards/converter/palm_usb/stowaway/matrix.c create mode 100644 keyboards/converter/palm_usb/stowaway/readme.md create mode 100644 keyboards/converter/palm_usb/stowaway/rules.mk create mode 100644 keyboards/handwired/meck_tkl/blackpill_f401/rules.mk delete mode 100644 keyboards/handwired/meck_tkl/rules.mk create mode 100644 keyboards/hhkb/ansi/32u2/rules.mk create mode 100644 keyboards/hhkb/ansi/32u4/rules.mk delete mode 100644 keyboards/hhkb/ansi/rules.mk create mode 100644 keyboards/kakunpc/angel64/alpha/rules.mk create mode 100644 keyboards/kakunpc/angel64/rev1/rules.mk delete mode 100644 keyboards/kakunpc/angel64/rules.mk delete mode 100644 keyboards/oddball/rules.mk create mode 100644 keyboards/oddball/v1/rules.mk create mode 100644 keyboards/oddball/v2/rules.mk create mode 100644 keyboards/oddball/v2_1/rules.mk create mode 100644 keyboards/teleport/native/ansi/rules.mk create mode 100644 keyboards/teleport/native/iso/rules.mk delete mode 100644 keyboards/teleport/native/rules.mk create mode 100644 keyboards/westm/westm68/rev1/rules.mk create mode 100644 keyboards/westm/westm68/rev2/rules.mk delete mode 100644 keyboards/westm/westm68/rules.mk create mode 100644 keyboards/westm/westm9/rev1/rules.mk create mode 100644 keyboards/westm/westm9/rev2/rules.mk delete mode 100644 keyboards/westm/westm9/rules.mk delete mode 100644 keyboards/woodkeys/meira/rules.mk create mode 100644 keyboards/work_louder/loop/post_rules.mk delete mode 100644 keyboards/work_louder/loop/rules.mk create mode 100644 keyboards/work_louder/work_board/post_rules.mk delete mode 100644 keyboards/work_louder/work_board/rules.mk create mode 100644 keyboards/zsa/planck_ez/base/rules.mk create mode 100644 keyboards/zsa/planck_ez/glow/rules.mk delete mode 100644 keyboards/zsa/planck_ez/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index d03ff33f2c..09549baf69 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -1626,9 +1626,15 @@ "buzzard": { "target": "buzzard/rev1" }, + "cannonkeys/db60": { + "target": "cannonkeys/db60/rev2" + }, "clickety_split/leeloo": { "target": "clickety_split/leeloo/rev3" }, + "converter/palm_usb": { + "target": "converter/palm_usb/stowaway" + }, "crkbd": { "target": "crkbd/rev1" }, @@ -1713,6 +1719,9 @@ "handwired/dactyl_manuform/6x6": { "target": "handwired/dactyl_manuform/6x6/promicro" }, + "handwired/meck_tkl": { + "target": "handwired/meck_tkl/blackpill_f401" + }, "handwired/ms_sculpt_mobile": { "target": "handwired/ms_sculpt_mobile/teensy2pp" }, @@ -1752,6 +1761,9 @@ "hillside/46": { "target": "hillside/46/0_1" }, + "hhkb/ansi": { + "target": "hhkb/ansi/32u4" + }, "hillside/48": { "target": "hillside/48/0_1" }, @@ -1797,6 +1809,9 @@ "kakunpc/angel17": { "target": "kakunpc/angel17/rev1" }, + "kakunpc/angel64": { + "target": "kakunpc/angel64/rev1" + }, "kakunpc/business_card": { "target": "kakunpc/business_card/beta" }, @@ -2148,6 +2163,9 @@ "takashiski/namecard2x4": { "target": "takashiski/namecard2x4/rev2" }, + "teleport/native": { + "target": "teleport/native/iso" + }, "themadnoodle/noodlepad": { "target": "themadnoodle/noodlepad/v1" }, @@ -2181,6 +2199,21 @@ "vitamins_included": { "target": "vitamins_included/rev2" }, + "westm/westm68": { + "target": "westm/westm68/rev2" + }, + "westm/westm9": { + "target": "westm/westm9/rev2" + }, + "woodkeys/meira": { + "target": "woodkeys/meira/promicro" + }, + "work_louder/loop": { + "target": "work_louder/loop/rev3" + }, + "work_louder/work_board": { + "target": "work_louder/work_board/rev3" + }, "yanghu/unicorne": { "target": "yanghu/unicorne/f411" }, @@ -2195,5 +2228,8 @@ }, "yynmt/acperience12": { "target": "yynmt/acperience12/rev1" + }, + "zsa/planck_ez": { + "target": "zsa/planck_ez/base" } } diff --git a/keyboards/cannonkeys/db60/hotswap/rules.mk b/keyboards/cannonkeys/db60/hotswap/rules.mk new file mode 100644 index 0000000000..0ab54aaaf7 --- /dev/null +++ b/keyboards/cannonkeys/db60/hotswap/rules.mk @@ -0,0 +1,2 @@ +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -v FFFF -p FFFF diff --git a/keyboards/cannonkeys/db60/j02/rules.mk b/keyboards/cannonkeys/db60/j02/rules.mk new file mode 100644 index 0000000000..0ab54aaaf7 --- /dev/null +++ b/keyboards/cannonkeys/db60/j02/rules.mk @@ -0,0 +1,2 @@ +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -v FFFF -p FFFF diff --git a/keyboards/cannonkeys/db60/rev2/rules.mk b/keyboards/cannonkeys/db60/rev2/rules.mk new file mode 100644 index 0000000000..0ab54aaaf7 --- /dev/null +++ b/keyboards/cannonkeys/db60/rev2/rules.mk @@ -0,0 +1,2 @@ +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -v FFFF -p FFFF diff --git a/keyboards/cannonkeys/db60/rules.mk b/keyboards/cannonkeys/db60/rules.mk deleted file mode 100644 index 60addd7fe7..0000000000 --- a/keyboards/cannonkeys/db60/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -# Wildcard to allow APM32 MCU -DFU_SUFFIX_ARGS = -v FFFF -p FFFF - -DEFAULT_FOLDER = cannonkeys/db60/rev2 diff --git a/keyboards/converter/palm_usb/config.h b/keyboards/converter/palm_usb/config.h deleted file mode 100644 index 84394b9f71..0000000000 --- a/keyboards/converter/palm_usb/config.h +++ /dev/null @@ -1,56 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -/* This code makes use of cy384's Arduino USB HID adapter for the Palm Portable - Keyboard, released under the BSD licence */ - - - - -#pragma once - -// IO pins to serial -// https://deskthority.net/wiki/Arduino_Pro_Micro for pin lookup -#define VCC_PIN D1 // pro micro 2 -#define RX_PIN D0 //pro micro 3 , was 8 on cy384 -#define RTS_PIN C6 // 5 //[ was D4 // 4 on the cy384 -#define DCD_PIN E6 //7 - -// if using the particular arduino pinout of CY384 -#ifdef CY384 - #define GND_PIN D7 //6 - #define PULLDOWN_PIN B1 // 15 -#endif - -#ifndef HANDSPRING -// Set to 1 for Handspring or to disable RTS/DCD based handshake. - #define HANDSPRING 0 -#endif - -#define MAXDROP 10 // check if keyboard is connected every X polling cycles -#define SLEEP_TIMEOUT 500000 // check keyboard/reset this many millis - - -#define MATRIX_ROWS 12 -#define MATRIX_COLS 8 - -/* key combination for command */ -#define IS_COMMAND() ( \ - get_mods() == (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT)) || \ - get_mods() == (MOD_BIT(KC_LGUI) | MOD_BIT(KC_RGUI)) || \ - get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ -) diff --git a/keyboards/converter/palm_usb/info.json b/keyboards/converter/palm_usb/info.json deleted file mode 100644 index c5b893d757..0000000000 --- a/keyboards/converter/palm_usb/info.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "keyboard_name": "Stowaway Converter", - "manufacturer": "QMK", - "url": "", - "maintainer": "qmk", - "usb": { - "vid": "0xFEED", - "pid": "0x0001", - "device_version": "1.0.0" - }, - "processor": "atmega32u4", - "bootloader": "caterina", - "features": { - "bootmagic": false, - "mousekey": false, - "extrakey": false, - "console": true, - "command": true - } -} diff --git a/keyboards/converter/palm_usb/matrix.c b/keyboards/converter/palm_usb/matrix.c deleted file mode 100644 index db3784df19..0000000000 --- a/keyboards/converter/palm_usb/matrix.c +++ /dev/null @@ -1,382 +0,0 @@ -/* -Copyright 2018 milestogo -with elements Copyright 2014 cy384 under a modified BSD license -building on qmk structure Copyright 2012 Jun Wako - -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 . -*/ - -#include "matrix.h" -#include "debug.h" -#include "wait.h" -#include "uart.h" -#include "timer.h" - - -/* - * Matrix Array usage: - * - * ROW: 12(4bits) - * COL: 8(3bits) - * - * +---------+ - * 0|00 ... 07| - * 1|00 ... 07| - * :| ... | - * :| ... | - * A| | - * B| | - * +---------+ - */ -static uint8_t matrix[MATRIX_ROWS]; - - -// we're going to need a sleep timer -static uint16_t last_activity ; -// and a byte to track duplicate up events signalling all keys up. -static uint16_t last_upKey ; -// serial device can disconnect. Check every MAXDROP characters. -static uint16_t disconnect_counter = 0; - - -// bitmath masks. -#define KEY_MASK 0b10000000 -#define COL_MASK 0b00000111 -#define ROW_MASK 0b01111000 - - -#define ROW(code) (( code & ROW_MASK ) >>3) -#define COL(code) ((code & COL_MASK) ) -#define KEYUP(code) ((code & KEY_MASK) >>7 ) - -__attribute__ ((weak)) -void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__ ((weak)) -void matrix_scan_kb(void) { - matrix_scan_user(); -} - -__attribute__ ((weak)) -void matrix_init_user(void) { -} - -__attribute__ ((weak)) -void matrix_scan_user(void) { -} - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - - -void pins_init(void) { - // set pins for pullups, Rts , power &etc. - - //print ("pins setup\n"); - gpio_set_pin_output(VCC_PIN); - gpio_write_pin_low(VCC_PIN); - -#if ( HANDSPRING == 0) - -#ifdef CY835 - gpio_set_pin_output(GND_PIN); - gpio_write_pin_low(GND_PIN); - - gpio_set_pin_output(PULLDOWN_PIN); - gpio_write_pin_low(PULLDOWN_PIN); -#endif - - gpio_set_pin_input(DCD_PIN); - gpio_set_pin_input(RTS_PIN); -#endif - -/* check that the other side isn't powered up. - test=gpio_read_pin(DCD_PIN); - xprintf("b%02X:", test); - test=gpio_read_pin(RTS_PIN); - xprintf("%02X\n", test); -*/ - -} - -uint8_t rts_reset(void) { - static uint8_t firstread ; -/* bounce RTS so device knows it is rebooted */ - -// On boot, we keep rts as input, then switch roles here -// on leaving sleep, we toggle the same way - - firstread=gpio_read_pin(RTS_PIN); - // printf("r%02X:", firstread); - - gpio_set_pin_output(RTS_PIN); - - if (firstread) { - gpio_write_pin_low(RTS_PIN); - } - wait_ms(10); - gpio_write_pin_high(RTS_PIN); - - -/* the future is Arm - if (!palReadPad(RTS_PIN_IOPRT)) - { - wait_ms(10); - palSetPadMode(RTS_PINn_IOPORT, PinDirectionOutput_PUSHPULL); - palSetPad(RTS_PORT, RTS_PIN); - } - else - { - palSetPadMode(RTS_PIN_RTS_PORT, PinDirectionOutput_PUSHPULL); - palSetPad(RTS_PORT, RTS_PIN); - palClearPad(RTS_PORT, RTS_PIN); - wait_ms(10); - palSetPad(RTS_PORT, RTS_PIN); - } -*/ - - - wait_ms(5); - //print("rts\n"); - return 1; -} - -uint8_t get_serial_byte(void) { - static uint8_t code; - while(1) { - code = uart_read(); - if (code) { - dprintf("%02X ", code); - return code; - } - } -} - -uint8_t palm_handshake(void) { - // assumes something has seen DCD go high, we've toggled RTS - // and we now need to verify handshake. - // listen for up to 4 packets before giving up. - // usually I get the sequence FF FA FD - static uint8_t codeA=0; - - for (uint8_t i=0; i < 5; i++) { - codeA=get_serial_byte(); - if ( 0xFA == codeA) { - if( 0xFD == get_serial_byte()) { - return 1; - } - } - } - return 0; -} - -uint8_t palm_reset(void) { - print("@"); - rts_reset(); // shouldn't need to power cycle. - - if ( palm_handshake() ) { - last_activity = timer_read(); - return 1; - } else { - print("failed reset"); - return 0; - } - -} - -uint8_t handspring_handshake(void) { - // should be sent 15 ms after power up. - // listen for up to 4 packets before giving up. - static uint8_t codeA=0; - - for (uint8_t i=0; i < 5; i++) { - codeA=get_serial_byte(); - if ( 0xF9 == codeA) { - if( 0xFB == get_serial_byte()) { - return 1; - } - } - } - return 0; -} - -uint8_t handspring_reset(void) { - gpio_write_pin_low(VCC_PIN); - wait_ms(5); - gpio_write_pin_high(VCC_PIN); - - if ( handspring_handshake() ) { - last_activity = timer_read(); - disconnect_counter=0; - return 1; - } else { - print("-HSreset"); - return 0; - } -} - -void matrix_init(void) -{ - debug_enable = true; - //debug_matrix =true; - - uart_init(9600); // arguments all #defined - -#if (HANDSPRING == 0) - pins_init(); // set all inputs and outputs. -#endif - - print("power up\n"); - gpio_write_pin_high(VCC_PIN); - - // wait for DCD strobe from keyboard - it will do this - // up to 3 times, then the board needs the RTS toggled to try again - -#if ( HANDSPRING == 1) - if ( handspring_handshake() ) { - last_activity = timer_read(); - } else { - print("failed handshake"); - wait_ms(1000); - //BUG /should/ power cycle or toggle RTS & reset, but this usually works. - } - -#else /// Palm / HP device with DCD - while( !gpio_read_pin(DCD_PIN) ) {;} - print("dcd\n"); - - rts_reset(); // at this point the keyboard should think all is well. - - if ( palm_handshake() ) { - last_activity = timer_read(); - } else { - print("failed handshake"); - wait_ms(1000); - //BUG /should/ power cycle or toggle RTS & reset, but this usually works. - } - -#endif - - // initialize matrix state: all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00; - - matrix_init_kb(); - return; - - -} - - -uint8_t matrix_scan(void) -{ - uint8_t code; - code = uart_read(); - if (!code) { -/* - disconnect_counter ++; - if (disconnect_counter > MAXDROP) { - // set all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00; - } -*/ - // check if the keyboard is asleep. - if (timer_elapsed(last_activity) > SLEEP_TIMEOUT) { -#if(HANDSPRING ==0 ) - palm_reset(); -#else - handspring_reset(); -#endif - return 0; - } - - } - - last_activity = timer_read(); - disconnect_counter=0; // if we are getting serial data, we're connected. - - dprintf("%02X ", code); - - switch (code) { - case 0xFD: // unexpected reset byte 2 - print("rstD "); - return 0; - case 0xFA: // unexpected reset - print("rstA "); - return 0; - } - - if (KEYUP(code)) { - if (code == last_upKey) { - // all keys are not pressed. - // Manual says to disable all modifiers left open now. - // but that could defeat sticky keys. - // BUG? dropping this byte. - last_upKey=0; - return 0; - } - // release - if (matrix_is_on(ROW(code), COL(code))) { - matrix[ROW(code)] &= ~(1< + +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 . +*/ + +/* This code makes use of cy384's Arduino USB HID adapter for the Palm Portable + Keyboard, released under the BSD licence */ + + + + +#pragma once + +// IO pins to serial +// https://deskthority.net/wiki/Arduino_Pro_Micro for pin lookup +#define VCC_PIN D1 // pro micro 2 +#define RX_PIN D0 //pro micro 3 , was 8 on cy384 +#define RTS_PIN C6 // 5 //[ was D4 // 4 on the cy384 +#define DCD_PIN E6 //7 + +// if using the particular arduino pinout of CY384 +#ifdef CY384 + #define GND_PIN D7 //6 + #define PULLDOWN_PIN B1 // 15 +#endif + +#ifndef HANDSPRING +// Set to 1 for Handspring or to disable RTS/DCD based handshake. + #define HANDSPRING 0 +#endif + +#define MAXDROP 10 // check if keyboard is connected every X polling cycles +#define SLEEP_TIMEOUT 500000 // check keyboard/reset this many millis + + +#define MATRIX_ROWS 12 +#define MATRIX_COLS 8 + +/* key combination for command */ +#define IS_COMMAND() ( \ + get_mods() == (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT)) || \ + get_mods() == (MOD_BIT(KC_LGUI) | MOD_BIT(KC_RGUI)) || \ + get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ +) diff --git a/keyboards/converter/palm_usb/stowaway/keyboard.json b/keyboards/converter/palm_usb/stowaway/keyboard.json index 9a263327ad..c93957b7d8 100644 --- a/keyboards/converter/palm_usb/stowaway/keyboard.json +++ b/keyboards/converter/palm_usb/stowaway/keyboard.json @@ -1,4 +1,22 @@ { + "keyboard_name": "Stowaway Converter", + "manufacturer": "QMK", + "url": "", + "maintainer": "qmk", + "usb": { + "vid": "0xFEED", + "pid": "0x0001", + "device_version": "1.0.0" + }, + "processor": "atmega32u4", + "bootloader": "caterina", + "features": { + "bootmagic": false, + "mousekey": false, + "extrakey": false, + "console": true, + "command": true + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/converter/palm_usb/stowaway/matrix.c b/keyboards/converter/palm_usb/stowaway/matrix.c new file mode 100644 index 0000000000..db3784df19 --- /dev/null +++ b/keyboards/converter/palm_usb/stowaway/matrix.c @@ -0,0 +1,382 @@ +/* +Copyright 2018 milestogo +with elements Copyright 2014 cy384 under a modified BSD license +building on qmk structure Copyright 2012 Jun Wako + +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 . +*/ + +#include "matrix.h" +#include "debug.h" +#include "wait.h" +#include "uart.h" +#include "timer.h" + + +/* + * Matrix Array usage: + * + * ROW: 12(4bits) + * COL: 8(3bits) + * + * +---------+ + * 0|00 ... 07| + * 1|00 ... 07| + * :| ... | + * :| ... | + * A| | + * B| | + * +---------+ + */ +static uint8_t matrix[MATRIX_ROWS]; + + +// we're going to need a sleep timer +static uint16_t last_activity ; +// and a byte to track duplicate up events signalling all keys up. +static uint16_t last_upKey ; +// serial device can disconnect. Check every MAXDROP characters. +static uint16_t disconnect_counter = 0; + + +// bitmath masks. +#define KEY_MASK 0b10000000 +#define COL_MASK 0b00000111 +#define ROW_MASK 0b01111000 + + +#define ROW(code) (( code & ROW_MASK ) >>3) +#define COL(code) ((code & COL_MASK) ) +#define KEYUP(code) ((code & KEY_MASK) >>7 ) + +__attribute__ ((weak)) +void matrix_init_kb(void) { + matrix_init_user(); +} + +__attribute__ ((weak)) +void matrix_scan_kb(void) { + matrix_scan_user(); +} + +__attribute__ ((weak)) +void matrix_init_user(void) { +} + +__attribute__ ((weak)) +void matrix_scan_user(void) { +} + +inline +uint8_t matrix_rows(void) +{ + return MATRIX_ROWS; +} + +inline +uint8_t matrix_cols(void) +{ + return MATRIX_COLS; +} + + +void pins_init(void) { + // set pins for pullups, Rts , power &etc. + + //print ("pins setup\n"); + gpio_set_pin_output(VCC_PIN); + gpio_write_pin_low(VCC_PIN); + +#if ( HANDSPRING == 0) + +#ifdef CY835 + gpio_set_pin_output(GND_PIN); + gpio_write_pin_low(GND_PIN); + + gpio_set_pin_output(PULLDOWN_PIN); + gpio_write_pin_low(PULLDOWN_PIN); +#endif + + gpio_set_pin_input(DCD_PIN); + gpio_set_pin_input(RTS_PIN); +#endif + +/* check that the other side isn't powered up. + test=gpio_read_pin(DCD_PIN); + xprintf("b%02X:", test); + test=gpio_read_pin(RTS_PIN); + xprintf("%02X\n", test); +*/ + +} + +uint8_t rts_reset(void) { + static uint8_t firstread ; +/* bounce RTS so device knows it is rebooted */ + +// On boot, we keep rts as input, then switch roles here +// on leaving sleep, we toggle the same way + + firstread=gpio_read_pin(RTS_PIN); + // printf("r%02X:", firstread); + + gpio_set_pin_output(RTS_PIN); + + if (firstread) { + gpio_write_pin_low(RTS_PIN); + } + wait_ms(10); + gpio_write_pin_high(RTS_PIN); + + +/* the future is Arm + if (!palReadPad(RTS_PIN_IOPRT)) + { + wait_ms(10); + palSetPadMode(RTS_PINn_IOPORT, PinDirectionOutput_PUSHPULL); + palSetPad(RTS_PORT, RTS_PIN); + } + else + { + palSetPadMode(RTS_PIN_RTS_PORT, PinDirectionOutput_PUSHPULL); + palSetPad(RTS_PORT, RTS_PIN); + palClearPad(RTS_PORT, RTS_PIN); + wait_ms(10); + palSetPad(RTS_PORT, RTS_PIN); + } +*/ + + + wait_ms(5); + //print("rts\n"); + return 1; +} + +uint8_t get_serial_byte(void) { + static uint8_t code; + while(1) { + code = uart_read(); + if (code) { + dprintf("%02X ", code); + return code; + } + } +} + +uint8_t palm_handshake(void) { + // assumes something has seen DCD go high, we've toggled RTS + // and we now need to verify handshake. + // listen for up to 4 packets before giving up. + // usually I get the sequence FF FA FD + static uint8_t codeA=0; + + for (uint8_t i=0; i < 5; i++) { + codeA=get_serial_byte(); + if ( 0xFA == codeA) { + if( 0xFD == get_serial_byte()) { + return 1; + } + } + } + return 0; +} + +uint8_t palm_reset(void) { + print("@"); + rts_reset(); // shouldn't need to power cycle. + + if ( palm_handshake() ) { + last_activity = timer_read(); + return 1; + } else { + print("failed reset"); + return 0; + } + +} + +uint8_t handspring_handshake(void) { + // should be sent 15 ms after power up. + // listen for up to 4 packets before giving up. + static uint8_t codeA=0; + + for (uint8_t i=0; i < 5; i++) { + codeA=get_serial_byte(); + if ( 0xF9 == codeA) { + if( 0xFB == get_serial_byte()) { + return 1; + } + } + } + return 0; +} + +uint8_t handspring_reset(void) { + gpio_write_pin_low(VCC_PIN); + wait_ms(5); + gpio_write_pin_high(VCC_PIN); + + if ( handspring_handshake() ) { + last_activity = timer_read(); + disconnect_counter=0; + return 1; + } else { + print("-HSreset"); + return 0; + } +} + +void matrix_init(void) +{ + debug_enable = true; + //debug_matrix =true; + + uart_init(9600); // arguments all #defined + +#if (HANDSPRING == 0) + pins_init(); // set all inputs and outputs. +#endif + + print("power up\n"); + gpio_write_pin_high(VCC_PIN); + + // wait for DCD strobe from keyboard - it will do this + // up to 3 times, then the board needs the RTS toggled to try again + +#if ( HANDSPRING == 1) + if ( handspring_handshake() ) { + last_activity = timer_read(); + } else { + print("failed handshake"); + wait_ms(1000); + //BUG /should/ power cycle or toggle RTS & reset, but this usually works. + } + +#else /// Palm / HP device with DCD + while( !gpio_read_pin(DCD_PIN) ) {;} + print("dcd\n"); + + rts_reset(); // at this point the keyboard should think all is well. + + if ( palm_handshake() ) { + last_activity = timer_read(); + } else { + print("failed handshake"); + wait_ms(1000); + //BUG /should/ power cycle or toggle RTS & reset, but this usually works. + } + +#endif + + // initialize matrix state: all keys off + for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00; + + matrix_init_kb(); + return; + + +} + + +uint8_t matrix_scan(void) +{ + uint8_t code; + code = uart_read(); + if (!code) { +/* + disconnect_counter ++; + if (disconnect_counter > MAXDROP) { + // set all keys off + for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00; + } +*/ + // check if the keyboard is asleep. + if (timer_elapsed(last_activity) > SLEEP_TIMEOUT) { +#if(HANDSPRING ==0 ) + palm_reset(); +#else + handspring_reset(); +#endif + return 0; + } + + } + + last_activity = timer_read(); + disconnect_counter=0; // if we are getting serial data, we're connected. + + dprintf("%02X ", code); + + switch (code) { + case 0xFD: // unexpected reset byte 2 + print("rstD "); + return 0; + case 0xFA: // unexpected reset + print("rstA "); + return 0; + } + + if (KEYUP(code)) { + if (code == last_upKey) { + // all keys are not pressed. + // Manual says to disable all modifiers left open now. + // but that could defeat sticky keys. + // BUG? dropping this byte. + last_upKey=0; + return 0; + } + // release + if (matrix_is_on(ROW(code), COL(code))) { + matrix[ROW(code)] &= ~(1< --- keyboards/ploopyco/mouse/config.h | 11 ---- keyboards/ploopyco/mouse/info.json | 40 +++++++++++++++ keyboards/ploopyco/mouse/keyboard.json | 59 ---------------------- keyboards/ploopyco/mouse/post_rules.mk | 1 + keyboards/ploopyco/mouse/readme.md | 6 +-- keyboards/ploopyco/mouse/rev1_002/config.h | 33 ++++++++++++ keyboards/ploopyco/mouse/rev1_002/keyboard.json | 21 ++++++++ keyboards/ploopyco/mouse/rev1_002/readme.md | 3 ++ keyboards/ploopyco/mouse/rev1_002/rules.mk | 2 + keyboards/ploopyco/mouse/rev1_003/config.h | 32 ++++++++++++ keyboards/ploopyco/mouse/rev1_003/keyboard.json | 25 +++++++++ keyboards/ploopyco/mouse/rev1_003/readme.md | 3 ++ keyboards/ploopyco/mouse/rules.mk | 4 -- keyboards/ploopyco/trackball/config.h | 11 +--- keyboards/ploopyco/trackball/info.json | 5 +- keyboards/ploopyco/trackball/post_rules.mk | 1 + keyboards/ploopyco/trackball/readme.md | 25 +++++---- keyboards/ploopyco/trackball/rev1/config.h | 27 ---------- keyboards/ploopyco/trackball/rev1/keyboard.json | 9 ---- keyboards/ploopyco/trackball/rev1/readme.md | 30 ----------- keyboards/ploopyco/trackball/rev1_004/config.h | 33 ++++++++++++ .../ploopyco/trackball/rev1_004/keyboard.json | 9 ++++ keyboards/ploopyco/trackball/rev1_004/readme.md | 30 +++++++++++ keyboards/ploopyco/trackball/rev1_004/rules.mk | 2 + keyboards/ploopyco/trackball/rev1_005/config.h | 9 ++++ keyboards/ploopyco/trackball/rev1_005/readme.md | 4 +- keyboards/ploopyco/trackball/rev1_005/rules.mk | 2 + keyboards/ploopyco/trackball/rev1_007/config.h | 32 ++++++++++++ .../ploopyco/trackball/rev1_007/keyboard.json | 25 +++++++++ keyboards/ploopyco/trackball/rev1_007/readme.md | 3 ++ keyboards/ploopyco/trackball/rules.mk | 6 --- keyboards/ploopyco/trackball_thumb/config.h | 6 --- keyboards/ploopyco/trackball_thumb/info.json | 14 ++--- keyboards/ploopyco/trackball_thumb/post_rules.mk | 1 + keyboards/ploopyco/trackball_thumb/readme.md | 4 +- .../ploopyco/trackball_thumb/rev1_001/config.h | 6 +++ .../trackball_thumb/rev1_001/keyboard.json | 12 ++--- .../ploopyco/trackball_thumb/rev1_001/readme.md | 4 +- .../ploopyco/trackball_thumb/rev1_001/rules.mk | 2 + .../ploopyco/trackball_thumb/rev1_002/config.h | 32 ++++++++++++ .../trackball_thumb/rev1_002/keyboard.json | 25 +++++++++ .../ploopyco/trackball_thumb/rev1_002/readme.md | 3 ++ keyboards/ploopyco/trackball_thumb/rules.mk | 6 --- 43 files changed, 415 insertions(+), 203 deletions(-) create mode 100644 keyboards/ploopyco/mouse/info.json delete mode 100644 keyboards/ploopyco/mouse/keyboard.json create mode 100644 keyboards/ploopyco/mouse/post_rules.mk create mode 100644 keyboards/ploopyco/mouse/rev1_002/config.h create mode 100644 keyboards/ploopyco/mouse/rev1_002/keyboard.json create mode 100644 keyboards/ploopyco/mouse/rev1_002/readme.md create mode 100644 keyboards/ploopyco/mouse/rev1_002/rules.mk create mode 100644 keyboards/ploopyco/mouse/rev1_003/config.h create mode 100644 keyboards/ploopyco/mouse/rev1_003/keyboard.json create mode 100644 keyboards/ploopyco/mouse/rev1_003/readme.md delete mode 100644 keyboards/ploopyco/mouse/rules.mk create mode 100644 keyboards/ploopyco/trackball/post_rules.mk delete mode 100644 keyboards/ploopyco/trackball/rev1/config.h delete mode 100644 keyboards/ploopyco/trackball/rev1/keyboard.json delete mode 100644 keyboards/ploopyco/trackball/rev1/readme.md create mode 100644 keyboards/ploopyco/trackball/rev1_004/config.h create mode 100644 keyboards/ploopyco/trackball/rev1_004/keyboard.json create mode 100644 keyboards/ploopyco/trackball/rev1_004/readme.md create mode 100644 keyboards/ploopyco/trackball/rev1_004/rules.mk create mode 100644 keyboards/ploopyco/trackball/rev1_005/rules.mk create mode 100644 keyboards/ploopyco/trackball/rev1_007/config.h create mode 100644 keyboards/ploopyco/trackball/rev1_007/keyboard.json create mode 100644 keyboards/ploopyco/trackball/rev1_007/readme.md delete mode 100644 keyboards/ploopyco/trackball/rules.mk create mode 100644 keyboards/ploopyco/trackball_thumb/post_rules.mk create mode 100644 keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk create mode 100644 keyboards/ploopyco/trackball_thumb/rev1_002/config.h create mode 100644 keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json create mode 100644 keyboards/ploopyco/trackball_thumb/rev1_002/readme.md delete mode 100644 keyboards/ploopyco/trackball_thumb/rules.mk (limited to 'keyboards') diff --git a/keyboards/ploopyco/mouse/config.h b/keyboards/ploopyco/mouse/config.h index 0f8774dcd7..0645283880 100644 --- a/keyboards/ploopyco/mouse/config.h +++ b/keyboards/ploopyco/mouse/config.h @@ -18,11 +18,6 @@ #pragma once -// These pins are not broken out, and cannot be used normally. -// They are set as output and pulled high, by default -#define UNUSABLE_PINS \ - { B4, D6, F1, F5, F6, F7 } - /* disable action features */ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING @@ -30,13 +25,7 @@ // #define DEBUG_LED_PIN F7 -/* PMW33XX Settings */ -#define PMW33XX_CS_PIN B0 - #define ENCODER_BUTTON_COL 1 #define ENCODER_BUTTON_ROW 0 /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 - -#define ENCODER_A_PINS { F0 } -#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/mouse/info.json b/keyboards/ploopyco/mouse/info.json new file mode 100644 index 0000000000..1a70989f25 --- /dev/null +++ b/keyboards/ploopyco/mouse/info.json @@ -0,0 +1,40 @@ +{ + "keyboard_name": "Mouse", + "manufacturer": "Ploopy", + "url": "www.ploopy.co", + "maintainer": "drashna", + "usb": { + "vid": "0x5043", + "pid": "0x4D6F", + "device_version": "0.0.1", + "max_power": 100 + }, + "bootmagic": { + "matrix": [0, 3] + }, + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": false, + "pointing_device": true, + "encoder": true + }, + "encoder": { + "driver": "custom" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"x": 1, "y": 0, "h": 2, "matrix": [0, 6]}, + {"x": 2, "y": 0, "h": 2, "matrix": [0, 0]}, + {"x": 3, "y": 0.25, "h": 1.25, "matrix": [0, 1]}, + {"x": 4, "y": 0, "h": 2, "matrix": [0, 2]}, + {"x": 5, "y": 0, "h": 2, "matrix": [0, 5]}, + {"x": 0, "y": 0, "matrix": [0, 3]}, + {"x": 0, "y": 1, "matrix": [0, 4]}, + {"x": 3, "y": 1.5, "matrix": [0, 7]} + ] + } + } +} diff --git a/keyboards/ploopyco/mouse/keyboard.json b/keyboards/ploopyco/mouse/keyboard.json deleted file mode 100644 index 4c81ee7338..0000000000 --- a/keyboards/ploopyco/mouse/keyboard.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "keyboard_name": "Mouse", - "manufacturer": "PloopyCo", - "url": "www.ploopy.co", - "maintainer": "drashna", - "usb": { - "vid": "0x5043", - "pid": "0x4D6F", - "device_version": "0.0.1", - "max_power": 100 - }, - "features": { - "bootmagic": true, - "extrakey": true, - "mousekey": true, - "nkro": false, - "pointing_device": true, - "encoder": true - }, - "bootmagic": { - "matrix": [0, 3] - }, - "ws2812": { - "pin": "B5" - }, - "rgblight": { - "led_count": 4, - "max_brightness": 40, - "animations": { - "breathing": true, - "rainbow_mood": true, - "rainbow_swirl": true - } - }, - "processor": "atmega32u4", - "bootloader": "atmel-dfu", - "matrix_pins": { - "direct": [ - ["D4", "D2", "E6", "B6", "D7", "C6", "C7", "B7"] - ] - }, - "encoder": { - "driver": "custom" - }, - "layouts": { - "LAYOUT": { - "layout": [ - {"x": 1, "y": 0, "h": 2, "matrix": [0, 6]}, - {"x": 2, "y": 0, "h": 2, "matrix": [0, 0]}, - {"x": 3, "y": 0.25, "h": 1.25, "matrix": [0, 1]}, - {"x": 4, "y": 0, "h": 2, "matrix": [0, 2]}, - {"x": 5, "y": 0, "h": 2, "matrix": [0, 5]}, - {"x": 0, "y": 0, "matrix": [0, 3]}, - {"x": 0, "y": 1, "matrix": [0, 4]}, - {"x": 3, "y": 1.5, "matrix": [0, 7]} - ] - } - } -} diff --git a/keyboards/ploopyco/mouse/post_rules.mk b/keyboards/ploopyco/mouse/post_rules.mk new file mode 100644 index 0000000000..0d1a00b89e --- /dev/null +++ b/keyboards/ploopyco/mouse/post_rules.mk @@ -0,0 +1 @@ +POINTING_DEVICE_DRIVER = pmw3360 \ No newline at end of file diff --git a/keyboards/ploopyco/mouse/readme.md b/keyboards/ploopyco/mouse/readme.md index 060448c2bf..c5c6bb7dce 100644 --- a/keyboards/ploopyco/mouse/readme.md +++ b/keyboards/ploopyco/mouse/readme.md @@ -6,14 +6,14 @@ It's a DIY, QMK Powered Mouse!!!! * Keyboard Maintainer: [PloopyCo](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/) -* Hardware Supported: ATMega32u4 8MHz(3.3v) +* Hardware Supported: ATMega32u4 8MHz(3.3v), Raspberry RP2040 * Hardware Availability: [Store](https://ploopy.co), [GitHub](https://github.com/ploopyco) Make example for this keyboard (after setting up your build environment): make ploopyco/mouse:default:flash - -To jump to the bootloader, hold down "Button 4" (the "forward" button on the left side) + +To jump to the bootloader, hold down "Button 4" (the "forward" button on the left side) 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). diff --git a/keyboards/ploopyco/mouse/rev1_002/config.h b/keyboards/ploopyco/mouse/rev1_002/config.h new file mode 100644 index 0000000000..49b53bc8dd --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_002/config.h @@ -0,0 +1,33 @@ +/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * Copyright 2020 Ploopy Corporation + * + * 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 . + */ + +#pragma once + +// These pins are not broken out, and cannot be used normally. +// They are set as output and pulled high, by default +#define UNUSABLE_PINS \ + { B4, D6, F1, F5, F6, F7 } + +// If board has a debug LED, you can enable it by defining this +// #define DEBUG_LED_PIN F7 + +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 + +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/mouse/rev1_002/keyboard.json b/keyboards/ploopyco/mouse/rev1_002/keyboard.json new file mode 100644 index 0000000000..bfed3232f0 --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_002/keyboard.json @@ -0,0 +1,21 @@ +{ + "processor": "atmega32u4", + "bootloader": "atmel-dfu", + "matrix_pins": { + "direct": [ + ["D4", "D2", "E6", "B6", "D7", "C6", "C7", "B7"] + ] + }, + "ws2812": { + "pin": "B5" + }, + "rgblight": { + "led_count": 3, + "max_brightness": 40, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true + } + } +} diff --git a/keyboards/ploopyco/mouse/rev1_002/readme.md b/keyboards/ploopyco/mouse/rev1_002/readme.md new file mode 100644 index 0000000000..a9400ea100 --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_002/readme.md @@ -0,0 +1,3 @@ +See the [main readme](../readme.md) for more details. + +This is for the R1.002 version of the Mouse. It's easily distinguishable from the R1.003+ versions of the Mouse because it has an ATmega32u4 on the board. diff --git a/keyboards/ploopyco/mouse/rev1_002/rules.mk b/keyboards/ploopyco/mouse/rev1_002/rules.mk new file mode 100644 index 0000000000..3437a35bdf --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_002/rules.mk @@ -0,0 +1,2 @@ +# Processor frequency +F_CPU = 8000000 diff --git a/keyboards/ploopyco/mouse/rev1_003/config.h b/keyboards/ploopyco/mouse/rev1_003/config.h new file mode 100644 index 0000000000..b4291e307b --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_003/config.h @@ -0,0 +1,32 @@ +/* Copyright 2024 Colin Lam (Ploopy Corporation) + * Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * + * 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 . + */ + +#pragma once + +#define UNUSABLE_PINS \ + { GP1, GP3, GP4, GP6, GP8, GP10, GP11, GP16, GP18, GP20, GP25, GP27, GP29 } + +/* PMW3360 Settings */ +#define PMW33XX_LIFTOFF_DISTANCE 0x00 +#define PMW33XX_CS_PIN GP5 +#define SPI_SCK_PIN GP2 +#define SPI_MISO_PIN GP0 +#define SPI_MOSI_PIN GP7 + +#define ENCODER_A_PINS { GP26 } +#define ENCODER_B_PINS { GP28 } diff --git a/keyboards/ploopyco/mouse/rev1_003/keyboard.json b/keyboards/ploopyco/mouse/rev1_003/keyboard.json new file mode 100644 index 0000000000..46eca8012f --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_003/keyboard.json @@ -0,0 +1,25 @@ +{ + "processor": "RP2040", + "bootloader": "rp2040", + "usb": { + "device_version": "1.0.0" + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "direct": [ + ["GP15", "GP21", "GP23", "GP17", "GP19", "GP22", "GP14", "GP24"] + ] + }, + "rgblight": { + "led_count": 1, + "max_brightness": 40, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true + } + }, + "ws2812": { + "pin": "GP12" + } +} diff --git a/keyboards/ploopyco/mouse/rev1_003/readme.md b/keyboards/ploopyco/mouse/rev1_003/readme.md new file mode 100644 index 0000000000..3e402f4280 --- /dev/null +++ b/keyboards/ploopyco/mouse/rev1_003/readme.md @@ -0,0 +1,3 @@ +See the [main readme](../readme.md) for more details. + +This is for the R1.003+ version of the Mouse. It's easily distinguishable from the previous versions of the Mouse because it has an RP2040 on the board. diff --git a/keyboards/ploopyco/mouse/rules.mk b/keyboards/ploopyco/mouse/rules.mk deleted file mode 100644 index 3d1d3fc961..0000000000 --- a/keyboards/ploopyco/mouse/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -# Processor frequency -F_CPU = 8000000 - -POINTING_DEVICE_DRIVER = pmw3360 diff --git a/keyboards/ploopyco/trackball/config.h b/keyboards/ploopyco/trackball/config.h index 2aac27437a..1a9b4ad225 100644 --- a/keyboards/ploopyco/trackball/config.h +++ b/keyboards/ploopyco/trackball/config.h @@ -23,20 +23,11 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT +/* PMW3360 settings */ #define ROTATIONAL_TRANSFORM_ANGLE 20 - -// If board has a debug LED, you can enable it by defining this -// #define DEBUG_LED_PIN F7 - -/* PMW33XX Settings */ -#define PMW33XX_CS_PIN B0 #define POINTING_DEVICE_INVERT_Y - #define ENCODER_BUTTON_COL 1 #define ENCODER_BUTTON_ROW 0 /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 - -#define ENCODER_A_PINS { F0 } -#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/trackball/info.json b/keyboards/ploopyco/trackball/info.json index 8014db1d63..9e3312d4bc 100644 --- a/keyboards/ploopyco/trackball/info.json +++ b/keyboards/ploopyco/trackball/info.json @@ -1,6 +1,6 @@ { - "keyboard_name": "Trackball", - "manufacturer": "PloopyCo", + "keyboard_name": "Classic Trackball", + "manufacturer": "Ploopy", "url": "www.ploopy.co", "maintainer": "drashna", "usb": { @@ -12,7 +12,6 @@ "bootmagic": { "matrix": [0, 3] }, - "features": { "bootmagic": true, "extrakey": true, diff --git a/keyboards/ploopyco/trackball/post_rules.mk b/keyboards/ploopyco/trackball/post_rules.mk new file mode 100644 index 0000000000..0d1a00b89e --- /dev/null +++ b/keyboards/ploopyco/trackball/post_rules.mk @@ -0,0 +1 @@ +POINTING_DEVICE_DRIVER = pmw3360 \ No newline at end of file diff --git a/keyboards/ploopyco/trackball/readme.md b/keyboards/ploopyco/trackball/readme.md index c668c5dd03..cca2c15114 100644 --- a/keyboards/ploopyco/trackball/readme.md +++ b/keyboards/ploopyco/trackball/readme.md @@ -1,27 +1,34 @@ -# Ploopyco Trackball +# Ploopy Classic Trackball -![Ploopyco Trackball](https://i.redd.it/j7z0y83txps31.jpg) +![Ploopy Trackball](https://i.redd.it/j7z0y83txps31.jpg) It's a DIY, QMK Powered Trackball!!!! -* Keyboard Maintainer: [PloopyCo](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/) -* Hardware Supported: ATMega32u4 8MHz(3.3v) +* Keyboard Maintainer: [Ploopy](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/) +* Hardware Supported: ATMega32u4 8MHz(3.3v), Raspberry RP2040 * Hardware Availability: [Store](https://ploopy.co), [GitHub](https://github.com/ploopyco) Make example for this keyboard (after setting up your build environment): - make ploopyco/trackball/rev1:default:flash + make ploopyco/trackball/rev1_004:default:flash make ploopyco/trackball/rev1_005:default:flash - -To jump to the bootloader, hold down "Button 4" (immediate right of the trackball) + make ploopyco/trackball/rev1_007:default:flash + +To jump to the bootloader, hold down "Button 4" (immediate right of the trackball) 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). ## Revisions -There are two main revisions for the PloopyCo Trackball, everything up to 1.004, and 1.005-1.006. +There are three main revisions for the Ploopy Classic Trackball: + +- Everything up to 1.004 (very rare) +- Revision 1.005 and 1.006 (commonly sold between 2020 and 2024) +- Revision 1.007 (first available in 2025) + +In the 1.005 revision, button four was changed from pin B5 to B6, and the debug LED pin was changed from F7 to B5. -In the 1.005 revision, button for was changed from pin B5 to B6, and the debug LED pin was changed from F7 to B5. +In the 1.007 revision, the board was switched from an ATMega32u4 architecture to the Raspberry RP2040 architecture. The PCB should indicate which revision this is. diff --git a/keyboards/ploopyco/trackball/rev1/config.h b/keyboards/ploopyco/trackball/rev1/config.h deleted file mode 100644 index 35ab215341..0000000000 --- a/keyboards/ploopyco/trackball/rev1/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) - * Copyright 2019 Sunjun Kim - * Copyright 2020 Ploopy Corporation - * - * 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 . - */ - -#pragma once - -// These pins are not broken out, and cannot be used normally. -// They are set as output and pulled high, by default -#define UNUSABLE_PINS \ - { D1, D3, B4, B6, B7, D6, C7, F6, F5, F3, F7 } - -// If board has a debug LED, you can enable it by defining this -#define DEBUG_LED_PIN F7 diff --git a/keyboards/ploopyco/trackball/rev1/keyboard.json b/keyboards/ploopyco/trackball/rev1/keyboard.json deleted file mode 100644 index 8e372e7c2b..0000000000 --- a/keyboards/ploopyco/trackball/rev1/keyboard.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "processor": "atmega32u4", - "bootloader": "caterina", - "matrix_pins": { - "direct": [ - ["D4", "D2", "E6", "B5", "D7"] - ] - } -} diff --git a/keyboards/ploopyco/trackball/rev1/readme.md b/keyboards/ploopyco/trackball/rev1/readme.md deleted file mode 100644 index a824c4690e..0000000000 --- a/keyboards/ploopyco/trackball/rev1/readme.md +++ /dev/null @@ -1,30 +0,0 @@ -See the [main readme](../readme.md) for more details. - -This is just the rev 1.001-1.004 trackball - -# Programming QMK-DFU onto the PloopyCo Trackball (Advanced) - -If you would rather have DFU on this board, you can use the QMK-DFU bootloader on the device. To do so, you want to run: - - make ploopyco/trackball:default:production - -Once you have that, you'll need to [ISP Flash](https://docs.qmk.fm/#/isp_flashing_guide) the chip with the new "production" hex file created (or the production hex), and set the fuses: - - -| Fuse | Setting | -|----------|------------------| -| Low | `0x52` | -| High | `0x99` | -| Extended | `0xCB` | - -Original (Caterina) settings: - -| Fuse | Setting | -|----------|------------------| -| Low | `0xFF` | -| High | `0xD8` | -| Extended | `0xFE` | - -If you're using QMK DFU, you'll also need to add `BOOTLOADER=qmk-dfu` to your keymap's rules.mk file, to ensure that the reboot/reset works correctly. Otherwise, it will jump right back into the firmware, like nothing happened. - -Additionally, once you've flashed the qmk-dfu bootloader onto your device, you will no longer be able to use the Arduino IDE to flash the board. You'll need to use the command line or QMK Toolbox to flash it. diff --git a/keyboards/ploopyco/trackball/rev1_004/config.h b/keyboards/ploopyco/trackball/rev1_004/config.h new file mode 100644 index 0000000000..25bcf86391 --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_004/config.h @@ -0,0 +1,33 @@ +/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * Copyright 2020 Ploopy Corporation + * + * 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 . + */ + +#pragma once + +// These pins are not broken out, and cannot be used normally. +// They are set as output and pulled high, by default +#define UNUSABLE_PINS \ + { D1, D3, B4, B6, B7, D6, C7, F6, F5, F3, F7 } + +// If board has a debug LED, you can enable it by defining this +#define DEBUG_LED_PIN F7 + +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 + +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/trackball/rev1_004/keyboard.json b/keyboards/ploopyco/trackball/rev1_004/keyboard.json new file mode 100644 index 0000000000..8e372e7c2b --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_004/keyboard.json @@ -0,0 +1,9 @@ +{ + "processor": "atmega32u4", + "bootloader": "caterina", + "matrix_pins": { + "direct": [ + ["D4", "D2", "E6", "B5", "D7"] + ] + } +} diff --git a/keyboards/ploopyco/trackball/rev1_004/readme.md b/keyboards/ploopyco/trackball/rev1_004/readme.md new file mode 100644 index 0000000000..a824c4690e --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_004/readme.md @@ -0,0 +1,30 @@ +See the [main readme](../readme.md) for more details. + +This is just the rev 1.001-1.004 trackball + +# Programming QMK-DFU onto the PloopyCo Trackball (Advanced) + +If you would rather have DFU on this board, you can use the QMK-DFU bootloader on the device. To do so, you want to run: + + make ploopyco/trackball:default:production + +Once you have that, you'll need to [ISP Flash](https://docs.qmk.fm/#/isp_flashing_guide) the chip with the new "production" hex file created (or the production hex), and set the fuses: + + +| Fuse | Setting | +|----------|------------------| +| Low | `0x52` | +| High | `0x99` | +| Extended | `0xCB` | + +Original (Caterina) settings: + +| Fuse | Setting | +|----------|------------------| +| Low | `0xFF` | +| High | `0xD8` | +| Extended | `0xFE` | + +If you're using QMK DFU, you'll also need to add `BOOTLOADER=qmk-dfu` to your keymap's rules.mk file, to ensure that the reboot/reset works correctly. Otherwise, it will jump right back into the firmware, like nothing happened. + +Additionally, once you've flashed the qmk-dfu bootloader onto your device, you will no longer be able to use the Arduino IDE to flash the board. You'll need to use the command line or QMK Toolbox to flash it. diff --git a/keyboards/ploopyco/trackball/rev1_004/rules.mk b/keyboards/ploopyco/trackball/rev1_004/rules.mk new file mode 100644 index 0000000000..3437a35bdf --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_004/rules.mk @@ -0,0 +1,2 @@ +# Processor frequency +F_CPU = 8000000 diff --git a/keyboards/ploopyco/trackball/rev1_005/config.h b/keyboards/ploopyco/trackball/rev1_005/config.h index 014d67f9c1..404caca093 100644 --- a/keyboards/ploopyco/trackball/rev1_005/config.h +++ b/keyboards/ploopyco/trackball/rev1_005/config.h @@ -22,3 +22,12 @@ // They are set as output and pulled high, by default #define UNUSABLE_PINS \ { D1, D3, B4, B7, D6, C7, F6, F5, F3, F7 } + +// If board has a debug LED, you can enable it by defining this +// #define DEBUG_LED_PIN F7 + +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 + +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/trackball/rev1_005/readme.md b/keyboards/ploopyco/trackball/rev1_005/readme.md index a923d16591..980f118a10 100644 --- a/keyboards/ploopyco/trackball/rev1_005/readme.md +++ b/keyboards/ploopyco/trackball/rev1_005/readme.md @@ -1,3 +1,3 @@ -See the [main readme](../readme.md) for more details. +See the [main readme](../readme.md) for more details. -This is just the rev 1.005+ trackball +This is for the R1.005-R1.006 version of the Classic. It's easily distinguishable from the R1.007+ versions of the Classic because it has an ATmega32u4 on the board. \ No newline at end of file diff --git a/keyboards/ploopyco/trackball/rev1_005/rules.mk b/keyboards/ploopyco/trackball/rev1_005/rules.mk new file mode 100644 index 0000000000..3437a35bdf --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_005/rules.mk @@ -0,0 +1,2 @@ +# Processor frequency +F_CPU = 8000000 diff --git a/keyboards/ploopyco/trackball/rev1_007/config.h b/keyboards/ploopyco/trackball/rev1_007/config.h new file mode 100644 index 0000000000..97f2e46b5c --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_007/config.h @@ -0,0 +1,32 @@ +/* Copyright 2024 Colin Lam (Ploopy Corporation) + * Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * + * 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 . + */ + +#pragma once + +#define UNUSABLE_PINS \ + { GP1, GP3, GP4, GP6, GP8, GP10, GP11, GP14, GP16, GP18, GP20, GP22, GP24, GP25, GP27, GP29 } + +/* PMW3360 Settings */ +#define PMW33XX_LIFTOFF_DISTANCE 0x00 +#define PMW33XX_CS_PIN GP5 +#define SPI_SCK_PIN GP2 +#define SPI_MISO_PIN GP0 +#define SPI_MOSI_PIN GP7 + +#define ENCODER_A_PINS { GP26 } +#define ENCODER_B_PINS { GP28 } diff --git a/keyboards/ploopyco/trackball/rev1_007/keyboard.json b/keyboards/ploopyco/trackball/rev1_007/keyboard.json new file mode 100644 index 0000000000..4098c86fda --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_007/keyboard.json @@ -0,0 +1,25 @@ +{ + "processor": "RP2040", + "bootloader": "rp2040", + "usb": { + "device_version": "1.0.0" + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "direct": [ + ["GP15", "GP21", "GP23", "GP17", "GP19"] + ] + }, + "rgblight": { + "led_count": 1, + "max_brightness": 40, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true + } + }, + "ws2812": { + "pin": "GP12" + } +} diff --git a/keyboards/ploopyco/trackball/rev1_007/readme.md b/keyboards/ploopyco/trackball/rev1_007/readme.md new file mode 100644 index 0000000000..6b8da3a959 --- /dev/null +++ b/keyboards/ploopyco/trackball/rev1_007/readme.md @@ -0,0 +1,3 @@ +See the [main readme](../readme.md) for more details. + +This is for the R1.007+ version of the Classic. It's easily distinguishable from the previous versions of the Classic because it has an RP2040 on the board. diff --git a/keyboards/ploopyco/trackball/rules.mk b/keyboards/ploopyco/trackball/rules.mk deleted file mode 100644 index 9ea10ba6e8..0000000000 --- a/keyboards/ploopyco/trackball/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Processor frequency -F_CPU = 8000000 - -POINTING_DEVICE_DRIVER = pmw3360 - -DEFAULT_FOLDER = ploopyco/trackball/rev1_005 diff --git a/keyboards/ploopyco/trackball_thumb/config.h b/keyboards/ploopyco/trackball_thumb/config.h index f03ffc7699..0f269bd21a 100644 --- a/keyboards/ploopyco/trackball_thumb/config.h +++ b/keyboards/ploopyco/trackball_thumb/config.h @@ -29,9 +29,6 @@ // If board has a debug LED, you can enable it by defining this // #define DEBUG_LED_PIN F7 -/* PMW3360 Settings */ -#define POINTING_DEVICE_CS_PIN B0 - #define ENCODER_BUTTON_COL 1 #define ENCODER_BUTTON_ROW 0 @@ -41,6 +38,3 @@ #define ENCODER_HIGH_THRES_B 90 /* Custom encoder needs to specify just how many encoders we have */ #define NUM_ENCODERS 1 - -#define ENCODER_A_PINS { F4 } -#define ENCODER_B_PINS { F0 } diff --git a/keyboards/ploopyco/trackball_thumb/info.json b/keyboards/ploopyco/trackball_thumb/info.json index e27bf47252..7e93296d24 100644 --- a/keyboards/ploopyco/trackball_thumb/info.json +++ b/keyboards/ploopyco/trackball_thumb/info.json @@ -1,22 +1,22 @@ { - "keyboard_name": "PloopyCo Thumb Trackball", + "keyboard_name": "Thumb Trackball", + "manufacturer": "Ploopy", "url": "www.ploopy.co", "maintainer": "ploopyco", - "manufacturer": "Ploopy Corporation", - "processor": "atmega32u4", - "bootloader": "atmel-dfu", "usb": { "vid": "0x5043", "pid": "0x5C46", + "device_version": "0.0.1", "max_power": 100 }, + "bootmagic": { + "matrix": [0, 3] + }, "features": { "bootmagic": true, - "command": false, - "console": false, "extrakey": true, "mousekey": true, - "nkro": true, + "nkro": false, "pointing_device": true, "encoder": true }, diff --git a/keyboards/ploopyco/trackball_thumb/post_rules.mk b/keyboards/ploopyco/trackball_thumb/post_rules.mk new file mode 100644 index 0000000000..0d1a00b89e --- /dev/null +++ b/keyboards/ploopyco/trackball_thumb/post_rules.mk @@ -0,0 +1 @@ +POINTING_DEVICE_DRIVER = pmw3360 \ No newline at end of file diff --git a/keyboards/ploopyco/trackball_thumb/readme.md b/keyboards/ploopyco/trackball_thumb/readme.md index 8299c08809..bb870d2003 100644 --- a/keyboards/ploopyco/trackball_thumb/readme.md +++ b/keyboards/ploopyco/trackball_thumb/readme.md @@ -3,13 +3,13 @@ It's a DIY, QMK Powered Trackball...for thumb ballers! * Keyboard Maintainer: [PloopyCo](https://github.com/ploopyco), [Drashna Jael're](https://github.com/drashna/), [Germ](https://github.com/germ/) -* Hardware Supported: ATMega32u4 8MHz(3.3v) +* Hardware Supported: ATMega32u4 8MHz(3.3v), Raspberry RP2040 * Hardware Availability: [Store](https://ploopy.co), [GitHub](https://github.com/ploopyco) Make example for this keyboard (after setting up your build environment): make ploopyco/trackball_thumb/rev1_001:default:flash - + To jump to the bootloader, hold down "Button 4" (button closest to the USB port). 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). diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/config.h b/keyboards/ploopyco/trackball_thumb/rev1_001/config.h index a648e8e8e4..108a104cdc 100644 --- a/keyboards/ploopyco/trackball_thumb/rev1_001/config.h +++ b/keyboards/ploopyco/trackball_thumb/rev1_001/config.h @@ -22,3 +22,9 @@ // They are set as output and pulled high, by default #define UNUSABLE_PINS \ { D1, D3, B4, B7, D6, C7, F6, F5, F3, F7 } + +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 + +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json b/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json index db12ee6217..04457f19b9 100644 --- a/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json +++ b/keyboards/ploopyco/trackball_thumb/rev1_001/keyboard.json @@ -1,13 +1,14 @@ { - "usb": { - "device_version": "1.0.0" - }, - "diode_direction": "COL2ROW", + "processor": "atmega32u4", + "bootloader": "atmel-dfu", "matrix_pins": { "direct": [ ["D5", "B6", "D4", "D2", "E6", "D7"] ] }, + "ws2812": { + "pin": "B5" + }, "rgblight": { "led_count": 3, "max_brightness": 40, @@ -16,8 +17,5 @@ "rainbow_mood": true, "rainbow_swirl": true } - }, - "ws2812": { - "pin": "B5" } } diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md b/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md index 5a5f0563e7..658a71df0a 100644 --- a/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md +++ b/keyboards/ploopyco/trackball_thumb/rev1_001/readme.md @@ -1,3 +1,3 @@ -This is the R1.001+ version of the Thumb. Future versions may have other features. +See the [main readme](../readme.md) for more details. -See the [main readme](../readme.md) for more details. +This is for the R1.001 version of the Thumb. It's easily distinguishable from the R1.002+ versions of the Thumb because it has an ATmega32u4 on the board. \ No newline at end of file diff --git a/keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk b/keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk new file mode 100644 index 0000000000..3437a35bdf --- /dev/null +++ b/keyboards/ploopyco/trackball_thumb/rev1_001/rules.mk @@ -0,0 +1,2 @@ +# Processor frequency +F_CPU = 8000000 diff --git a/keyboards/ploopyco/trackball_thumb/rev1_002/config.h b/keyboards/ploopyco/trackball_thumb/rev1_002/config.h new file mode 100644 index 0000000000..e25f50604e --- /dev/null +++ b/keyboards/ploopyco/trackball_thumb/rev1_002/config.h @@ -0,0 +1,32 @@ +/* Copyright 2024 Colin Lam (Ploopy Corporation) + * Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * + * 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 . + */ + +#pragma once + +#define UNUSABLE_PINS \ + { GP1, GP3, GP4, GP6, GP8, GP10, GP11, GP14, GP18, GP20, GP22, GP24, GP25, GP27, GP29 } + +/* PMW3360 Settings */ +#define PMW33XX_LIFTOFF_DISTANCE 0x00 +#define PMW33XX_CS_PIN GP5 +#define SPI_SCK_PIN GP2 +#define SPI_MISO_PIN GP0 +#define SPI_MOSI_PIN GP7 + +#define ENCODER_A_PINS { GP28 } +#define ENCODER_B_PINS { GP26 } diff --git a/keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json b/keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json new file mode 100644 index 0000000000..a3a50a536e --- /dev/null +++ b/keyboards/ploopyco/trackball_thumb/rev1_002/keyboard.json @@ -0,0 +1,25 @@ +{ + "processor": "RP2040", + "bootloader": "rp2040", + "usb": { + "device_version": "1.0.0" + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "direct": [ + ["GP17", "GP16", "GP15", "GP21", "GP23", "GP19"] + ] + }, + "rgblight": { + "led_count": 1, + "max_brightness": 40, + "animations": { + "breathing": true, + "rainbow_mood": true, + "rainbow_swirl": true + } + }, + "ws2812": { + "pin": "GP12" + } +} diff --git a/keyboards/ploopyco/trackball_thumb/rev1_002/readme.md b/keyboards/ploopyco/trackball_thumb/rev1_002/readme.md new file mode 100644 index 0000000000..c1e95d9a8e --- /dev/null +++ b/keyboards/ploopyco/trackball_thumb/rev1_002/readme.md @@ -0,0 +1,3 @@ +See the [main readme](../readme.md) for more details. + +This is for the R1.002+ version of the Thumb. It's easily distinguishable from the previous versions of the Thumb because it has an RP2040 on the board. diff --git a/keyboards/ploopyco/trackball_thumb/rules.mk b/keyboards/ploopyco/trackball_thumb/rules.mk deleted file mode 100644 index 0bd44d316a..0000000000 --- a/keyboards/ploopyco/trackball_thumb/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# Processor frequency -F_CPU = 8000000 - -POINTING_DEVICE_DRIVER = pmw3360 - -DEFAULT_FOLDER = ploopyco/trackball_thumb/rev1_001 -- cgit v1.2.3 From 63daf94ee60a629afcce2de623f22ae6777682c5 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 22 Feb 2025 01:48:42 +0000 Subject: Migrate some DEFAULT_FOLDER to keyboard_aliases.hjson (#24938) --- data/mappings/keyboard_aliases.hjson | 12 ++++++++++++ keyboards/ploopyco/madromys/post_rules.mk | 1 + keyboards/ploopyco/madromys/rules.mk | 3 --- keyboards/ploopyco/trackball_mini/post_rules.mk | 1 + keyboards/ploopyco/trackball_mini/rules.mk | 3 --- keyboards/ploopyco/trackball_nano/post_rules.mk | 1 + keyboards/ploopyco/trackball_nano/rules.mk | 3 --- 7 files changed, 15 insertions(+), 9 deletions(-) create mode 100644 keyboards/ploopyco/madromys/post_rules.mk delete mode 100644 keyboards/ploopyco/madromys/rules.mk create mode 100644 keyboards/ploopyco/trackball_mini/post_rules.mk delete mode 100644 keyboards/ploopyco/trackball_mini/rules.mk create mode 100644 keyboards/ploopyco/trackball_nano/post_rules.mk delete mode 100644 keyboards/ploopyco/trackball_nano/rules.mk (limited to 'keyboards') diff --git a/data/mappings/keyboard_aliases.hjson b/data/mappings/keyboard_aliases.hjson index 09549baf69..b601a42761 100644 --- a/data/mappings/keyboard_aliases.hjson +++ b/data/mappings/keyboard_aliases.hjson @@ -2025,6 +2025,18 @@ "pinky": { "target": "pinky/3" }, + "ploopyco/madromys": { + "target": "ploopyco/madromys/rev1_001" + }, + "ploopyco/trackball_mini": { + "target": "ploopyco/trackball_mini/rev1_001" + }, + "ploopyco/trackball_nano": { + "target": "ploopyco/trackball_nano/rev1_001" + }, + "ploopyco/trackball_thumb": { + "target": "ploopyco/trackball_thumb/rev1_001" + }, "primekb/meridian": { "target": "primekb/meridian/ktr1010" }, diff --git a/keyboards/ploopyco/madromys/post_rules.mk b/keyboards/ploopyco/madromys/post_rules.mk new file mode 100644 index 0000000000..fab9162dc6 --- /dev/null +++ b/keyboards/ploopyco/madromys/post_rules.mk @@ -0,0 +1 @@ +POINTING_DEVICE_DRIVER = pmw3360 diff --git a/keyboards/ploopyco/madromys/rules.mk b/keyboards/ploopyco/madromys/rules.mk deleted file mode 100644 index b7e33d92f9..0000000000 --- a/keyboards/ploopyco/madromys/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -POINTING_DEVICE_DRIVER = pmw3360 - -DEFAULT_FOLDER = ploopyco/madromys/rev1_001 diff --git a/keyboards/ploopyco/trackball_mini/post_rules.mk b/keyboards/ploopyco/trackball_mini/post_rules.mk new file mode 100644 index 0000000000..99fca15fc1 --- /dev/null +++ b/keyboards/ploopyco/trackball_mini/post_rules.mk @@ -0,0 +1 @@ +POINTING_DEVICE_DRIVER = adns5050 diff --git a/keyboards/ploopyco/trackball_mini/rules.mk b/keyboards/ploopyco/trackball_mini/rules.mk deleted file mode 100644 index 2705ac6855..0000000000 --- a/keyboards/ploopyco/trackball_mini/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -POINTING_DEVICE_DRIVER = adns5050 - -DEFAULT_FOLDER = ploopyco/trackball_mini/rev1_001 diff --git a/keyboards/ploopyco/trackball_nano/post_rules.mk b/keyboards/ploopyco/trackball_nano/post_rules.mk new file mode 100644 index 0000000000..99fca15fc1 --- /dev/null +++ b/keyboards/ploopyco/trackball_nano/post_rules.mk @@ -0,0 +1 @@ +POINTING_DEVICE_DRIVER = adns5050 diff --git a/keyboards/ploopyco/trackball_nano/rules.mk b/keyboards/ploopyco/trackball_nano/rules.mk deleted file mode 100644 index df29dfbc07..0000000000 --- a/keyboards/ploopyco/trackball_nano/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -POINTING_DEVICE_DRIVER = adns5050 - -DEFAULT_FOLDER = ploopyco/trackball_nano/rev1_001 -- cgit v1.2.3 From 1efc82403bebe759272d1ba7a79d9dfa0d5df506 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 26 Feb 2025 22:25:41 +1100 Subject: Community modules (#24848) --- .github/labeler.yml | 4 + .github/workflows/format.yml | 1 + builddefs/build_keyboard.mk | 122 +++++++--- data/constants/keycodes/keycodes_0.0.7.hjson | 7 + data/constants/module_hooks/0.1.0.hjson | 25 ++ data/constants/module_hooks/1.0.0.hjson | 26 ++ data/schemas/community_module.jsonschema | 17 ++ data/schemas/keyboard.jsonschema | 17 +- data/schemas/keymap.jsonschema | 6 + docs/_sidebar.json | 1 + docs/custom_quantum_functions.md | 11 +- docs/features/community_modules.md | 142 +++++++++++ .../onekey/keymaps/community_module/keymap.c | 7 + .../onekey/keymaps/community_module/keymap.json | 3 + lib/python/qmk/cli/__init__.py | 1 + lib/python/qmk/cli/format/c.py | 2 +- lib/python/qmk/cli/format/json.py | 13 +- lib/python/qmk/cli/generate/community_modules.py | 263 +++++++++++++++++++++ lib/python/qmk/cli/generate/rules_mk.py | 46 +++- lib/python/qmk/cli/info.py | 5 + lib/python/qmk/commands.py | 5 +- lib/python/qmk/community_modules.py | 100 ++++++++ lib/python/qmk/info.py | 27 +++ lib/python/qmk/json_encoders.py | 28 +++ lib/python/qmk/keymap.py | 27 --- modules/qmk/hello_world/hello_world.c | 33 +++ modules/qmk/hello_world/introspection.c | 10 + modules/qmk/hello_world/introspection.h | 10 + modules/qmk/hello_world/qmk_module.json | 13 + modules/qmk/hello_world/rules.mk | 2 + quantum/action.h | 2 +- quantum/keyboard.c | 44 +++- quantum/keycodes.h | 3 + quantum/keymap_introspection.c | 11 + quantum/os_detection.c | 7 + quantum/quantum.c | 26 +- quantum/quantum.h | 4 + 37 files changed, 987 insertions(+), 84 deletions(-) create mode 100644 data/constants/keycodes/keycodes_0.0.7.hjson create mode 100644 data/constants/module_hooks/0.1.0.hjson create mode 100644 data/constants/module_hooks/1.0.0.hjson create mode 100644 data/schemas/community_module.jsonschema create mode 100644 docs/features/community_modules.md create mode 100644 keyboards/handwired/onekey/keymaps/community_module/keymap.c create mode 100644 keyboards/handwired/onekey/keymaps/community_module/keymap.json create mode 100644 lib/python/qmk/cli/generate/community_modules.py create mode 100644 lib/python/qmk/community_modules.py create mode 100644 modules/qmk/hello_world/hello_world.c create mode 100644 modules/qmk/hello_world/introspection.c create mode 100644 modules/qmk/hello_world/introspection.h create mode 100644 modules/qmk/hello_world/qmk_module.json create mode 100644 modules/qmk/hello_world/rules.mk (limited to 'keyboards') diff --git a/.github/labeler.yml b/.github/labeler.yml index 270cd1a813..82f9672bb7 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -54,3 +54,7 @@ dd: - data/constants/** - data/mappings/** - data/schemas/** +community_module: + - changed-files: + - any-glob-to-any-file: + - modules/** diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 74c518fe05..b4e32f981b 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -10,6 +10,7 @@ on: - 'lib/arm_atsam/**' - 'lib/lib8tion/**' - 'lib/python/**' + - 'modules/**' - 'platforms/**' - 'quantum/**' - 'tests/**' diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index 7d58c29462..c5fc9cd25d 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -112,6 +112,39 @@ endif ifneq ("$(wildcard $(KEYBOARD_PATH_1)/rules.mk)","") include $(KEYBOARD_PATH_1)/rules.mk endif +# Create dependencies on DD keyboard config - structure validated elsewhere +DD_CONFIG_FILES := +ifneq ("$(wildcard $(KEYBOARD_PATH_1)/info.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_1)/info.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_2)/info.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_2)/info.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_3)/info.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_3)/info.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_4)/info.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_4)/info.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_5)/info.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_5)/info.json +endif + +ifneq ("$(wildcard $(KEYBOARD_PATH_1)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_1)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_2)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_2)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_3)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_3)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_4)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_4)/keyboard.json +endif +ifneq ("$(wildcard $(KEYBOARD_PATH_5)/keyboard.json)","") + DD_CONFIG_FILES += $(KEYBOARD_PATH_5)/keyboard.json +endif MAIN_KEYMAP_PATH_1 := $(KEYBOARD_PATH_1)/keymaps/$(KEYMAP) MAIN_KEYMAP_PATH_2 := $(KEYBOARD_PATH_2)/keymaps/$(KEYMAP) @@ -207,17 +240,17 @@ ifneq ("$(wildcard $(KEYMAP_JSON))", "") include $(INFO_RULES_MK) # Add rules to generate the keymap files - indentation here is important -$(INTERMEDIATE_OUTPUT)/src/keymap.c: $(KEYMAP_JSON) +$(INTERMEDIATE_OUTPUT)/src/keymap.c: $(KEYMAP_JSON) $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) json2c --quiet --output $(KEYMAP_C) $(KEYMAP_JSON)) @$(BUILD_CMD) -$(INTERMEDIATE_OUTPUT)/src/config.h: $(KEYMAP_JSON) +$(INTERMEDIATE_OUTPUT)/src/config.h: $(KEYMAP_JSON) $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-config-h --quiet --output $(KEYMAP_H) $(KEYMAP_JSON)) @$(BUILD_CMD) -$(INTERMEDIATE_OUTPUT)/src/keymap.h: $(KEYMAP_JSON) +$(INTERMEDIATE_OUTPUT)/src/keymap.h: $(KEYMAP_JSON) $(DD_CONFIG_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-keymap-h --quiet --output $(INTERMEDIATE_OUTPUT)/src/keymap.h $(KEYMAP_JSON)) @$(BUILD_CMD) @@ -226,6 +259,32 @@ generated-files: $(INTERMEDIATE_OUTPUT)/src/config.h $(INTERMEDIATE_OUTPUT)/src/ endif +# Community modules +$(INTERMEDIATE_OUTPUT)/src/community_modules.h: $(KEYMAP_JSON) $(DD_CONFIG_FILES) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-community-modules-h -kb $(KEYBOARD) --quiet --output $(INTERMEDIATE_OUTPUT)/src/community_modules.h $(KEYMAP_JSON)) + @$(BUILD_CMD) + +$(INTERMEDIATE_OUTPUT)/src/community_modules.c: $(KEYMAP_JSON) $(DD_CONFIG_FILES) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-community-modules-c -kb $(KEYBOARD) --quiet --output $(INTERMEDIATE_OUTPUT)/src/community_modules.c $(KEYMAP_JSON)) + @$(BUILD_CMD) + +$(INTERMEDIATE_OUTPUT)/src/community_modules_introspection.c: $(KEYMAP_JSON) $(DD_CONFIG_FILES) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-community-modules-introspection-c -kb $(KEYBOARD) --quiet --output $(INTERMEDIATE_OUTPUT)/src/community_modules_introspection.c $(KEYMAP_JSON)) + @$(BUILD_CMD) + +$(INTERMEDIATE_OUTPUT)/src/community_modules_introspection.h: $(KEYMAP_JSON) $(DD_CONFIG_FILES) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-community-modules-introspection-h -kb $(KEYBOARD) --quiet --output $(INTERMEDIATE_OUTPUT)/src/community_modules_introspection.h $(KEYMAP_JSON)) + @$(BUILD_CMD) + +SRC += $(INTERMEDIATE_OUTPUT)/src/community_modules.c + +generated-files: $(INTERMEDIATE_OUTPUT)/src/community_modules.h $(INTERMEDIATE_OUTPUT)/src/community_modules.c $(INTERMEDIATE_OUTPUT)/src/community_modules_introspection.c $(INTERMEDIATE_OUTPUT)/src/community_modules_introspection.h + + include $(BUILDDEFS_PATH)/converters.mk # Generate the board's version.h file. @@ -315,6 +374,14 @@ endif # Find all of the config.h files and add them to our CONFIG_H define. CONFIG_H := + +define config_h_community_module_appender + ifneq ("$(wildcard $(1)/config.h)","") + CONFIG_H += $(1)/config.h + endif +endef +$(foreach module,$(COMMUNITY_MODULE_PATHS),$(eval $(call config_h_community_module_appender,$(module)))) + ifneq ("$(wildcard $(KEYBOARD_PATH_5)/config.h)","") CONFIG_H += $(KEYBOARD_PATH_5)/config.h endif @@ -332,6 +399,14 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_1)/config.h)","") endif POST_CONFIG_H := + +define post_config_h_community_module_appender + ifneq ("$(wildcard $(1)/post_config.h)","") + POST_CONFIG_H += $(1)/post_config.h + endif +endef +$(foreach module,$(COMMUNITY_MODULE_PATHS),$(eval $(call post_config_h_community_module_appender,$(module)))) + ifneq ("$(wildcard $(KEYBOARD_PATH_1)/post_config.h)","") POST_CONFIG_H += $(KEYBOARD_PATH_1)/post_config.h endif @@ -348,40 +423,6 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_5)/post_config.h)","") POST_CONFIG_H += $(KEYBOARD_PATH_5)/post_config.h endif -# Create dependencies on DD keyboard config - structure validated elsewhere -DD_CONFIG_FILES := -ifneq ("$(wildcard $(KEYBOARD_PATH_1)/info.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_1)/info.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_2)/info.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_2)/info.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_3)/info.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_3)/info.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_4)/info.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_4)/info.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_5)/info.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_5)/info.json -endif - -ifneq ("$(wildcard $(KEYBOARD_PATH_1)/keyboard.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_1)/keyboard.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_2)/keyboard.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_2)/keyboard.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_3)/keyboard.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_3)/keyboard.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_4)/keyboard.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_4)/keyboard.json -endif -ifneq ("$(wildcard $(KEYBOARD_PATH_5)/keyboard.json)","") - DD_CONFIG_FILES += $(KEYBOARD_PATH_5)/keyboard.json -endif - CONFIG_H += $(INTERMEDIATE_OUTPUT)/src/info_config.h KEYBOARD_SRC += $(INTERMEDIATE_OUTPUT)/src/default_keyboard.c @@ -462,6 +503,13 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_5)/post_rules.mk)","") include $(KEYBOARD_PATH_5)/post_rules.mk endif +define post_rules_mk_community_module_includer + ifneq ("$(wildcard $(1)/post_rules.mk)","") + include $(1)/post_rules.mk + endif +endef +$(foreach module,$(COMMUNITY_MODULE_PATHS),$(eval $(call post_rules_mk_community_module_includer,$(module)))) + ifneq ("$(wildcard $(KEYMAP_PATH)/config.h)","") CONFIG_H += $(KEYMAP_PATH)/config.h endif diff --git a/data/constants/keycodes/keycodes_0.0.7.hjson b/data/constants/keycodes/keycodes_0.0.7.hjson new file mode 100644 index 0000000000..52e1a50443 --- /dev/null +++ b/data/constants/keycodes/keycodes_0.0.7.hjson @@ -0,0 +1,7 @@ +{ + "ranges": { + "0x77C0/0x003F": { + "define": "QK_COMMUNITY_MODULE" + } + } +} diff --git a/data/constants/module_hooks/0.1.0.hjson b/data/constants/module_hooks/0.1.0.hjson new file mode 100644 index 0000000000..c77f4c297e --- /dev/null +++ b/data/constants/module_hooks/0.1.0.hjson @@ -0,0 +1,25 @@ +{ + keyboard_pre_init: { + ret_type: void + args: void + } + keyboard_post_init: { + ret_type: void + args: void + } + pre_process_record: { + ret_type: bool + args: uint16_t keycode, keyrecord_t *record + call_params: keycode, record + } + process_record: { + ret_type: bool + args: uint16_t keycode, keyrecord_t *record + call_params: keycode, record + } + post_process_record: { + ret_type: void + args: uint16_t keycode, keyrecord_t *record + call_params: keycode, record + } +} diff --git a/data/constants/module_hooks/1.0.0.hjson b/data/constants/module_hooks/1.0.0.hjson new file mode 100644 index 0000000000..4e7bf30412 --- /dev/null +++ b/data/constants/module_hooks/1.0.0.hjson @@ -0,0 +1,26 @@ +{ + housekeeping_task: { + ret_type: void + args: void + } + suspend_power_down: { + ret_type: void + args: void + } + suspend_wakeup_init: { + ret_type: void + args: void + } + shutdown: { + ret_type: bool + args: bool jump_to_bootloader + call_params: jump_to_bootloader + } + process_detected_host_os: { + ret_type: bool + args: os_variant_t os + call_params: os + guard: defined(OS_DETECTION_ENABLE) + header: os_detection.h + } +} diff --git a/data/schemas/community_module.jsonschema b/data/schemas/community_module.jsonschema new file mode 100644 index 0000000000..a3474476df --- /dev/null +++ b/data/schemas/community_module.jsonschema @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema#", + "$id": "qmk.community_module.v1", + "title": "Community Module Information", + "type": "object", + "required": ["module_name", "maintainer"] + "properties": { + "module_name": {"$ref": "qmk.definitions.v1#/text_identifier"}, + "maintainer": {"$ref": "qmk.definitions.v1#/text_identifier"}, + "url": { + "type": "string", + "format": "uri" + }, + "keycodes": {"$ref": "qmk.definitions.v1#/keycode_decl_array"}, + "features": {"$ref": "qmk.keyboard.v1#/definitions/features_config"}, + } +} diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 8b6cc7032b..9b63f62d45 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -31,6 +31,11 @@ "pins": {"$ref": "qmk.definitions.v1#/mcu_pin_array"} } } + "features_config": { + "$ref": "qmk.definitions.v1#/boolean_array", + "propertyNames": {"$ref": "qmk.definitions.v1#/snake_case"}, + "not": {"required": ["lto"]} + }, }, "type": "object", "not": {"required": ["vendorId", "productId"]}, // reject via keys... @@ -328,11 +333,7 @@ "enabled": {"type": "boolean"} } }, - "features": { - "$ref": "qmk.definitions.v1#/boolean_array", - "propertyNames": {"$ref": "qmk.definitions.v1#/snake_case"}, - "not": {"required": ["lto"]} - }, + "features": { "$ref": "#/definitions/features_config" }, "indicators": { "type": "object", "properties": { @@ -467,6 +468,12 @@ "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"} } }, + "modules": { + "type": "array", + "items": { + "type": "string" + } + }, "mouse_key": { "type": "object", "properties": { diff --git a/data/schemas/keymap.jsonschema b/data/schemas/keymap.jsonschema index e967e45c53..b92a536c2c 100644 --- a/data/schemas/keymap.jsonschema +++ b/data/schemas/keymap.jsonschema @@ -71,6 +71,12 @@ "config": {"$ref": "qmk.keyboard.v1"}, "notes": { "type": "string" + }, + "modules": { + "type": "array", + "items": { + "type": "string" + } } } } diff --git a/docs/_sidebar.json b/docs/_sidebar.json index 95601be7de..0b5f297018 100644 --- a/docs/_sidebar.json +++ b/docs/_sidebar.json @@ -60,6 +60,7 @@ "items": [ { "text": "Customizing Functionality", "link": "/custom_quantum_functions" }, { "text": "Driver Installation with Zadig", "link": "/driver_installation_zadig" }, + { "text": "Community Modules", "link": "/features/community_modules" }, { "text": "Keymap Overview", "link": "/keymap" }, { "text": "Development Environments", diff --git a/docs/custom_quantum_functions.md b/docs/custom_quantum_functions.md index 1479eb53f6..c69beb055e 100644 --- a/docs/custom_quantum_functions.md +++ b/docs/custom_quantum_functions.md @@ -9,12 +9,19 @@ This page does not assume any special knowledge about QMK, but reading [Understa We have structured QMK as a hierarchy: * Core (`_quantum`) + * Community Module (`_`) + * Community Module -> Keyboard/Revision (`__kb`) + * Community Module -> Keymap (`__user`) * Keyboard/Revision (`_kb`) * Keymap (`_user`) Each of the functions described below can be defined with a `_kb()` suffix or a `_user()` suffix. We intend for you to use the `_kb()` suffix at the Keyboard/Revision level, while the `_user()` suffix should be used at the Keymap level. -When defining functions at the Keyboard/Revision level it is important that your `_kb()` implementation call `_user()` before executing anything else- otherwise the keymap level function will never be called. +When defining functions at the Keyboard/Revision level it is important that your `_kb()` implementation call `_user()` at an appropriate location, otherwise the keymap level function will never be called. + +Functions at the `__xxx()` level are intended to allow keyboards or keymaps to override or enhance the processing associated with a [community module](/features/community_modules). + +When defining module overrides such as `process_record_()`, the same pattern should be used; the module must invoke `process_record__kb()` as appropriate. # Custom Keycodes @@ -99,7 +106,7 @@ These are the three main initialization functions, listed in the order that they * `keyboard_post_init_*` - Happens at the end of the firmware's startup process. This is where you'd want to put "customization" code, for the most part. ::: warning -For most people, the `keyboard_post_init_user` function is what you want to call. For instance, this is where you want to set up things for RGB Underglow. +For most people, the `keyboard_post_init_user` function is what you want to implement. For instance, this is where you want to set up things for RGB Underglow. ::: ## Keyboard Pre Initialization code diff --git a/docs/features/community_modules.md b/docs/features/community_modules.md new file mode 100644 index 0000000000..3a1a82e7bc --- /dev/null +++ b/docs/features/community_modules.md @@ -0,0 +1,142 @@ +# Community Modules + +Community Modules are a feature within QMK which allows code to be implemented by third parties, making it available for other people to import into their own builds. + +These modules can provide implementations which override or enhance normal QMK processing; initialization, key processing, suspend, and shutdown are some of the provided hooks which modules may implement. + +## Adding a Community Module to your build + +Community Modules have first-class support for [External Userspace](/newbs_external_userspace), and QMK strongly recommends using External Userspace for hosting keymaps and Community Modules together. + +Modules must live in either of two locations: + +* `/modules/` +* `/modules/` + +A basic module is provided within QMK itself -- `qmk/hello_world` -- which prints out a notification over [HID console](/faq_debug) after 10 seconds, and adds a new keycode, `COMMUNITY_MODULE_HELLO` (aliased to `CM_HELO`) which types `Hello there.` to the active application when the corresponding key is pressed. + +To add this module to your build, in your keymap's directory create a `keymap.json` with the following content: + +```json +{ + "modules": [ + "qmk/hello_world" + ] +} +``` + +If you already have a `keymap.json`, you'll need to manually merge the `modules` section into your keymap. + +::: warning +Community Modules are not supported by QMK Configurator. If you wish to use Community Modules, you must build your own firmware. +::: + +## Adding a Community Module to your External Userspace + +Module authors are encouraged to provide a git repository on GitHub which may be imported into a user's external userspace. If a user wishes to import a module repository, they can do the following: + +```sh +cd /path/to/your/external/userspace +mkdir -p modules +# Replace the following {user} and {repo} with the author's community module repository +git submodule add https://github.com/{user}/{repo}.git modules/{user} +git submdule update --init --recursive +``` + +This will ensure the copy of the module is made in your userspace. + +Add a new entry into your `keymap.json` with the desired modules, replacing `{user}` and `{module_name}` as appropriate: + +```json +{ + "modules": [ + "qmk/hello_world", + "{user}/{module_name}" + ] +} +``` + +::: info +The module listed in `keymap.json` is the relative path within the `modules/` directory. So long as the module is present _somewhere_ under `modules/`, then the `keymap.json` can refer to that path. +::: + +## Writing a QMK Community Module + +As stated earlier, Community Module authors are strongly encouraged to provide their modules through git, allowing users to leverage submodules to import functionality. + +### `qmk_module.json` + +A Community Module is denoted by a `qmk_module.json` file such as the following: + +```json +{ + "module_name": "Hello World", + "maintainer": "QMK Maintainers", + "features": { + "deferred_exec": true + }, + "keycodes": [ + { + "key": "COMMUNITY_MODULE_HELLO", + "aliases": ["CM_HELO"] + } + ] +} +``` + +At minimum, the module must provide the `module_name` and `maintainer` fields. + +The use of `features` matches the definition normally provided within `keyboard.json` and `info.json`, allowing a module to signal to the build system that it has its own dependencies. In the example above, it enables the _deferred executor_ feature whenever the above module is used in a build. + +The `keycodes` array allows a module to provide new keycodes (as well as corresponding aliases) to a keymap. + +### `rules.mk` / `post_rules.mk` + +These two files follows standard QMK build system logic, allowing for `Makefile`-style customisation as if it were present in the keyboard or keymap. + +### `.c` + +This file will be automatically added to the build if the filename matches the directory name. For example, the `qmk/hello_world` module contains a `hello_world.c` file, which is automatically added to the build. + +::: info +Other files intended to be included must use the normal method of `SRC += my_file.c` inside `rules.mk`. +::: + +::: tip +This file should use `ASSERT_COMMUNITY_MODULES_MIN_API_VERSION(1,0,0);` to enforce a minimum version of the API that it requires, ensuring the Community Module is built with a compatible version of QMK. The list of APIs and corresponding version is given at the bottom of this document. Note the use of commas instead of periods. +::: + +### `introspection.c` / `introspection.h` + +These two files hook into the keymap introspection logic -- the header is prepended before the user keymap, and the C source file is appended after the user keymap. + +The header may provide definitions which are useful to the user's `keymap.c`. + +The source file may provide functions which allow access to information specified in the user's `keymap.c`. + +::: warning +Introspection is a relatively advanced topic within QMK, and existing patterns should be followed. If you need help please [open an issue](https://github.com/qmk/qmk_firmware/issues/new) or [chat with us on Discord](https://discord.gg/qmk). +::: + +### Compatible APIs + +Community Modules may provide specializations for the following APIs: + +| Base API | API Format | Example (`hello_world` module) | API Version | +|----------------------------|-------------------------------------|----------------------------------------|-------------| +| `keyboard_pre_init` | `keyboard_pre_init_` | `keyboard_pre_init_hello_world` | `0.1.0` | +| `keyboard_post_init` | `keyboard_post_init_` | `keyboard_post_init_hello_world` | `0.1.0` | +| `pre_process_record` | `pre_process_record_` | `pre_process_record_hello_world` | `0.1.0` | +| `process_record` | `process_record_` | `process_record_hello_world` | `0.1.0` | +| `post_process_record` | `post_process_record_` | `post_process_record_hello_world` | `0.1.0` | +| `housekeeping_task` | `housekeeping_task_` | `housekeeping_task_hello_world` | `1.0.0` | +| `suspend_power_down` | `suspend_power_down_` | `suspend_power_down_hello_world` | `1.0.0` | +| `suspend_wakeup_init` | `suspend_wakeup_init_` | `suspend_wakeup_init_hello_world` | `1.0.0` | +| `shutdown` | `shutdown_` | `shutdown_hello_world` | `1.0.0` | +| `process_detected_host_os` | `process_detected_host_os_` | `process_detected_host_os_hello_world` | `1.0.0` | + +::: info +An unspecified API is disregarded if a Community Module does not provide a specialization for it. +::: + +Each API has an equivalent `__kb()` and `__user()` hook, as per the normal QMK [`_quantum`, `_kb`, and `_user` functions](/custom_quantum_functions#a-word-on-core-vs-keyboards-vs-keymap). diff --git a/keyboards/handwired/onekey/keymaps/community_module/keymap.c b/keyboards/handwired/onekey/keymaps/community_module/keymap.c new file mode 100644 index 0000000000..5115a9fea0 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/community_module/keymap.c @@ -0,0 +1,7 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(CM_HELO) +}; diff --git a/keyboards/handwired/onekey/keymaps/community_module/keymap.json b/keyboards/handwired/onekey/keymaps/community_module/keymap.json new file mode 100644 index 0000000000..e3b4051b9e --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/community_module/keymap.json @@ -0,0 +1,3 @@ +{ + "modules": ["qmk/hello_world"] +} diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index bb47ea26ed..3f2ba9ce3c 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -49,6 +49,7 @@ subcommands = [ 'qmk.cli.generate.api', 'qmk.cli.generate.autocorrect_data', 'qmk.cli.generate.compilation_database', + 'qmk.cli.generate.community_modules', 'qmk.cli.generate.config_h', 'qmk.cli.generate.develop_pr_list', 'qmk.cli.generate.dfu_header', diff --git a/lib/python/qmk/cli/format/c.py b/lib/python/qmk/cli/format/c.py index a58aef3fbc..65818155b0 100644 --- a/lib/python/qmk/cli/format/c.py +++ b/lib/python/qmk/cli/format/c.py @@ -10,7 +10,7 @@ from qmk.path import normpath from qmk.c_parse import c_source_files c_file_suffixes = ('c', 'h', 'cpp', 'hpp') -core_dirs = ('drivers', 'quantum', 'tests', 'tmk_core', 'platforms') +core_dirs = ('drivers', 'quantum', 'tests', 'tmk_core', 'platforms', 'modules') ignored = ('tmk_core/protocol/usb_hid', 'platforms/chibios/boards') diff --git a/lib/python/qmk/cli/format/json.py b/lib/python/qmk/cli/format/json.py index 3670294434..61f5254184 100755 --- a/lib/python/qmk/cli/format/json.py +++ b/lib/python/qmk/cli/format/json.py @@ -9,7 +9,7 @@ from milc import cli from qmk.info import info_json from qmk.json_schema import json_load, validate -from qmk.json_encoders import InfoJSONEncoder, KeymapJSONEncoder, UserspaceJSONEncoder +from qmk.json_encoders import InfoJSONEncoder, KeymapJSONEncoder, UserspaceJSONEncoder, CommunityModuleJSONEncoder from qmk.path import normpath @@ -30,6 +30,13 @@ def _detect_json_format(file, json_data): except ValidationError: pass + if json_encoder is None: + try: + validate(json_data, 'qmk.community_module.v1') + json_encoder = CommunityModuleJSONEncoder + except ValidationError: + pass + if json_encoder is None: try: validate(json_data, 'qmk.keyboard.v1') @@ -54,6 +61,8 @@ def _get_json_encoder(file, json_data): json_encoder = KeymapJSONEncoder elif cli.args.format == 'userspace': json_encoder = UserspaceJSONEncoder + elif cli.args.format == 'community_module': + json_encoder = CommunityModuleJSONEncoder else: # This should be impossible cli.log.error('Unknown format: %s', cli.args.format) @@ -61,7 +70,7 @@ def _get_json_encoder(file, json_data): @cli.argument('json_file', arg_only=True, type=normpath, help='JSON file to format') -@cli.argument('-f', '--format', choices=['auto', 'keyboard', 'keymap', 'userspace'], default='auto', arg_only=True, help='JSON formatter to use (Default: autodetect)') +@cli.argument('-f', '--format', choices=['auto', 'keyboard', 'keymap', 'userspace', 'community_module'], default='auto', arg_only=True, help='JSON formatter to use (Default: autodetect)') @cli.argument('-i', '--inplace', action='store_true', arg_only=True, help='If set, will operate in-place on the input file') @cli.argument('-p', '--print', action='store_true', arg_only=True, help='If set, will print the formatted json to stdout ') @cli.subcommand('Generate an info.json file for a keyboard.', hidden=False if cli.config.user.developer else True) diff --git a/lib/python/qmk/cli/generate/community_modules.py b/lib/python/qmk/cli/generate/community_modules.py new file mode 100644 index 0000000000..23678a2fb5 --- /dev/null +++ b/lib/python/qmk/cli/generate/community_modules.py @@ -0,0 +1,263 @@ +import contextlib +from argcomplete.completers import FilesCompleter +from pathlib import Path + +from milc import cli + +import qmk.path +from qmk.info import get_modules +from qmk.keyboard import keyboard_completer, keyboard_folder +from qmk.commands import dump_lines +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE +from qmk.community_modules import module_api_list, load_module_jsons, find_module_path + + +@contextlib.contextmanager +def _render_api_guard(lines, api): + if api.guard: + lines.append(f'#if {api.guard}') + yield + if api.guard: + lines.append(f'#endif // {api.guard}') + + +def _render_api_header(api): + lines = [] + if api.header: + lines.append('') + with _render_api_guard(lines, api): + lines.append(f'#include <{api.header}>') + return lines + + +def _render_keycodes(module_jsons): + lines = [] + lines.append('') + lines.append('enum {') + first = True + for module_json in module_jsons: + module_name = Path(module_json['module']).name + keycodes = module_json.get('keycodes', []) + if len(keycodes) > 0: + lines.append(f' // From module: {module_name}') + for keycode in keycodes: + key = keycode.get('key', None) + if first: + lines.append(f' {key} = QK_COMMUNITY_MODULE,') + first = False + else: + lines.append(f' {key},') + for alias in keycode.get('aliases', []): + lines.append(f' {alias} = {key},') + lines.append('') + lines.append(' LAST_COMMUNITY_MODULE_KEY') + lines.append('};') + lines.append('_Static_assert((int)LAST_COMMUNITY_MODULE_KEY <= (int)(QK_COMMUNITY_MODULE_MAX+1), "Too many community module keycodes");') + return lines + + +def _render_api_declarations(api, module, user_kb=True): + lines = [] + lines.append('') + with _render_api_guard(lines, api): + if user_kb: + lines.append(f'{api.ret_type} {api.name}_{module}_user({api.args});') + lines.append(f'{api.ret_type} {api.name}_{module}_kb({api.args});') + lines.append(f'{api.ret_type} {api.name}_{module}({api.args});') + return lines + + +def _render_api_implementations(api, module): + module_name = Path(module).name + lines = [] + lines.append('') + with _render_api_guard(lines, api): + # _user + lines.append(f'__attribute__((weak)) {api.ret_type} {api.name}_{module_name}_user({api.args}) {{') + if api.ret_type == 'bool': + lines.append(' return true;') + else: + pass + lines.append('}') + lines.append('') + + # _kb + lines.append(f'__attribute__((weak)) {api.ret_type} {api.name}_{module_name}_kb({api.args}) {{') + if api.ret_type == 'bool': + lines.append(f' if(!{api.name}_{module_name}_user({api.call_params})) {{ return false; }}') + lines.append(' return true;') + else: + lines.append(f' {api.name}_{module_name}_user({api.call_params});') + lines.append('}') + lines.append('') + + # module (non-suffixed) + lines.append(f'__attribute__((weak)) {api.ret_type} {api.name}_{module_name}({api.args}) {{') + if api.ret_type == 'bool': + lines.append(f' if(!{api.name}_{module_name}_kb({api.call_params})) {{ return false; }}') + lines.append(' return true;') + else: + lines.append(f' {api.name}_{module_name}_kb({api.call_params});') + lines.append('}') + return lines + + +def _render_core_implementation(api, modules): + lines = [] + lines.append('') + with _render_api_guard(lines, api): + lines.append(f'{api.ret_type} {api.name}_modules({api.args}) {{') + if api.ret_type == 'bool': + lines.append(' return true') + for module in modules: + module_name = Path(module).name + if api.ret_type == 'bool': + lines.append(f' && {api.name}_{module_name}({api.call_params})') + else: + lines.append(f' {api.name}_{module_name}({api.call_params});') + if api.ret_type == 'bool': + lines.append(' ;') + lines.append('}') + return lines + + +@cli.argument('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') +@cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") +@cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, help='Keyboard to generate community_modules.h for.') +@cli.argument('filename', nargs='?', type=qmk.path.FileType('r'), arg_only=True, completer=FilesCompleter('.json'), help='Configurator JSON file') +@cli.subcommand('Creates a community_modules.h from a keymap.json file.') +def generate_community_modules_h(cli): + """Creates a community_modules.h from a keymap.json file + """ + if cli.args.output and cli.args.output.name == '-': + cli.args.output = None + + api_list, api_version, ver_major, ver_minor, ver_patch = module_api_list() + + lines = [ + GPL2_HEADER_C_LIKE, + GENERATED_HEADER_C_LIKE, + '#pragma once', + '#include ', + '#include ', + '#include ', + '', + '#define COMMUNITY_MODULES_API_VERSION_BUILDER(ver_major,ver_minor,ver_patch) (((((uint32_t)(ver_major))&0xFF) << 24) | ((((uint32_t)(ver_minor))&0xFF) << 16) | (((uint32_t)(ver_patch))&0xFF))', + f'#define COMMUNITY_MODULES_API_VERSION COMMUNITY_MODULES_API_VERSION_BUILDER({ver_major},{ver_minor},{ver_patch})', + f'#define ASSERT_COMMUNITY_MODULES_MIN_API_VERSION(ver_major,ver_minor,ver_patch) _Static_assert(COMMUNITY_MODULES_API_VERSION_BUILDER(ver_major,ver_minor,ver_patch) <= COMMUNITY_MODULES_API_VERSION, "Community module requires a newer version of QMK modules API -- needs: " #ver_major "." #ver_minor "." #ver_patch ", current: {api_version}.")', + '', + 'typedef struct keyrecord_t keyrecord_t; // forward declaration so we don\'t need to include quantum.h', + '', + ] + + modules = get_modules(cli.args.keyboard, cli.args.filename) + module_jsons = load_module_jsons(modules) + if len(modules) > 0: + lines.extend(_render_keycodes(module_jsons)) + + for api in api_list: + lines.extend(_render_api_header(api)) + + for module in modules: + lines.append('') + lines.append(f'// From module: {module}') + for api in api_list: + lines.extend(_render_api_declarations(api, Path(module).name)) + lines.append('') + + lines.append('// Core wrapper') + for api in api_list: + lines.extend(_render_api_declarations(api, 'modules', user_kb=False)) + + dump_lines(cli.args.output, lines, cli.args.quiet, remove_repeated_newlines=True) + + +@cli.argument('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') +@cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") +@cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, help='Keyboard to generate community_modules.c for.') +@cli.argument('filename', nargs='?', type=qmk.path.FileType('r'), arg_only=True, completer=FilesCompleter('.json'), help='Configurator JSON file') +@cli.subcommand('Creates a community_modules.c from a keymap.json file.') +def generate_community_modules_c(cli): + """Creates a community_modules.c from a keymap.json file + """ + if cli.args.output and cli.args.output.name == '-': + cli.args.output = None + + api_list, _, _, _, _ = module_api_list() + + lines = [ + GPL2_HEADER_C_LIKE, + GENERATED_HEADER_C_LIKE, + '', + '#include "community_modules.h"', + ] + + modules = get_modules(cli.args.keyboard, cli.args.filename) + if len(modules) > 0: + + for module in modules: + for api in api_list: + lines.extend(_render_api_implementations(api, Path(module).name)) + + for api in api_list: + lines.extend(_render_core_implementation(api, modules)) + + dump_lines(cli.args.output, lines, cli.args.quiet, remove_repeated_newlines=True) + + +@cli.argument('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') +@cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") +@cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, help='Keyboard to generate community_modules.c for.') +@cli.argument('filename', nargs='?', type=qmk.path.FileType('r'), arg_only=True, completer=FilesCompleter('.json'), help='Configurator JSON file') +@cli.subcommand('Creates a community_modules_introspection.h from a keymap.json file.') +def generate_community_modules_introspection_h(cli): + """Creates a community_modules_introspection.h from a keymap.json file + """ + if cli.args.output and cli.args.output.name == '-': + cli.args.output = None + + lines = [ + GPL2_HEADER_C_LIKE, + GENERATED_HEADER_C_LIKE, + '', + ] + + modules = get_modules(cli.args.keyboard, cli.args.filename) + if len(modules) > 0: + for module in modules: + module_path = find_module_path(module) + lines.append(f'#if __has_include("{module_path}/introspection.h")') + lines.append(f'#include "{module_path}/introspection.h"') + lines.append(f'#endif // __has_include("{module_path}/introspection.h")') + lines.append('') + + dump_lines(cli.args.output, lines, cli.args.quiet, remove_repeated_newlines=True) + + +@cli.argument('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') +@cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") +@cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, help='Keyboard to generate community_modules.c for.') +@cli.argument('filename', nargs='?', type=qmk.path.FileType('r'), arg_only=True, completer=FilesCompleter('.json'), help='Configurator JSON file') +@cli.subcommand('Creates a community_modules_introspection.c from a keymap.json file.') +def generate_community_modules_introspection_c(cli): + """Creates a community_modules_introspection.c from a keymap.json file + """ + if cli.args.output and cli.args.output.name == '-': + cli.args.output = None + + lines = [ + GPL2_HEADER_C_LIKE, + GENERATED_HEADER_C_LIKE, + '', + ] + + modules = get_modules(cli.args.keyboard, cli.args.filename) + if len(modules) > 0: + for module in modules: + module_path = find_module_path(module) + lines.append(f'#if __has_include("{module_path}/introspection.c")') + lines.append(f'#include "{module_path}/introspection.c"') + lines.append(f'#endif // __has_include("{module_path}/introspection.c")') + lines.append('') + + dump_lines(cli.args.output, lines, cli.args.quiet, remove_repeated_newlines=True) diff --git a/lib/python/qmk/cli/generate/rules_mk.py b/lib/python/qmk/cli/generate/rules_mk.py index 5291556109..cae9b07c3e 100755 --- a/lib/python/qmk/cli/generate/rules_mk.py +++ b/lib/python/qmk/cli/generate/rules_mk.py @@ -6,12 +6,13 @@ from dotty_dict import dotty from argcomplete.completers import FilesCompleter from milc import cli -from qmk.info import info_json +from qmk.info import info_json, get_modules from qmk.json_schema import json_load from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.commands import dump_lines, parse_configurator_json from qmk.path import normpath, FileType from qmk.constants import GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE +from qmk.community_modules import find_module_path, load_module_jsons def generate_rule(rules_key, rules_value): @@ -46,6 +47,42 @@ def process_mapping_rule(kb_info_json, rules_key, info_dict): return generate_rule(rules_key, rules_value) +def generate_features_rules(features_dict): + lines = [] + for feature, enabled in features_dict.items(): + feature = feature.upper() + enabled = 'yes' if enabled else 'no' + lines.append(generate_rule(f'{feature}_ENABLE', enabled)) + return lines + + +def generate_modules_rules(keyboard, filename): + lines = [] + modules = get_modules(keyboard, filename) + if len(modules) > 0: + lines.append('') + lines.append('OPT_DEFS += -DCOMMUNITY_MODULES_ENABLE=TRUE') + for module in modules: + module_path = find_module_path(module) + if not module_path: + raise FileNotFoundError(f"Module '{module}' not found.") + lines.append('') + lines.append(f'COMMUNITY_MODULES += {module_path.name}') # use module_path here instead of module as it may be a subdirectory + lines.append(f'OPT_DEFS += -DCOMMUNITY_MODULE_{module_path.name.upper()}_ENABLE=TRUE') + lines.append(f'COMMUNITY_MODULE_PATHS += {module_path}') + lines.append(f'VPATH += {module_path}') + lines.append(f'SRC += $(wildcard {module_path}/{module_path.name}.c)') + lines.append(f'-include {module_path}/rules.mk') + + module_jsons = load_module_jsons(modules) + for module_json in module_jsons: + if 'features' in module_json: + lines.append('') + lines.append(f'# Module: {module_json["module_name"]}') + lines.extend(generate_features_rules(module_json['features'])) + return lines + + @cli.argument('filename', nargs='?', arg_only=True, type=FileType('r'), completer=FilesCompleter('.json'), help='A configurator export JSON to be compiled and flashed or a pre-compiled binary firmware file (bin/hex) to be flashed.') @cli.argument('-o', '--output', arg_only=True, type=normpath, help='File to write to') @cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") @@ -80,10 +117,7 @@ def generate_rules_mk(cli): # Iterate through features to enable/disable them if 'features' in kb_info_json: - for feature, enabled in kb_info_json['features'].items(): - feature = feature.upper() - enabled = 'yes' if enabled else 'no' - rules_mk_lines.append(generate_rule(f'{feature}_ENABLE', enabled)) + rules_mk_lines.extend(generate_features_rules(kb_info_json['features'])) # Set SPLIT_TRANSPORT, if needed if kb_info_json.get('split', {}).get('transport', {}).get('protocol') == 'custom': @@ -99,6 +133,8 @@ def generate_rules_mk(cli): if converter: rules_mk_lines.append(generate_rule('CONVERT_TO', converter)) + rules_mk_lines.extend(generate_modules_rules(cli.args.keyboard, cli.args.filename)) + # Show the results dump_lines(cli.args.output, rules_mk_lines) diff --git a/lib/python/qmk/cli/info.py b/lib/python/qmk/cli/info.py index e662407474..5925b57258 100755 --- a/lib/python/qmk/cli/info.py +++ b/lib/python/qmk/cli/info.py @@ -52,6 +52,11 @@ def show_keymap(kb_info_json, title_caps=True): if keymap_path and keymap_path.suffix == '.json': keymap_data = json.load(keymap_path.open(encoding='utf-8')) + + # cater for layout-less keymap.json + if 'layout' not in keymap_data: + return + layout_name = keymap_data['layout'] layout_name = kb_info_json.get('layout_aliases', {}).get(layout_name, layout_name) # Resolve alias names diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index a05b3641b5..0e1876ca7a 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -98,11 +98,14 @@ def in_virtualenv(): return active_prefix != sys.prefix -def dump_lines(output_file, lines, quiet=True): +def dump_lines(output_file, lines, quiet=True, remove_repeated_newlines=False): """Handle dumping to stdout or file Creates parent folders if required """ generated = '\n'.join(lines) + '\n' + if remove_repeated_newlines: + while '\n\n\n' in generated: + generated = generated.replace('\n\n\n', '\n\n') if output_file and output_file.name != '-': output_file.parent.mkdir(parents=True, exist_ok=True) if output_file.exists(): diff --git a/lib/python/qmk/community_modules.py b/lib/python/qmk/community_modules.py new file mode 100644 index 0000000000..f7e96a6b93 --- /dev/null +++ b/lib/python/qmk/community_modules.py @@ -0,0 +1,100 @@ +import os + +from pathlib import Path +from functools import lru_cache + +from milc.attrdict import AttrDict + +from qmk.json_schema import json_load, validate, merge_ordered_dicts +from qmk.util import truthy +from qmk.constants import QMK_FIRMWARE, QMK_USERSPACE, HAS_QMK_USERSPACE +from qmk.path import under_qmk_firmware, under_qmk_userspace + +COMMUNITY_MODULE_JSON_FILENAME = 'qmk_module.json' + + +class ModuleAPI(AttrDict): + def __init__(self, **kwargs): + super().__init__() + for key, value in kwargs.items(): + self[key] = value + + +@lru_cache(maxsize=1) +def module_api_list(): + module_definition_files = sorted(set(QMK_FIRMWARE.glob('data/constants/module_hooks/*.hjson'))) + module_definition_jsons = [json_load(f) for f in module_definition_files] + module_definitions = merge_ordered_dicts(module_definition_jsons) + latest_module_version = module_definition_files[-1].stem + latest_module_version_parts = latest_module_version.split('.') + + api_list = [] + for name, mod in module_definitions.items(): + api_list.append(ModuleAPI( + ret_type=mod['ret_type'], + name=name, + args=mod['args'], + call_params=mod.get('call_params', ''), + guard=mod.get('guard', None), + header=mod.get('header', None), + )) + + return api_list, latest_module_version, latest_module_version_parts[0], latest_module_version_parts[1], latest_module_version_parts[2] + + +def find_available_module_paths(): + """Find all available modules. + """ + search_dirs = [] + if HAS_QMK_USERSPACE: + search_dirs.append(QMK_USERSPACE / 'modules') + search_dirs.append(QMK_FIRMWARE / 'modules') + + modules = [] + for search_dir in search_dirs: + for module_json_path in search_dir.rglob(COMMUNITY_MODULE_JSON_FILENAME): + modules.append(module_json_path.parent) + return modules + + +def find_module_path(module): + """Find a module by name. + """ + for module_path in find_available_module_paths(): + # Ensure the module directory is under QMK Firmware or QMK Userspace + relative_path = under_qmk_firmware(module_path) + if not relative_path: + relative_path = under_qmk_userspace(module_path) + if not relative_path: + continue + + lhs = str(relative_path.as_posix())[len('modules/'):] + rhs = str(Path(module).as_posix()) + + if relative_path and lhs == rhs: + return module_path + return None + + +def load_module_json(module): + """Load a module JSON file. + """ + module_path = find_module_path(module) + if not module_path: + raise FileNotFoundError(f'Module not found: {module}') + + module_json = json_load(module_path / COMMUNITY_MODULE_JSON_FILENAME) + + if not truthy(os.environ.get('SKIP_SCHEMA_VALIDATION'), False): + validate(module_json, 'qmk.community_module.v1') + + module_json['module'] = module + module_json['module_path'] = module_path + + return module_json + + +def load_module_jsons(modules): + """Load the module JSON files, matching the specified order. + """ + return list(map(load_module_json, modules)) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index d70e7ee1b3..93eba7376a 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -1059,3 +1059,30 @@ def keymap_json(keyboard, keymap, force_layout=None): _extract_config_h(kb_info_json, parse_config_h_file(keymap_config)) return kb_info_json + + +def get_modules(keyboard, keymap_filename): + """Get the modules for a keyboard/keymap. + """ + modules = [] + + if keymap_filename: + keymap_json = parse_configurator_json(keymap_filename) + + if keymap_json: + kb = keymap_json.get('keyboard', None) + if not kb: + kb = keyboard + + if kb: + kb_info_json = info_json(kb) + if kb_info_json: + modules.extend(kb_info_json.get('modules', [])) + + modules.extend(keymap_json.get('modules', [])) + + elif keyboard: + kb_info_json = info_json(keyboard) + modules.extend(kb_info_json.get('modules', [])) + + return list(dict.fromkeys(modules)) # remove dupes diff --git a/lib/python/qmk/json_encoders.py b/lib/python/qmk/json_encoders.py index 0e4ad1d220..e83a381d52 100755 --- a/lib/python/qmk/json_encoders.py +++ b/lib/python/qmk/json_encoders.py @@ -235,3 +235,31 @@ class UserspaceJSONEncoder(QMKJSONEncoder): return '01build_targets' return key + + +class CommunityModuleJSONEncoder(QMKJSONEncoder): + """Custom encoder to make qmk_module.json's a little nicer to work with. + """ + def sort_dict(self, item): + """Sorts the hashes in a nice way. + """ + key = item[0] + + if self.indentation_level == 1: + if key == 'module_name': + return '00module_name' + if key == 'maintainer': + return '01maintainer' + if key == 'url': + return '02url' + if key == 'features': + return '03features' + if key == 'keycodes': + return '04keycodes' + elif self.indentation_level == 3: # keycodes + if key == 'key': + return '00key' + if key == 'aliases': + return '01aliases' + + return key diff --git a/lib/python/qmk/keymap.py b/lib/python/qmk/keymap.py index 9dd043c4a8..8e36461722 100644 --- a/lib/python/qmk/keymap.py +++ b/lib/python/qmk/keymap.py @@ -334,33 +334,6 @@ def write_json(keyboard, keymap, layout, layers, macros=None): return write_file(keymap_file, keymap_content) -def write(keymap_json): - """Generate the `keymap.c` and write it to disk. - - Returns the filename written to. - - `keymap_json` should be a dict with the following keys: - keyboard - The name of the keyboard - - keymap - The name of the keymap - - layout - The LAYOUT macro this keymap uses. - - layers - An array of arrays describing the keymap. Each item in the inner array should be a string that is a valid QMK keycode. - - macros - A list of macros for this keymap. - """ - keymap_content = generate_c(keymap_json) - keymap_file = qmk.path.keymaps(keymap_json['keyboard'])[0] / keymap_json['keymap'] / 'keymap.c' - - return write_file(keymap_file, keymap_content) - - def locate_keymap(keyboard, keymap, force_layout=None): """Returns the path to a keymap for a specific keyboard. """ diff --git a/modules/qmk/hello_world/hello_world.c b/modules/qmk/hello_world/hello_world.c new file mode 100644 index 0000000000..d9dd366100 --- /dev/null +++ b/modules/qmk/hello_world/hello_world.c @@ -0,0 +1,33 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +#include "introspection.h" + +ASSERT_COMMUNITY_MODULES_MIN_API_VERSION(1, 0, 0); + +uint32_t delayed_hello_world(uint32_t trigger_time, void *cb_arg) { + printf("Hello, world! I'm a QMK based keyboard! The keymap array size is %d bytes.\n", (int)hello_world_introspection().total_size); + return 0; +} + +void keyboard_post_init_hello_world(void) { + keyboard_post_init_hello_world_kb(); + defer_exec(10000, delayed_hello_world, NULL); +} + +bool process_record_hello_world(uint16_t keycode, keyrecord_t *record) { + if (!process_record_hello_world_kb(keycode, record)) { + return false; + } + + switch (keycode) { + case COMMUNITY_MODULE_HELLO: + if (record->event.pressed) { + SEND_STRING("Hello there."); + break; + } + } + + return true; +} diff --git a/modules/qmk/hello_world/introspection.c b/modules/qmk/hello_world/introspection.c new file mode 100644 index 0000000000..2c32a074f5 --- /dev/null +++ b/modules/qmk/hello_world/introspection.c @@ -0,0 +1,10 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +hello_world_introspection_t hello_world_introspection(void) { + hello_world_introspection_t introspection = { + .total_size = sizeof(keymaps), + .layer_count = sizeof(keymaps) / sizeof(keymaps[0]), + }; + return introspection; +} diff --git a/modules/qmk/hello_world/introspection.h b/modules/qmk/hello_world/introspection.h new file mode 100644 index 0000000000..fd3d7f24a0 --- /dev/null +++ b/modules/qmk/hello_world/introspection.h @@ -0,0 +1,10 @@ +// Copyright 2025 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +typedef struct hello_world_introspection_t { + int16_t total_size; + int16_t layer_count; +} hello_world_introspection_t; + +hello_world_introspection_t hello_world_introspection(void); diff --git a/modules/qmk/hello_world/qmk_module.json b/modules/qmk/hello_world/qmk_module.json new file mode 100644 index 0000000000..4f269cb4e9 --- /dev/null +++ b/modules/qmk/hello_world/qmk_module.json @@ -0,0 +1,13 @@ +{ + "module_name": "Hello World", + "maintainer": "QMK Maintainers", + "features": { + "deferred_exec": true + }, + "keycodes": [ + { + "key": "COMMUNITY_MODULE_HELLO", + "aliases": ["CM_HELO"] + } + ] +} diff --git a/modules/qmk/hello_world/rules.mk b/modules/qmk/hello_world/rules.mk new file mode 100644 index 0000000000..91806fb1e3 --- /dev/null +++ b/modules/qmk/hello_world/rules.mk @@ -0,0 +1,2 @@ +# Just a simple rules.mk which tests that they work from a community module. +$(shell $(QMK_BIN) hello -n "from QMK's hello world community module") diff --git a/quantum/action.h b/quantum/action.h index d5b15c6f17..7596688f31 100644 --- a/quantum/action.h +++ b/quantum/action.h @@ -45,7 +45,7 @@ typedef struct { } tap_t; /* Key event container for recording */ -typedef struct { +typedef struct keyrecord_t { keyevent_t event; #ifndef NO_ACTION_TAPPING tap_t tap; diff --git a/quantum/keyboard.c b/quantum/keyboard.c index d7836cf36e..ad740de4b3 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -289,6 +289,21 @@ __attribute__((weak)) void keyboard_pre_init_kb(void) { keyboard_pre_init_user(); } +/** \brief keyboard_pre_init_modules + * + * FIXME: needs doc + */ +__attribute__((weak)) void keyboard_pre_init_modules(void) {} + +/** \brief keyboard_pre_init_quantum + * + * FIXME: needs doc + */ +void keyboard_pre_init_quantum(void) { + keyboard_pre_init_modules(); + keyboard_pre_init_kb(); +} + /** \brief keyboard_post_init_user * * FIXME: needs doc @@ -305,6 +320,23 @@ __attribute__((weak)) void keyboard_post_init_kb(void) { keyboard_post_init_user(); } +/** \brief keyboard_post_init_modules + * + * FIXME: needs doc + */ + +__attribute__((weak)) void keyboard_post_init_modules(void) {} + +/** \brief keyboard_post_init_quantum + * + * FIXME: needs doc + */ + +void keyboard_post_init_quantum(void) { + keyboard_post_init_modules(); + keyboard_post_init_kb(); +} + /** \brief matrix_can_read * * Allows overriding when matrix scanning operations should be executed. @@ -323,7 +355,7 @@ void keyboard_setup(void) { eeprom_driver_init(); #endif matrix_setup(); - keyboard_pre_init_kb(); + keyboard_pre_init_quantum(); } #ifndef SPLIT_KEYBOARD @@ -355,6 +387,13 @@ __attribute__((weak)) bool should_process_keypress(void) { return is_keyboard_master(); } +/** \brief housekeeping_task_modules + * + * Codegen will override this if community modules are enabled. + * This is specific to keyboard-level functionality. + */ +__attribute__((weak)) void housekeeping_task_modules(void) {} + /** \brief housekeeping_task_kb * * Override this function if you have a need to execute code for every keyboard main loop iteration. @@ -374,6 +413,7 @@ __attribute__((weak)) void housekeeping_task_user(void) {} * Invokes hooks for executing code after QMK is done after each loop iteration. */ void housekeeping_task(void) { + housekeeping_task_modules(); housekeeping_task_kb(); housekeeping_task_user(); } @@ -493,7 +533,7 @@ void keyboard_init(void) { debug_enable = true; #endif - keyboard_post_init_kb(); /* Always keep this last */ + keyboard_post_init_quantum(); /* Always keep this last */ } /** \brief key_event_task diff --git a/quantum/keycodes.h b/quantum/keycodes.h index 5929e35687..b4fc38f5ff 100644 --- a/quantum/keycodes.h +++ b/quantum/keycodes.h @@ -76,6 +76,8 @@ enum qk_keycode_ranges { QK_MACRO_MAX = 0x777F, QK_CONNECTION = 0x7780, QK_CONNECTION_MAX = 0x77BF, + QK_COMMUNITY_MODULE = 0x77C0, + QK_COMMUNITY_MODULE_MAX = 0x77FF, QK_LIGHTING = 0x7800, QK_LIGHTING_MAX = 0x78FF, QK_QUANTUM = 0x7C00, @@ -1476,6 +1478,7 @@ enum qk_keycode_defines { #define IS_QK_STENO(code) ((code) >= QK_STENO && (code) <= QK_STENO_MAX) #define IS_QK_MACRO(code) ((code) >= QK_MACRO && (code) <= QK_MACRO_MAX) #define IS_QK_CONNECTION(code) ((code) >= QK_CONNECTION && (code) <= QK_CONNECTION_MAX) +#define IS_QK_COMMUNITY_MODULE(code) ((code) >= QK_COMMUNITY_MODULE && (code) <= QK_COMMUNITY_MODULE_MAX) #define IS_QK_LIGHTING(code) ((code) >= QK_LIGHTING && (code) <= QK_LIGHTING_MAX) #define IS_QK_QUANTUM(code) ((code) >= QK_QUANTUM && (code) <= QK_QUANTUM_MAX) #define IS_QK_KB(code) ((code) >= QK_KB && (code) <= QK_KB_MAX) diff --git a/quantum/keymap_introspection.c b/quantum/keymap_introspection.c index 236b54ce98..23e842353a 100644 --- a/quantum/keymap_introspection.c +++ b/quantum/keymap_introspection.c @@ -1,6 +1,10 @@ // Copyright 2022 Nick Brassel (@tzarc) // SPDX-License-Identifier: GPL-2.0-or-later +#if defined(COMMUNITY_MODULES_ENABLE) +# include "community_modules_introspection.h" +#endif // defined(COMMUNITY_MODULES_ENABLE) + // Pull the actual keymap code so that we can inspect stuff from it #include KEYMAP_C @@ -171,3 +175,10 @@ __attribute__((weak)) const key_override_t* key_override_get(uint16_t key_overri } #endif // defined(KEY_OVERRIDE_ENABLE) + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Community modules (must be last in this file!) + +#if defined(COMMUNITY_MODULES_ENABLE) +# include "community_modules_introspection.c" +#endif // defined(COMMUNITY_MODULES_ENABLE) diff --git a/quantum/os_detection.c b/quantum/os_detection.c index 84bbeeed54..9a9f9052f2 100644 --- a/quantum/os_detection.c +++ b/quantum/os_detection.c @@ -72,6 +72,8 @@ static volatile struct usb_device_state maxprev_usb_device_state = {.configure_s static volatile bool debouncing = false; static volatile fast_timer_t last_time = 0; +bool process_detected_host_os_modules(os_variant_t os); + void os_detection_task(void) { #ifdef OS_DETECTION_KEYBOARD_RESET // resetting the keyboard on the USB device state change callback results in instability, so delegate that to this task @@ -96,12 +98,17 @@ void os_detection_task(void) { if (detected_os != reported_os || first_report) { first_report = false; reported_os = detected_os; + process_detected_host_os_modules(detected_os); process_detected_host_os_kb(detected_os); } } } } +__attribute__((weak)) bool process_detected_host_os_modules(os_variant_t os) { + return true; +} + __attribute__((weak)) bool process_detected_host_os_kb(os_variant_t detected_os) { return process_detected_host_os_user(detected_os); } diff --git a/quantum/quantum.c b/quantum/quantum.c index b63300add8..adb14d64b6 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -162,6 +162,10 @@ __attribute__((weak)) void tap_code16(uint16_t code) { tap_code16_delay(code, code == KC_CAPS_LOCK ? TAP_HOLD_CAPS_DELAY : TAP_CODE_DELAY); } +__attribute__((weak)) bool pre_process_record_modules(uint16_t keycode, keyrecord_t *record) { + return true; +} + __attribute__((weak)) bool pre_process_record_kb(uint16_t keycode, keyrecord_t *record) { return pre_process_record_user(keycode, record); } @@ -174,6 +178,10 @@ __attribute__((weak)) bool process_action_kb(keyrecord_t *record) { return true; } +__attribute__((weak)) bool process_record_modules(uint16_t keycode, keyrecord_t *record) { + return true; +} + __attribute__((weak)) bool process_record_kb(uint16_t keycode, keyrecord_t *record) { return process_record_user(keycode, record); } @@ -182,12 +190,22 @@ __attribute__((weak)) bool process_record_user(uint16_t keycode, keyrecord_t *re return true; } +__attribute__((weak)) void post_process_record_modules(uint16_t keycode, keyrecord_t *record) {} + __attribute__((weak)) void post_process_record_kb(uint16_t keycode, keyrecord_t *record) { post_process_record_user(keycode, record); } __attribute__((weak)) void post_process_record_user(uint16_t keycode, keyrecord_t *record) {} +__attribute__((weak)) bool shutdown_modules(bool jump_to_bootloader) { + return true; +} + +__attribute__((weak)) void suspend_power_down_modules(void) {} + +__attribute__((weak)) void suspend_wakeup_init_modules(void) {} + void shutdown_quantum(bool jump_to_bootloader) { clear_keyboard(); #if defined(MIDI_ENABLE) && defined(MIDI_BASIC) @@ -199,11 +217,13 @@ void shutdown_quantum(bool jump_to_bootloader) { # endif uint16_t timer_start = timer_read(); PLAY_SONG(goodbye_song); + shutdown_modules(jump_to_bootloader); shutdown_kb(jump_to_bootloader); while (timer_elapsed(timer_start) < 250) wait_ms(1); stop_all_notes(); #else + shutdown_modules(jump_to_bootloader); shutdown_kb(jump_to_bootloader); wait_ms(250); #endif @@ -258,7 +278,7 @@ uint16_t get_event_keycode(keyevent_t event, bool update_layer_cache) { /* Get keycode, and then process pre tapping functionality */ bool pre_process_record_quantum(keyrecord_t *record) { - return pre_process_record_kb(get_record_keycode(record, true), record) && + return pre_process_record_modules(get_record_keycode(record, true), record) && pre_process_record_kb(get_record_keycode(record, true), record) && #ifdef COMBO_ENABLE process_combo(get_record_keycode(record, true), record) && #endif @@ -268,6 +288,7 @@ bool pre_process_record_quantum(keyrecord_t *record) { /* Get keycode, and then call keyboard function */ void post_process_record_quantum(keyrecord_t *record) { uint16_t keycode = get_record_keycode(record, false); + post_process_record_modules(keycode, record); post_process_record_kb(keycode, record); } @@ -332,6 +353,7 @@ bool process_record_quantum(keyrecord_t *record) { #if defined(POINTING_DEVICE_ENABLE) && defined(POINTING_DEVICE_AUTO_MOUSE_ENABLE) process_auto_mouse(keycode, record) && #endif + process_record_modules(keycode, record) && // modules must run before kb process_record_kb(keycode, record) && #if defined(VIA_ENABLE) process_record_via(keycode, record) && @@ -526,6 +548,7 @@ __attribute__((weak)) bool shutdown_kb(bool jump_to_bootloader) { } void suspend_power_down_quantum(void) { + suspend_power_down_modules(); suspend_power_down_kb(); #ifndef NO_SUSPEND_POWER_DOWN // Turn off backlight @@ -593,6 +616,7 @@ __attribute__((weak)) void suspend_wakeup_init_quantum(void) { #if defined(RGB_MATRIX_ENABLE) rgb_matrix_set_suspend_state(false); #endif + suspend_wakeup_init_modules(); suspend_wakeup_init_kb(); } diff --git a/quantum/quantum.h b/quantum/quantum.h index 9db88a54d4..59a415ead4 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -244,6 +244,10 @@ extern layer_state_t layer_state; # include "layer_lock.h" #endif +#ifdef COMMUNITY_MODULES_ENABLE +# include "community_modules.h" +#endif + void set_single_default_layer(uint8_t default_layer); void set_single_persistent_default_layer(uint8_t default_layer); -- cgit v1.2.3